Commit Graph
4400 Commits
Author SHA1 Message Date
Bereket Engida b766b22865 chore: lint 2025-07-09 08:13:33 -07:00
reslearandGitHub ab25180ec2 fix: correct way detect facebook limited token jwt (#2877) 2025-07-09 02:25:10 -07:00
Bereket Engida 2dcb07c6fa chore: release v1.3.0-beta.7 2025-07-09 01:13:44 -07:00
Bereket EngidaandGitHub 378eb1d66d feat: add inferAuth to infer plugin types and more on the client without needing client plugins (#3313)
* apply inference

* cleanup

* cleanup
2025-07-09 01:12:32 -07:00
991e200ff0 feat: add sendOnSignIn option to make sending verification link in sign in route explicit (#2422)
* feat(signin): make verification sending in sign in route explicit

* lint

* add option in docs

---------

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-07-08 20:57:36 -07:00
Undefined NinjaandGitHub 9bf74021c9 fix(oauth): extended oauth2 tokens with refresh_token_expires_in field (#3167)
* docs: corrected github user email scope name

* docs: cubic dev suggestion

* feat(oauht2/utils): added `refresh_token_expires_in` field in `getOAuth2Tokens`
2025-07-08 20:49:35 -07:00
MaxwellandGitHub 8e7eef04ae fix(oauth): Google prompt doesn't allow + (#3303)
* fix(oauth): Google prompt doesn't allow `+`

In order to get `consent` and `select_account`, we need to pass it like "select_account consent". However BA's type definitions only allow for "select_account+consent" - likely because it's the standard?

Anyway this PR will take that `select_account+consent` defined by the user and convert it to the spaced version (`select_account consent`)

* chore: lint

* chore: cleanup
2025-07-08 08:33:21 -07:00
Bereket Engida 72a6275f0b chore: release v1.3.0-beta.6 2025-07-07 23:23:32 -07:00
Bereket Engida 2007ebbc90 chore: fix types 2025-07-07 19:00:15 -07:00
0bff4af96b feat: notion provider (#3068)
* feat: add notion provider

* chore: lint

* chore: add docs for notion provider

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-07-07 18:53:52 -07:00
3439fe954f feat(api-key): async support for verify key (#3204)
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-07 18:21:48 -07:00
cce6c2d74f docs(feat): added apple sign in JWT generation in docs (#2453)
* docs: Add guide for Sign In with Apple

* docs-feat: add apple JWT generator

* fix-lint: ran lint:fix to fix CI test

* chore: refactor to remove jose

* update docs

* chore: lock file

* fix test

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-07 17:21:10 -07:00
Bereket Engida daa6531301 Merge branch 'main' into v1.3 2025-07-07 13:44:20 -07:00
KinfeMichael TarikuGitHubBereket Engidacubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
c483fa14db fix(two-factor): otp separator mismatch (#2989)
* fix: otp value and tries separator

* Update packages/better-auth/src/plugins/two-factor/otp/index.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* lint

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-07 13:10:13 -07:00
Bereket Engida e9a9e81868 ear:werge branch 'main' into v1.3 2025-07-07 13:05:45 -07:00
5e36e37d73 chore: export options on the plugin (#2681)
* docs: typo in admin plugin

* fix: export options

* fix

* import

* import

* lint

* import

* lint

* fix: cast options to any

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-07 13:03:04 -07:00
KinfeMichael TarikuandGitHub ba5f13c58a fix(expo): expo plugin should import types from the types path (#2526)
* fix: plugin import type

* lint

* expo type compat

* expo type compat

* type import

* plugin import

* type compat
2025-07-07 12:54:26 -07:00
mattandGitHub 6ef5104b13 fix(two-factor): getting totp uri shouldn't require twoFactor enabled (#2620) 2025-07-07 12:53:17 -07:00
KyleandGitHub 0989ebb13f fix: exclude current user from username update checks (#2612)
* fix: exclude current user from username update checks

* fix lint

* explicitly check for the session

* fix test
2025-07-07 12:33:39 -07:00
Bereket EngidaandGitHub e3a450e70e feat(email-otp): support email verification override (#3292)
* feat(email-otp): allow overriding the default email verifier with email otp

* update docs

* cleanup
2025-07-07 10:41:28 -07:00
MaxwellGitHubKinfeMichael Tarikucubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>Bereket Engida
00d1e938c0 feat: Add encryption for OTPs and other verification information (#3164)
* add: email-otp plugin hashing or encrypting

* add: one-time-token hashing

* chore: cleanup

* add: magic link hashing

* add: two-factor

* chore: typo

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* remove type from email otp hasher and encryptor

* chore: lint

* chore: fix types

* fix: types & test failing

* chore: lint

* chore: remove console.log

* refactor: remove if block awaits

* refactor: simplify OTP comparison

---------

Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-07 09:21:54 -07:00
Erik MüllerandGitHub b185143b83 fix: import setCookie from tanstack start core package (#3284) 2025-07-07 07:58:30 -07:00
Bereket Engida 9c1c47fc25 chore: release v1.3.0-beta.5 2025-07-06 23:50:08 -07:00
Bereket Engida fd8cc52977 chore: update dependencies in pnpm-lock.yaml and package.json
- Bump '@types/bun' from 1.2.17 to 1.2.18
- Update '@better-auth/utils' from 0.2.5 to 0.2.6
- Adjust versioning for 'bun-types' and 'vinxi' to reflect new dependencies
2025-07-06 23:49:58 -07:00
MaxwellandGitHub 32d838e37c fix(admin): throw an error if user id in /remove-user is invalid (#3271) 2025-07-06 13:37:02 -07:00
LightTab2andGitHub f9b19fb11b fix(jwt): Allow to generate JWKS with other algorithm than the default one (#3219)
* Fixes #3218

* Lint

* Adds tests to every currently available algorithm

* fixes duplicate test names

Oversight

* Disables EdDSA(Ed448) test for now, removes debug print

Will think if the found bug should be addressed in a seperate issue

* Drops testing support for Diffie-Hellman algorithms

Adds comments why some algorithms are not tested

* new tests are for token generation

On my local machine all tests passed, but on CI some weird error occurred with `getSession`. Changed `client.getSession` to simply `client.token`. Should consider separate tests for `client.getSession`

* More robust tests, checks for failures of called testing functions

Tests `signInWithTestUser` and `getTestInstance` for possible failures

* Should locate which test fails

* removes inline functions

They're the reason why errors escaped `it()`!

* Fixes 'createKeys' inline function replacement

* Adds client tests

* Adheres to AI review, skips a duplicate test

AI might have hallucinated there but w/e

* Final cleanup, `headers` as `var` to infer types correctly

* Headers fix

I forgot to commit one change when typescript check failed and maybe because of that. Setting headers to `var` breaks tests, so gotta revert
2025-07-06 00:21:09 -07:00
Bereket Engida b2494d330f chore: release v1.3.0-beta.4 2025-07-05 21:58:49 -07:00
Bereket Engida 3b89319115 Merge branch 'main' into v1.3 2025-07-05 21:58:38 -07:00
Inas LuthfiandGitHub 2734d07e88 fix(origin-check): support protocol-specific wildcard trusted origins (#3155)
- Fix wildcard matching to properly handle protocol-specific patterns
- Protocol-specific wildcards (https://*.example.com) now match full origin
- Host-only wildcards (*.example.com) continue to match just the host
- Add comprehensive test coverage for protocol-specific scenarios
- Prevents security vulnerability where HTTP origins could match HTTPS wildcards
2025-07-05 14:28:13 -07:00
JackandGitHub 57baf02f84 feat(anonymous): update generateName to support returning a promise (#3259) 2025-07-04 11:48:00 -07:00
Bereket EngidaandGitHub e82bcb719c fix(phone-number): verification value should be removed after successful password reset (#3261)
* fix: should remove verification value after succesful reset password flow

* add test
2025-07-04 10:49:43 -07:00
93a5a84851 chore: update expo & cli package.json and readme (#2893)
* fix: expo package file

* fix: add cli and expo readme

* docs: updated expo plugin readme

* docs(expo): add missing package fields

* docs(cli): improve readme and package file

* baseURL config

* add keywords

* Update packages/cli/README.md

Co-authored-by: Taqib Ibrahim <Taqib.ibrahim@gmail.com>

---------

Co-authored-by: Taqib <taqib.ibrahim@gmail.com>
Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
2025-07-03 15:33:04 -07:00
Bereket Engida 5b2f87535c Merge remote-tracking branch 'origin/main' into v1.3 2025-07-03 11:41:56 -07:00
ShubhamandBereket Engida d1ae4bd2f2 fix(email-otp): throw USER_NOT_FOUND when sign-up is disabled (#3223)
* email-otp: throw USER_NOT_FOUND when sign-up is disabled

* formatting
2025-07-03 11:40:11 -07:00
MaxwellBereket Engidacubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
eea77a5020 fix(two-factor): incorrect default OTP period & fix incorrect docs (#3231)
* docs(2fa): fix incorrect period

* fix: default period is 3 minutes

* Update packages/better-auth/src/plugins/two-factor/index.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* chore: lint

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-03 11:40:11 -07:00
AbbasandBereket Engida 4a5d798999 fix(drizzle-cli): use serial as PK when useNumberId is enabled (#3228) 2025-07-03 11:40:11 -07:00
MaxwellBereket Engidacubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
b136f1b824 fix(api-key): incorrect rate limit error status code (#3213)
* fix(api-key): improve error statuses

* Update packages/better-auth/src/plugins/api-key/routes/verify-api-key.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* fix: tests

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-03 11:40:11 -07:00
Bereket Engida f6df2cf29b chore: release v1.2.12 2025-07-03 11:40:11 -07:00
6e291382fe feat: linear social provider (#2617)
* feature: linear oauth

* update profile map

* remove props spread from stringIcon

* update icon svg props

* updates

* update

---------

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-07-03 11:36:18 -07:00
ShubhamandGitHub 379b5d872c fix(mongodb): honor custom generateId in create (#3178) 2025-07-02 14:11:08 -07:00
bb47937be5 chore: fix react dual reference and update react types to 19.1.0 (#3246)
* react-dual

* chore: update react types

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-02 14:00:29 -07:00
MaxwellandGitHub b08d1d2099 fix(organization): list-teams endpoint returns unknown (#3243) 2025-07-02 13:58:24 -07:00
KinfeMichael TarikuandGitHub 6444c0498e fix(cli): format drizzle schema output (#3244) 2025-07-02 13:45:03 -07:00
ShubhamandGitHub 5ead4ab2f2 fix(db): add varchar to postgres string mapping and normalize type comparison (#3225) 2025-07-01 10:10:01 -07:00
ShubhamandGitHub 74311b4a08 fix(email-otp): throw USER_NOT_FOUND when sign-up is disabled (#3223)
* email-otp: throw USER_NOT_FOUND when sign-up is disabled

* formatting
2025-07-01 08:58:52 -07:00
MaxwellGitHubcubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
6beac425dd fix(two-factor): incorrect default OTP period & fix incorrect docs (#3231)
* docs(2fa): fix incorrect period

* fix: default period is 3 minutes

* Update packages/better-auth/src/plugins/two-factor/index.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* chore: lint

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-01 08:54:26 -07:00
AbbasandGitHub 12e15cce41 fix(drizzle-cli): use serial as PK when useNumberId is enabled (#3228) 2025-06-30 18:36:23 -07:00
MaxwellGitHubcubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
7c4719ed77 fix(api-key): incorrect rate limit error status code (#3213)
* fix(api-key): improve error statuses

* Update packages/better-auth/src/plugins/api-key/routes/verify-api-key.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* fix: tests

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-06-28 23:10:53 -07:00
Bereket Engida afc7e2fb85 chore: release v1.2.12 2025-06-27 23:37:40 -07:00
Bereket Engida bb19306236 chore: release v1.3.0-beta.3 2025-06-27 23:37:18 -07:00