PRチェックリスト
このリポジトリには最小限のdevcontainerが提供されています。このコンテナ内で直接すべてのコマンドを実行することで、環境の面倒なインストールを回避できます。
警告
提供されているdevcontainerは現時点では完全ではありません。少なくともMakefile内のすべてのdockerizedステップは動作しません(make dev
など)。ぜひ貢献してください!
プルリクエストを通じてコードを提供する際は、以下の項目をご確認ください:
Webチェック
-
npm run lint
(ESLintによるリント) -
npm run format
(Prettierによるフォーマット) -
npm run check:svelte
(SvelteKitによる型チェック) -
npm run check:typescript
(TypeScriptの型チェック) -
npm test
(単体テスト)
ドキュメント
-
npm run format
(Prettierによるフォーマット) - ページの名前を変更したり、ドキュメントから削除した 場合は
_redirects
ファイルを更新してください。
AIO
npm run check:all
ですべてのWebチェックを実行できます。
サーバーチェック
-
npm run lint
(ESLintによるリント) -
npm run format
(Prettierによるフォーマット) -
npm run check
(tsc
による型チェック) -
npm test
(単体テスト)
AIO
npm run check:all
ですべてのサーバーチェックを実行できます。
自動修正
npm run __:fix
を使用すると、npm run format
やlint
に関連する問題の一部を自動的に修正できる場合があります。
モバイルチェック
以下のコマンドは、コードベースのモバイルアプリディレクトリ内から実行する必要があります。
-
make build
(build_runnerを使用したファイルの自動生成) -
make analyze
(Dart AnalyzerとDCMによる静的解析) -
make format
(Dart Formatterによるフォーマット) -
make test
(単体テスト)
自動修正
dart fix --apply
とdcm fix lib
を使用すると、make analyze
に関連する問題の一部を自動的に修正できる場合があります。
OpenAPI
immich-openapi-specs.json
ファイルに変更があった場合、OpenAPIクライアントライブラリを再生成する必要があります。このファイルを直接変更してはいけません。これは自動生成されています。詳細についてはOpenAPIをご覧ください。
データベースマイグレーション
server/src/infra/src/entities
に変更があった場合、データベースマイグレーションを生成する必要があります。詳細についてはデータベースマイグレーションをご覧ください。