Executando verificação de segurança...
3

Versionamento Semântico

Simbora falar sobre o Versionamento Semântico?!

O Que É Versionamento Semântico

Também é conhecido como SEMVER, Semantic Versioning.
É uma estrutura de versionamento amplatamente utilizada por projetos, processos e produtos diferentes.
É um conjunto de regras ou requisitos para definir versões de: Bibliotecas, códigos, dependências, plugins, releases, build, artifact, packages, modules, APIs, versionamentos, frameworks, etc.
Normalmente segue essa estrutura: MAJOR.MINOR.PATCH.

Versão de Correção (Patch Version)

  • Quando corrigir falhas mantendo compatibilidade.
  • Relacionado com correção de problemas.
  • Quando a versão de patch alterar, significa que ocorreu uma correção no artefato.
  • Se tiver alguma coisa quebrada, ao corrigir, aumentamos a patch version por mais um.
  • A patch version não deve ser incrementada após alterar alguma coisa, somente após alguma correção.

Versão Menor (Minor Version)

  • Quando adicionar funcionalidades mantendo compatibilidade.
  • Relacionado com recursos que mantém compatibilidade.
  • Quando a versão minor alterar, significa que ocorreu uma inclusão de algo, sem a modificação de um comportamento existente no artefato.
  • Se acrescentarmos alguma funcionalidade, aumentamos a minor version por mais um.
  • Sempre que incrementar essa versão, a Patch version deverá ser zerada.

Versão Maior (Major Version)

  • Quando fizer mudanças incompatíveis na API.
  • Quando a versão major alterar, significa que ocorreu break changes, ou seja, alterações que podem quebrar o uso do artefato.
  • Sempre que incrementar essa versão, a Minor e a Patch version deverão ser zerados.

Chamada para a Ação

Compartilhe conosco seus momentos de usos do versionamento semântico! Muito obrigado por ler este artigo até aqui! 😁

Referências

Carregando publicação patrocinada...
2

Muito bom esse artigo! Utilizei ele como referência em uma apresentação. Muitos projetos de software utilizam o versionamento semântico, o que melhora a compatibilidade e a manutenção do código ao longo do tempo. Uma sugestão seria acrescentar alguns casos de uso comuns para o versionamento semântico usado na prática.

2