forgejo-contrib-forgejo-cli-pulls-368.md
Watch20
Star402
Fork
You've already forked forgejo-cli
CodeIssues 44Pull requests 8Releases 11Packages 2WikiActivity
Merged
Cyborusmerged 1 commit from cyborus/fix/pkce-challenge into main 2026-03-15 23:58:18 +01:00AGit
Conversation 2Commits 1Files changed 3 +10 -39
Cyborus commented 2026-03-15 23:37:03 +01:00
Member
Copy link
sha256 dependencies with thesha2 crateBase64UrlUnpadded instead of Base64UrlThis stopped working with forgejo/forgejo!11513, which fixed Forgejo not verifying S256 PKCE challenges. Before that, it didn't matter that this was incorrect.
The sha256 crate outputs its hash as a hexadecimal string, but Forgejo expects raw bytes, which sha2 provides.
PKCE challenges are also supposed to be encoded as base64 without padding, which is what Base64UrlUnpadded does.
Fixes #367
sha256 dependencies with the better-maintained sha2 crate - Use Base64UrlUnpadded instead of Base64Url This stopped working with forgejo/forgejo!11513, which fixed Forgejo not verifying S256 PKCE challenges. Before that, it didn't matter that this was incorrect. The sha256 crate outputs its hash as a hexadecimal string, but Forgejo expects raw bytes, which sha2 provides. PKCE challenges are also supposed to be encoded as base64 *without* padding, which is what Base64UrlUnpadded does. Fixes #367Cyborus added 1 commit 2026-03-15 23:37:03 +01:00
fix(login): correctly generate pkce challenge...
All checks were successful
ci/woodpecker/pr/check Pipeline was successful
- Replaces `sha256` dependencies with the
better-maintained `sha2` crate
- Use `Base64UrlUnpadded` instead of `Base64Url`
This stopped working with[forgejo/forgejo!11513](/forgejo/forgejo/pulls/11513),
which fixed Forgejo not verifying S256 PKCE
challenges. Before that, it didn't matter that this
was incorrect.
The `sha256` crate outputs its hash as a
hexadecimal string, but Forgejo expects raw bytes,
which `sha2` provides.
PKCE challenges are also supposed to be encoded
as base64 *without* padding, which is what
`Base64UrlUnpadded` does.
Cyborus commented 2026-03-15 23:43:52 +01:00
Author
Member
Copy link
@florian-obernberger I've tested it myself, and it seems to fix it. Could you check that it works for you, too?
@florian-obernberger I've tested it myself, and it seems to fix it. Could you check that it works for you, too?
florian-obernberger commented 2026-03-15 23:51:57 +01:00
Contributor
Copy link
@florian-obernberger I've tested it myself, and it seems to fix it. Could you check that it works for you, too?
Yep, works perfectly, thank you! :D
Sorry for the small delay, hat to figure out how to properly clone an AGit Workflow PR :)
> @florian-obernberger I've tested it myself, and it seems to fix it. Could you check that it works for you, too? Yep, works perfectly, thank you! :D _Sorry for the small delay, hat to figure out how to properly clone an AGit Workflow PR :)_
👍 1
Cyborus merged commit 7afd1e40ec into main 2026-03-15 23:58:18 +01:00
Cyborus referenced this pull request from a commit 2026-03-15 23:58:19 +01:00 Merge pull request 'fix(login): correctly generate pkce challenge' (#368) from cyborus/fix/pkce-challenge into main
Cyborus referenced this pull request 2026-03-16 00:11:11 +01:00 backport(0.4.x): fix(login): correctly generate pkce challenge #370
Cyborus referenced this pull request 2026-03-16 00:20:31 +01:00 backport(0.4.x): fix(login): correctly generate pkce challenge #371
stalecontext referenced this pull request from a commit 2026-03-16 18:29:05 +01:00 fix(login): replace sha256 crate with sha2 for PKCE challenge
stalecontext referenced this pull request from stalecontext/forgejo-cli-plus 2026-03-16 18:32:21 +01:00 Upstream sync: adopt sha2 crate for PKCE challenge #20
stalecontext referenced this pull request from stalecontext/forgejo-cli-plus 2026-03-16 18:33:46 +01:00 fix(login): replace sha256 crate with sha2 for PKCE challenge #21
stalecontext referenced this pull request from a commit 2026-03-18 05:48:03 +01:00 fix(login): replace sha256 crate with sha2 for PKCE challenge (#21)
Cyborus referenced this pull request 2026-04-13 20:26:41 +02:00 Trying to figure out the development process of this repo #411
Sign in to join this conversation.
Reviewers
No reviewers
Labels
Clear labels[ Kind/Breaking Breaking change that won't be backward compatible
](#)[ Kind/Bug Something is not working
](#)[ Kind/Design Discussion about UI/UX design
](#)[ Kind/Documentation Documentation changes
](#)[ Kind/Enhancement Improve existing functionality
](#)[ Kind/Feature New functionality
](#)[ Kind/Security This is security issue
](#)[ Kind/Testing Issue or pull request related to testing
](#)[ Kind/Upstream This is an issue with upstream software (Forgejo) that is probably not our fault
](#)
[ Priority
Critical The priority is critical
](#)[ Priority
High The priority is high
](#)[ Priority
Low The priority is low
](#)[ Priority
Medium The priority is medium
](#)
[ Reviewed
Confirmed Issue has been confirmed
](#)[ Reviewed
Duplicate This issue or pull request already exists
](#)[ Reviewed
Invalid Invalid issue
](#)[ Reviewed
Won't Fix This issue won't be fixed
](#)
[ Status
Abandoned Somebody has started to work on this but abandoned work
](#)[ Status
Blocked Something is blocking this issue or pull request
](#)[ Status
Need More Info Feedback is required to reproduce issue or to continue work
](#)
[ Suspicious
](#)
No labels Kind/Breaking Kind/Bug Kind/Design Kind/Documentation Kind/Enhancement Kind/Feature Kind/Security Kind/Testing Kind/Upstream [ Priority
Critical ](/forgejo-contrib/forgejo-cli/pulls?labels=173012) [ Priority
High ](/forgejo-contrib/forgejo-cli/pulls?labels=173013) [ Priority
Low ](/forgejo-contrib/forgejo-cli/pulls?labels=173015) [ Priority
Medium ](/forgejo-contrib/forgejo-cli/pulls?labels=173014) [ Reviewed
Confirmed ](/forgejo-contrib/forgejo-cli/pulls?labels=173007) [ Reviewed
Duplicate ](/forgejo-contrib/forgejo-cli/pulls?labels=173005) [ Reviewed
Invalid ](/forgejo-contrib/forgejo-cli/pulls?labels=173006) [ Reviewed
Won't Fix ](/forgejo-contrib/forgejo-cli/pulls?labels=173008) [ Status
Abandoned ](/forgejo-contrib/forgejo-cli/pulls?labels=173011) [ Status
Blocked ](/forgejo-contrib/forgejo-cli/pulls?labels=173010) [ Status
Need More Info ](/forgejo-contrib/forgejo-cli/pulls?labels=173009) Suspicious
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
Notifications Subscribe
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
forgejo-contrib/forgejo-cli!368
WritePreview
Loading…
Add table
| Rows | | | Columns | |
CancelOK
Add a link
Url Description Hint: With a URL in your clipboard, you can paste directly into the editor to create a link.
CancelOK
CancelSave
Reference in a new issue
Repository
forgejo-contrib/forgejo-cli
Title
Body
Create issue
No description provided.
Delete branch "cyborus/fix/pkce-challenge"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
No Yes