变更日志¶
版本遵循 语义版本控制 (<major>.<minor>.<patch>
)。向后不兼容(破坏性)变更仅在主要版本中引入,并在发布的 **弃用** 部分提前通知。
已发布版本¶
v1.2.1¶
(2024-06-27)
打包更新和下游说明¶
RPM 规范现在选择退出在 EL 中要求编译的 C 扩展具有构建 ID – 由 @webknjaz 贡献。
GitHub 上的相关提交: 9053c1008bb169c8e362a92782d46c7c0d3b1c06, aaa12159b5cdda763a83dcf4ee920510cad83463.
RPM 规范已更新为预构建供应商的
setuptools-scm
副本,并禁用隔离,解决了 EL 9 中的构建问题 – 由 @webknjaz 贡献。GitHub 上的相关提交: dd85ddefafde8f22ab0239add18a1db9ef789b50.
RPM 定义现在在为 Fedora Linux 构建时运行导入自检 – 由 @webknjaz 贡献。
GitHub 上的相关问题和拉取请求: #615.
面向贡献者的变更¶
RPM 构建现在也在 CI 中针对 UBI 9.4 进行测试 – 由 @webknjaz 贡献。
GitHub 上的相关提交: e9ad0a7d456c99cc848b30b48569235366273672.
v1.2.0.post4¶
(2024-06-09)
v1.2.0.post2¶
(2024-06-08)
v1.2.0¶
(2024-06-07)
错误修正¶
功能¶
开始公开暴露
SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES
和SSH_OPTIONS_HOSTKEYS
选项 – 由 @Qalthos 贡献。GitHub 上的相关问题和拉取请求: #527.
将
request_exec()
方法添加到Channel
类中。它提供了调用底层libssh
库的相应低级 C-API 的接口 – 由 @pbrezina 贡献。此外,现在可以在同一类中使用以下对
libssh
的调用:request_exec()
、send_eof()
、request_send_signal()
和is_eof
,后者作为property
公开。GitHub 上的相关问题和拉取请求: #576.
改进的文档¶
打包更新和下游说明¶
逻辑中存在一个缺陷,该缺陷会将项目目录复制到一个临时文件夹中,当
TMPDIR
设置为项目子目录路径时,会导致无限递归。这是由于使用 pyproject-rpm-macros 在 Fedora 及其下游发生的。它仅与pip wheel
兼容,不会影响pyproject-build
用户。GitHub 上的相关提交: 89c9b3a.
从现在开始,新发布的发布分发包工件将通过 Sigstore 签名 – 由 @webknjaz 贡献。
这是 GitHub Actions CI/CD 工作流自动化的一部分,签名被上传到相应的 GitHub 发布页面。
GitHub 上的相关提交: 986988a.
平台特定的 macOS 轮子现在使用来自 https://pythonlang.cn 的 Python 解释器构建。它们被标记为
macosx_10_9
– 作者 @webknjaz.GitHub 上的相关问题和拉取请求: #333.
构建时依赖的
toml
已被tomli
替换 – 作者 @webknjaz.在 Python 版本低于 3.11 的情况下,才会拉取
tomli
分发版。在 3.11 及更高版本中,现在使用标准库模块tomllib
代替。GitHub 上的相关问题和拉取请求: #501.
在 Python 3.7 及更高版本中,开始使用内置的
setuptools-scm
Git 归档支持 – @webknjaz.GitHub 上的相关问题和拉取请求: #502.
增加了对 Python 3.12 的支持 – 作者 @Qalthos.
现在它在 CI 中得到测试,并通过 Trove 分类器进行宣传。
GitHub 上的相关问题和拉取请求: #532.
构建时依赖的
Cython
现在在 Python 3.12 及更高版本中具有 3.0 的最小版本 – 作者 @webknjaz.在较旧的 Python 版本下,以前的
Cython
版本仍然能够构建项目。GitHub 上的相关问题和拉取请求: #540.
-
以前,由于对 PEP 517 挂钩重新导入的限制,我们的树内构建后端丢失了在较新版本的
setuptools
中实现的 非 PEP 517 挂钩,但在较早的版本中没有。现在通过使用通配符重新导出setuptools
公开的所有内容来解决此问题。GitHub 上的相关问题和拉取请求: #541.
构建时依赖
setuptools-scm
的 CI 固定版本更新为 8.1.0 – 此版本修复了 Git 2.45.0 引入的日期解析不兼容性 (pypa/setuptools_scm#1038, pypa/setuptools_scm#1039) – 作者 @webknjaz.GitHub 上的相关问题和拉取请求: #601.
面向贡献者的变更¶
Read The Docs 上标记的发布版本构建的 变更日志 页面不再尝试显示草稿部分 – 作者 @webknjaz.
GitHub 上的相关提交: 852d259.
调整了发布工作流自动化,以便在构建源分发版时,在尝试创建标签之前预先配置 Git – 作者 @webknjaz.
GitHub 上的相关提交: f07296f.
构建 macOS 平台特定轮子的 CI 配置切换到使用
cibuildwheel
– 作者 @webknjaz.GitHub 上的相关问题和拉取请求: #333.
UBI9 CI 运行时中的 OS 级 tox 包升级到 v3.28.0 – 作者 @Qalthos.
修复了
Session.connect()
文档字符串中“Connect”的拼写错误 – 由 @donnerhacke 贡献。GitHub 上的相关问题和拉取请求: #474.
Packit CI 对互联网的访问已恢复 – 作者 @Qalthos.
GitHub 上的相关问题和拉取请求: #507.
开始在 CI/CD 基础设施中构建用于测试和打包的
manylinux_2_28
基础镜像 – 作者 @Qalthos.GitHub 上的相关问题和拉取请求: #533.
切换回使用 Cython 的原生插件来衡量代码覆盖率 – 作者 @webknjaz.
GitHub 上的相关问题和拉取请求: #538.
为面向贡献者和下游的补丁添加了单独的变更日志片段类型 – 作者 @webknjaz.
它们相应的标识符分别是
contrib
和packaging
。它们旨在用于更准确的分类,否则会使用misc
。GitHub 上的相关问题和拉取请求: #539.
-
这实际上意味着生态系统本地的可编辑安装模式开始正常工作。
GitHub 上的相关问题和拉取请求: #541.
用于构建 manylinux 轮子的重复作业矩阵现在位于单个 GitHub Actions CI/CD 可重用工作流定义中。
GitHub 上的相关问题和拉取请求: #559.
文本作业的重复作业矩阵现在位于单个 GitHub Actions CI/CD 可重用工作流定义中。
GitHub 上的相关问题和拉取请求: #560.
修复了 发布指南 文档中发布工作流的位置 – 作者 @Qalthos.
GitHub 上的相关问题和拉取请求: #565.
构建时依赖
setuptools-scm
的 CI 固定版本更新为 8.1.0 – 此版本修复了 Git 2.45.0 引入的日期解析不兼容性 (pypa/setuptools_scm#1039, pypa/setuptools_scm#1038) – 作者 @webknjaz.GitHub 上的相关问题和拉取请求: #601.
CI/CD 配置已修复,允许发布到 PyPI 和其他目标,而无需考虑测试阶段的结果。这曾经是工作流定义中的一个错误,现在已修复。
GitHub 上的相关问题和拉取请求: #602.
v1.1.0 (2022-12-05)¶
v1.0.0 (2022-09-14)¶
功能¶
在使用键盘交互式身份验证时,向
connect()
添加了password_prompt
参数以覆盖默认提示“password:”。 – by @Qalthos (#331)添加了对
:fd:
套接字选项的支持。 – by @sabedevops (#343)
v0.3.0 (2021-11-03)¶
功能¶
其他¶
开始在 GitHub Actions CI/CD 中使用 Buildah+Podman 构建 AARCH64 基础镜像。 – @webknjaz (#181)
将树内 PEP 517 构建后端重新组织为多个子模块,将入口点移动到
pep517_backend.hooks
,这也便于提取由最终用户(打包人员)通过build
CLI 命令传递的自定义config_settings
。 – @webknjaz (#200)更新 manylinux 构建脚本,以便使用启用 GSSAPI 的 libssh 进行构建。 – by @Qalthos (#203)
改进 manylinux 构建脚本,以预期针对 1/2010/2014 版本及其在
auditwheel repair
之后的 PEP 600 对应版本生成的双重别名 manylinux 标签。 – @webknjaz (#226)将
NAME = "VALUE"
添加到 flake8-eradicate 白名单,以解决 flake8-eradicate 1.1.0 中引入的测试误报。 – by @Qalthos (#258)停止在 GitHub Actions CI/CD 中对 Ubuntu 16.04 下的
pylibssh
二进制轮子进行测试,因为 Ubuntu 16.04 现在已到达生命周期末期。 – @webknjaz (#260)修复了在 GitHub Actions CI/CD 中的 Fedora 下,在
rpmbuild
出现问题时快速失败的情况。 – @webknjaz (#261)在 Fedora 下将
python3-pip
声明为构建依赖项,修复了在 GitHub Actions CI/CD 中的 Fedora 下的 RPM 创建作业。 – @webknjaz (#262)将 pre-commit 配置中的 git 协议替换为 https,因为 GitHub 已关闭 git 协议访问。 – by @Qalthos (#266)
v0.1.0 (2020-08-12)¶
错误修复¶
功能¶
为会话添加了 proxycommand 支持,并将会话异常更新为
LibsshSessionException
- 由 @ganeshrn (#10)添加了 sftp get 功能,用于从远程主机获取文件 - 由 @amolkahat (#26)
杂项¶
更新了 requirements 文件,用
requirements-build.in
替换了requirements.txt
- 由 @akasurde (#14)重构了 towncrier 扩展中的 sphinx RST 解析 - 由 @ewjoachim (#119)
修复了树内 sphinx 扩展中的指令,使其始终触发变更日志文档重建,以便它可以从磁盘获取任何变更日志片段 - 由 @webknjaz (#120)
将 Townrier 片段 README 文档标题改为副标题 - 由 @webknjaz
这样它就不再在侧边栏中显示为单独的项目。 (#125)
将 Read the Docs 上的构建器切换为 dirhtml,因此它现在为网站生成基于目录的 URL 布局 - 由 @webknjaz (#127)
启用了 sphinx.ext.autosectionlabel Sphinx 扩展 以自动为文档部分生成引用目标,可以使用
:ref:
链接到这些目标 - 由 @webknjaz (#128)