Cómo usar: Calculadora Semver
- Comparar: escribe dos versiones para ver cuál es más nueva y por qué (se incluyen prerelease y build metadata).
- Incrementar: escribe la versión actual y haz clic en el tipo de cambio para obtener la siguiente versión. Se copia automáticamente.
- Comprobar rango: escribe un rango npm como
^1.2.0,~1.2,1.xo>=1.2 <2y una lista de versiones. - Lee la explicación en lenguaje sencillo y mira qué versiones cumplen el rango.
Versionado semántico: MAJOR.MINOR.PATCH
| Parte | Se incrementa cuando… | Ejemplo |
|---|---|---|
| MAJOR | haces cambios que rompen compatibilidad | 1.4.2 → 2.0.0 |
| MINOR | añades funciones, manteniendo compatibilidad | 1.4.2 → 1.5.0 |
| PATCH | corriges errores, manteniendo compatibilidad | 1.4.2 → 1.4.3 |
| Prerelease | publicas una versión de prueba | 2.0.0-beta.1 |
| Build metadata | etiquetas una compilación (se ignora en la precedencia) | 1.4.2+sha.5114f85 |
Chuleta de rangos npm
| Rango | Significa | Permite |
|---|---|---|
^1.2.3 | Compatible con 1.2.3 | >=1.2.3 <2.0.0 |
^0.2.3 | En 0.x, el minor cuenta como “major” | >=0.2.3 <0.3.0 |
~1.2.3 | Solo actualizaciones de patch | >=1.2.3 <1.3.0 |
1.x / 1 | Cualquier 1.y.z | >=1.0.0 <2.0.0 |
1.2.3 - 2.3 | Rango con guion | >=1.2.3 <2.4.0 |
>=1.2 <1.5 || 2.x | Cualquiera de los dos conjuntos | 1.2.0–1.4.x o 2.x |
Las prereleases solo coinciden con un rango si un comparador del mismo conjunto tiene una prerelease sobre el mismo major.minor.patch. Por eso ^1.2.0 no coincide con 1.3.0-beta.1, pero ^1.3.0-beta.0 sí. Así evitas instalar versiones inestables por accidente.
Los rangos viven en tu package.json. Para decidir la siguiente versión a partir de tus commits, usa el Generador de Changelog; para etiquetar la publicación, el Generador de comandos Git.
También se busca como: comprobar rango semver, rango de versiones npm, caret vs tilde, versionado semántico, subir versión semver, comparar versiones npm, probador semver, semver prerelease.
Herramientas que combinan con: Calculadora Semver
- Generador de flujos de trabajo de GitHub Actions — Elige tu pila, tus desencadenantes y tus pasos, y obtén un .github/workflows/ci.yml — instalación, caché, lint, pruebas, compilación, una matriz de versiones y, si quieres, una implementación en GitHub Pages, Vercel o un registro de contenedores.
- Conversor de bases numéricas — Escribe un número en cualquier base y verlo al instante en todas las demás.
- Comprobador de diferencias — Pega la versión original y la modificada para ver, una al lado de la otra, las líneas añadidas, eliminadas y modificadas, con las palabras exactas que han cambiado resaltadas dentro de cada línea.
- Validador YAML — Pega un archivo de Docker Compose, un manifiesto de Kubernetes, un workflow de GitHub Actions o cualquier YAML para localizar errores, detectar trampas habituales y obtener una versión bien formateada.
Preguntas frecuentes
¿Puedo usarlo como probador de semver?
¿Cuál es la diferencia entre ^ y ~ en package.json?
^1.2.3 permite actualizaciones de minor y patch (hasta 2.0.0, sin incluirla). ~1.2.3 permite solo actualizaciones de patch (hasta 1.3.0). En versiones 0.x, ^ es más estricto: ^0.2.3 solo permite 0.2.x.