Commit Graph
2772 Commits
Author SHA1 Message Date
Gustavo Valverde 4e32e0279f Merge remote-tracking branch 'origin/next' into gus/sso-email-less-profiles 2026-10-14 18:58:33 +01:00
c750fc5ad2 feat(oauth-provider): add OIDC front-channel logout (#9923)
Co-authored-by: shiminshen <16914659+shiminshen@users.noreply.github.com>
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 18:54:59 +01:00
Gustavo ValverdeandGitHub 1c8b98e8d1 Merge pull request #11631 from better-auth/main
chore: sync main to next
2026-10-14 18:52:57 +01:00
e78f15aa31 fix(core): allow 30s of clock skew when verifying ID tokens (#11749)
Co-authored-by: Lohith <ssvlohith@gmail.com>
2026-10-14 17:06:19 +01:00
e9d9921217 fix(generic-oauth): retry discovery for providers skipped at startup (#11750)
Co-authored-by: mangomac <mangomac@users.noreply.github.com>
2026-10-14 16:53:53 +01:00
916ef5c530 fix(mongo-adapter): retry a transaction aborted with a transient error (#11515)
Co-authored-by: Maxwell Afamefuna Nzekwe <70326615+maxnze1@users.noreply.github.com>
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 16:30:50 +01:00
Gustavo Valverde 4071f1c2c2 fix(sso): isolate mapProfileToUser from the verified identity and its failures
Pass the callback a clone of its input so it cannot rewrite the account key
or the claims later checks read. A replaced email no longer inherits the
provider's verification. Callback errors redirect with
SSO_PROFILE_MAPPING_FAILED on both protocols, and a SAML response without a
usable email redirects with missing_user_info.
2026-10-14 12:39:35 +01:00
aaf0d7da3e fix(oauth-provider): keep auth working when startup resource seeding fails (#11726)
Co-authored-by: Panagiotis Plytas <34184381+pplytas@users.noreply.github.com>
Co-authored-by: Arjun Vijay Prakash <137415649+ArjunCodess@users.noreply.github.com>
Co-authored-by: Tushar <192458782+Tushar-Khandelwal-2004@users.noreply.github.com>
Co-authored-by: zoom-dustin-moriarty <221604897+zoom-dustin-moriarty@users.noreply.github.com>
2026-10-14 12:33:21 +01:00
f0ce580fbd fix(phone-number): use custom verifyOTP when resetting the password (#10698)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 11:37:54 +01:00
Gustavo Valverde 7484c5dd3e feat(sso)!: add mapProfileToUser and use only email-format NameIDs as emails
SSO sign-in failed whenever the provider sent no email, with no hook to
supply one. mapProfileToUser runs on every OIDC and SAML sign-in before the
user is looked up and can return the email, name, image, and emailVerified.

A SAML NameID now becomes the email only when its Format is emailAddress,
matching Keycloak and Ory Polis. Persistent and transient NameIDs are opaque
and were being stored as user emails.
2026-10-14 10:50:46 +01:00
c3f11cc1a1 docs(sso): clarify SAML callbackUrl vs ACS endpoint in 1.7 (#11703)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 10:18:24 +01:00
182e92bd8a fix(sso): allow rotating SAML IdP signing certificate with linked accounts (#11687)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 10:16:38 +01:00
a878f9ab47 fix(sso): support array of emails in OIDC claim resolution (#11640)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-14 10:16:10 +01:00
0cfe07dccd fix(drizzle-adapter): support dates in string columns (#11731)
Co-authored-by: ping-maxwell <maxwell.multinite@gmail.com>
2026-10-14 08:50:41 +01:00
1d95ebf3fe fix(session): fall back to database for bulk session lookups (#11718)
Co-authored-by: choksi2212 <choksi2212@users.noreply.github.com>
2026-10-13 03:15:11 +00:00
RemcoandGitHub a2a74e1524 docs: open header dropdowns on activation instead of focus (#11678) 2026-10-13 08:39:01 +09:00
Menachem HornbacherandGitHub 6700372896 docs: update JWT docs to list all fields (#11339) 2026-10-13 08:28:39 +09:00
Deepanshu PalandGitHub 7393f6350e docs: fix Electron and Polar example syntax (#11587) 2026-10-13 08:25:54 +09:00
23ee48ad9a docs: add good-webhooks to community plugins (#11697)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-13 08:16:17 +09:00
Gustavo ValverdeandGitHub fe2559b7a0 docs(oauth-provider): show client-aware access token claims (#11656) 2026-10-11 18:29:53 +00:00
Gustavo ValverdeandGitHub 847acd02bb feat(oauth-provider): pass client ID to privilege checks (#11658) 2026-10-11 18:29:52 +00:00
Gustavo ValverdeandGitHub 38f3bb34af feat(oauth-provider): link resources during managed client registration (#11655) 2026-10-11 18:29:51 +00:00
Gustavo ValverdeandGitHub 1a9be41d18 feat(oauth-provider): allow client disable through admin update (#11654) 2026-10-10 14:52:35 +01:00
Talat MahmudandGitHub ef5c12c696 docs: add @octopi-ai/better-enrollment to community plugins (#11653) 2026-10-10 17:06:56 +09:00
e15625ff38 fix(better-auth): allow SvelteKit 3 as a peer dependency (#11488)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-09 16:33:41 +00:00
TaesuandGitHub 53307a7c60 docs(integrations): add Effect integration guide (#11566) 2026-10-09 09:41:45 +00:00
62146108c7 fix(oauth-provider): accept host-bearing custom-scheme native redirects (#10956)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-10-09 08:59:37 +01:00
07a09389ef fix(password): consume the reset token inside the reset transaction (#11646)
Co-authored-by: edenbuilds <279970382+edenbuilds@users.noreply.github.com>
Co-authored-by: omkar1work <omkar1work@gmail.com>
2026-10-09 06:44:53 +00:00
Gustavo ValverdeandGitHub 67743ed6e8 fix(password): revoke sessions and write the new password atomically (#11626) 2026-10-09 06:44:52 +00:00
Gustavo ValverdeandGitHub a9f455d586 fix(core): run after-commit hooks when the transaction fallback rolls nothing back (#11645) 2026-10-09 06:44:51 +00:00
Gustavo ValverdeandGitHub f556970135 fix(scim): match attribute names case-insensitively (#11644) 2026-10-08 19:25:50 +01:00
39f09800b7 fix(scim): treat JSON null as unassigned in SCIM requests (#11638)
Co-authored-by: Jonathan Samines <jn.samines@gmail.com>
Co-authored-by: sufiyan733 <kanekigaming786@gmail.com>
2026-10-08 18:33:14 +01:00
666e1def97 chore(scim): ensure inactive SCIM user resources can be reactivated (#11167)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 16:59:55 +00:00
369176e7f6 fix(db): keep derived replay-marker ids under uuid and serial ids (#11625)
Co-authored-by: Chandan P <95340276+NoiceHax@users.noreply.github.com>
Co-authored-by: onmax <22072217+onmax@users.noreply.github.com>
2026-10-08 14:31:59 +00:00
Gustavo ValverdeandGitHub 9e0b1780b0 Merge pull request #10853 from better-auth/main
chore: sync main to next
2026-10-06 06:12:34 +01:00
TaesuandGitHub 733f7934a1 docs(mongo-adapter): clarify transaction setup (#11550) 2026-10-03 10:07:35 +09:00
Jonathan SaminesandGitHub 7eb961f4af docs: add documentation for new dash/sentinel options (#11526) 2026-10-02 11:34:47 -06:00
TaesuandGitHub 9b104a22e7 docs(captcha): clarify protected endpoints (#11511) 2026-10-01 23:48:23 +09:00
4738fef731 docs(rate-limit): correct default window (#11492)
Co-authored-by: Taesu <bytaesu@gmail.com>
2026-10-01 16:17:38 +09:00
12cf61b3ce docs(email-password): correct APIMethod contracts (#11499)
Co-authored-by: Taesu <166604494+bytaesu@users.noreply.github.com>
2026-10-01 15:56:12 +09:00
55b67da016 docs(magic-link): correct APIMethod contract and document rateLimit (#11497)
Co-authored-by: Taesu <bytaesu@gmail.com>
2026-10-01 15:53:51 +09:00
Gustavo ValverdeandGitHub ac54bfd678 fix(auth): isolate verification records and encryption purposes (#11494) 2026-09-30 20:56:11 +00:00
683ac1ddc3 feat(oauth-provider): add validateRedirectUri option for custom redirect validation (#8686)
Co-authored-by: Gustavo Valverde <g.valverde02@gmail.com>
2026-09-29 08:26:56 +00:00
Emmanuel OdiiandGitHub 8817e98429 docs: add @stellartools/betterauth-adapter to community plugins (#11451) 2026-09-29 08:30:26 +09:00
Md SufiyanandGitHub ce373da451 docs: update test helper import in contributing guide (#11454) 2026-09-29 08:18:54 +09:00
129d54a9dc docs(chargebee): fix cli command and update migration guidance (#11456)
Co-authored-by: Taesu <166604494+bytaesu@users.noreply.github.com>
2026-09-29 08:03:19 +09:00
Md SufiyanandGitHub 200bc6a7cc docs: update CLI command in drizzle adapter guide (#11453) 2026-09-29 07:57:13 +09:00
Jonathan SaminesandGitHub 74f68176b7 docs: update enterprise pricing details (#11369) 2026-09-28 14:03:25 -06:00
Sivert BjørneråsandGitHub 266e2bc2be docs: add eusend to the email provider list (#11446) 2026-09-29 01:02:28 +09:00
Sivert BjørneråsandGitHub eb62f535f6 docs: add @eusend_dev/better-auth to community plugins (#11447) 2026-09-29 01:02:16 +09:00