Calculadora SemVer
Analise, compare, verifique faixas, incremente e normalize versões semânticas no seu navegador. As versões que você digita ficam no seu dispositivo.
As versões e faixas que você insere são avaliadas localmente no seu navegador e nunca são enviadas.
Precisa de um id único rápido? Experimente o Gerador de UUID.
Sobre Calculadora SemVer
Esta calculadora semver é um kit de Versionamento Semântico para tudo o que você faz com números de versão. Analise uma versão como 1.2.3-beta.1+build.42 em seus componentes major, minor, patch, prerelease e metadados de build; compare duas versões para ver qual é mais nova e em que nível elas diferem; verifique se uma versão satisfaz uma faixa npm como ^1.2.3, ~1.2, 1.x ou >=1.0.0 <2.0.0; incremente uma versão por major, minor, patch ou qualquer passo de prerelease; e normalize uma string solta como v1.2 em um semver limpo. Foi feita para desenvolvedores, autores de pacotes e engenheiros de release que lidam com faixas de dependência todos os dias. Movida pela mesma biblioteca semver que o npm usa, cada cálculo roda no seu navegador para que as versões que você digita fiquem no seu dispositivo.
Recursos
- Analise uma versão em major, minor, patch, identificadores de prerelease e metadados de build
- Compare duas versões e veja a relação (A > B, A = B, A < B) mais o nível da diferença
- Verifique se uma versão satisfaz uma faixa como ^1.2.3, ~1.2, 1.x ou >=1.0.0 <2.0.0
- Pré-visualize algumas versões de exemplo com sucesso/falha em relação à faixa que você insere
- Incremente por major, minor, patch, premajor, preminor, prepatch ou prerelease
- Normalize strings soltas como v1.2 ou 1.2.3.4 em um semver válido
- Valide a entrada ao vivo, com uma mensagem clara quando uma versão ou faixa está malformada
- Copie qualquer campo de resultado com um clique
Como usar Calculadora SemVer
- Escolha um modo: Analisar, Comparar, Faixa, Incrementar ou Normalizar.
- Digite uma versão (e uma segunda versão ou uma faixa, dependendo do modo).
- Leia os resultados ao vivo nas linhas de informação e nos selos abaixo das entradas.
- Copie o valor que você precisa, como a versão aumentada ou o nível da diferença.
Exemplo
Entrada
version: 1.5.0
range: ^1.2.3
Saída
1.5.0 satisfies ^1.2.3 ✓
1.6.0 → pass 2.0.0 → fail
Uma faixa de circunflexo ^1.2.3 permite tudo até, mas sem incluir, o próximo major (2.0.0).
Erros comuns e solução de problemas
- A análise diz que uma versão é inválida mesmo que pareça correta. — O semver precisa das três partes. Use 1.2.0 em vez de 1.2, e mantenha prerelease/build após um hífen/mais, por exemplo 1.2.3-rc.1+build.5.
- Uma faixa como 1.2 ou ^1.2 se comporta de forma diferente do que você espera. — 1.2 é tratado como 1.2.x, e ^1.2 permite até o próximo major. Use as versões de exemplo do modo Faixa para confirmar exatamente o que passa.
- Incrementar para prerelease produz 1.2.4-0 em vez de começar do mesmo patch. — A partir de um 1.2.3 estável, um aumento de prerelease passa primeiro para o próximo patch (1.2.4-0). Use premajor/preminor/prepatch para controlar qual parte é aumentada.
- A normalização descarta parte da sua entrada, por exemplo 1.2.3.4 vira 1.2.3. — A normalização encontra a primeira sequência de três números e ignora o resto, então um quarto segmento ou texto final é descartado intencionalmente.
Perguntas frequentes
- O que a faixa ^1.2.3 permite?
- Uma faixa de circunflexo ^1.2.3 permite qualquer versão que não altere o dígito não-zero mais à esquerda, então ela corresponde de 1.2.3 até, mas sem incluir, 2.0.0. Para versões 0.x as regras se apertam: ^0.2.3 permite de 0.2.3 até 0.3.0.
- Como uma versão de prerelease é comparada com uma versão estável?
- Uma prerelease tem precedência menor que a sua versão associada, então 1.0.0-rc.1 é menor que 1.0.0. Prereleases são comparadas campo a campo: os identificadores são ordenados, e identificadores numéricos têm precedência menor que os mais longos ou alfanuméricos.
- Qual é a diferença entre ~1.2 e ^1.2?
- O til ~1.2 permite mudanças de nível patch dentro de 1.2 (>=1.2.0 <1.3.0), enquanto o circunflexo ^1.2 permite mudanças de minor e patch até o próximo major (>=1.2.0 <2.0.0). Use o modo Faixa para ver versões de amostra passarem ou falharem.
- Como esta calculadora semver trata os metadados de build?
- Os metadados de build após um sinal de mais (por exemplo +build.42) são analisados e mostrados, mas são ignorados ao comparar precedência, então 1.0.0+a e 1.0.0+b são consideradas versões iguais.
- O que a normalização de uma versão faz?
- A normalização transforma uma string solta em um semver válido encontrando a primeira sequência major.minor.patch que conseguir. Então v1.2 vira 1.2.0, 1.2.3.4 vira 1.2.3 e release-3.1 vira 3.1.0; partes ausentes assumem zero como padrão.
- Por quais tipos de release posso incrementar?
- Você pode aumentar por major, minor, patch, premajor, preminor, prepatch ou prerelease. As variantes pre- iniciam uma linha de prerelease na parte escolhida, por exemplo um premajor em 1.2.3 resulta em 2.0.0-0.
Ferramentas relacionadas
Todas as ferramentas de ArrayKit