Ir para o conteúdo principal

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.

aviso

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 _redirects se você renomeou ou removeu uma página da documentação.
Tudo-em-Um

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 via tsc)
  • npm test (testes unitários)
Tudo-em-Um

Execute todas as verificações do servidor com npm run check:all

Correção Automática

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)
Correção Automática

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.