[PR #7667] [MERGED] feat(adapter): improve select support #7480

Closed
opened 2026-03-13 13:38:14 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/better-auth/better-auth/pull/7667
Author: @jslno
Created: 1/28/2026
Status: Merged
Merged: 1/30/2026
Merged by: @himself65

Base: canaryHead: 01-28-2026/adapter-select


📝 Commits (3)

📊 Changes

8 files changed (+276 additions, -27 deletions)

View changed files

📝 e2e/adapter/test/adapter-factory/basic.ts (+156 -0)
📝 packages/core/src/db/adapter/factory.ts (+5 -5)
📝 packages/core/src/db/adapter/index.ts (+3 -0)
📝 packages/drizzle-adapter/src/drizzle-adapter.ts (+47 -5)
📝 packages/kysely-adapter/src/kysely-adapter.ts (+18 -3)
📝 packages/memory-adapter/src/memory-adapter.ts (+28 -11)
📝 packages/mongo-adapter/src/mongodb-adapter.ts (+17 -1)
📝 packages/prisma-adapter/src/prisma-adapter.ts (+2 -2)

📄 Description

Summary by cubic

Adds select support across adapters so you can return only specific fields from findMany (and findOne where supported). This reduces payload size and improves query performance.

  • New Features
    • Adapter API: Added select?: string[] to findMany (and findOne where supported).
    • Drizzle & Kysely: Field projection for findOne/findMany; Memory: findOne/findMany; works with joins, sorting, limit/offset.
    • Mongo & Prisma: Added select-based projection ($project/convertSelect) in findMany; respects joins.
    • Tests: Added e2e test for findMany with select.

Written for commit 928b002994. 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/7667 **Author:** [@jslno](https://github.com/jslno) **Created:** 1/28/2026 **Status:** ✅ Merged **Merged:** 1/30/2026 **Merged by:** [@himself65](https://github.com/himself65) **Base:** `canary` ← **Head:** `01-28-2026/adapter-select` --- ### 📝 Commits (3) - [`ad387f9`](https://github.com/better-auth/better-auth/commit/ad387f9673b298527db79826f4395e37eaed5aad) feat: enhance `select` support - [`75b9e93`](https://github.com/better-auth/better-auth/commit/75b9e931375a2ab050fcdba1986df8b7596a139b) chore: cleanup - [`928b002`](https://github.com/better-auth/better-auth/commit/928b002994da5528a13e31ec5f2ce17026d1b174) chore: update tests ### 📊 Changes **8 files changed** (+276 additions, -27 deletions) <details> <summary>View changed files</summary> 📝 `e2e/adapter/test/adapter-factory/basic.ts` (+156 -0) 📝 `packages/core/src/db/adapter/factory.ts` (+5 -5) 📝 `packages/core/src/db/adapter/index.ts` (+3 -0) 📝 `packages/drizzle-adapter/src/drizzle-adapter.ts` (+47 -5) 📝 `packages/kysely-adapter/src/kysely-adapter.ts` (+18 -3) 📝 `packages/memory-adapter/src/memory-adapter.ts` (+28 -11) 📝 `packages/mongo-adapter/src/mongodb-adapter.ts` (+17 -1) 📝 `packages/prisma-adapter/src/prisma-adapter.ts` (+2 -2) </details> ### 📄 Description <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Adds select support across adapters so you can return only specific fields from findMany (and findOne where supported). This reduces payload size and improves query performance. - **New Features** - Adapter API: Added select?: string[] to findMany (and findOne where supported). - Drizzle & Kysely: Field projection for findOne/findMany; Memory: findOne/findMany; works with joins, sorting, limit/offset. - Mongo & Prisma: Added select-based projection ($project/convertSelect) in findMany; respects joins. - Tests: Added e2e test for findMany with select. <sup>Written for commit 928b002994da5528a13e31ec5f2ce17026d1b174. 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-03-13 13:38:14 -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#7480