Le tilde ~
est l'une des nombreuses contraintes qui peuvent être utilisées pour gérer les versions.
Opérateurs de sortie de version significative suivants (~, ^):
L'opérateur ~
est mieux expliqué par exemple : ~1.2
est équivalent à >=1.2 <2.0.0
, tandis que ~1.2.3
est équivalent à >=1.2.3 <1.3.0
L'opérateur ^
se comporte de manière très similaire, mais il se rapproche de la sémantique de versionnement, et permettra toujours des mises à jour non cassantes. Par exemple ^1.2.3
est équivalent à >=1.2.3 <2.0.0
car aucune des sorties jusqu'à la 2.0 ne devrait briser la compatibilité ascendante. Pour les versions avant 1.0, il agit également avec la sécurité à l'esprit et traite ^0.3
comme >=0.3.0 <0.4.0
Plage de version avec hyphens (-)
Ensemble inclus de versions. Les versions partielles à droite incluent sont complétées avec un joker. Par exemple 1.0 - 2.0
est équivalent à >=1.0.0 <2.1
car le 2.0
devient 2.0.*
. D'autre part, 1.0.0 - 2.1.0
est équivalent à >=1.0.0 <=2.1.0
Plage de version avec joker (.*)
Vous pouvez spécifier un motif avec un joker *. 1.0.*
est l'équivalent de >=1.0 <1.1
Plage de version simple (>, >=, <, <=, !=)
En utilisant des opérateurs de comparaison, vous pouvez spécifier des plages de versions valides. Les opérateurs valides sont >, >=, <, <=, !=.
Vous pouvez définir plusieurs plages. Les plages séparées par un espace ( ) ou une virgule (,
) seront traitées comme un ET logique. Un double pipe (||
) sera traité comme un OU logique. ET a une priorité plus élevée que OU.
Et enfin Contrainte de version exacte
Vous pouvez spécifier la version exacte d'un package Exemple : 1.0.2