-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Tarek Ziadé wrote:
2009/12/28 "Martin v. Löwis" firstname.lastname@example.org:
I think Antoine's proposal is good (using the range when "2.5" is used, and using 2.5.0 when explicitely needed), and fixes Martin's concerns.
So I would be in favor of removing ~= and using Antoine's rule;
So specifying 2.5 would be a short-hand for *what*?
2.5 would be a shorthand for 2.5.x. So, equivalent to : >=2.5.0, < 2.6.0
2.5.0 would be the notation required to describe this specific micro version.
For third-party projects, the same rule would apply.
The only particular point is about projects that don't use the .0 micro notation for the first version of a series. In that case, "2.5" will still mean ">=2.5, < 2.6.0"
IOW, if someone needs a full MAJOR.MINOR.MICRO comparison, he will have to explicitely tell if by providing a detailed version, even if he needs to fill it with some ".0"s
This will of course be applicable only for PEP 386-compatible versions. So for "Requires-Externals", the range might not apply (as I stated in the PEP)
Requires-Dist: zope.interface (3.1) ==> any versions that starts with 3.1, not including post- or pre- releases Requires-Dist: zope.interface (3.1.0) ==> only 3.1.0
For completeness, isn't this really "any versino which starts with 3.1.0, not including post- or pre- releases"? That particular pacakge doesn't use more than a third version component, but there are packages in the wild which use four.
Requires-Python: 3 ==> Python 3 (no matter wich one) Requires-Python: >=2.6,<3 ==> Any version of Python 2.6.x or 2.7.x (and 2.8.x if it exists one day) Requires-Python: 2.6.2 ==> only Python 2.6.2
Here, the issue is only theoretical: Python dosn't issue "fourth dot" releases.
Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 email@example.com Palladion Software "Excellence by Design" http://palladion.com