¿Algo va mal con esta herramienta?

Sobre «Semver Compare Online»

Esta herramienta compara dos versiones SemVer (Versionado Semántico) — como 1.2.3 vs 1.3.0-beta — y te dice cuál es más nueva, por cuánto y qué tipo de cambio las separa (major, minor, patch, prerelease).

SemVer es el esquema estándar de versionado para librerías, paquetes y APIs. Señala el impacto de los cambios: los aumentos major rompen compatibilidad, minor añade funcionalidades, patch corrige bugs y los tags prerelease marcan builds inestables. Leer SemVer correctamente es crucial al actualizar dependencias.

La herramienta sigue la spec SemVer 2.0 al pie de la letra, incluidas las reglas de ordenación de prereleases. Útil al planificar actualizaciones de versión, comparar tags de release en CI/CD, o construir herramientas de dependencias que evalúan restricciones de versión.

Cómo usar esta herramienta

Cómo comparar dos versiones SemVer

  1. Introduce las dos versiones

    «Version A» y «Version B» aceptan cadenas SemVer tipo `1.2.3`. La `v` inicial se elimina, y un patch ausente toma 0 por defecto (`1.2` → `1.2.0`). Las metadatos pre-release/build se ignoran — sólo major/minor/patch se comparan.

  2. Ejecutar

    Resultado: un único campo `cmp` — -1 si A < B, 0 si igual, 1 si A > B. Comparación componente a componente: primero major, luego minor, luego patch.

  3. Ejemplos

    `1.0.0` vs `1.0.1` → cmp -1. `2.0.0` vs `1.99.99` → cmp 1 (gana el major). `1.2.3` vs `1.2.3-rc.1` → cmp 0 (aquí se ignora pre-release, a diferencia de SemVer estricto).

  4. Diferencia con el SemVer real

    El SemVer estricto (semver.org) considera `1.2.3` > `1.2.3-rc.1` porque pre-release ordena antes que el release. Esta herramienta ignora todo después del patch — útil para sanity checks, pero usa una librería real de semver para la lógica `^/~` de npm.