Skip to content

docs(alternatives): re-measure the self-hosted proxy shelf, 2026-09-10 - #436

Merged
msgwing merged 4 commits into
mainfrom
docs/alternatives-refresh-2026-09-10
Sep 20, 2026
Merged

msgwing merged 4 commits into
mainfrom
docs/alternatives-refresh-2026-09-10

Conversation

@msgwing

@msgwing msgwing commented Sep 10, 2026

Copy link
Copy Markdown
Owner

Summary

Monthly competitive review asked for a fresh, measured look at the self-hosted
proxy shelf in docs/ALTERNATIVES.md (rule 3: a competitor above us gets
named the same day, with stars, last-commit date, and what it's better at).

  • Re-checked the five projects named on 2026-08-27 directly against GitHub
    (not memory). Three are still dead (SMTP2Graph, ggpwnkthx, oldium, no commit
    in 70-130 days). simonrob/email-oauth2-proxy is still the largest by far
    but also 69 days quiet.
  • JustinIven/smtp-oauth-relay was credited as "still receiving commits this
    month" - re-checked, its pushed_at of 2026-09-03 turns out to be an
    unmerged dependabot branch/PR, not a commit to main. Its real last commit
    is 2026-08-12. Corrected.
  • Searched GitHub with competitors' vocabulary ("microsoft graph smtp relay",
    "oauth2 smtp proxy", "exchange online smtp oauth") instead of ours, per the
    standing rule that a search using only our own words hid 15 competitors
    before. Found two worth adding: rustmailer/rustmailer (504 stars, broader
    scope, actively developed, shipped Graph OAuth2 support 2026-08-13) and
    debold/GraphMailer.NET (2 stars, but 21 real commits in 30 days and the
    closest match to our own printer/scanner audience of any project on this
    shelf).

No stars were requested or referenced as a target anywhere in this change -
they're reported only as one column in an honest comparison table, same as
before.

Test plan

  • git diff docs/ALTERNATIVES.md reviewed line by line before commit
  • Every last-commit date in the table verified against
    repos/{owner}/{repo}/commits (the commit list itself), not just
    repos/{owner}/{repo} pushed_at
  • Markdown table renders correctly (checked column count per row)
  • python tools/build-llms-full.py --check now clean (the first push
    missed this regeneration - docs/llms-full.txt embeds ALTERNATIVES.md
    verbatim and had gone stale, which is what failed device-table)

BOARD: MERGE - honest, dated competitive comparison in our own docs; no outbound claim to any other repository, no stars requested.
EVIDENCE: python tools/build-llms-full.py --check and python tools/check-facts.py both clean after regeneration; every date in the table re-verified against repos/{owner}/{repo}/commits, not pushed_at.

Re-ran the 2026-08-27 competitive scan against GitHub directly instead of
memory. Two of five previously-listed projects are still dead, one
(JustinIven/smtp-oauth-relay) turns out to have been credited with commits
that were actually an unmerged dependabot branch - its real last commit is
three weeks older than pushed_at suggested. Adds two projects the prior scan
missed: rustmailer/rustmailer (504 stars, active, broader scope) and
debold/GraphMailer.NET (2 stars, but the most actively developed project on
the shelf and the closest match to our own audience of legacy printers and
scanners).
@msgwing
msgwing enabled auto-merge (squash) September 10, 2026 19:12
@github-actions github-actions Bot added the docs label Sep 10, 2026
msgwing added a commit that referenced this pull request Sep 20, 2026
#446)

PR #436 sat BLOCKED for 10 days (2026-09-10 -> 2026-09-20): board-review
crashed with 'git diff base head' exit 128 once the branch picked up a third
commit past its base sha, because fetch-depth 2 only reaches one commit back
from the merge commit. changes has the identical base/head diff and the same
latent bug, just not yet hit. Both now fetch full history.
@msgwing
msgwing merged commit 4ca0815 into main Sep 20, 2026
40 checks passed
@msgwing
msgwing deleted the docs/alternatives-refresh-2026-09-10 branch September 20, 2026 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant