328 votes

Dans requirements.txt, ce qui ne tilde est égal à (~=) cela veut dire?

Dans l' requirements.txt pour une bibliothèque Python, je suis en utilisant, à l'une des exigences est spécifié comme:

mock-django~=0.6.10

Qu'est - ~= moyenne?

360voto

Maxime Lorant Points 11202

Cela signifie qu'il va choisir la dernière version du paquet, supérieure ou égale à 0.6.10, mais toujours dans la 0.6.* version, afin de ne pas télécharger 0.7.0 par exemple. Il vous assure de trouver des correctifs de sécurité, mais de garder une compatibilité descendante, si le mainteneur du paquet respecte la sémantique du contrôle de version (qui stipule que la rupture des changements doivent se produire uniquement dans les versions majeures).

Ou, comme dit par PEP 440:

Pour une version donnée identifiant V. N , la version compatible avec la clause est à peu près équivalente à la paire de comparaison de clauses:

>= V.N, == V.*

13voto

Nurjan Points 3769

~= signifie une version compatible. Pas moins de 0.6.10 et supérieur (de 0,6.*).

4voto

Kieran Points 238

Une version compatible avec la clause se compose de la version compatible avec l'opérateur ~= et un identificateur de version. Elle correspond à un candidat de la version qui devrait être compatible avec la version spécifiée.

Vous pouvez en lire plus ici: https://www.python.org/dev/peps/pep-0440/#compatible-release

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X