mirror of
https://github.com/immich-app/immich.git
synced 2026-07-03 19:35:22 -07:00
f973927c68
* docs: replace make for mise * chore: remove makefile comment
82 lines
2.8 KiB
Markdown
82 lines
2.8 KiB
Markdown
# PR Checklist
|
|
|
|
A minimal devcontainer is supplied with this repository. All commands can be executed directly inside this container to avoid tedious installation of the environment.
|
|
:::warning
|
|
The provided devcontainer isn't complete at the moment. At least all dockerized steps in the Makefile won't work (`mise dev`, ....). Feel free to contribute!
|
|
:::
|
|
When contributing code through a pull request, please check the following:
|
|
|
|
## Web Checks
|
|
|
|
- [ ] `mise //web:lint` (linting via ESLint)
|
|
- [ ] `mise //web:format` (formatting via Prettier)
|
|
- [ ] `mise //web:check-svelte` (type checking via SvelteKit)
|
|
- [ ] `mise //web:check-typescript` (type checking via `tsc`)
|
|
- [ ] `mise //web:test` (unit tests)
|
|
|
|
:::tip AIO
|
|
Run all web checks with `mise //web:checklist`
|
|
:::
|
|
|
|
:::tip Auto Fix
|
|
Use `mise //web:lint-fix` and `mise //web:format-fix` to automatically correct some issues.
|
|
:::
|
|
|
|
## Documentation
|
|
|
|
- [ ] `mise //docs:format` (formatting via Prettier)
|
|
- [ ] Update the `_redirects` file if you have renamed a page or removed it from the documentation.
|
|
|
|
:::tip Auto Fix
|
|
Use `mise //docs:format-fix` to automatically fix formatting.
|
|
:::
|
|
|
|
## Server Checks
|
|
|
|
- [ ] `mise //server:lint` (linting via ESLint)
|
|
- [ ] `mise //server:format` (formatting via Prettier)
|
|
- [ ] `mise //server:check` (type checking via `tsc`)
|
|
- [ ] `mise //server:test` (unit tests)
|
|
|
|
:::tip AIO
|
|
Run all server checks with `mise //server:checklist`
|
|
:::
|
|
|
|
:::tip Auto Fix
|
|
Use `mise //server:lint-fix` and `mise //server:format-fix` to automatically correct some issues.
|
|
:::
|
|
|
|
## Mobile Checklist
|
|
|
|
- [ ] `mise //mobile:codegen` (auto-generate files using build_runner)
|
|
- [ ] `mise //mobile:lint` (static analysis via Dart Analyzer and DCM)
|
|
- [ ] `mise //mobile:format` (formatting via Dart Formatter)
|
|
- [ ] `mise //mobile:test` (unit tests)
|
|
|
|
:::tip
|
|
Run all these commands at once with `mise //mobile:checklist`
|
|
:::
|
|
|
|
:::tip Auto Fix
|
|
You can use `mise //mobile:lint-fix` to potentially correct some issues automatically for `mise //mobile:lint`.
|
|
:::
|
|
|
|
## Machine Learning Checklist
|
|
|
|
- [ ] `mise //machine-learning:lint` (linting via ruff)
|
|
- [ ] `mise //machine-learning:format` (formatting via ruff)
|
|
- [ ] `mise //machine-learning:check` (type checking via mypy)
|
|
- [ ] `mise //machine-learning:test` (unit tests via pytest)
|
|
|
|
:::tip AIO
|
|
Run all machine learning checks with `mise //machine-learning:checklist`
|
|
:::
|
|
|
|
## OpenAPI
|
|
|
|
The OpenAPI client libraries need to be regenerated whenever there are changes to the `immich-openapi-specs.json` file. Note that you should not modify this file directly as it is auto-generated. See [OpenAPI](/api.md) for more details.
|
|
|
|
## Database Migrations
|
|
|
|
A database migration needs to be generated whenever there are changes to `server/src/infra/src/entities`. See [Database Migration](/developer/database-migrations.md) for more details.
|