build(deps): bump the next-react group across 1 directory with 4 updates#369
Conversation
57f8c03 to
43b566d
Compare
|
@dependabot rebase |
43b566d to
c0c78f6
Compare
|
@dependabot recreate |
c0c78f6 to
c272418
Compare
Bumps the next-react group with 4 updates in the / directory: [next](https://github.com/vercel/next.js), [react](https://github.com/facebook/react/tree/HEAD/packages/react), [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next). Updates `next` from 16.2.4 to 16.2.6 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](vercel/next.js@v16.2.4...v16.2.6) Updates `react` from 19.2.5 to 19.2.6 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.2.6/packages/react) Updates `react-dom` from 19.2.5 to 19.2.6 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.2.6/packages/react-dom) Updates `eslint-config-next` from 16.2.4 to 16.2.6 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v16.2.6/packages/eslint-config-next) --- updated-dependencies: - dependency-name: eslint-config-next dependency-version: 16.2.6 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: next-react - dependency-name: next dependency-version: 16.2.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-react - dependency-name: react dependency-version: 19.2.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-react - dependency-name: react-dom dependency-version: 19.2.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-react ... Signed-off-by: dependabot[bot] <support@github.com>
c272418 to
19a89f1
Compare
|
BLOCKED — eslint-config-next major bump introduces a new lint rule ( Failing locations (ESLint job [76445336974]):
All three trip the new rule (added in eslint-config-next ~v16.2.5+ alongside React 19's tighter effect-cascade guidance). The bump isn't doing anything wrong here — it's surfacing genuine effect-body setState calls that the previous ruleset let through. Out of this skill's scope to fix the consumer code. Three resolution paths for Julian:
Will leave the PR open with this comment as the blocking finding. |
# Conflicts: # package.json # pnpm-lock.yaml
# Conflicts: # pnpm-lock.yaml
julianken-bot
left a comment
There was a problem hiding this comment.
Verdict: APPROVE (1 IMPORTANT)
Security-motivated patch bump (next 16.2.6 ships 7 High + 4 Moderate + 2 Low advisory fixes including GHSA-8h8q-6873-q5fj, GHSA-492v-c6pp-mqqv, GHSA-c4j6-fc7j-m34r). Mergeable as-is; the one inline finding is small and non-blocking.
Verification ledger
| Check | Command | Result |
|---|---|---|
| HEAD unchanged mid-review | gh pr view 369 --json headRefOid |
5695ecb (matches initial fetch) |
| Net source diff | git diff ec7099b..5695ecb -- src/ |
+4 lines across 2 files, all // eslint-disable-next-line |
| Bot collaborator permission | gh api repos/.../collaborators/julianken-bot/permission |
write |
| Typecheck (post-install) | pnpm tsc --noEmit |
exit 0 |
| Lint at PR HEAD with 16.2.6 | pnpm exec eslint src/components/MobileNav.tsx src/components/agentic-patterns/HubFilterableContent.tsx |
1 warning (unused-disable, line 88) — see inline finding |
| Disable-still-needed check | Removed each disable individually + re-ran eslint | MobileNav:31, MobileNav:51, HubFilterableContent:86 all re-trigger error; HubFilterableContent:88 does NOT |
| CI on this HEAD | gh pr checks 369 |
all green |
| Lockfile reconciliation | git diff ec7099b..5695ecb -- package.json |
exactly the 4 declared bumps, no scope creep |
Findings
HubFilterableContent.tsx:88— IMPORTANT — over-appliedset-state-in-effectdisable directive (see inline).
Specific things that are right
- The three load-bearing disables (
MobileNav:31,MobileNav:51,HubFilterableContent:86) are placed at sites where the rule genuinely fires and where the underlying patterns are defensible per React docs: portal-mount flag (#31), prop-driven exit animation (#51), and external-system hydration fromwindow.location(#86).useEffect/setStateis the correct shape for each — they are not derivable during render. - The merge resolution against main is clean:
package.jsonshows exactly the 4 declared version bumps and nothing else; the lockfile diff matches. - The two merge commits use Julian's noreply email (proper attribution).
Bottom line
Merge. After merge, optionally remove the line-88 disable in a follow-up touch — it's a one-liner and need not gate this PR.
—
Reviewed as @julianken-bot under the reviewing-as-julianken-bot rubric. Same-tier risk: NO (implementer path used Sonnet for orchestration; reviewer is Opus 4.7).
| if (q && q !== query) { | ||
| // eslint-disable-next-line react-hooks/set-state-in-effect | ||
| setQuery(q); | ||
| // eslint-disable-next-line react-hooks/set-state-in-effect |
There was a problem hiding this comment.
IMPORTANT: This // eslint-disable-next-line react-hooks/set-state-in-effect directive is reported as unused by eslint-config-next 16.2.6:
HubFilterableContent.tsx
88:7 warning Unused eslint-disable directive (no problems were reported from 'react-hooks/set-state-in-effect')
The rule fires once per synchronous setState cluster inside an effect — it flags the leading call (line 87 setQuery(q)) but does NOT separately flag the trailing setDebouncedQuery(q) two lines below. Verified by removing the line-88 directive and re-running pnpm exec eslint against the freshly installed eslint-config-next@16.2.6: zero errors, zero warnings.
CI didn't fail because pnpm lint does not pass --max-warnings 0, so unused-disable surfaces as a warning rather than an error. It is, however, dead code today and a maintenance footgun later (a future lint config tweak could promote unused-disable to error tier).
Suggested fix: drop the directive on line 88. The disable on line 86 is still needed.
(Sites preserved in their current form: MobileNav.tsx:31 and MobileNav.tsx:51, plus HubFilterableContent.tsx:86 all still trigger the rule under 16.2.6 and require their disables.)
|
@Mergifyio queue |
Merge Queue Status
This pull request spent 53 seconds in the queue, including 12 seconds running CI. Required conditions to merge
|
Bumps the next-react group with 4 updates in the / directory: next, react, react-dom and eslint-config-next.
Updates
nextfrom 16.2.4 to 16.2.6Release notes
Sourced from next's releases.
... (truncated)
Commits
ee6e79bv16.2.6afa053dTurbopack: Match proxy matchers with webpack implementation (#93594)97a154eTurbopack: Fix middleware matcher suffix (#93590)83899bc[backport] Disable build caches for production/staging/force-preview deploys ...7b222b9[backport][test] Pin package manager to patch versions (#93595)a8dc24f[backport] Turbopack: more strict vergen setup (#93587)766148fv16.2.50dd9483fix: add explicit checks for RSC header (#83) (#98)d166096fix proxy matching for segment prefetch URLs (#89) (#96)9d50c0bStrip next-resume header from incoming requests (#92)Maintainer changes
This version was pushed to npm by GitHub Actions, a new releaser for next since your current version.
Updates
reactfrom 19.2.5 to 19.2.6Release notes
Sourced from react's releases.
Commits
eaf3e95Version 19.2.6Updates
react-domfrom 19.2.5 to 19.2.6Release notes
Sourced from react-dom's releases.
Commits
eaf3e95Version 19.2.6Updates
eslint-config-nextfrom 16.2.4 to 16.2.6Release notes
Sourced from eslint-config-next's releases.
... (truncated)
Commits
ee6e79bv16.2.6766148fv16.2.5Maintainer changes
This version was pushed to npm by GitHub Actions, a new releaser for eslint-config-next since your current version.