Repository navigation
Update dependency better-auth to v1.7.9 - #68
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/better-auth-1.x
branch
from
October 16, 2026 06:02
3b96a2c to
db55fd2
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.7.7→1.7.9Release Notes
better-auth/better-auth (better-auth)
v1.7.9Compare Source
Patch Changes
#11766
6edaa61Thanks @bytaesu! - AnonAPIError.onErrorhandler that throws or rejects no longer fails the request or causes an unhandled promise rejection. The error is logged and the original error response is returned. Async handlers now finish before the response is sent.Updated dependencies []:
v1.7.8Compare Source
Patch Changes
#11512
4175b34Thanks @bytaesu! - Align the installed@better-auth/utilsversion withbetter-callwhile accepting^0.4.2 || ^0.5.0across official package peers.#11565
b1cfc1eThanks @bytaesu! - Omit non-returned custom fields from inferred output schema types.#11540
678c555Thanks @bytaesu! - Align cookie security attributes with RFC 6265bis.#10591
193efffThanks @kdelay! - Expired or revoked sessions now clear stale cookies when usingcustomSession.#11625
369176eThanks @gustavovalverde! - Fixed single-use checks for apps that setadvanced.database.generateId: "uuid". Default id generation is unaffected, and no migration is needed.private_key_jwtclient authentication, and magic link or email OTP sign-ins that adopt an unverified account failed with aNOT NULLerror on theidcolumn. They now work. SIWE sign-in ignored theemailfield and used the wallet-derived address; it now uses the supplied email when no other account has it.With
generateId: "serial", behavior is unchanged: these checks need string ids, and Better Auth now logs a warning the first time one of these flows runs.#11391
352d04cThanks @breken-ai! - FixcustomSessiontreating session lookup failures as signed-out users. Server-sidegetSessionnow throws an API error, and HTTP clients receive an error response.#11750
e9d9921Thanks @gustavovalverde! - Generic OAuth providers configured withdiscoveryUrlnow recover without a restart when discovery fails at startup. Since 1.7.3, a provider whose discovery request failed at boot (for example, because the identity provider was still starting) was skipped, and every sign-in returnedPROVIDER_NOT_FOUNDuntil the app restarted. Better Auth now retries discovery on the next sign-in, callback, or account-linking request for that provider, and the provider works as soon as discovery succeeds. While discovery keeps failing, sign-in and account linking still returnPROVIDER_NOT_FOUNDand callbacks redirect witherror=oauth_provider_not_found, and each request may wait up to 10 seconds for the retry.#11549
1bd5c37Thanks @bytaesu! - FixlastLoginMethodfailing sign-in whencookieNameormaxAgeis explicitlyundefined.#11174
766cfb3Thanks @Bekacru! - Stop double-decodingcallbackURL,newUserCallbackURLanderrorCallbackURLon magic link verify so percent-encoded characters in callback query params are preserved.#11505
c46992fThanks @bytaesu! - Preserve the referenced model and field keys when generating Kysely migrations, so custom table names that match another model key produce the intended foreign keys.#11718
1d95ebfThanks @bytaesu! - Fix missing device sessions and failed automatic session switching after cache eviction whenstoreSessionInDatabaseis enabled andpreserveSessionInDatabaseis disabled. Automatic switching now follows the order of held sessions, and large lists or sessions whose users no longer exist no longer cause valid sessions to disappear.#10266
c68b2cdThanks @shiminshen! - Projects that enableexactOptionalPropertyTypescan use theoauthProvider()andmcp()plugins again. Since 1.7.0, adding either plugin tobetterAuth()failed to type-check with a TS2322 error.#11637
2627237Thanks @gustavovalverde! - Projects using the organization plugin withskipLibCheck: falseno longer getTS2536: Type '"role"' cannot be used to index type ...fromcrud-members.d.mts. Therolereturned bygetActiveMemberRoleis now typed as the organization's role names directly. Projects withskipLibCheck: true(the default in most templates) were unaffected.#10866
3d1f008Thanks @heliohm! - The organization plugin no longer pulls every zod locale into server bundles.#11626
67743edThanks @gustavovalverde! - Password resets and password changes no longer keep the new password when revoking the user's sessions fails. WithrevokeSessionsOnPasswordResetorrevokeOtherSessions, database sessions are revoked and the password is saved in one transaction when transactions are enabled for the adapter, so a failure leaves the old password and sessions in place. Sessions in secondary storage are still removed after commit, on a best-effort basis. This covers/reset-password, the email OTP and phone number reset endpoints, and/change-password.onPasswordResetnow runs after sessions are revoked, so a throwing callback no longer leaves them active, and a callback that lists the user's sessions no longer sees the revoked ones.#10698
f0ce580Thanks @jashkarangiya! - If you set the phone number plugin'sverifyOTPoption,/phone-number/reset-passwordnow checks the code with it, as/phone-number/verifyalready does. Before, password reset always compared the code with the one Better Auth generated, so apps that verify codes through a provider such as Twilio Verify could not reset passwords. If yoursendPasswordResetOTPsends the code Better Auth generates, make sureverifyOTPaccepts that code. Apps that don't setverifyOTPare unaffected.#11646
07a0938Thanks @gustavovalverde! - A failed password reset no longer spends the reset link or OTP./reset-password,/email-otp/reset-passwordand/phone-number/reset-passwordnow check the token or code without consuming it, validate and hash the new password, then consume it in the same transaction as the session revocation and password write. A rejected password, such as one refused byhaveIBeenPwned, always leaves the link or OTP usable. A later failure, such as a failed session revocation or password write, also leaves it usable when the adapter's transactions are enabled and verification values are stored in the database (the default without secondary storage, orverification.storeInDatabase: true). Wrong codes still count against the OTP attempt limit.#11643
92dfceaThanks @gustavovalverde! - A sign-up that fails after its session is created no longer leaves that session in secondary storage. WithstoreSessionInDatabaseenabled andpreserveSessionInDatabaseoff, the secondary-storage copy is written only after the sign-up commits, and listing a user's sessions now reads the database, so a session whose cached copy failed to write is still listed and revoked. With other secondary-storage settings, sign-up, passkey registration and SSO sign-in withresolveUserkeep the session write inside their transaction, so a storage failure rolls back the new user, passkey or account instead of keeping them without a session. A session revoked by asession.create.afterdatabase hook also stays revoked.#11488
e15625fThanks @Bekacru! - SvelteKit 3 projects can now install Better Auth without--legacy-peer-deps. The@sveltejs/kitpeer range now includes^3.0.0; SvelteKit 2 projects are unaffected.Updated dependencies [
4175b34,435645e,369176e,0cfe07d,9904b29,e78f15a,60525e0,8133265,ea85d13,916ef5c,1d95ebf,6214610,67743ed,c46d2a6,92dfcea,a9f455d,9725f1b]:Configuration
📅 Schedule: (in timezone America/Los_Angeles)
* * * * 4)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.