С этим инструментом что-то не так?
О «Semver Compare Online»
Этот инструмент сравнивает две SemVer-версии (например, 1.2.3 и 1.3.0-beta), показывает, какая новее, насколько и какой это тип изменения (major, minor, patch, prerelease).
SemVer — стандартная схема версионирования для библиотек, пакетов и API: major ломает совместимость, minor добавляет фичи, patch чинит баги, prerelease — нестабильные сборки. Правильно читать SemVer критично при апгрейдах.
Инструмент строго следует SemVer 2.0, включая правила упорядочивания prerelease. Полезно для планирования апгрейдов, сравнения релизных тегов в CI/CD и инструментов, оценивающих версионные ограничения.
Как пользоваться этим инструментом
Как сравнить две SemVer-версии
Введите обе версии
"Version A" и "Version B" принимают строку вида `1.2.3`. Ведущий `v` срезается, отсутствующий patch считается 0 (`1.2` → `1.2.0`). Pre-release/build-метаданные игнорируются — сравниваются только major/minor/patch.
Запуск
Результат: единственное поле `cmp`. -1, если A < B; 0 при равенстве; 1, если A > B. Сравнение покомпонентное: major, затем minor, затем patch.
Примеры
`1.0.0` vs `1.0.1` → cmp -1. `2.0.0` vs `1.99.99` → cmp 1 (major выигрывает). `1.2.3` vs `1.2.3-rc.1` → cmp 0 (здесь pre-release игнорируется, в отличие от полного SemVer).
Чем это отличается от настоящего SemVer
Строгий SemVer (semver.org) считает `1.2.3` > `1.2.3-rc.1`, потому что pre-release сортируется ниже релиза. Этот инструмент игнорирует всё после patch — для проверки на скорую руку годится, но для логики `^/~` диапазонов npm берите настоящую semver-библиотеку.