Formáty verzií závislostí v npm v JavaScripte

V súbore package.json verzie nainštalovaných balíkov môžu byť uvedené v rôznych formátoch. Poďme si tieto formáty preštudovať na príklade imaginárnej knižnice somelib.

V nasledujúcom príklade je vyžadovaná presná verzia 2.4.2:

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

V nasledujúcom príklade je vyžadovaná posledná verzia kompatibilná s 2.4.2:

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

V nasledujúcom príklade projekt pracuje s verziami 2.4.2, 2.4.3, 2.4.4 a tak ďalej:

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

V nasledujúcom príklade projekt pracuje s verziami 2.4, 2.5, 2.6 a tak ďalej:

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

V nasledujúcom príklade projekt pracuje s akoukoľvek patch verziou balíka 2.4:

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

V nasledujúcom príklade projekt pracuje s akoukoľvek minor verziou verzie 2:

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

V nasledujúcom príklade projekt pracuje s verziou 2.4 a vyššou:

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

V nasledujúcom príklade projekt pracuje s akoukoľvek verziou v rozsahu od 2.4.2 do 3.1.1:

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