Skip to content

chore(deps): Next 15.5.23 + React 19 β€” POST-HACKATHON, do not merge before 2026-08-14 - #30

Draft
edycutjong wants to merge 1 commit into
mainfrom
chore/next15-react19
Draft

chore(deps): Next 15.5.23 + React 19 β€” POST-HACKATHON, do not merge before 2026-08-14#30
edycutjong wants to merge 1 commit into
mainfrom
chore/next15-react19

Conversation

@edycutjong

Copy link
Copy Markdown
Owner

β›” Do not merge before the submission deadline (2026-08-14)

Staged deliberately so it stays away from main and the live judge-facing deploy until the hackathon submission is locked. Draft on purpose.

What it does

Clears all 21 open next Dependabot advisories β€” every one requires at most >=15.5.21, and this lands 15.5.23.

from to
next 14.2.35 15.5.23
react / react-dom 18.3.1 19.2.8
@types/react(-dom) 18.x 19.x
eslint-config-next ^14.2.15 ^15.5.23
wagmi ^2.12.17 ^2.19.5
@rainbow-me/rainbowkit ^2.1.7 ^2.2.11

wagmi and rainbowkit stay on their current major β€” bumped only for React 19 peer compatibility.

Migration surface was near-zero

Checked against the actual code: no async request APIs (cookies/headers/draftMode), no params/searchParams, no route handlers, no real fetch() calls, and all five routes remain statically prerendered. No application code changed β€” only manifests plus the generated next-env.d.ts.

Verified locally

tsc clean Β· 34 Vitest Β· 34 Playwright Β· eslint clean Β· production build green, 5/5 routes static.

Two things to weigh before merging

  1. Bundle grew (React 19): shared JS 87.3 β†’ 103 kB, landing 150 β†’ 162 kB. Watch the Web Performance / Lighthouse job.
  2. Next 15 pulls sharp@0.34.5 (optional dep) carrying its own high libvips advisories, patched only in >=0.35.0 via next 16. So this trades 21 next alerts for a smaller number of sharp ones β€” a big net win, not a clean sweep.

Separately worth doing

@rainbow-me/rainbowkit is declared but never imported β€” it appears only in comments and docs. Removing it would prune a large slice of the @wagmi/connectors transitive tree (the source of the axios/hono/ws alerts). Left out of this PR to keep the upgrade reviewable in isolation.

POST-HACKATHON BRANCH. Do not merge before the 2026-08-14 submission
deadline: this is a two-major framework upgrade on a live judge-facing
deploy, and the whole point of staging it here is to keep it away from main
until the submission is locked.

- next 14.2.35 -> 15.5.23 (all 21 open Dependabot next alerts require at
  most >=15.5.21, so 15.5.23 clears every one)
- react / react-dom 18.3.1 -> 19.2.8 (required by the Next 15 App Router)
- @types/react(-dom) -> 19.x, eslint-config-next -> 15.5.23
- wagmi ^2.12.17 -> ^2.19.5 and rainbowkit ^2.1.7 -> ^2.2.11 for React 19
  peer compatibility; both stay on their current major

Migration surface turned out to be near-zero for this app: no async request
APIs (cookies/headers/draftMode), no params/searchParams, no route handlers,
no real fetch() calls, and all five routes remain statically prerendered.
No application code changed β€” only manifests and the generated next-env.d.ts.

Verified locally: tsc clean, 34 Vitest, 34 Playwright, eslint clean,
production build green with all 5 routes still static.

Two things a reviewer must weigh before merging:
- Bundle grew: shared JS 87.3 -> 103 kB, landing 150 -> 162 kB (React 19).
  The Lighthouse gate may move; check the Web Performance job.
- Next 15 pulls sharp@0.34.5 (optional) which carries its own high libvips
  advisories, patched only in >=0.35.0 via next 16. So this trades 21 next
  alerts for a smaller number of sharp ones rather than clearing the board.
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.

1 participant