On 12/16/2014 06:48 PM, Donald Stufft wrote:
> 
> Now if you have 1.3+debian1 installed via apt-get (or any means really), and 
> you’ll get the following behaviors (show with pip):
> 
> - pip install yourthing -> 1.3+debian1 satisfies the constraint of anything, 
> so it stays installed.
> - pip install yourthing==1.3 -> 1.3+debian1 satisfies the constraint of 
> ==1.3, so it stays installed.
> - pip install yourthing>=1.3 -> 1.3+debian1 satisfies the constraint of >= 
> 1.3, so it stays installed.
> - pip install yourthing>=1.4 -> 1.3+debian1 does not satisfy the constraint 
> of >=1.4, so pip will upgrade it to 1.4.
> - pip install —upgrade youthing -> You’ve requested an upgrade, so pip will 
> see 1.4 exists and will install it.
> - pip install —upgrade yourthing==1.3 -> You’ve requested an upgrade, but 
> there’s nothing newer than 1.3+debian1 that matches the constraint so it 
> stays installed
> - pip install -upgrade youthing>=1.3 -> You’ve requested an upgrade, pip will 
> see 1.4 exists and satisfies the constraint and will install it.
> - pip install —upgrade yourthing>1.4 -> you’ve requested an upgrade and 
> 1.3+debian1 is not >= 1.4, so pip will see 1.4 exists and install it.
> 
> Does that make sense?

Yes.  Thank you for that _very_ thorough explanation.  :)

To continue with Maurits' use-case, in order to get /exactly/ 1.3, '===' is the 
operator to use?  Or are we still
discussing that?  Personally, I think

  pip install yourthing is 1.3

;)

--
~Ethan~

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to