型チェックしたい(ty)

$ uv tool install ty
$ ty --version
ty 0.0.72

$ ty check ファイル名
$ ty check ディレクトリ名

tyは、Astral(uvやruffと同じ開発元)が作っているRust製の型チェッカーです。 mypyよりも高速に動作します。 uv checkコマンドは、内部でtyを利用しています。

注釈

tyは開発初期のツールで、バージョン番号も0.x台です。 mypyほど厳密な検査はまだ苦手な場合があるので、 既存プロジェクトではmypyと併用しながら移行を検討するのがよさそうです。

インストールしたい(ty)

  • uv toolでインストール

$ uv tool install ty
  • uvでプロジェクトに追加

$ uv add ty --group dev
  • pipxでインストール

$ pipx install ty

設定したい([tool.ty.rules])

1[tool.ty.rules]
2unresolved-import = "error"
3possibly-unresolved-reference = "warn"

tyの設定は、pyproject.tomlの[tool.ty.rules]セクションで変更できます。 ルール名と、重要度(error・warn・ignore)を指定します。

$ ty check --error possibly-unresolved-reference ファイル名
$ ty check --warn unresolved-import ファイル名

コマンドラインからも--error・--warnオプションでルールの重要度を一時的に上書きできます。

ルールを確認したい(ty explain rule)

$ ty explain rule ルールID

ty explain ruleで、ルールの説明を確認できます。 引数を省略すると、すべてのルールの説明が表示されます。

ファイルの変更を監視したい(--watch)

$ ty check --watch

--watch(-W)オプションで、ファイルの変更を検知して自動的に再チェックできます。 コードを編集しながら型エラーをリアルタイムで確認したいときに便利です。

リファレンス