のーずいだんぷ

主に自分用メモですが、もしかしたら誰かの役に立つかもしれません

pre-commitでisortの設定ファイルをpyproject.tomlにする

はじめに

pyproject.tomlでblackとisortの競合を修正して、実行したところ、以下のように競合&warningメッセージが出力された。

/path-to-your-directory/.cache/pre-commit/reponx26mlg0/py_env-python3/lib/python3.7/site-packages/isort/settings.py:298: UserWarning: Found /Users/path-to-your-directory/pyproject.toml with [tool.isort] section, but toml package is not installed. To configure isort with /Users/path-to-your-directory/pyproject.toml, install with 'isort[pyproject]'.

isortはデフォルトでインストールするとtomlファイルを読み込めないのでpip install isort[pyproject]でinstallするのだが、これはもう対応していた。

競合する理由

pre-commitではレポジトリを直接指定していると思うが、これはpip installしているものとは関係ない。つまり、現在指定しているpre-commit/isort-mirrorはただのisort(pyproject.toml)をサポートしていない。

解決する方法

additinal-dependenciesを.pre-commit.tomlに追記して、pyproject.tomlに適用できるようにする。

参考

github.com