v1.7.0-beta.10 Release
This beta release includes numerous bug fixes across authentication modules, dependency updates for jose, nanostores, and crypto packages, and new features including Drizzle Relations v2 support and refreshTokenReuseInterval options for better token handling in OAuth and MCP providers.
better-auth
Bug Fixes
- Bundled dependencies were refreshed to their latest compatible releases, including jose, nanostores, the noble crypto packages, and SimpleWebAuthn. These updates are backward compatible and require no changes to existing projects.
- Fixed rate limiting to be applied before plugin request handlers run (#10191)
- Fixed unproven credentials to be revoked when signing in via magic link or email OTP (#10239)
- Fixed account-linking logs to be routed through the configured logger (#10121)
- Fixed admin authorization to use authoritative session reads (#10187)
- Fixed TypeScript inference errors by declaring inherited
APIErrorproperties (#8734) - Fixed server-side OAuth requests to no longer follow redirects (#10241)
- Fixed the
schemaoption in device authorization to be optional under Zod v4 (#9939) - Fixed hosted-domain validation to be applied consistently across all Google sign-in flows (#10197)
- Fixed OAuth proxy to reject profile callbacks when OAuth state is missing or expired (#10183)
- Fixed OAuth provider profiles to respect user input rules (#10196)
- Fixed PayPal userinfo subject to be bound to the verified ID token subject (#10192)
- Fixed refresh cookie
Max-Ageto be capped at the configuredexpiresInvalue (#9621) - Fixed SIWE sign-in to reject when the provided email already belongs to another account (#10228)
- Fixed TOTP and backup code verification to cap the number of allowed attempts (#10210)
- Fixed username storage to only accept valid
displayUsernamefallbacks (#10182)
For detailed changes, see CHANGELOG
@better-auth/sso
Bug Fixes
- Fixed SSO provider deletion to also remove associated linked account rows (#10224)
- Fixed SSO provider domain verification to require DNS proof for every listed domain (#10227)
- Fixed SAML SLO POST form action to be restricted to
httpandhttpsschemes (#10225) - Fixed SAML response binding to be validated against the Service Provider configuration (#10226)
For detailed changes, see CHANGELOG
auth
Bug Fixes
- Fixed
disableMigrationto be honored for plugin schema tables (#10198) - Fixed generated
BETTER_AUTH_SECRETto use 32 characters instead of 16 (#10186) - Fixed two-factor verification to enforce account-level lockout after repeated failed attempts (#10240)
For detailed changes, see CHANGELOG
@better-auth/api-key
Bug Fixes
- Fixed client IP resolution from forwarded headers to be more robust (#10203)
- Refactored IP resolution logic into a shared core utility (#10216)
For detailed changes, see CHANGELOG
@better-auth/drizzle-adapter
Features
- Added support for Drizzle Relations v2 via a new
@better-auth/drizzle-adapter/relations-v2entry point (#9489)
For detailed changes, see CHANGELOG
@better-auth/i18n
Bug Fixes
- Fixed the English language fallback and updated i18n documentation (#9872)
For detailed changes, see CHANGELOG
@better-auth/kysely-adapter
Bug Fixes
- Fixed the Kysely adapter to return
nullwhen an update matches no rows (#10180)
For detailed changes, see CHANGELOG
@better-auth/mcp
Features
- Added a
refreshTokenReuseIntervaloption, defaulting to 30 seconds, so native/public clients can retry a refresh if a prior token rotation raced against it (#10145)
For detailed changes, see CHANGELOG
@better-auth/oauth-provider
Features
- Added
refreshTokenReuseIntervalto allow the OAuth provider to replay refresh token responses for duplicate requests within a configurable time window (#10145)
For detailed changes, see CHANGELOG
@better-auth/scim
Bug Fixes
- Fixed SCIM write operations to be properly scoped and to honor the
activeattribute (#10242)
For detailed changes, see CHANGELOG
Contributors
Thanks to everyone who contributed to this release:
@adityachaudhary99, @Bekacru, @benpsnyder, @bytaesu, @dipan-ck, @gustavovalverde, @moonevm, @Paola3stefania, @ping-maxwell, @rachit367, @sleepe229, @WilsonnnTan
Full changelog: v1.7.0-beta.9...v1.7.0-beta.10
Source: original entry ↗
More from Better Auth
Follow Better Auth to get its new changes in your feed and email digest.
v1.7.11 - Multiple bug fixes across auth packages
Patch release addressing multiple stability issues including PostgreSQL migration diffs, rate limiting header values, OAuth provider schema validation, and social account linking with ID tokens across better-auth packages.
v1.8.0-beta.1 Release
Better Auth v1.8.0-beta.1 includes a browser account chooser for Google sign-in using FedCM, fixes for preserving required fields in Drizzle adapter v2 schemas, and support for client_credentials scopes in OAuth provider client registration.
v1.8.0-beta.0 Release
Major update to Better Auth with significant breaking changes to device-code approval flows, OAuth token handling, and consent recording. Includes new CIBA support, OAuth token exchange, and improved polling behavior for concurrent requests.