[tahoe-lafs-trac-stream] [pycryptopp] #90: upgrade versioneer

pycryptopp trac at tahoe-lafs.org
Sun Jul 21 14:57:29 UTC 2013


#90: upgrade versioneer
-------------------+---------------------
Reporter:  zooko   |          Owner:
    Type:  defect  |         Status:  new
Priority:  major   |      Milestone:
 Version:  0.5.29  |     Resolution:
Keywords:          |  Launchpad Bug:
-------------------+---------------------

Comment (by zooko):

 Replying to [comment:2 nejucomo]:
 >
 > It does present a problem for making frequent releases and using a tool
 like `pip` to install those releases, because version comparison means the
 least significant releases may have a "smaller" version than releases from
 older revisions.

 I don't think this is a problem for programs like pycryptopp which use
 versioneer, because versioneer already provides a way to have
 monotonically increasing versions.

 In the git-hash-hack, git hash is appended to the least-significant end of
 the version number. That is, let {{{X}}} represent the version number that
 we generate ''without'' the git hash hack. Then, the version number that
 we generate with the git hash hack is {{{X ⊗ hash}}}, where "⊗" means
 concatenation. Therefore, if the ordering of versions-with-git-hash-hack
 would suffer from the problem that you describe, this implies that the
 versions-without-git-hash-hack would collide.

 So, whatever method that versioneer uses to generate increasing version
 numbers, such as a monotonically increasing "post-release-number" like
 nejucomo suggests in the comments here, or using the count of commits in
 git, or the height of the Bitcoin blockchain, or whatever, then when you
 append the git-hash-hack to that, and you can never have the problem that
 you describe, in which the contents of the git-hash determine the sort
 order.

 Am I missing anything?

-- 
Ticket URL: <https://tahoe-lafs.org/trac/pycryptopp/ticket/90#comment:4>
pycryptopp <https://tahoe-lafs.org/trac/pycryptopp>



More information about the tahoe-lafs-trac-stream mailing list