Formáty verzí závislostí v npm v JavaScriptu

V souboru package.json verze nainstalovaných balíčků mohou být uvedeny v různých formátech. Pojďme si tyto formáty prostudovat na příkladu imaginární knihovny somelib.

V následujícím příkladu je vyžadována přesná verze 2.4.2:

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

V následujícím příkladu je vyžadována poslední verze kompatibilní s 2.4.2:

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

V následujícím příkladu projekt pracuje s verzemi 2.4.2, 2.4.3, 2.4.4 a tak dále:

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

V následujícím příkladu projekt pracuje s verzemi 2.4, 2.5, 2.6 a tak dále:

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

V následujícím příkladu projekt pracuje s jakoukoli patch verzí balíčku 2.4:

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

V následujícím příkladu projekt pracuje s jakoukoli minor verzí verze 2:

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

V následujícím příkladu projekt pracuje s verzí 2.4 a vyšší:

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

V následujícím příkladu projekt pracuje s jakoukoli verzí v rozsahu od 2.4.2 do 3.1.1:

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