Calculadora de Semver
Analiza, compara, verifica rangos, incrementa y normaliza versiones semánticas en tu navegador. Las versiones que escribes se quedan en tu dispositivo.
Las versiones y rangos que ingresas se evalúan localmente en tu navegador y nunca se suben.
¿Necesitas un id único rápido? Prueba el Generador de UUID.
Acerca de Calculadora de Semver
Esta calculadora de semver es un conjunto de herramientas de Versionado Semántico para todo lo que haces con números de versión. Analiza una versión como 1.2.3-beta.1+build.42 en su major, minor, patch, prerelease y metadatos de build; compara dos versiones para ver cuál es más nueva y en qué nivel difieren; verifica si una versión satisface un rango de npm como ^1.2.3, ~1.2, 1.x o >=1.0.0 <2.0.0; incrementa una versión por major, minor, patch o cualquier paso de prerelease; y normaliza una cadena imprecisa como v1.2 en un semver limpio. Está hecha para personas desarrolladoras, autoras de paquetes e ingenieras de release que razonan sobre rangos de dependencias cada día. Impulsada por la misma librería semver que usa npm, cada cálculo se ejecuta en tu navegador para que las versiones que escribes se queden en tu dispositivo.
Características
- Analiza una versión en major, minor, patch, identificadores de prerelease y metadatos de build
- Compara dos versiones y ve la relación (A > B, A = B, A < B) más el nivel de diferencia
- Verifica si una versión satisface un rango como ^1.2.3, ~1.2, 1.x o >=1.0.0 <2.0.0
- Previsualiza un puñado de versiones de ejemplo con aprobado/fallido frente al rango que ingresas
- Incrementa por major, minor, patch, premajor, preminor, prepatch o prerelease
- Normaliza cadenas imprecisas como v1.2 o 1.2.3.4 en un semver válido
- Valida la entrada en vivo, con un mensaje claro cuando una versión o rango está malformado
- Copia cualquier campo de resultado con un clic
Cómo usar Calculadora de Semver
- Elige un modo: Analizar, Comparar, Rango, Incrementar o Normalizar.
- Escribe una versión (y una segunda versión o un rango, según el modo).
- Lee los resultados en vivo en las filas de información y los distintivos debajo de las entradas.
- Copia el valor que necesites, como la versión incrementada o el nivel de diferencia.
Ejemplo
Entrada
version: 1.5.0
range: ^1.2.3
Salida
1.5.0 satisfies ^1.2.3 ✓
1.6.0 → pass 2.0.0 → fail
Un rango con acento circunflejo ^1.2.3 permite cualquier cosa hasta, pero sin incluir, el siguiente major (2.0.0).
Errores comunes y solución de problemas
- Analizar dice que una versión es inválida aunque parece correcta. — Semver necesita las tres partes. Usa 1.2.0 en lugar de 1.2, y mantén prerelease/build después de un guion/signo más, por ejemplo 1.2.3-rc.1+build.5.
- Un rango como 1.2 o ^1.2 se comporta de forma distinta a lo que esperas. — 1.2 se trata como 1.2.x, y ^1.2 permite hasta el siguiente major. Usa las versiones de ejemplo del modo Rango para confirmar exactamente qué pasa.
- Incrementar a prerelease produce 1.2.4-0 en lugar de partir desde el mismo patch. — Desde un 1.2.3 estable, un incremento de prerelease pasa primero al siguiente patch (1.2.4-0). Usa premajor/preminor/prepatch para controlar qué parte se incrementa.
- Normalizar descarta parte de tu entrada, por ejemplo 1.2.3.4 se vuelve 1.2.3. — La normalización encuentra la primera secuencia de tres números e ignora el resto, así que un cuarto segmento o texto final se descarta intencionalmente.
Preguntas frecuentes
- ¿Qué permite el rango ^1.2.3?
- Un rango con acento circunflejo ^1.2.3 permite cualquier versión que no cambie el dígito distinto de cero más a la izquierda, así que coincide con 1.2.3 hasta, pero sin incluir, 2.0.0. Para versiones 0.x las reglas se endurecen: ^0.2.3 permite 0.2.3 hasta 0.3.0.
- ¿Cómo se compara una versión prerelease con una versión estable?
- Una prerelease tiene menor precedencia que su release asociado, así que 1.0.0-rc.1 es menor que 1.0.0. Las prereleases se comparan campo por campo: los identificadores se ordenan, y los identificadores numéricos quedan por debajo de los más largos o alfanuméricos.
- ¿Cuál es la diferencia entre ~1.2 y ^1.2?
- La virgulilla ~1.2 permite cambios a nivel de patch dentro de 1.2 (>=1.2.0 <1.3.0), mientras que el acento circunflejo ^1.2 permite cambios de minor y patch hasta el siguiente major (>=1.2.0 <2.0.0). Usa el modo Rango para ver versiones de muestra aprobar o fallar.
- ¿Cómo maneja esta calculadora de semver los metadatos de build?
- Los metadatos de build después de un signo más (por ejemplo +build.42) se analizan y se muestran, pero se ignoran al comparar la precedencia, así que 1.0.0+a y 1.0.0+b se consideran versiones iguales.
- ¿Qué hace normalizar una versión?
- La normalización convierte una cadena imprecisa en un semver válido encontrando la primera secuencia major.minor.patch que pueda. Así v1.2 se vuelve 1.2.0, 1.2.3.4 se vuelve 1.2.3 y release-3.1 se vuelve 3.1.0; las partes faltantes se establecen en cero.
- ¿Por qué tipos de release puedo incrementar?
- Puedes incrementar por major, minor, patch, premajor, preminor, prepatch o prerelease. Las variantes pre- inician una línea de prerelease en la parte elegida, por ejemplo un premajor en 1.2.3 produce 2.0.0-0.
Herramientas relacionadas
Todas las herramientas de ArrayKit