Некоторое время меня всегда смущало, как на самом деле работают версии разных пакетов.

В большинстве случаев простое копирование и вставка из разных руководств в Интернете просто делает работу. Но что делать, когда ваше приложение становится больше и имеет много зависимостей?

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

Итак, я легко опишу основные типы версий:

“1.5.2”
exact version of 1.5.2!
“>=1.5.2”
any version above or equal to 1.5.2
“<1.5.2”
any version below 1.5.2

Подстановочные знаки

“1.5.*”
any versions in the range of 1.5.0 <= VERSION < 1.6.0
“1.*”
any versions in the range of 1 <= VERSION < 2.0

Диапазон тильды

~ (знак тильды) позволяет последней цифре подняться вверх

“~1.5.2”
any versions in the range of 1.5.2 <= VERSION < 1.6.0
“~1.5”
any versions in the range of 1.5 <= VERSION < 2.0

^ знак шляпы, не допускающий нарушения изменений

“¹.5.2”
any versions in the range of 1.5.2 <= VERSION < 2.0
“~0.2.1”
** exception when major version is 0
any versions in the range of 0.2.1 <= VERSION < 0.3

Спасибо, что дочитали до этого места, пожалуйста, поставьте закладку, поставьте лайк и поделитесь! :)

Изначально опубликовано в моем блоге о программировании