Formatos de versão de dependências no npm em JavaScript
No arquivo package.json, as versões dos pacotes
instalados podem ser especificadas em vários
formatos. Vamos estudar esses formatos
usando como exemplo a biblioteca imaginária somelib.
No exemplo a seguir, é exigida a
versão exata 2.4.2:
{
"dependencies": {
"somelib": "2.4.2"
}
}
No exemplo a seguir, é exigida a
versão mais recente compatível com 2.4.2:
{
"dependencies": {
"somelib": "^2.4.2"
}
}
No exemplo a seguir, o projeto funciona
com as versões 2.4.2, 2.4.3,
2.4.4 e assim por diante:
{
"dependencies": {
"somelib": "~2.4.2"
}
}
No exemplo a seguir, o projeto funciona
com as versões 2.4, 2.5, 2.6
e assim por diante:
{
"dependencies": {
"somelib": "~2.4"
}
}
No exemplo a seguir, o projeto funciona
com qualquer versão de patch do pacote 2.4:
{
"dependencies": {
"somelib": "2.4.x"
}
}
No exemplo a seguir, o projeto funciona
com qualquer versão minor da versão 2:
{
"dependencies": {
"somelib": "2.x"
}
}
No exemplo a seguir, o projeto funciona
com a versão 2.4 ou superior:
{
"dependencies": {
"somelib": ">=2.4"
}
}
No exemplo a seguir, o projeto funciona
com qualquer versão no intervalo de
2.4.2 a 3.1.1:
{
"dependencies": {
"somelib": "2.4.2 3.1.1"
}
}