v1.6.15
ruixenui/ruixen.comv1.6.15Jun 8, 2026by better-release[bot]
AI Summary
Fixed multiple bugs regarding session checks, user operations, and Kysely compatibility, while adding OAuth and passkey enhancements.
Key Highlights
- Fixed session list enforcement and user operation error handling
- Restored Kysely 0.28 and 0.29 compatibility
- Added POST support to OAuth userinfo endpoint
- Added automatic authenticator name resolution for passkeys
New Features
- OAuth userinfo POST support
- Passkey authenticator name resolution
- Fixed Kysely migration constant import path
Full Release Notes
## `better-auth` ### Bug Fixes - Fixed the `listSessions` endpoint to properly enforce fresh-age session checks ([#9865](https://github.com/better-auth/better-auth/pull/9865)) - Fixed `unbanUser`, `setRole`, and `adminUpdateUser` to return `USER_NOT_FOUND` instead of a generic 500 when the target user does not exist ([#9875](https://github.com/better-auth/better-auth/pull/9875)) - Fixed Kysely migration constant import path to restore Kysely 0.28 and 0.29 compatibility ([#9811](https://github.com/better-auth/better-auth/pull/9811)) - Improved cookie regex character ranges for more accurate cookie parsing ([#9879](https://github.com/better-auth/better-auth/pull/9879)) For detailed changes, see [`CHANGELOG`](https://github.com/better-auth/better-auth/blob/03e0e36a98a21eaf0ed39e384012f3216c954415/packages/better-auth/CHANGELOG.md) ## `@better-auth/oauth-provider` ### Features - Added `POST` support to the `/oauth2/userinfo` endpoint, allowing the access token to be passed in the `Authorization` header ([#9937](https://github.com/better-auth/better-auth/pull/9937)) ### Bug Fixes - Fixed `hooks.before` and `hooks.after` to run correctly when OAuth authorization resumes after sign-in, account selection, or consent ([#9919](https://github.com/better-auth/better-auth/pull/9919)) For detailed changes, see [`CHANGELOG`](https://github.com/better-auth/better-auth/blob/03e0e36a98a21eaf0ed39e384012f3216c954415/packages/oauth-provider/CHANGELOG.md) ## `@better-auth/kysely-adapter` ### Bug Fixes - Fixed Turbopack build failures by inlining migration table constants, also restoring compatibility with Kysely 0.28 and 0.29 ([#9933](https://github.com/better-auth/better-auth/pull/9933)) For detailed changes, see [`CHANGELOG`](https://github.com/better-auth/better-auth/blob/03e0e36a98a21eaf0ed39e384012f3216c954415/packages/kysely-adapter/CHANGELOG.md) ## `@better-auth/passkey` ### Features - Added automatic resolution of authenticator names from AAGUID, exposing `getAuthenticatorName(aaguid)` and `commonAuthenticatorNames` so passkeys can display a friendly provider name like "1Password" or "Google Password Manager" ([#9927](https://github.com/better-auth/better-auth/pull/9927)) For detailed changes, see [`CHANGELOG`](https://github.com/better-auth/better-auth/blob/03e0e36a98a21eaf0ed39e384012f3216c954415/packages/passkey/CHANGELOG.md) ## `@better-auth/sso` ### Bug Fixes - Fixed `ERR_SUBJECT_UNCONFIRMED` errors caused by `clockSkew` not being forwarded to samlify's `ServiceProvider` when validating SAML responses ([#9748](https://github.com/better-auth/better-auth/pull/9748)) For detailed changes, see [`CHANGELOG`](https://github.com/better-auth/better-auth/blob/03e0e36a98a21eaf0ed39e384012f3216c954415/packages/sso/CHANGELOG.md) ## Contributors Thanks to everyone who contributed to this release: @bytaesu, @gustavovalverde, @ping-maxwell, @seebykilian, @WilsonnnTan, @zeroknowledge0x **Full changelog:** [`v1.6.14...v1.6.15`](https://github.com/better-auth/better-auth/compare/v1.6.14...v1.6.15)