Skip to content

Conversation

@goldflag
Copy link
Collaborator

@goldflag goldflag commented Oct 27, 2025

Summary by CodeRabbit

  • Chores
    • Updated Next.js to version 16
    • Updated react-day-picker to version 9
    • Updated TypeScript configuration for improved compatibility

@vercel
Copy link

vercel bot commented Oct 27, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
rybbit Ready Ready Preview Comment Oct 27, 2025 6:08am

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 27, 2025

Walkthrough

This PR updates project configuration by adding npm command permissions to Claude settings, upgrading Next.js and react-day-picker dependencies, and reformatting TypeScript configuration for Next.js 16 compatibility.

Changes

Cohort / File(s) Summary
Claude permissions
.claude/settings.local.json
Added three new allow-list entries for Bash commands: npm view:*, npm install:*, and timeout 30 npm run dev:*
Dependency upgrades
client/package.json
Updated next from 15.3.2 to ^16.0.0 and react-day-picker from ^8.10.1 to ^9.11.1
TypeScript configuration
client/tsconfig.json
Reformatted configuration for multi-line readability; changed jsx setting from "preserve" to "react-jsx" for Next.js 16 compatibility; added .next/dev/types/**/*.ts to include paths

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify Next.js 16 and react-day-picker 9.11.1 compatibility with existing codebase
  • Confirm jsx: "react-jsx" setting is appropriate and tested with Next.js 16
  • Validate that added npm permissions in Claude settings are necessary and follow security best practices

Possibly related PRs

  • Turnstile #643: Modifies .claude/settings.local.json to add Bash npm-related allow-list entries and updates client/package.json dependencies in parallel.

Poem

🐰 Dependencies dance in the version ballet,
Next.js springs forward to sixteen's new day,
Config and permissions aligned so fine,
A smooth upgrade—the stars all align! ✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title "next 16" directly refers to the primary change in this pull request, which is upgrading Next.js from version 15.3.2 to ^16.0.0 in client/package.json. The supporting changes—updates to react-day-picker, adjustments to tsconfig.json (including the jsx setting change from "preserve" to "react-jsx" which is necessary for Next.js 16), and the addition of permission entries in .claude/settings.local.json—are all in service of this main version upgrade. The title is concise, specific, and clear enough that a teammate reviewing the commit history would immediately understand the primary objective.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch next-16

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 70302d8 and 64c5fb0.

⛔ Files ignored due to path filters (1)
  • client/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (3)
  • .claude/settings.local.json (1 hunks)
  • client/package.json (1 hunks)
  • client/tsconfig.json (2 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
client/**/*

📄 CodeRabbit inference engine (CLAUDE.md)

Frontend: Use Next.js, Tailwind CSS, Shadcn UI, Tanstack Query, Zustand, Luxon, Nivo, and react-hook-form

Files:

  • client/package.json
  • client/tsconfig.json
🧠 Learnings (1)
📚 Learning: 2025-08-03T17:30:25.559Z
Learnt from: CR
PR: rybbit-io/rybbit#0
File: CLAUDE.md:0-0
Timestamp: 2025-08-03T17:30:25.559Z
Learning: Applies to client/**/* : Frontend: Use Next.js, Tailwind CSS, Shadcn UI, Tanstack Query, Zustand, Luxon, Nivo, and react-hook-form

Applied to files:

  • client/package.json
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: Build Client Images (ubuntu-24.04-arm, linux/arm64)
  • GitHub Check: Build Client Images (ubuntu-latest, linux/amd64)
🔇 Additional comments (4)
client/tsconfig.json (2)

18-18: Confirm jsx setting aligns with Next.js 16 requirements.

Changing jsx from "preserve" to "react-jsx" enables the React 17+ JSX transform, which removes the need for React imports in JSX files. This is appropriate for Next.js 16 with React 19, but verify that:

  • All existing JSX files compile without errors
  • No legacy imports of React are required anywhere
  • The build succeeds without issues

31-40: Include/exclude updates are appropriate for Next.js 16.

Adding ".next/dev/types/**/*.ts" to the include section ensures TypeScript recognizes Next.js-generated type definitions. The multi-line formatting improves readability. This aligns with Next.js 16 best practices.

.claude/settings.local.json (1)

17-19: Claude permissions additions are appropriate.

The three new npm-related permissions enable Claude to verify dependencies and test the development environment. The timeout 30 wrapper on npm run dev:* prevents hanging processes. These are reasonable additions for a Next.js project.

client/package.json (1)

69-69: Migration to react-day-picker 9.x is complete and correct.

Verification confirms the codebase has been properly updated for v9.x compatibility:

  • Custom components (IconLeft, IconRight) follow the v9.x redesigned API pattern
  • All classNames properties use v9.x names (day_range_start, day_range_end, day_selected, etc.)
  • No deprecated APIs are referenced (useInput hook, onWeekNumberClick callback)
  • DateRange type and component props (mode, selected, onSelect) are v9.x compatible

"luxon": "3.6.1",
"mapbox-gl": "^3.15.0",
"next": "15.3.2",
"next": "^16.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Verify Next.js 16 stability and compatibility.

Next.js 16.0.0 is beyond my knowledge cutoff. Please confirm that this version is stable for production use and that the existing dev script with --turbopack (line 6) remains compatible.


🌐 Web query:

What is the release status and stability of Next.js version 16.0.0?

💡 Result:

Next.js 16.0.0 is a general-availability (stable) release published by Vercel on October 21, 2025. It promotes several previously experimental features to stable (e.g., React Compiler support), makes Turbopack the default bundler, and requires/upgrades to the matching React release. Vercel’s support policy and upgrade docs indicate Next.js 16 is intended for production use (with the usual recommendation to run the latest Active/Maintenance LTS or patch releases). [1][2][3]

Sources:
[1] Next.js blog — “Next.js 16” (Oct 21, 2025).
[2] Next.js upgrade guide — “Upgrading: Version 16”.
[3] Next.js support policy (canary vs stable and LTS recommendations).


Remove the --turbopack flag from the dev script.

In Next.js 16, the --turbopack flag in scripts is no longer necessary and should be removed. Turbopack is now the default bundler and requires no configuration. Update your dev script to next dev without the flag.

🤖 Prompt for AI Agents
In client/package.json around line 65, the dev script includes the obsolete
--turbopack flag; edit the scripts.dev entry to remove the flag and use "next
dev" (i.e., update the dev command to simply run Next.js dev mode), and check
for any other occurrences of --turbopack in package.json scripts and remove them
as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants