Skip to content

TS7.0移行: リンター移行 — eslint → oxlint 検討 #45

Description

@9c5s

概要

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

チェックリスト

  • oxlint の対応ルールマッピング (eslint recommended + カスタムルール → oxlint 対応状況)
  • oxlint での jsdoc 系ルール代替調査
  • tsgolint の型チェックルール評価
  • biome 2.0 の評価 (Prettier 統合の利点)
  • 移行判断基準の策定 (いつ、どの条件で移行するか)
  • 段階的移行計画の検討 (oxlint 初期検査 + eslint 特殊ルールのデュアル運用)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions