PR-Checkliste
Ein minimaler Devcontainer wird mit diesem Repository bereitgestellt. Alle Befehle können direkt in diesem Container ausgeführt werden, um eine mühsame Installation der Umgebung zu vermeiden.
Der bereitgestellte Devcontainer ist momentan nicht vollständig. Mindestens alle dockerisierten Schritte in der Makefile funktionieren nicht (make dev
, ....). Zögern Sie nicht, einen Beitrag zu leisten!
Beim Beitragen von Code über eine Pull-Anfrage überprüfen Sie bitte Folgendes:
Web-Checks
-
npm run lint
(Linting mit ESLint) -
npm run format
(Formatierung mit Prettier) -
npm run check:svelte
(Typprüfung mit SvelteKit) -
npm run check:typescript
(Typescript prüfen) -
npm test
(Unit-Tests)
Dokumentation
-
npm run format
(Formatierung mit Prettier) - Aktualisieren Sie die
_redirects
-Datei, wenn Sie eine Seite umbenannt oder sie aus der Dokumentation entfernt haben.
:::Tipp AIO
Führen Sie alle Web-Checks mit npm run check:all
aus
:::
Server-Checks
-
npm run lint
(Linting mit ESLint) -
npm run format
(Formatierung mit Prettier) -
npm run check
(Typprüfung mittsc
) -
npm test
(Unit-Tests)
:::Tipp AIO
Führen Sie alle Server-Checks mit npm run check:all
aus
:::
Sie können npm run __:fix
verwenden, um möglicherweise einige Probleme automatisch zu korrigieren für npm run format
und lint
.
Mobile-Checks
Die folgenden Befehle müssen aus dem mobilen App-Verzeichnis des Code-Basis heraus ausgeführt werden.
-
make build
(Dateien automatisch generieren mit build_runner) -
make analyze
(Statische Analyse mit Dart Analyzer und DCM) -
make format
(Formatierung mit Dart Formatter) -
make test
(Unit-Tests)
Sie können dart fix --apply
und dcm fix lib
verwenden, um möglicherweise einige Probleme automatisch zu korrigieren für make analyze
.
OpenAPI
Die OpenAPI-Client-Bibliotheken müssen neu generiert werden, wenn es Änderungen an der Datei immich-openapi-specs.json
gibt. Beachten Sie, dass Sie diese Datei nicht direkt ändern sollten, da sie automatisch generiert wird. Weitere Details finden Sie unter OpenAPI.
Datenbank-Migrationen
Eine Datenbank-Migration muss generiert werden, wenn es Änderungen an server/src/infra/src/entities
gibt. Weitere Details finden Sie unter Datenbank-Migration.