Список проверки PR
Минимальная конфигурация devcontainer предоставлена в этом репозитории. Все команды можно выполнить непосредственно внутри этого контейнера, чтобы избежать утомительной установки окружения.
Предоставленный devcontainer в данный момент не является полным. По крайней мере шаги из Makefile, использующие докер, не будут работать (make dev
, ....). Не стесняйтесь внести свой вклад!
При внесении кода через pull request, пожалуйста, проверьте следующее:
Проверки для веба
-
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
, если вы переименовали страницу или удалили её из документации.
Запустите все проверки веба командой npm run check:all
Проверки сервера
-
npm run lint
(проверка с помощью ESLint) -
npm run format
(форматирование с помощью Prettier) -
npm run check
(проверка типов с помощьюtsc
) -
npm test
(юнит-тесты)
Запустите все проверки сервера командой 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
Клиентские библиотеки OpenAPI нужно перегенерировать при внесении изменений в файл immich-openapi-specs.json
. Обратите внимание, что не следует изменять этот файл напрямую, так как он генерируется автоматически. Более подробную информацию смотрите в OpenAPI.
Миграции базы данных
Миграция базы данных должна быть создана всякий раз, когда происходят изменения в server/src/infra/src/entities
. Более подробную информацию смотрите в Миграции базы данных.