Формати на версии на зависимости в npm в JavaScript

Във файла package.json версиите на инсталираните пакети могат да бъдат посочени в различни формати. Нека изучим тези формати с примера на въображаемата библиотека somelib.

В следващия пример се изисква точна версия 2.4.2:

package.json{
  "dependencies": {
    "somelib": "2.4.2"
  }
}

В следващия пример се изисква последна версия, съвместима с 2.4.2:

package.json{
  "dependencies": {
    "somelib": "^2.4.2"
  }
}

В следващия пример проектът работи с версии 2.4.2, 2.4.3, 2.4.4 и така нататък:

package.json{
  "dependencies": {
    "somelib": "~2.4.2"
  }
}

В следващия пример проектът работи с версии 2.4, 2.5, 2.6 и така нататък:

package.json{
  "dependencies": {
    "somelib": "~2.4"
  }
}

В следващия пример проектът работи с всяка patch-версия на пакета 2.4:

package.json{
  "dependencies": {
    "somelib": "2.4.x"
  }
}

В следващия пример проектът работи с всяка minor версия на версия 2:

package.json{
  "dependencies": {
    "somelib": "2.x"
  }
}

В следващия пример проектът работи с версия 2.4 и по-нови:

package.json{
  "dependencies": {
    "somelib": ">=2.4"
  }
}

В следващия пример проектът работи с всяка версия в диапазона от 2.4.2 до 3.1.1:

package.json{
  "dependencies": {
    "somelib": "2.4.2 3.1.1"
  }
}