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に変更があった場合、データベースマイグレーションを生成する必要があります。詳細についてはデータベースマイグレーションをご覧ください。