brutils-python icon indicating copy to clipboard operation
brutils-python copied to clipboard

feat(ci): automatiza geração do CHANGELOG com git-cliff

Open morais90 opened this issue 2 months ago • 0 comments

Descrição

Este PR automatiza completamente a geração do CHANGELOG.md usando git-cliff. A partir de agora, o CHANGELOG é atualizado automaticamente sempre que um PR é mesclado na main, e a criação de releases também passa a ser automatizada através de um workflow simples.

Os contribuidores não precisam mais editar o CHANGELOG manualmente. Basta seguir o padrão de Conventional Commits nas mensagens de commit que o resto acontece automaticamente.

Mudanças Propostas

Implementação de dois workflows principais:

O primeiro atualiza a seção Unreleased do CHANGELOG automaticamente após cada merge. O segundo permite criar releases através de um simples clique no Actions, detectando automaticamente a próxima versão com base nos commits e gerando um PR pronto para revisão.

A documentação foi atualizada para refletir o novo processo, removendo as instruções de edição manual do CHANGELOG e enfatizando a importância de seguir Conventional Commits.

Checklist de Revisão

  • [x] Eu li o Contributing.md
  • [x] Os testes foram adicionados ou atualizados para refletir as mudanças (se aplicável).
  • [x] Foi adicionada uma entrada no changelog / Meu PR não necessita de uma nova entrada no changelog.
  • [x] A documentação em português foi atualizada ou criada, se necessário.
  • [x] Se feita a documentação, a atualização do arquivo em inglês.
  • [x] Eu documentei as minhas mudanças no código, adicionando docstrings e comentários.
  • [x] O código segue as diretrizes de estilo e padrões de codificação do projeto.
  • [x] Todos os testes passam.
  • [x] O Pull Request foi testado localmente.
  • [x] Não há conflitos de mesclagem.

Comentários Adicionais (opcional)

Para testar localmente, é possível instalar o git-cliff e executar make changelog. O comando já inclui uma mensagem de ajuda caso a ferramenta não esteja instalada.

É importante notar que este PR requer a configuração de dois secrets no repositório (APP_CHANGELOG_ID e APP_CHANGELOG_PRIVATE_KEY) para permitir que o workflow atualize o CHANGELOG na branch protegida.

Issue Relacionada

Closes #469

morais90 avatar Oct 23 '25 12:10 morais90