Opened 14 years ago
Closed 14 years ago
#175 closed defect (fixed)
foolscap's "in between releases" version numbers are Irrational
Reported by: | Zooko | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 0.6.2 |
Component: | packaging | Version: | 0.6.1 |
Keywords: | Cc: |
Description
As discovered in the context of the Tahoe-LAFS project: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1387
Foolscap's version number when it is "in between releases" is "0.6.1+"
. This is not recognized as a Rational Version Number by the new Python version number standard. If some code requires Rational Version Numbers, or if it uses Tarek Ziadé's new https://bitbucket.org/tarek/distutilsversion to parse version numbers, it will have trouble with this.
Change History (5)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
I opened a pull request with this proposed fix: https://github.com/warner/foolscap/pull/2
comment:3 Changed 14 years ago by
I spent about an hour trying to extend Tahoe-LAFS's copy of Tarek Ziadé's verlib.py
to accept 0.6.1+
as a Rational version number but I couldn't figure out how to do it cleanly and gave up. The solution presented in https://github.com/warner/foolscap/pull/2 should be sufficient anyway, as far as I can tell.
comment:4 Changed 14 years ago by
Milestone: | undecided → 0.6.2 |
---|
comment:5 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Fixed in [1356392]. I'm not thrilled about the readability of "0.6.1.post0" over my "0.6.1+", but I'm not going to fight with a PEP.
A possible solution would be to change foolscap to call its in-between-releases versions something like
"0.6.1.post0"
. That would be acceptable as a Rational Version Number and would sort newer than 0.6.1 and older than 0.6.2.