Lista de Verificação de PR
Um devcontainer mínimo é fornecido com este repositório. Todos os comandos podem ser executados diretamente dentro deste contêiner para evitar a instalação tediosa do ambiente.
O devcontainer fornecido não está completo no momento. Pelo menos todas as etapas dockerizadas no Makefile não funcionarão (make dev, ....). Contribuições são bem-vindas!
Ao contribuir com código por meio de um pull request, verifique o seguinte:
Verificações da Web
-
npm run lint(análise estática via ESLint) -
npm run format(formatação via Prettier) -
npm run check:svelte(verificação de tipos via SvelteKit) -
npm run check:typescript(verificar TypeScript) -
npm test(testes unitários)
Documentação
-
npm run format(formatação via Prettier) - Atualize o arquivo
_redirectsse você renomeou ou removeu uma página da documentação.
Execute todas as verificações da web com npm run check:all
Verificações do Servidor
-
npm run lint(análise estática via ESLint) -
npm run format(formatação via Prettier) -
npm run check(verificação de tipos viatsc) -
npm test(testes unitários)
Execute todas as verificações do servidor com npm run check:all
Você pode usar npm run __:fix para corrigir automaticamente alguns problemas para npm run format e lint.
Verificações Móveis
Os seguintes comandos devem ser executados no diretório do aplicativo móvel da base de código.
-
make build(geração automática de arquivos usando build_runner) -
make analyze(análise estática via Dart Analyzer e DCM) -
make format(formatação via Dart Formatter) -
make test(testes unitários)
Você pode usar dart fix --apply e dcm fix lib para corrigir automaticamente alguns problemas para make analyze.
OpenAPI
As bibliotecas cliente do OpenAPI precisam ser regeneradas sempre que houver alterações no arquivo immich-openapi-specs.json. Observe que você não deve modificar diretamente este arquivo, pois ele é gerado automaticamente. Consulte OpenAPI para mais detalhes.
Migrações de Banco de Dados
Uma migração de banco de dados precisa ser gerada sempre que houver alterações em server/src/infra/src/entities. Consulte Migrações de Banco de Dados para mais detalhes.