Skip to content

feat(signature): parse username from GitHub noreply email#83

Merged
benner merged 1 commit into
mainfrom
feat/signature-noreply-parsing
May 2, 2026
Merged

feat(signature): parse username from GitHub noreply email#83
benner merged 1 commit into
mainfrom
feat/signature-noreply-parsing

Conversation

@benner
Copy link
Copy Markdown
Owner

@benner benner commented May 2, 2026

Developers who use GitHub's privacy email commit with
{id}+{username}@users.noreply.github.com. The existing email search API
returns nothing for these addresses, so the signature check would fail
with "author not found" even for local pre-commit hooks where the Commits
API is also unavailable (commit not yet pushed).

Parsing the username directly from the noreply address requires no API
call and covers the common privacy-email case. Runs after the Commits API
step and before the email search fallback.

Developers who use GitHub's privacy email commit with
{id}+{username}@users.noreply.github.com. The existing email search API
returns nothing for these addresses, so the signature check would fail
with "author not found" even for local pre-commit hooks where the Commits
API is also unavailable (commit not yet pushed).

Parsing the username directly from the noreply address requires no API
call and covers the common privacy-email case. Runs after the Commits API
step and before the email search fallback.

Signed-off-by: Nerijus Bendžiūnas <nerijus.bendziunas@gmail.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 2, 2026

Coverage

Coverage Report (Δ +0.0%)
FileStmtsMissCoverMissing
src/git_commit_guard
   __init__.py4660100% 
TOTAL4660100% 

@benner benner marked this pull request as ready for review May 2, 2026 05:38
@benner benner merged commit 5de6e02 into main May 2, 2026
7 checks passed
@benner benner deleted the feat/signature-noreply-parsing branch May 2, 2026 05:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant