2010-09-11 12 views
0

Possible en double:
Meaning of ~> in version requirementQue signifie l'opérateur ~>?

Je trébuche souvent sur l'opérateur ~>.

par ex.

gem 'httparty', '~> 0.5.2' 

Qu'est-ce que cela signifie?

+0

Votre titre et la première ligne de la question sont différents de l'exemple! De quel opérateur s'agit-il? Ma réponse concerne l'opérateur ~> utilisé dans les dépendances gem. –

+0

@ Jörg: Avez-vous effectué une recherche manuelle? Comment les gens font-ils cela pour trouver des doublons? –

+1

Dans ce cas particulier, je savais que j'ai) répondais moi-même à la question et b) utilisais les mots * contrainte de version pessimiste * dans la réponse, donc je cherchais simplement 'utilisateur: moi [ruby] pessimiste' dans le champ de recherche . Dans le cas plus général, je lis simplement (ou au moins écrémé) chaque question Ruby sur StackOverflow, donc j'ai au moins brièvement aperçu chacune des 13000 questions au moins une fois, et je me souviens de celles qui ont déjà été posées et répondu –

Répondre

3

Il est appelé pessimistic version constraint. Il correspond à une version de gem en laissant tomber le dernier chiffre et en comparant l'égalité. Par exemple, ~> 0.5.2 correspond à la version 0.5.2 ou 0.5.3, mais pas 0.5 ou 0.6. C'est fondamentalement équivalent à une contrainte de >= 0.5.2, < 0.6.

+0

Il semblerait que le lien est cassé. Voici une page plus à jour sur cette idée. http://guides.rubygems.org/patterns/ Recherchez simplement le contrôle de version pessimiste dans le document pour le trouver rapidement. –