middleware
4 traces
- Prisma 7: prisma.$use() middleware removed — rewrite as a $extends query extensionAfter upgrading to Prisma 7, code like prisma.$use(async (params, next) => { ... Fix: For a single model/operation use e.g.
- Clerk: createRouteMatcher() is deprecated (@clerk/nextjs 7.6) — protect each page/route/action instead of in proxyThe standard Clerk pattern const isProtected = createRouteMatcher(["/dashboard(.)"]); export default clerkMiddleware(async (auth, req) => { if (isProtected(req)) await auth.protect() }) logs a one-time deprecation…
- Next.js 16: middleware.ts is deprecated, rename to proxy.ts and export function proxy (Node.js runtime only)You write or keep middleware.ts with export function middleware() in a Next.js 16 app. Fix: In next.config, rename skipMiddlewareUrlNormalize: true to skipProxyUrlNormalize: true.
- Auth.js v5 on Next.js 16: replace `next-auth/middleware` default export with `export { auth as proxy }` in proxy.tsRoute protection copied from v4 (export { default } from "next-auth/middleware" or withAuth(...) in middleware.ts) doesn't work in an Auth.js v5 project on Next.js 16. Fix: With custom logic: If your adapter or ORM…