vscode で python の開発をしていますが、自動フォーマットで black を使っています。
新しい開発環境を作った際、既存のソースをそのまま保存したとき差分が大量出てきて原因の特定に苦労したことがあったのでその内容を備忘録として残します。
差分内容
フィールドやメソッドのパラメータで、最後にカンマ(,)がついているものが改行されていました。
例
-def get_sample(self, id, name,)
+def get_sample(
+ self,
+ id,
+ name,
+)
原因
いろいろ設定の見直しをしていましたが、原因は black のバージョンによるものでした。
現時点での black の最新は 23.3.0 ですが、そのソースを開発した当時は 21.11.0 を使っていました。
どうやら 22.1.0 にてフォーマットが変更になったようです。
black/CHANGES.md at main · psf/black
The uncompromising Python code formatter. Contribute to psf/black development by creating an account on GitHub.
もしチームで開発する場合は、フォーマッターのバージョンを揃えることも必要だなと思いました。