Files
Will Binns-Smith be8275c86c @next/codemod: Add experimental.turbo to turbopack codemod for Next.js configs (#82134)
This adds a new transform to `@next/codemod` that updates
`next.config.{js,ts}` that updates the deprecated `experimental.turbo`
property to the new top-level `turbopack` property.

Details:
- Only operates on files called next.config.js or next.config.ts, in the
case the codemod tool is run on a large codebase.
- Updates _any_ object literal with a `experimental.turbo` property to
use `turbopack`. Since this transform is constrained to Next.js configs,
there shouldn’t be many false positives.
- Much of this change was written by Copilot. I simplified it, and
refactored it to make it more readable and safe.

Test Plan:
- `pnpm run build && pnpm test -- -t
next-experimental-turbo-to-turbopack` in the codemod directory
- Tested on several publicly available next configs that used the
deprecated property
2025-07-29 18:30:20 -07:00

13 lines
356 B
TypeScript

import type { FileInfo } from 'jscodeshift'
import path from 'node:path'
export function isNextConfigFile(file: FileInfo): boolean {
const parsed = path.parse(file.path || '/')
return (
parsed.base === 'next.config.js' ||
parsed.base === 'next.config.ts' ||
parsed.base === 'next.config.mjs' ||
parsed.base === 'next.config.cjs'
)
}