Для разработчиков / Версии

Калькулятор Semver и проверка диапазонов

Проверьте, соответствует ли версия диапазону semver, например ^1.2.0 или ~2.3, узнайте значение диапазона, сравните две версии и определите следующую мажорную, минорную, патч- или предварительную версию.

Калькулятор Semver и проверка диапазонов: Версии соответствуют Semantic Versioning 2.0.0: MAJOR.MINOR.PATCH с необязательной предварительной версией, например -beta.1, которая идёт перед релизом, и метаданными сборки, которые игнорируются. Диапазоны используют синтаксис npm: ^1.2.0 означает не ниже 1.2.0, но ниже 2.0.0; ~1.2.0 — ниже 1.3.0; 1.x — любую версию 1.y.z; диапазоны с дефисом и || объединяют условия. Результаты проверены по пакету semver самого npm на тысячах случайных диапазонов. Работает на 100% локально в вашем браузере, файлы на сервер не загружаются.

Запуски
В вашем браузере
Стоимость
Бесплатно · без регистрации
Доступность
Готово к использованию
Калькулятор SemverЛокальная обработка

Полностью работает в браузере

1.4.2 соответствует ^1.2.0

Диапазон означает: >=1.2.0 <2.0.0-0

Следующие версии

major2.0.0
minor1.5.0
patch1.4.3
premajor2.0.0-beta.0
preminor1.5.0-beta.0
prepatch1.4.3-beta.0
prerelease1.4.3-beta.0

1.4.2 < 1.10.0

Диапазоны используют синтаксис npm: ^ разрешает изменения, которые не затрагивают крайнюю левую ненулевую цифру, ~ разрешает изменения патча, x обозначает любое число, а || объединяет альтернативы. Предварительные выпуски соответствуют только диапазонам, в которых указан предварительный выпуск той же версии.

Когда менять номер версии

Увеличивайте MAJOR при изменениях, нарушающих работу существующих пользователей, MINOR — при добавлении совместимых функций, а PATCH — при исправлении ошибок. Версии ниже 1.0.0 предназначены для первоначальной разработки, когда измениться может что угодно, поэтому ^0.2.3 допускает только обновления PATCH.

Чтобы сравнить два файла package.json, воспользуйтесь проверкой различий.

Файлы блокировки

Диапазон в package.json допускает множество версий, а файл блокировки фиксирует конкретные установленные версии, поэтому все получают одинаковые зависимости. Добавьте файл блокировки в репозиторий и обновляйте диапазоны намеренно.

Как пользоваться

  1. Введите версию, например 1.4.2, и диапазон, например ^1.2.0.
  2. Проверьте, соответствует ли версия диапазону, и узнайте, во что он разворачивается.
  3. Посмотрите следующую версию для каждого типа релиза или сравните две версии.

Конфиденциальность и ограничения

Расчёт выполняется в вашем браузере.

Похожие инструменты

Часто задаваемые вопросы

В чём разница между ^ и ~?

Каретка разрешает любые изменения, которые не затрагивают крайнюю левую ненулевую цифру: ^1.2.3 допускает 1.9.0, но не 2.0.0, а ^0.2.3 допускает 0.2.9, но не 0.3.0. Тильда разрешает только изменения патч-версии: ~1.2.3 допускает 1.2.9, но не 1.3.0.

Почему 1.3.0-beta не соответствует >=1.2.0?

npm разрешает предварительным версиям соответствовать только диапазону, в котором указана предварительная версия той же версии, чтобы нестабильные версии не устанавливались случайно.

Какая версия новее: 1.0.0-alpha или 1.0.0-alpha.1?

1.0.0-alpha.1: более длинная предварительная версия с тем же началом идёт после более короткой; любая предварительная версия идёт перед самим релизом.

Бесплатный инструмент · запусков: в вашем браузере · аккаунт не нужен