Upgrade to ESLint 10 once the eslint-config-next plugins support it

オープン
#277 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
35/100
issue の種類
リファクタリング
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
eslint, nextjs, node.js, react, typescript

調査の方向性

Start from the eslint pin in package.json and check whether the current eslint-config-next release still lists the same peer ranges for eslint-plugin-react, eslint-plugin-import and eslint-plugin-jsx-a11y (inspect with npm ls eslint and the plugins' package.json files). If the peers now accept ^10, bump to ^10 on its own branch, read the ESLint 10 migration guide, and run npm run lint. Done looks like a clean npm ci with no ERESOLVE overrides and a passing lint run. Note the maintainer decided on 2026-11-10 to wait, so confirm upstream support before starting.

索引モデルが issue の本文から書いたものです。

説明

area: ci blocked enhancement priority: P3 size: S

Problem

npm ci warns that [email protected] is no longer supported:

npm warn deprecated [email protected]: This version is no longer supported. Please see https://eslint.org/version-support for other options.

The latest major is ESLint 10 (10.14.0, dist-tag latest; 9.39.5 is the maintenance tag). package.json pins "eslint": "^9".

Why it is blocked

[email protected] (latest 16.4.6) brings in three plugins whose newest releases do not declare ESLint 10 as a supported peer:

Plugin Latest Peer eslint range
eslint-plugin-react 7.37.5 ^3 || ... || ^9.7
eslint-plugin-import 2.32.0 ^2 || ... || ^9
eslint-plugin-jsx-a11y 6.10.2 ^3 || ... || ^9

Already compatible: [email protected] and [email protected] both list ^10.

What a forced upgrade did (throwaway worktree, 2026-11-10)

  • npm install -D eslint@^10 installed 10.14.0 with three ERESOLVE overriding peer dependency warnings, and npm ls reported the peers as invalid.
  • npm run lint exited 0.
  • A probe file got the same 5 findings under 9.39.5 and 10.14.0: react-hooks/rules-of-hooks, react/jsx-key, @next/next/no-img-element, jsx-a11y/alt-text, import/no-anonymous-default-export.

So it runs today, but outside the ranges the plugins support, and it swaps one warning for three. Decision on 2026-11-10: stay on ESLint 9 until the plugins support 10.

Unblock when

eslint-config-next ships a release where every bundled plugin declares ESLint 10 in its peer range (or drops the plugin). Then bump eslint to ^10 in its own branch, read the ESLint 10 migration guide, and run npm run lint.

Model: anthropic/claude-opus-5-5 | Reasoning effort: high

主要言語
TypeScript
スター
1
フォーク
1
平均マージ
6時間 56分
マージ済み PR(30日)
136

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

eddiejaoude/StackDash のほかの issue

eddiejaoude/StackDash の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。