[PR #7439] [MERGED] refactor: separate adapters into different packages #15559

Closed
opened 2026-04-13 10:06:06 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/better-auth/better-auth/pull/7439
Author: @himself65
Created: 1/17/2026
Status: Merged
Merged: 1/20/2026
Merged by: @himself65

Base: canaryHead: himself65/2025/12/03/adapters


📝 Commits (1)

  • 87c7151 refactor: separate adapters into different packages

📊 Changes

98 files changed (+1240 additions, -214 deletions)

View changed files

📝 .github/workflows/adapter-tests.yml (+2 -2)
📝 demo/oidc-client/tsconfig.json (+1 -1)
e2e/adapter/package.json (+33 -0)
📝 e2e/adapter/test/adapter.memory.test.ts (+4 -4)
📝 e2e/adapter/test/create-test-suite.ts (+7 -2)
📝 e2e/adapter/test/drizzle-adapter/.gitignore (+0 -0)
📝 e2e/adapter/test/drizzle-adapter/adapter.drizzle.mysql.test.ts (+3 -3)
📝 e2e/adapter/test/drizzle-adapter/adapter.drizzle.pg.test.ts (+3 -3)
📝 e2e/adapter/test/drizzle-adapter/adapter.drizzle.sqlite.test.ts (+3 -3)
📝 e2e/adapter/test/drizzle-adapter/generate-schema.ts (+5 -2)
📝 e2e/adapter/test/kysely-adapter/adapter.kysely.custom-schema-pg.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/adapter.kysely.mssql.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/adapter.kysely.mysql.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/adapter.kysely.pg.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/adapter.kysely.sqlite.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/node-sqlite-dialect.test.ts (+4 -4)
📝 e2e/adapter/test/kysely-adapter/schema-reference-test-suite.ts (+3 -3)
📝 e2e/adapter/test/mongodb-adapter/adapter.mongo-db.test.ts (+1 -1)
📝 e2e/adapter/test/prisma-adapter/.gitignore (+0 -0)
📝 e2e/adapter/test/prisma-adapter/base.prisma (+0 -0)

...and 78 more files

📄 Description

https://github.com/better-auth/better-auth/pull/6514


Summary by cubic

Split all DB adapters into standalone packages (@better-auth/drizzle-adapter, @better-auth/kysely-adapter, @better-auth/memory-adapter, @better-auth/mongo-adapter, @better-auth/prisma-adapter) and updated Better Auth to re-export them. This modularizes adapters, simplifies dependencies, and moves adapter tests to their own e2e project with updated CI.

  • Refactors

    • Extracted adapters into separate packages with their own build, tests, and peer deps.
    • Better Auth now re-exports adapters from the new packages; removed internal test adapter export.
    • Moved adapter e2e tests to e2e/adapter and switched imports to @better-auth/* and better-auth/db.
    • Updated CI to run tests from e2e/adapter; added per-package vitest configs.
    • Adjusted tsconfig references, workspace, knip config, and dependency graph; moved Prisma generate to e2e/adapter.
  • Migration

    • Existing imports via better-auth/adapters/* continue to work.
    • For direct usage, import from @better-auth/ (e.g., @better-auth/prisma-adapter).
    • Run adapter tests from e2e/adapter with pnpm test.

Written for commit 87c715152f. Summary will update on new commits.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/better-auth/better-auth/pull/7439 **Author:** [@himself65](https://github.com/himself65) **Created:** 1/17/2026 **Status:** ✅ Merged **Merged:** 1/20/2026 **Merged by:** [@himself65](https://github.com/himself65) **Base:** `canary` ← **Head:** `himself65/2025/12/03/adapters` --- ### 📝 Commits (1) - [`87c7151`](https://github.com/better-auth/better-auth/commit/87c715152f24f448e642d208e5b4bae9aa223338) refactor: separate adapters into different packages ### 📊 Changes **98 files changed** (+1240 additions, -214 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/adapter-tests.yml` (+2 -2) 📝 `demo/oidc-client/tsconfig.json` (+1 -1) ➕ `e2e/adapter/package.json` (+33 -0) 📝 `e2e/adapter/test/adapter.memory.test.ts` (+4 -4) 📝 `e2e/adapter/test/create-test-suite.ts` (+7 -2) 📝 `e2e/adapter/test/drizzle-adapter/.gitignore` (+0 -0) 📝 `e2e/adapter/test/drizzle-adapter/adapter.drizzle.mysql.test.ts` (+3 -3) 📝 `e2e/adapter/test/drizzle-adapter/adapter.drizzle.pg.test.ts` (+3 -3) 📝 `e2e/adapter/test/drizzle-adapter/adapter.drizzle.sqlite.test.ts` (+3 -3) 📝 `e2e/adapter/test/drizzle-adapter/generate-schema.ts` (+5 -2) 📝 `e2e/adapter/test/kysely-adapter/adapter.kysely.custom-schema-pg.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/adapter.kysely.mssql.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/adapter.kysely.mysql.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/adapter.kysely.pg.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/adapter.kysely.sqlite.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/node-sqlite-dialect.test.ts` (+4 -4) 📝 `e2e/adapter/test/kysely-adapter/schema-reference-test-suite.ts` (+3 -3) 📝 `e2e/adapter/test/mongodb-adapter/adapter.mongo-db.test.ts` (+1 -1) 📝 `e2e/adapter/test/prisma-adapter/.gitignore` (+0 -0) 📝 `e2e/adapter/test/prisma-adapter/base.prisma` (+0 -0) _...and 78 more files_ </details> ### 📄 Description https://github.com/better-auth/better-auth/pull/6514 <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Split all DB adapters into standalone packages (@better-auth/drizzle-adapter, @better-auth/kysely-adapter, @better-auth/memory-adapter, @better-auth/mongo-adapter, @better-auth/prisma-adapter) and updated Better Auth to re-export them. This modularizes adapters, simplifies dependencies, and moves adapter tests to their own e2e project with updated CI. - **Refactors** - Extracted adapters into separate packages with their own build, tests, and peer deps. - Better Auth now re-exports adapters from the new packages; removed internal test adapter export. - Moved adapter e2e tests to e2e/adapter and switched imports to @better-auth/* and better-auth/db. - Updated CI to run tests from e2e/adapter; added per-package vitest configs. - Adjusted tsconfig references, workspace, knip config, and dependency graph; moved Prisma generate to e2e/adapter. - **Migration** - Existing imports via better-auth/adapters/* continue to work. - For direct usage, import from @better-auth/<adapter> (e.g., @better-auth/prisma-adapter). - Run adapter tests from e2e/adapter with pnpm test. <sup>Written for commit 87c715152f24f448e642d208e5b4bae9aa223338. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-13 10:06:06 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/better-auth#15559