#ESLint
RSSフィードESLintのno-restricted-globalsルールを利用することで、グローバル変数を禁止して、意図しないグローバル変数への参照を防ぐ。
All Posts
Q. 削除された変数への参照が、グローバル変数と一致しているためエラーが出ない
ESLintのno-restricted-globalsルールを利用することで、グローバル変数を禁止して、意図しないグローバル変数への参照を防ぐ。
ESLintでエラーが出ているルールをjqを利用してリスト表示する
ESLintのあるプラグインを更新する際にエラーが出ているルールの一覧が欲しいという話があったので、jqを利用してエラーが出ているルールをリスト表示する方法を考えた。
Q. ESLintで特定のpropsを禁止にしたい
ESLintで特定のpropsを禁止にしたい場合の設定方法について説明する。
Q. ESLintで特定の要素の利用を禁止したい
ESLintで特定の要素の利用を禁止したい場合の設定方法について説明する。
ESLint Config InspectorをGithub Pagesにデプロイする
ESLint Config InspectorをGithub Pagesにデプロイする方法について紹介する。
React向けESLint pluginのESLint v9対応状況
ESLint v9がリリースされたが、ESLint pluginのESLint v9対応が出来ていないpluginが複数あり、その対応状況を調査した。
Q. 社内用eslint-configを入れ、ESLintをv8に上げたら、特定のルールでhasSuggestionを設定していないと言われる
ESLintをv8に上げたら特定のルールでhasSuggestionを設定していないと言われると相談があったので、その対応についてまとめた。
News bits
ESLint v10.1.0リリース、bulk suppressionsのNode.js API対応
bulk suppressionsのNode.js API対応、no-varルールのTSModuleBlockでの修正適用、宣言前参照時の自動修正抑止など。
ESLint v10.0.0がリリースされ、eslintrc機能が完全に削除
ESLint v10.0.0リリース。
ESLint v9.39.2 released
ESLint v9.39.2がパッチリリースとして公開された。前回のリリースで見つかったいくつかのバグ修正が含まれるほか、/ eslint-env /設定コメントが見つかった場合に警告メッセージを表示するようになった。 これはv10.0.0での廃止に向けた移行措置であり、該当コメントを利用している場合は移行ガイドに従って修正が必要となる。 ### 参考文献
ESLint v10のマイグレーションガイドが公開
ESLint v10.0.0のマイグレーションガイドが公開された。ESLint v10.0.0はまだαリリースのみだが、破壊的変更の詳細が事前に公開されている。
ESLint v9.39.1リリース
ESLint v9.39.1がリリースされた。v9.39.0で導入されたバグを修正するパッチリリース。
ESLint v9.39.0リリース
ESLint v9.39.0がリリースされた。特定のルール違反(complexity、for-direction、no-dupe-args、no-dupe-class-members)のハイライト位置をより正確にした。
ESLint v9.37.0リリース
ESLint v9.37.0がリリース。no-restricted-importsルールにallowTypeImportsオプション追加、--concurrency=autoのヒューリスティック改善、preserve-caught-errorルールのcomputed causeプロパティ対応など。
ESLint v9.36.0
ESLint v9.36.0リリース。
ESLint v9.35.0がリリース、preserve-caught-errorの追加
ESLint v9.35.0がリリース。ブロック内で新しいエラーをスローするときに`cause`プロパティを強制する`preserve-caught-error`ルールが追加された。
ESLint v9.34.0、multithread lintingをサポート
ESLint v9.34.0 で multithread linting(複数のスレッドを用いて複数のファイルを同時に処理する機能)が導入された。大規模プロジェクトや潤沢な環境であれば大幅なパフォーマンス改善が期待できる。
ESLint v9.33.0 リリース、one-varルールがES2026の構文をサポート
ESLint v9.33.0がリリース。
ESLint v9.32.0リリース
ESLint v9.32.0がリリース。JavaScript最新構文とTypeScript開発の包括的サポートを強化したマイナーアップデート。
ESLint v9.30.1 リリース、TypeScript 型インポートの改善
ESLint v9.30.1 がリリース。TypeScript の型インポートに関する改善が行われた。no-duplicate-importsルールで、同じモジュールからのデフォルト型インポートと名前付き型インポートを別々の宣言で許可するようになった。
ESLint v9.30.0 リリース、サブディレクトリへのルール適用
ESLint v9.30.0 が正式リリース。設定オブジェクトのbasePathプロパティ、TypeScript 向け import 重複ルール改善、安定版機能フラグなどが追加。
GitHub Actions の fine-grain 権限設定がカスタムリポジトリロールに提供
GitHub Actions の fine-grain 権限設定がカスタムリポジトリロールで正式に利用可能になった。
ECMAScript 2025 が正式承認
Ecma International の第 129 回総会で ECMAScript 2025 言語仕様が正式に承認され、標準となった。編集者は Shu-yu Guo、Michael Ficarra、Kevin Gibbons が担当。
Chrome 138 リリース、AI API 搭載と CSS 新機能を提供
Chrome 138 が正式リリース。組み込み AI API、新しい CSS 関数、フォルダブルデバイス対応機能などが追加。
Vite 7.0 リリース、Node.js 18 ドロップとブラウザターゲット変更
Vite 7.0 が正式リリース。Node.js 18 の EOL(2025 年 4 月末)に伴い、Node.js 20.19+、22.12+が必要になった。新しいバージョン範囲ではrequire(esm)がフラグなしでサポートされるため、Vite 7.0 を ESM-only で配布しながら、CJS モジュールから Vite JavaScript API を使用することが可能。
ESLint 9.29.0 リリース、using declarations サポート
ESLint 9.29.0 がリリースされ、ECMAScript 2026 の Explicit Resource Management 構文であるusingとawait using宣言をサポート。デフォルトパーサーespreeで新しい構文を解析可能になり、languageOptions.ecmaVersionを2026または"latest"に設定することで利用できる。ただし、コアルールはまだこの構文に対応していないため注意。
Oxlint v1.0 Stable リリース
Rust 製の JavaScript/TypeScript linter である Oxlint がついに安定版 v1.0 をリリース。ESLint と比較して 50 ~ 100 倍の高速化を実現し、500 以上のルールをサポート。設定不要のゼロコンフィグで即座に利用開始でき、VS Code、IntelliJ、Zed エディターでの完全サポートも提供。Shopify、Airbnb、Mercedes-Benz などの主要企業で採用済み。
Playwright v1.53.0 リリース、Trace Viewer と HTML レポーター機能強化
Playwright v1.53.0 が正式リリース。Trace Viewer と HTML レポーターに新しい Steps 表示機能、カスタムタイトル設定、ロケーター記述機能などが追加。
ESLint 9.28.0 リリース
ESLint 9.28.0 がリリース。バルクサプレッション機能の改善として--pass-on-unpruned-suppressionsCLI オプションを追加。未使用のサプレッションをエラーとして報告せず、終了コードにも影響を与えないように。
ESLint v9.27.0 リリース
ESLint v9.27.0 がリリース。MCP サーバーが@eslint/mcp として分離され、npx @eslint/mcp@latestで起動可能に。環境変数ESLINT_FLAGSによるフラグ設定、eslint-suppressions.json ファイルのソート、TypeScript 対応の強化などが行われた。新ルールno-unassigned-vars追加、no-useless-escapeに allowRegexCharacters オプション追加、no-array-constructorの自動修正対応なども含まれる。
ESLint v9.26.0 リリース
ESLint v9.26.0 がリリース。ルール改善に加えて、MCP としての起動が可能に。
Baseline 2025 年 4 月アップデート
Baseline で次の機能が利用可能に。
ESLint v9.24.0 リリース
ESLint v9.24.0 がリリースされた。バルクサプレッション機能を追加。新しいルールを"error"として有効化する際に、既存の違反を一度に抑制可能。TypeScript の構文サポートが 4 つのコアルールに追加。Node.js 22.10.0 以上で--experimental-strip-typesフラグを使用して TypeScript 設定ファイルをネイティブに読み込み可能。
ESLint 9.23.0 リリース
ESLint 9.23.0 がリリース。
Support for CSS and Baseline has shipped in ESLint | web.dev
先日リリースされた ESLint の CSS plugin にビルトインされているcss/require-baselineルールについての記事が web.dev で公開されました。
ESLint CSS
ESLint が正式に CSS のサポートを開始。
ESLint v9.20.0
ESLint v9.20.0 がリリース。
ESLint v9.19.0
ESLint v9.19.0 がリリース。
ESLint v9.18.0
ESLint v9.18.0 がリリースされた。
typescript-eslint v8.2.0
TypeScript ESLint v8.2.0 がリリースされた。
ESLint v9.17.0
ESLint v9.17.0 がリリースされた。
New to the web platform in December
Safari 18.2 により、@pageやscrollbar-gutter、::target-textなどが Baseline に入っている。
Next.js 15.1
Next.js 15.1 がリリースされた。
Safari 18.2
2024 年 12 月 11 日に、Safari 18.2 がリリースされた。
State of JS 2024
State of JS 2024 の結果が公開された。
Vercel TypeScript SDK
Vercel API を操作できる TypeScript SDK がリリースされた。
ESLint CSS
eslint/css のリポジトリが公開された。現状公式のドキュメントなどでの言及はないと思われる。
Storybook 8.4
Storybook 8.4 がリリース。
ESLint v9.14.0
ESLint v9.14.0 がリリース。
ESLint now officially supports linting of JSON and Markdown
ESLint が JSON と Markdown を公式にサポートしたことを改めて紹介している。 @eslint/jsonと@eslint/markdownの利用方法に加えて、カスタムルールの作成についても言及している。
ESLint v8.x EOL
ESLint v8.x のサポートを 2024 年 10 月 5 日に終了すると発表されました。
ESLint v 9.10.0 Types now included
ESLint v9.10.0 がリリースされた。 型定義を同梱するようになった。今までは@types/eslintから提供されていた。
typescript-eslint v8
ESLint v9 をサポートした typescript-eslint v8 が 2024 年 7 月 31 日にリリースされた。
Next for ESLint
ESLint の今後の開発計画についての記事。JavaScript 以外の言語で扱えるようにする Language plugin、JavsScript 関連機能の @eslint/js への切り出しなどが予定されている。
ESLint v9.0.0
2024 年 4 月 5 日に ESLint v9 がリリースされました。
typescript-eslint v7
2024 年 2 月 12 日に typescript-eslint v7 がリリースされました。
ESLint v8.53.0
2023 年 11 月 3 日にリリースされた ESLint v8.53.0 でフォーマット関連のルールが全て非推奨になりました。
Flat config rollout plans
https://eslint.org/blog/2023/10/flat-config-rollout-plans/
ESLint Stylistic
https://github.com/eslint-stylistic
typescript-eslint v6
typescript-eslint v6 がリリース。いくつかのルールの削除や、ルールの設定変更、推奨設定の再構成などが行われたため、バージョンを上げる際は対応が必須です。
著者について
Hi there. I'm hrdtbs, a frontend expert and technical consultant. I started my career in the creative industry over 13 years ago, learning on the job as a 3DCG modeler and game engineer in the indie scene.
In 2015 I began working as a freelance web designer and engineer. I handled everything from design and development to operation and advertising, delivering comprehensive solutions for various clients.
In 2016 I joined Wemotion as CTO, where I built the engineering team from the ground up and led the development of core web and mobile applications for three years.
In 2019 I joined matsuri technologies as a Frontend Expert, and in 2020 I also began serving as a technical manager supporting streamers and content creators.
I'm so grateful to be working in this field, doing something that brings me so much joy. Thanks for stopping by.