Ansible 变更日志工具发布说明¶
主题
- v0.31.1
- v0.31.0
- v0.30.0
- v0.29.0
- v0.28.0
- v0.27.0
- v0.26.0
- v0.25.0
- v0.24.0
- v0.23.0
- v0.22.0
- v0.21.0
- v0.20.0
- v0.19.0
- v0.18.0
- v0.17.0
- v0.16.0
- v0.15.0
- v0.14.0
- v0.13.0
- v0.12.0
- v0.11.0
- v0.10.0
- v0.9.0
- v0.8.1
- v0.8.0
- v0.7.0
- v0.6.0
- v0.5.0
- v0.4.0
- v0.3.1
- v0.3.0
- v0.2.1
- v0.2.0
- v0.1.0
v0.31.1¶
发布摘要¶
针对 ansible-core 的 Bug 修复版本。
Bug修复¶
- 修复 ansible-core 模块的
namespace
提取(https://github.com/ansible-community/antsibull-changelog/issues/184, https://github.com/ansible-community/antsibull-changelog/pull/185)。
v0.31.0¶
发布摘要¶
功能发布。
次要更改¶
- 在
lint-changelog-yaml
子命令中添加--strict
参数,以检查不应存在的额外字段(https://github.com/ansible-community/antsibull-changelog/pull/182)。 - 声明支持 Python 3.13(https://github.com/ansible-community/antsibull-changelog/pull/180)。
- Python API:允许在加载变更日志文件时提取额外数据,并允许在保存时插入额外数据(https://github.com/ansible-community/antsibull-changelog/pull/181)。
- Python API:允许在 linting 之前预处理 changelog.yaml(https://github.com/ansible-community/antsibull-changelog/pull/181)。
重大更改/移植指南¶
- 与旧变更日志格式相关的更多内部代码已被删除。这仅可能影响其他将 antsibull-changelog 作为库使用的项目。姊妹 antsibull 项目 antsibull-build 和 antsibull-docs 可能仅在旧版本中受到影响。**antsibull-changelog CLI 工具的用户不受此更改影响**(https://github.com/ansible-community/antsibull-changelog/pull/179)。
v0.30.0¶
发布摘要¶
功能发布。
次要更改¶
- 允许在
changelogs/config.yml
中配置使用的 VCS。有效选择为none
(默认)、git
或auto
。如果设置为git
或auto
检测到该项目是 Git 存储库的一部分,则在尝试加载有关 Ansible 模块、插件和角色的信息时,只会将未忽略的文件复制到临时目录(https://github.com/ansible-community/antsibull-changelog/issues/172, https://github.com/ansible-community/antsibull-changelog/pull/175)。 - Antsibull-changelog 现在依赖于新软件包 antsibull-docutils。这不应有任何可见的影响,除了可能改进的 MarkDown 输出(https://github.com/ansible-community/antsibull-changelog/pull/174)。
- Antsibull-changelog 现在依赖于新项目 antsibull-fileutils(https://github.com/ansible-community/antsibull-changelog/pull/176)。
- 如果您正在使用 argcomplete 全局补全,您现在可以使用 Tab 键补全
antsibull-changelog
命令行。有关如何全局启用 Tab 键补全,请参阅 argcomplete README 中的 激活全局补全。这也将使用 Tab 键补全 Ansible 命令,例如ansible-playbook
和ansible-test
(https://github.com/ansible-community/antsibull-changelog/pull/173)。
v0.29.0¶
发布摘要¶
功能发布。
次要更改¶
- 添加一个
reformat
命令,该命令将changelogs/changelog.yaml
重新格式化为changelogs/config.yaml
的当前设置(https://github.com/ansible-community/antsibull-changelog/pull/169)。 - 添加一个新的配置选项
changelog_sort
。此选项允许对changelogs/changelog.yaml
中的变更日志条目进行排序(https://github.com/ansible-community/antsibull-changelog/pull/165)。 - 用常量替换返回码的数字(https://github.com/ansible-community/antsibull-changelog/issues/77)。
已移除功能(之前已弃用)¶
- 删除对已弃用的经典变更日志格式的支持。对于 ansible-core 用法,现在必须存在
changes_format
并设置为combined
,并且不再允许使用值classic
(https://github.com/ansible-community/antsibull-changelog/issues/137)。
Bug修复¶
- 删除检查 Python >= 3.6(而不是 >= 3.9)的 Python 版本检查。此检查不是真正必要的,因为
pyproject.toml
声明了requires-python
,并且由于语法错误,旧的 Python 版本(其中 pip 不了解requires-python
)将不会加载 antsibull-changelog(https://github.com/ansible-community/antsibull-changelog/pull/167)。
v0.28.0¶
发布摘要¶
功能发布。
次要更改¶
- 现在有一个选项
changelog_nice_yaml
可以将 YAML 文档起始标记---
添加到changelogs/changelog.yaml
文件的标头,并增加列表项的缩进级别。这使得该文件可以通过 ansible-lint(https://github.com/ansible-community/antsibull-changelog/issues/91, https://github.com/ansible-community/antsibull-changelog/issues/152, https://github.com/ansible-community/antsibull-changelog/pull/160)。
v0.27.0¶
发布摘要¶
功能发布。
次要更改¶
- 在需要的地方,在新插件的简短描述末尾添加句点。由配置文件中的
add_plugin_period
选项控制(https://github.com/ansible-community/antsibull-changelog/issues/87, https://github.com/ansible-community/antsibull-changelog/pull/162)。
v0.26.0¶
发布摘要¶
功能发布。
次要更改¶
- 只要启用了 pymdownx.escapeall 扩展,Markdown 输出格式现在与 python-markdown 和 mkdocs 兼容(https://github.com/ansible-community/antsibull-changelog/pull/153)。
v0.25.0¶
发布摘要¶
Bug 修复和功能发布。
次要更改¶
- 添加
--version
标志以打印软件包版本并退出(https://github.com/ansible-community/antsibull-changelog/pull/147)。
Bug修复¶
- 当定义了多种输出格式,并且在使用了
--output
和--output-format
时使用了antsibull-changelog generate
,则会显示错误,指出必须指定--output-format
(https://github.com/ansible-community/antsibull-changelog/issues/149, https://github.com/ansible-community/antsibull-changelog/pull/151)。
v0.24.0¶
发布摘要¶
功能发布,现在允许输出 MarkDown。
次要更改¶
- 允许使用
hatch version
命令自动检索 hatch 项目的软件包版本(https://github.com/ansible-community/antsibull-changelog/pull/141)。 - 允许将变更日志渲染为 MarkDown。写入的输出格式可以使用配置文件中的
output_formats
选项进行控制(https://github.com/ansible-community/antsibull-changelog/pull/139)。 - 正式支持 Python 3.12(https://github.com/ansible-community/antsibull-changelog/pull/134)。
已弃用功能¶
antsibull_changelog.changelog_entry
中的一些代码已被弃用,并且antsibull_changelog.rst
模块已完全弃用。如果您在自己的代码中使用它们,请查看弃用它们的 PR,了解如何停止使用它们(https://github.com/ansible-community/antsibull-changelog/pull/139)。
v0.23.0¶
版本摘要¶
功能发布。
次要更改¶
- 允许为特定版本生成更改日志 (https://github.com/ansible-community/antsibull-changelog/pull/130)。
- 允许使用
generate
命令仅生成不带序言的最后一个条目 (https://github.com/ansible-community/antsibull-changelog/pull/131)。 - 允许将
generate
输出写入用户提供的文件 (https://github.com/ansible-community/antsibull-changelog/pull/131)。
v0.22.0¶
版本摘要¶
新功能发布
次要更改¶
- 添加
antsibull-changelog-lint
和antsibull-changelog-lint-changelog-yaml
pre-commit.com 钩子 (https://github.com/ansible-community/antsibull-changelog/pull/125)。 - 添加
toml
extra 来引入 toml 解析器,用于根据pyproject.toml
推测版本 (https://github.com/ansible-community/antsibull-changelog/pull/126)。
v0.21.0¶
版本摘要¶
包含弃用项的维护版本。
已弃用功能¶
- 对
classic
变更日志的支持已弃用,并将很快删除。如果您需要为 Ansible 2.9 或更早版本构建变更日志,请使用旧版本 (https://github.com/ansible-community/antsibull-changelog/pull/123)。
v0.20.0¶
版本摘要¶
使用新构建系统的 Bug 修复和维护版本。
重大更改¶
- 将 pyproject 构建后端从
poetry-core
更改为hatchling
。pip install antsibull
的工作方式与以前完全相同,但某些用户可能会受到影响,具体取决于他们构建/安装项目的方式 (https://github.com/ansible-community/antsibull-changelog/pull/109)。
Bug 修复¶
- 当发布 ansible-core 且仅提供
--version
和--codename
中的一个时,会报错而不是忽略提供的值 (https://github.com/ansible-community/antsibull-changelog/issues/104, https://github.com/ansible-community/antsibull-changelog/pull/105)。
v0.19.0¶
版本摘要¶
功能发布。
次要更改¶
- 允许从
package.json
中提取 JavaScript / TypeScript 项目的其他项目版本 (https://github.com/ansible-community/antsibull-changelog/pull/100)。 - 允许从符合 PEP 621 的
pyproject.toml
中提取 Python 项目的其他项目版本 (https://github.com/ansible-community/antsibull-changelog/pull/100)。 - 支持 Python 3.11 的
tomllib
加载pyproject.toml
(https://github.com/ansible-community/antsibull-changelog/issues/101, https://github.com/ansible-community/antsibull-changelog/pull/102)。 - 在内部代码中的某些情况下,使用比
Exception
更具体的异常 (https://github.com/ansible-community/antsibull-changelog/pull/103)。
v0.18.0¶
版本摘要¶
放弃对旧 Python 版本支持的维护版本。
重大更改/移植指南¶
- 放弃对 Python 3.6、3.7 和 3.8 的支持 (https://github.com/ansible-community/antsibull-changelog/pull/93)。
v0.17.0¶
版本摘要¶
ansible-core 的功能发布。
次要更改¶
- 仅在显式配置时,才允许在 ansible-core/ansible-base 变更日志中使用
trival
部分 (https://github.com/ansible-community/antsibull-changelog/pull/90)。
v0.16.0¶
版本摘要¶
功能和 Bug 修复版本。
次要更改¶
- 允许从
pyproject.toml
中提取 Python poetry 项目的其他项目版本 (https://github.com/ansible-community/antsibull-changelog/pull/80)。 - 源代码存储库中的文件现在遵循 REUSE 规范。唯一的例外是
changelogs/fragments/
中的变更日志片段 (https://github.com/ansible-community/antsibull-changelog/pull/82)。
Bug 修复¶
- 将 rstcheck 4.x 和 5.x 标记为兼容。同时也支持 rstcheck 6.x (https://github.com/ansible-community/antsibull-changelog/pull/81)。
v0.15.0¶
版本摘要¶
功能发布。
次要更改¶
- 添加之前是 antsibull-lint 一部分的
changelogs/changelog.yaml
文件格式 linting 子命令 (https://github.com/ansible-community/antsibull-changelog/pull/76, https://github.com/ansible-community/antsibull/issues/410)。
v0.14.0¶
版本摘要¶
通过 ansible-core 2.13 加快发布过程的功能发布。
次要更改¶
- 内部
changelog.yaml
linting API 允许为版本号使用packaging.version.Version
而不是语义版本控制 (https://github.com/ansible-community/antsibull-changelog/pull/73)。 - 对 ansible-core 2.13+ 使用新的
--metadata-dump
选项,以快速转储和提取集合的所有模块/插件version_added
值 (https://github.com/ansible-community/antsibull-changelog/pull/72)。
v0.13.0¶
版本摘要¶
此版本使变更日志构建更加可靠。
次要更改¶
- 始终在发布前检查片段 (https://github.com/ansible-community/antsibull-changelog/issues/65, https://github.com/ansible-community/antsibull-changelog/pull/67)。
Bug 修复¶
- 修复临时目录路径中出现符号链接时,模块命名空间出现的问题 (https://github.com/ansible-community/antsibull-changelog/issues/68, https://github.com/ansible-community/antsibull-changelog/pull/69)。
- 在某些错误消息中停止提及
galaxy.yaml
而使用galaxy.yml
(https://github.com/ansible-community/antsibull-changelog/pull/66)。
v0.12.0¶
版本摘要¶
支持 ansible-core 和 Ansible 集合以外的其他项目的新功能发布。
次要更改¶
- 支持 ansible-core/-base 和 Ansible 集合以外的其他项目的变更日志 (https://github.com/ansible-community/antsibull-changelog/pull/60)。
Bug 修复¶
- 当为 ansible-core 将
use_semantic_versioning
设置为true
时,修复预发布折叠的问题。
v0.11.0¶
次要更改¶
- 当使用 ansible-core 2.11 或更新版本时,现在将检测带有参数规范的新角色。我们只考虑角色的
main
入口点。
Bug 修复¶
- 当在 ansible-base/ansible-core 中使用
modules
的子目录时,如果未使用--use-ansible-doc
,则会将错误的模块名称传递给ansible-doc
。
v0.10.0¶
次要更改¶
antsibull-changelog release
的新--cummulative-release
选项允许将自上次发布版本(或如果没有上次发布版本,则为祖先版本)之后且最迟为当前发布版本的所有插件和对象添加到发布中。这对于community.general
和类似组织的集合的主要发布是必需的。- 现在,当进行发布时,如果未出现
prelude_section_name
部分(默认值:release_summary
),则会打印警告。
Bug 修复¶
- 确保 ansible-base/-core 内部的插件缓存在不使用
--use-ansible-doc
的情况下工作。
v0.9.0¶
重大更改¶
- 添加了对报告集合中的新剧本和角色的支持。
- 添加了对特殊变更日志片段部分的支持,这些部分会将新插件和/或对象添加到此版本的变更日志中。这主要对
test
和filter
插件,以及对playbook
和role
对象有用,这些对象尚未自动检测到并在changelogs/changelog.yaml
或生成的 RST 变更日志中提及。
这些部分的格式及其内容如下
---
add plugin.filter:
- name: to_time_unit
description: Converts a time expression to a given unit
- name: to_seconds
description: Converts a time expression to seconds
add object.role:
- name: nginx
description: The most awesome nginx installation role ever
add object.playbook:
- name: wipe_server
description: Totally wipes a server
对于每个条目,都会添加给定类型的插件(add plugin.xxx
部分)或对象(add object.xxx
部分)列表(插件的类型为 filter
、test
,对象的类型为 playbook
、role
)。每个插件或对象都有一个短名称和一个简短的描述。这些字段对应于模块/插件的名称以及模块和可文档化插件的 DOCUMENTATION
块中的 short_description
字段。
小的改动¶
- 为
antsibull-changelog release
添加--update-existing
选项,该选项允许更新当前版本的发布日期和(如果相关)代号,而不是简单地报告版本已存在。
重大更改/移植指南¶
- 新的选项
prevent_known_fragments
,其默认值是keep_fragments
的值,允许控制是否忽略过去已出现过的名称的片段。如果keep_fragments=false
,则会发生新的行为,这对用户来说不那么令人惊讶(请参阅 https://github.com/ansible-community/antsibull-changelog/issues/46)。像 ansible-base/ansible-core changelog 这样使用keep_fragments=true
的变更日志不受影响。
v0.8.1¶
错误修复¶
- 修复了使用 trivial 部分生成变更日志时的错误。
v0.8.0¶
小的改动¶
- 允许在使用 API 时不保存发布时的变更日志。
- 允许在加载/保存时清理变更日志数据。这意味着未知的将信息会被删除,错误的信息会被剥离。这将在新创建的变更日志配置中启用,但为了向后兼容性而禁用。
v0.7.0¶
小的改动¶
- 新的配置选项
ignore_other_fragment_extensions
允许配置是否只使用.yaml
和.yml
文件(正如ansible-test sanity --test changelog
测试所规定的那样)。现有配置的默认值为false
,新配置的默认值为true
。 - 允许使用语义版本控制,也可通过
use_semantic_versioning
配置设置用于 Ansible-base。 - 重构了变更日志生成代码,以在变更日志条目中提供所有序言(发布摘要),并提供通用功能来提取分组的版本列表。这些更改主要用于 antsibull 项目。
v0.6.0¶
小的改动¶
- 新的变更日志配置默认将
CHANGELOG.rst
文件放置在顶层目录中,而不是在changelogs/
中。 - 当
keep_fragments
设置为false
时,配置选项archive_path_template
允许将片段移动到归档目录中。 - 选项
use_fqcn
(在新配置中设置为true
)允许对新的插件和模块使用 FQCN。
v0.5.0¶
小的改动¶
- 内部变更日志生成器代码变得更加灵活,以帮助 antsibull 生成 Ansible 移植指南。
v0.4.0¶
小的改动¶
- 允许通过
config.yaml
启用或禁用扁平映射。
错误修复¶
- 修复了当集合符号链接到 Ansible 的集合搜索路径中时,错误的模块命名空间检测。这还允许将发布添加到 Ansible 无法找到的集合中。
v0.3.1¶
错误修复¶
- 当
changelogs/fragments
不存在时,不会失败。在这种情况下,只需假设没有片段即可。 - 改进了当
changelogs/config.yaml
不是字典或不包含sections
时的行为。 - 改进了当指定
--is-collection
且找不到changelogs/config.yaml
时,或使用lint
子命令时的错误消息。
v0.3.0¶
小的改动¶
- 允许通过
--ansible-doc-bin
传递 ansible-doc 二进制文件的路径。 - 可以通过
python -m antsibull_changelog
运行变更日志生成器。 - 在 ansible-base 检出中运行时,使用
ansible-doc
而不是/path/to/checkout/bin/ansible-doc
。
v0.2.1¶
错误修复¶
- 允许通过指定
--use-ansible-doc
使用 ansible-doc 枚举插件/模块。
v0.2.0¶
小的改动¶
- 添加了更多测试。
- 修复了 ACD 变更日志生成的内部 API(变更日志的修剪和连接)。
- 改进了错误处理。
- 改进了当同时存在带有和不带有命名空间的新模块时,reStructuredText 的创建。
- 改进了标题生成(删除多余的空格)。
- 如果可用,则使用 PyYAML C 加载器/转储器。
lint
子命令不再需要指定是否在集合内部运行(如果通常的指标不存在)。
v0.1.0¶
发布摘要¶
作为 antsibull-changelog 的初始版本。Ansible 变更日志工具最初由 @mattclay 在 ansible/ansible 存储库中为 Ansible 本身开发。它在 felixfontein/ansible-changelog 和 ansible-community/antsibull 中进行了扩展,以处理集合,直到它被移动到当前位置 ansible-community/antsibull-changelog。