Skip to content

Upgrade to Next.js 16 and update all dependencies#41

Merged
chriskehayias merged 1 commit intomainfrom
feature/upgrade-nextjs-16
Feb 20, 2026
Merged

Upgrade to Next.js 16 and update all dependencies#41
chriskehayias merged 1 commit intomainfrom
feature/upgrade-nextjs-16

Conversation

@chriskehayias
Copy link
Contributor

Summary

  • Upgrade Next.js from 15.5.12 to 16.1.6 (Turbopack now default bundler)
  • Rename middleware.tsproxy.ts and export function middlewareproxy (Next.js 16 breaking change)
  • Replace next lint with eslint . (next lint removed in v16) and modernize eslint.config.mjs to native flat config
  • Update all dependencies to latest: next-auth beta.30, openai 6.x, zod 4.x, dotenv 17.x, TypeScript 5.9, Tailwind CSS 4.2, all Radix UI packages

Key Changes

Package Before After
next 15.5.12 16.1.6
next-auth 5.0.0-beta.28 5.0.0-beta.30
openai 5.5.0 6.22.0
zod 3.25.32 4.3.6
typescript 5.x 5.9.3
tailwindcss 4.1.7 4.2.0

Test plan

  • npm run build — production build passes with Turbopack
  • npm run lint — ESLint passes with new flat config
  • npm run test:run — all 150 tests pass across 6 test files
  • npm run dev — verify dev server starts cleanly
  • Manual auth flow: signin → authenticated pages → signout
  • Verify proxy (formerly middleware) correctly protects routes and redirects unauthenticated users

🤖 Generated with Claude Code

- Upgrade Next.js from 15.5.12 to 16.1.6 (Turbopack now default bundler)
- Rename middleware.ts to proxy.ts (Next.js 16 breaking change)
- Replace `next lint` with `eslint .` (next lint removed in v16)
- Modernize eslint.config.mjs to native flat config (remove FlatCompat)
- Update next-auth from 5.0.0-beta.28 to 5.0.0-beta.30
- Update openai from 5.5.0 to 6.22.0
- Update zod from 3.25.32 to 4.3.6
- Update dotenv from 16.5.0 to 17.3.1
- Update TypeScript to 5.9.3, Tailwind CSS to 4.2.0
- Update all @radix-ui packages to latest
- Remove @eslint/eslintrc (no longer needed without FlatCompat)
- Fix prefer-const lint issue in scripts/setup.ts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@chriskehayias chriskehayias merged commit 9f84a4e into main Feb 20, 2026
@chriskehayias chriskehayias deleted the feature/upgrade-nextjs-16 branch February 20, 2026 12:01
Jonny-TMC referenced this pull request in The-Moody-Church/mp-charts Feb 20, 2026
 #35)

Cherry-picked applicable changes from upstream MinistryPlatform-Community/MPNext:

From PR #41 (Next.js 16 upgrade):
- Rename middleware.ts → proxy.ts (Next.js 16 deprecation)
- Update exported function middleware() → proxy()
- Remove unused @eslint/eslintrc from devDependencies

From PR #42 (docs + deps):
- Upgrade @inquirer/prompts ^7 → ^8.2.1
- Update components.md layout import patterns for barrel exports

PR #39 (sanitizeTypeName fix) was already incorporated.

Deferred: major dep bumps from PR #41 (openai v6, zod v4, dotenv v17).

All 150 tests pass, lint clean.

https://claude.ai/code/session_015o8wYQZmTdBkBrkBezRqqP
Jonny-TMC referenced this pull request in The-Moody-Church/mp-charts Feb 20, 2026
Upgrades three major dependencies deferred from upstream PR #41.

Zod v4: Changed z.string().uuid() → z.guid() in generator and 10
generated schemas to avoid strict RFC 4122 validation breaking MP
GUIDs. Updated helper.ts type imports. Kept deprecated-but-working
v3 chain forms (email, url, datetime) for .max() chaining compat.

openai v6: Not imported anywhere in codebase (phantom dep), safe bump.
dotenv v17: Only used via dotenv.config() in generator, API compatible.

150 tests pass, build succeeds.

https://claude.ai/code/session_015o8wYQZmTdBkBrkBezRqqP
Jonny-TMC referenced this pull request in The-Moody-Church/mp-charts Feb 20, 2026
Completes the upstream sync by bumping 24 remaining dependency pins
to match upstream targets from PRs #38 and #41. Includes 2 major
dev dep bumps (@types/node ^22→^25.3, jsdom ^27→^28) and adds
Zod v4 validation note to CLAUDE.md Architecture section.

https://claude.ai/code/session_015o8wYQZmTdBkBrkBezRqqP
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant