工程开发
release-crate avatar

release-crate

自动化 R3BL 工作区套件的完整发布流程,包括版本号更新、变更日志维护、测试验证以及发布至 crates.io。

简介

release-crate 技能为 r3bl-open-core monorepo 内的 Rust 套件管理提供了一套标准化且自动化的流程。此工具专为维护者与资深开发者设计,旨在排除发布 cmdr 或 tui 等套件时的人为错误与手动繁琐工作。通过强制执行严谨的操作顺序,确保每次发布皆符合存储库内部的质量标准与文档要求。

此技能引导用户识别目标套件、更新 Cargo.toml 中的版本号,以及维护附带目录更新的 CHANGELOG.md 文件。它与存储库的测试基础设施紧密结合,在执行任何发布动作前会进行完整的验证检查。通过最后阶段的 Git 标记与 GitHub 发布建立,为每次发布事件提供了统一的稽核记录。

  • 自动化工作区套件的版本管理,支持二进制程序与函数库结构。

  • 整合本地检查脚本(如 check.fish),确保在继续之前通过构建、测试、文档、Clippy 与格式化验证。

  • 自动化变更日志格式化,包含版本条目与目录更新。

  • 支持 crates.io 的预演发布(dry-run),在正式推送前验证元数据与打包配置。

  • 处理 Git 标记并利用自定义模板生成结构化的 GitHub 发布说明。

  • 内置安全机制,在执行不可逆的发布操作前强制要求用户确认。

  • 在启用前,请确保所有代码变更已提交且本地环境清洁。

  • 此技能需要套件目录名称作为参数;系统会自动侦测是否为函数库或二进制程序,以决定发布后是否需要执行 cargo install。

  • 开始流程前,请务必确认 Cargo.toml 中的当前版本。

  • 在预演阶段请使用 --no-verify 标记,以绕过特定自定义构建配置可能引发的链接器问题。

  • 若工作区环境有所变动,请随时参考 docs/release-guide.md 以获取最新的标准发布程序。

仓库统计

Star 数
470
Fork 数
30
Open Issue 数
57
主要语言
Rust
默认分支
main
同步状态
空闲
最近同步时间
2026年5月1日 07:36
在 GitHub 查看