概要
typescript-eslint の tsgo (Corsa API) 対応が 1-2年先のため、TS7.0 完全移行時のリンター代替を検討する。
影響度: 大
背景
typescript-eslint は TypeScript の Strada API に依存。tsgo の Corsa API 対応は 1-2年先。
TS 7.0 完全移行時にリンターの刷新が必要になる。
選択肢
| ツール |
速度 |
tsgo 対応 |
TS型チェックルール |
jsdoc 対応 |
| oxlint + tsgolint |
50-100x |
tsgo 専用設計 |
43ルール |
要調査 |
| biome 2.0 |
高速 |
独自型推論 (85%) |
限定的 |
要調査 |
| eslint + TS6.0 並行維持 |
1x (基準) |
Corsa API 待ち |
全ルール |
完全対応 |
現在の eslint ルール棚卸し
eslint recommended プリセット:
eslint.configs.recommended 適用 (no-undef, no-redeclare 等多数のベースルール含む)
- oxlint/biome 移行時にはこれらベースルールの代替可否も確認が必要
カスタムルール:
no-console (warn)
@typescript-eslint/no-unused-vars (warn) — argsIgnorePattern: ^_
@typescript-eslint/no-empty-function (warn) — arrowFunctions 許可
jsdoc ルール (TypeDoc 最適化):
jsdoc/require-jsdoc (error) — クラス、関数、メソッド必須
jsdoc/require-description (error)
jsdoc/require-param-description (error)
jsdoc/require-returns-description (error)
jsdoc/require-returns (error)
jsdoc/require-hyphen-before-param-description (error)
jsdoc/no-types (error)
jsdoc/check-tag-names (error) — remarks, example, category, see
ファイル別ルール緩和:
- tests/: jsdoc 緩和、no-explicit-any off
- examples/: jsdoc 緩和、no-console off
チェックリスト
概要
typescript-eslint の tsgo (Corsa API) 対応が 1-2年先のため、TS7.0 完全移行時のリンター代替を検討する。
影響度: 大
背景
typescript-eslint は TypeScript の Strada API に依存。tsgo の Corsa API 対応は 1-2年先。
TS 7.0 完全移行時にリンターの刷新が必要になる。
選択肢
現在の eslint ルール棚卸し
eslint recommended プリセット:
eslint.configs.recommended適用 (no-undef, no-redeclare 等多数のベースルール含む)カスタムルール:
no-console(warn)@typescript-eslint/no-unused-vars(warn) — argsIgnorePattern:^_@typescript-eslint/no-empty-function(warn) — arrowFunctions 許可jsdoc ルール (TypeDoc 最適化):
jsdoc/require-jsdoc(error) — クラス、関数、メソッド必須jsdoc/require-description(error)jsdoc/require-param-description(error)jsdoc/require-returns-description(error)jsdoc/require-returns(error)jsdoc/require-hyphen-before-param-description(error)jsdoc/no-types(error)jsdoc/check-tag-names(error) — remarks, example, category, seeファイル別ルール緩和:
チェックリスト