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