O que é uma release
Release é uma versão do software organizada para distribuição ou disponibilização. Ela identifica o que está sendo entregue e pode reunir notas de atualização, instruções e os artefatos correspondentes, conforme a convenção do projeto.
As notas permitem consultar o que mudou antes de instalar a versão. Você consegue relacionar uma correção anunciada ao pacote que a contém e conferir as instruções aplicáveis àquela atualização.
O termo depende do processo adotado
No GitHub, uma release se associa a uma tag Git e pode incluir notas e arquivos para download. A tag marca um ponto do histórico, enquanto a release reúne as informações que você consulta para instalar aquela versão.
Outros processos empregam o termo de forma mais específica. Na metodologia Twelve-Factor, a release combina o build com a configuração usada na execução, portanto vale conferir o significado adotado pela ferramenta antes de comparar seus registros.
O número precisa seguir uma convenção
Uma versão como 2.1.0 só comunica compatibilidade quando o projeto define e segue a convenção escolhida. No SemVer, mudanças incompatíveis na API pública alteram o primeiro número, novas funções compatíveis alteram o segundo e correções compatíveis alteram o terceiro.
Essa numeração não substitui a leitura das notas. A atualização pode exigir uma configuração ou uma etapa de instalação, e a compatibilidade declarada depende da API pública que o projeto se compromete a preservar.
Notas de atualização precisam orientar o uso
Descreva a mudança de comportamento e o que a instalação exige. Uma correção de exportação pode indicar qual arquivo era gerado incorretamente e se relatórios antigos precisam ser refeitos, em vez de apenas listar nomes de arquivos do código.
Inclua as limitações conhecidas que afetam a atualização. Uma versão candidata a lançamento também precisa estar identificada como tal para não ser confundida com a versão estável indicada pelo projeto.
Preserve a associação com o pacote
O arquivo disponibilizado precisa corresponder à versão e ao histórico anunciados. Substituir silenciosamente seu conteúdo mantém o mesmo nome para resultados diferentes e dificulta reproduzir uma falha em outra instalação.
Confira o identificador do artefato e os arquivos disponíveis antes de divulgar a atualização. Se houver pacotes para plataformas diferentes, o nome e as instruções devem permitir escolher o arquivo compatível com o destino.
Publicação e adoção são acompanhadas separadamente
A release pode existir sem que um serviço hospedado tenha recebido seu deploy. O acompanhamento precisa distinguir a disponibilidade do pacote, a instalação em cada ambiente e, quando aplicável, a ativação da função para o público.
Para revisar de forma recorrente a preparação das versões e sua continuidade técnica, o Conselheiro de Tecnologia da Dev Side Studio pode apoiar a análise do processo. A release continua sendo identificada pelo projeto, e o histórico de cada ambiente informa sua adoção.
Dúvidas frequentes
Perguntas frequentes sobre Release
- Release e tag Git são a mesma coisa?
- Não. A tag identifica um ponto do histórico. Uma release pode associar esse ponto às notas de atualização e aos arquivos distribuídos, como acontece no GitHub.
- Uma release publicada já está em produção?
- Não necessariamente. Ela pode estar disponível para instalação enquanto os ambientes continuam em versões anteriores. O histórico de deploy informa o que foi instalado em cada destino.
- Toda release precisa usar SemVer?
- Não. O projeto pode adotar outra convenção. Quando declara SemVer, precisa seguir as condições de compatibilidade dessa convenção e definir a API pública considerada.
- Posso trocar o pacote mantendo o mesmo número de versão?
- Isso dificulta identificar qual conteúdo foi instalado. Em SemVer, o conteúdo de uma versão publicada não deve ser alterado. A correção precisa receber uma nova versão.
Para continuar
Recursos relacionados
Documentação
GitHub: releases
Relação entre tags, notas e arquivos de distribuição.
Abrir recursoDocumentação
Semantic Versioning
Convenção de versões e compatibilidade da API pública.
Abrir recursoDocumentação
The Twelve-Factor App: etapas de entrega
Outro uso do termo release, associado ao build e à configuração de execução.
Abrir recursoAplicação na formação
Formação DevOps
A release identifica a versão e os artefatos disponibilizados para instalação ou atualização da aplicação.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.