zest.releaser/setuptools_scm 插件。
项目描述
icrs.releaser
此软件包为使用 zest.releaser 发布项目提供支持,特别是与 setuptools_scm 结合使用。
此软件包做三件事
在源文件中插入正确的版本号。
当对象文档字符串包含缩略的变更日志时,对源代码和文档的读者很有帮助。Sphinx通过以下特殊指令 支持此功能 versionadded,versionchanged 和 deprecated。例如,文档字符串可能包含
.. versionchanged:: 2.0.1 Now frob the frizzle correctly when *frob_frizzle* is true.
但是,文档字符串的作者并不总是知道包含更改的版本号最终会是什么。在类似于CalVer的方案中,这取决于发布的时间,而在类似于SemVer的方案中,这取决于发布中包含的其他更改。在任何情况下,都必须在发布完成后才能确定。
为了解决这个问题,这个包提供了一个插件,允许您像这样编写文档字符串
.. deprecated:: NEXT Turns out frobbing the frizzle was a bad idea.
当发布时,会检查
src/<PROJECT>
目录中找到的所有.py
文件中的三个带有NEXT
参数的指令,并将NEXT
值替换为用户选择的版本号。用户将看到所做的更改的diff,并会被要求在继续之前确认是否提交。
从环境中删除C编译器标志。
您的环境中可能包含自定义的C编译器标志(如
CFLAGS
等)。这些可能包含不兼容的选项,如-ffast-math
或-march=native
,这会阻止在您的机器上构建的二进制轮在其他机器上工作。这个包将从构建二进制轮的环境变量中删除这些标志。
让
setuptools_scm
尊重用户输入的版本号。zest.releaser
在标记存储库时询问setuptools
要使用哪个版本。它期望收到用户输入的版本,以及它写入磁盘的版本(通常在setup.py
中)。但是,由于
setuptools_scm
根据存储库中的最后一个标签覆盖了setup.py
中存储的值,所以这不起作用:它只有在已经创建标签的情况下才会起作用!而不是得到正确的标签0.0.2
,zest.releaser
想要创建一个标签如0.0.1.dev11+gbeb8b20
。这个包强制
setuptools_scm
尊重用户输入的版本,以确保标签正确。
安装和使用
当安装时,这个包会向zest.releaser
注册一些入口点,因此只需要执行pip install icrs.releaser
,然后调用icrs_release
来使用上述提到的插件。
这个包提供了一个recommended
额外安装与zest.releaser[recommended]
相同的组件。
$ pip install 'icrs.releaser[recommended]'
变更
1.2.0 (2024-01-30)
增加对 Python 3.11 和 3.12 的支持。
取消对 Python 3.8 的支持。最低支持的版本现在是 3.9。
依赖更新的 zest.releaser >= 9.1.1。
移除对 setuptools 的依赖;现在使用所谓的“原生”命名空间包。
添加一个新的发布检查,禁止存在开发依赖项(例如,“icrs.releaser >= 3.0.dev0”将被禁止)。这仅适用于在 setup.py 中列出依赖项的 setuptools 项目。
1.1.0 (2022-03-03)
修复处理项目名称是命名空间(icrs.releaser),但磁盘上的源目录不包含命名空间(src/releaser)的情况。这是一个遗留情况,支持正在过渡到标准布局的项目。
1.0.1 (2022-02-25)
添加名为“recommended”的额外内容,用于安装与 zest.releaser[recommended] 做同样的事情。
1.0.0 (2022-02-25)
PyPI 初次发布。
项目详情
下载文件
下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。
源分发
构建分发
icrs.releaser-1.2.0.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 144947aceb895a11fbc81e67b82c182d009f2d599b70e93ec204da1ac14a17fc |
|
MD5 | 72103f0b63e106019f793416bcdf0209 |
|
BLAKE2b-256 | 1d112246c8934e7e091eddeb76abf1e190905738f719084a0fddb1b2b46c9e61 |
icrs.releaser-1.2.0-py3-none-any.whl 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7aa87f4afbe894bfa8509f3f1f5056453e77fb21c08fd52c70a6b9221d720b86 |
|
MD5 | 1ecb63d8709151dea2de213fc9fd368c |
|
BLAKE2b-256 | 45b9c584f90120e73fb0bc40f396fe37c6de2ac3c37d913fc3e5951c3884e514 |