4月6日、JavaScriptのコード品質管理ツールであるESLintは、その最新版バージョン9.0.0をリリースした。このアップデートでは、新機能の導入、バグ修正、そしていくつかの重大な変更が行われた。
新しいバージョンをインストールするには、以下のコマンドを実行するだけでよい。
npm i eslint@9.0.0 --save-dev
主な変更点を以下に挙げる。
Node.jsサポートの更新
主要な変更点の一つとして、Node.jsのサポートが更新された。これにより、Node.js v18.18.0未満およびv19のサポートが終了し、Node.js v20.xが現在のLTSリリースとなった。
Flat configの導入
また、このバージョンからは「Flat config」がデフォルトの設定フォーマットとなった。「Flat config」は、従来の階層的なJSONフォーマットと比較して、よりシンプルで読みやすく、設定の共有や再利用が容易になるよう設計されている。従来のeslintrc設定ファイルは非推奨とされ、「ESLINT_USE_FLAT_CONFIG」環境変数を「false」に設定することで引き続き使用することができる。これは、ユーザー、プラグイン開発者、そして統合者にとって多くの変更をもたらした。
フォーマッターとルールの変更
変更された点の中には、特定のフォーマッターの削除も含まれる。「stylish」,「html」,「json」,「json-with-meta」以外の全フォーマッターが削除され、これらを使用していた場合は、ESLint v9.0.0用のスタンドアローンパッケージをインストールする必要がある。
さらに、「valid-jsdoc」と「require-jsdoc」ルールが削除された。これらのルールの代替として、eslint-plugin-jsdocプラグインの使用が推奨される。
新機能とルールの更新
このリリースは、新しいルール「no-useless-assignment」を導入し、既存のルールにいくつかの更新を加えた。たとえば、「complexity」ルールは、オプショナルチェイニングやデストラクチャリングパターンおよびパラメーターのデフォルト値を考慮するようになった。
まとめ
このアップデートによりESLintはさらに強力で柔軟なツールとなり、JavaScript開発者にとってさらに重要な存在になった。ただし、多くの(破壊的なものも含む)変更が含まれているため、アップグレードには注意が必要だ。詳細な移行ガイドは、ESLintの公式サイトに掲載されている。
詳細はESLint v9.0.0 releasedを参照されたい。