为 Vault 的 PR 编写 changelog 条目:release-note 类别选择与三行格式

发布时间:2026/9/10 5:57:08
为 Vault 的 PR 编写 changelog 条目:release-note 类别选择与三行格式 为 Vault 的 PR 编写 changelog 条目release-note 类别选择与三行格式【免费下载链接】vaultA tool for secrets management, encryption as a service, and privileged access management项目地址: https://gitcode.com/GitHub_Trending/va/vault向 Vault 提交 PR 时CONTRIBUTING.md 明确要求在 PR 中包含一个名为changelog/#.txt的文件其中#是你的 pull request ID。例如 PR 编号是 12345就新建 changelog/12345.txt 这样的文件。如果类别或组件没选对CONTRIBUTING.md 说明不必过度担心评审者会要求你修改。三行格式一个条目长什么样changelog/README.md 规定每条 release note 是一个三行的文本文件以release-note:MODE类型注释开头的代码块组件名例如secret/pki或sdk/framework加冒号和空格然后是一行变更描述结束代码块。以一个真实的 bug 条目为例changelog/10072.txt 的内容是release-note:bug http: change max_request_size to be unlimited when the config value is less than 0 再看一条secrets/db组件的修复changelog/12563.txtrelease-note:bug secrets/db: Fix bug where Vault can rotate static role passwords early during start up under certain conditions. 两点细节如果影响了多个区域changelog/README.md 要求为每个条目使用独立的代码块全部写在同一个 PR 编号的文件里。描述里不需要手动附加 PR 链接CONTRIBUTING.md 说明 CHANGELOG.md 里出现的链接是由 changelog 构建流程自动生成的。如何给 PR 选择 release-note 类别类别即release-note:MODE中的MODE。两份文档给出的取值范围略有出入写作时以 changelog/README.md 的完整说明为准changelog/README.md 列出的合法 modebug、change、deprecation、feature、improvementCONTRIBUTING.md 列出的 CATEGORYsecurity、change、feature、improvement、bug并且仓库中实际存在release-note:security的条目例如 changelog/10758.txtrelease-note:security replication (enterprise): On DR secondaries, use DR operation token to authenticate raft remove-peer. 各类别的适用条件按 changelog/README.md 的描述bug—— 任何非安全类的缺陷修复。change—— 可能需要运维者采取行动或复核的产品变更。典型例子是各种 API 变更区别于向后兼容的添加、值得注意的行为变更或升级前需要关注的内容。Go 版本变更也归入此类因为它可能有较大且有时未知的影响Go 更新是特例一般的依赖更新不算change。文档还建议涉及change类内容时应在 PR 中讨论一下是否还需要其他沟通方式。deprecation—— 宣布计划在未来移除某个功能。仅当文档中已经存在对应的弃用通知时才使用该类别。feature—— 面向重大版本的大型主题性功能很少出现在 minor 版本中且格式与普通条目不同见下文。improvement—— 大多数既不是bug、又不足以成为feature的产品更新。CONTRIBUTING.md 补充了一条实用判断你的 PR 大概率是bug或improvement二者之一选不准也没关系评审者会指出需要调整的地方。如果变更同时包含行为变更和功能弃用可以在同一个文件里写多个代码块。真实例子 changelog/10997.txt 中change块描述了 AWS Auth 端点从whitelist/blacklist改名随后紧跟一个deprecation块指向变更说明release-note:change aws/auth: AWS Auth concepts and endpoints that use the whitelist and blacklist terms have been updated to more inclusive language ... release-note:deprecation aws/auth: AWS Auth endpoints that use the whitelist and blacklist terms have been deprecated. Refer to the CHANGES section for addition details. 如何确定组件名组件名写在第二行、冒号之前。CONTRIBUTING.md 给出的方法是查阅 CHANGELOG.md从中挑一个看起来最接近的组件。打开 CHANGELOG.md 可以看到实际使用的命名例如core、audit、ui、events、auth/cert、secrets/pki-external-ca、secrets-sync等而 changelog 目录里的条目同样使用http、command、secrets/db、ui这类名称。企业版组件通常在名称后带(enterprise)标注例如replication (enterprise)。feature 条目的特殊格式对于新 major 版本引入的功能changelog/README.md 倾向于用一个条目代表整个功能不需要引用具体 PR。文件命名可以是changelog/pr 编号或功能名.txt格式略不同release-note:feature **Feature Name**: Description of feature - for example Custom password policies are now supported for all database engines. 仓库中的实际例子是 changelog/12023.txt其feature块使用**GCP Secrets Engine Static Accounts**:这样的加粗功能名开头release-note:feature **GCP Secrets Engine Static Accounts**: Adds ability to use existing service accounts for generation of service account keys and access tokens. 同一文件中还接了一个deprecation块说明新旧端点的替换关系符合多个区域使用独立代码块的规则。完成后如何核对打开 changelog/ 目录随手挑一两个.txt文件对照格式——changelog/README.md 明确建议卡住时参考目录里的现成例子。检查自己的文件是否严格三行结构release-note:MODE开头、组件: 描述、结尾多区域变更是否为每个区域各开一个代码块。确认描述行没有手动添加 PR 链接链接由 changelog 构建流程自动追加最终呈现在 CHANGELOG.md 中。条目完整格式的更多说明由 HashiCorp 的 go-changelog 工具提供changelog/README.md 在其中列出了对应文档的出处可按需查阅。【免费下载链接】vaultA tool for secrets management, encryption as a service, and privileged access management项目地址: https://gitcode.com/GitHub_Trending/va/vault创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考