题
蟒蛇的 pip
和 easy_install
遵循一些规则排序包,通过他们的释放数字。什么样的规则的编号beta/release/修正的版本,所以这些工具将知道哪些是最新的?
解决方案
这是一个痛点对于许多人。 setuptools
和 easy_install
有一些相当奇怪的规则在试图玩好与大家。你可以阅读完整的规则 setuptools
's parse_version
方法,但这里的摘要:
版本数字都打破了点纳入一组,许多段。4.5.6.7分析为一个多元组等于
("4", "5", "6", "7")
.尾随零之间的破折号或字母数字是抑制。2.4.0是相同的作为2.4;2.4.05相同2.4.5.
字母数字部分是downcased.2.4.a5等于2.4.A5。
弦之前的"最后"按字母顺序被认为是预先发布的版本中,所以2.4.5b之前,不后,2.4.5.
最后,"事先"、"预览","遥控"的处理,如果他们是"c"。单词"开发"代替"@",因此,它来之前什么都用同一版本。就是
x.y.z-dev
保证来之前,任何其他x.y.z
版本。
有一些建议来组织的事情多一点,其中最流行的可能是 PEP386.
其他提示
1.0a1和1。0b2前为1.0。
即将到来的标准:
- http://www.python.org/dev/peps/pep-0386/#the-new-versioning-algorithm
- http://tarekziade.wordpress.com/2009/11/18/distutils-and-distribute-status-part-1/
- http://bitbucket.org/tarek/distutilsversion/
目前的设置工具:http://peak.telecommunity.com/DevCenter/setuptools#specifying-your-project-s-version
不隶属于 StackOverflow