一个小图书馆,让你的版本随时更新。

rose的Python项目详细描述


“任何其他名字的版本都一样甜美。”“

一个小型的库,用于在任何地方轻松更新您的版本。

更新你的setup.py,你的狮身人面像conf.py,你的 __init__.py&python包的每个版本上的其他内容都很糟糕。 使您的生活更轻松(&;非常semver!)

将您的版本号放入使用此库的顶级版本文件中, 您可以不依赖于 疯狂的进口黑客。

灵感来源于2013年Pycon大会上与George Hickman(Ghickman)的疯狂讨论。

要求

  • Python2.5+

用法

首先安装rose(见下文)。然后,推你的版本 在它自己的文件中编号(通常称为VERSION):

$ echo '1.0.0-beta' > VERSION

更新您的setup.py如下:

# ...

import rose

setup(
    name='your_package_name_here',
    # UPDATE THIS LINE!
    version=rose.load_version('VERSION'),
    # The usual follows...

然后更新您的__init__.py

# Whatever is there, then...

import os
import rose

# If you don't care about being cross-platform, you can just pass a simple
# path instead.
VERSION_FILE = os.path.join(os.path.dirname('VERSION'))
__version__ = rose.build_version('your_package_name_here', rose.load_version(VERSION_FILE))

如果您使用sphinx编写文档,则可以使用以下命令更新您的conf.py

# ADD THIS!
import rose
RELEASE_VERSION = rose.load_version('../VERSION')
SHORT_VERSION = RELEASE_VERSION.split('-')[0]

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = SHORT_VERSION
# The full version, including alpha/beta/rc tags.
release = RELEASE_VERSION

安装

使用pip,只需运行:

pip install rose

许可证

新的BSD

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在片段中使用listView?   java Android Studio:在不同的活动中使用“OnClick”方法?   设置IntelliJ时,java字符未正确显示   如何使用Java解析每个不同键和值的JSON对象?   简单的java AI响应程序?   java更改进程中不确定对话框的颜色   java类型不匹配:无法在eclipse中从双精度转换为整数   java如何理解我的类的属性是否已更改   xml Java Jena API获取另一个类的属性   java在JPanel上缩放和加载地图分幅   java在安卓 studio上使用工具栏的正确方法是什么?   java使用基于iText Core的OpenPdf从pdf页面删除或更新添加的图像图标   JavaFacebookGraphAPI在第一次请求时返回400,在第二次请求时返回200,这两个请求是相同的   java如何在DynamoDB中实现选择和插入项作为一个事务   java如何使用MAVEN运行方法?   (如何)在Java三元运算符语句中捕获异常?   java如何使用Hibernate SchemaExport和BeanValidation约束导出数据库模式?   java如何在weblogic中使用hibernate代替eclipselink?   Java读socketTcp更快