-
-
Notifications
You must be signed in to change notification settings - Fork 27
Open
Description
背景
現在リポジトリにはlinterは設定されているものの、formatterが設定されておらず、CodignAgentの生成ズレによってファイルによってフォーマットが異なる結果となっている。
これにより、RPレビューの際に不要なdiffが発生している。
やりたいこと
formatter(ex: Biome/Prettier)とコミット前にformatを強制するためのcommit hook(ex: husky/lefthook)を導入し、リポジトリ全体でスタイルを統一する
懸念点
ある程度リポジトリが既に大きいため、このタイミングからformatterを入れることにより、大きな差分が発生し、コンフリクトを乱発し開発の妨げとなる可能性
→可能な限り既存に多いスタイルをベースにして、差分を減らす
使用ライブラリ
formatter
選択肢としては、Biome/Prettier/Oxfmtがあるが、以下を踏まえBiomeを採用する
- Prettier:対応ファイル形式は多いが、taktリポジトリではBiomeでカバーできるものが多く、その上遅いため見送り
- Biome:リポジトリ内のファイル形式に対応しており、現状のTS開発環境で最も一般的かつ動作も高速な点
- Oxfmt:Biomeより高速だが、まだ安定版ではないため、導入見送り
Biomeの機能のうち、import orderとformatの機能のみを使用する。
commit hook
選択肢としては、lefthook/huskyがあるが、より高速に動作するlefthookを採用する。
lefthookの動作としては、commit時のformatのみを行う。
(push前のテストや型チェックなどは開発速度を落としかねないため、CI上で行う)
主要変更箇所
- biome.json
- .vscode/settings.json
- package.json
- lefthook.yml
- README.md
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels