Foi lançado o projeto git-bug 0.11.0, que desenvolve um sistema de rastreamento de erros, armazenando informações sobre problemas e comentários na forma de objetos em um repositório Git. Assim como as alterações no código-fonte, a ferramenta git-bug permite que as informações sobre os erros rastreados sejam enviadas para repositórios externos usando a operação push, além de extrair dados de um repositório externo para o repositório local usando a operação pull. O código do projeto é escrito na linguagem Go e é distribuído sob a licença GPLv3.
O projeto git-bug utiliza um repositório Git comum para armazenar descrições de problemas, base de usuários e comentários de forma versionada. A arquitetura descentralizada do Git permite trabalhar em modo offline com sincronização periódica de alterações. Entre as funcionalidades estão a suporte a mensagens de erro através da linha de comando, interface de console ou interface web, além de uma execução muito rápida das operações de busca e navegação entre mensagens de erro. Camadas para sincronização com os serviços de rastreamento de erros GitHub, GitLab, Jira e Launchpad são fornecidas.
Principais novidades:
- Foi implementada uma nova interface web para navegação por mensagens de problemas. São oferecidas funcionalidades como busca e filtragem de conteúdo, criação de novos relatórios de problemas, adição e edição de comentários, alteração de etiquetas e status, e visualização de perfis de usuários. Há duas opções de temas: claro e escuro. O trabalho com diferentes repositórios é suportado.

A interface web possui um sistema de navegação pelo código, permitindo gerenciar arquivos, visualizar código com destaque de sintaxe, exibir documentos em formato markdown, rastrear o histórico de commits e avaliar alterações. No futuro, está previsto implementar funcionalidades para revisão de código e abertura de acesso público para visualização de conteúdo por participantes sem conta.


- Foram resolvidos problemas na implementação do cache que levavam a condições de corrida, inconsistência de dados e processamento não atômico de commits.
- O API agora suporta assinatura de eventos através do GraphQL, permitindo obter informações sobre alterações sem a necessidade de polling periódico do estado.
- Para a construção de lançamentos, foi utilizada a ferramenta GoReleaser, que permitiu gerar pacotes nos formatos deb, rpm, apk e pkg (Arch Linux), além de implementar a verificação de downloads por assinatura digital.
Fonte: opennet.ru



