Release Checklist
这份清单记录当前 0.8.x 发布时需要执行的步骤。
CHANGELOG.md 只记录版本结果;具体发布动作统一记在这里。
发布前
- 确认
CHANGELOG.md、README.md、docs/已对齐当前代码 - 确认根 crate 和
orion-error-derive的版本号一致 - 运行:
cargo fmt --allcargo clippy --all-targets --all-features -- -D warningscargo test --all-features -- --test-threads=1bash scripts/check-feature-matrix.shbash scripts/check-doc-code.shbash scripts/check-v3-policy.shcargo test --doc --no-default-features
- 在可联网环境中运行:
cargo package --manifest-path orion-error-derive/Cargo.tomlcargo packagecargo publish --manifest-path orion-error-derive/Cargo.toml --dry-runcargo publish --dry-run
发布前边界确认
发布前还应确认下面这些锁没有失效:
src/lib.rs的 root surface compile-fail doctest 仍通过tests/test_layered_exports.rs、tests/test_versioned_namespaces.rs仍覆盖当前分层导出边界- README / tutorial / reason identity guide 的代码块仍与当前源码一致
- 如果 public surface 有新增或迁移:
- 先补测试/compile guard
- 再更新 README / docs
- 最后更新 changelog
正式发布顺序
- 先发布
orion-error-derive - 等 crates.io 索引传播完成
- 再发布
orion-error
当前仓库的 GitHub Actions release workflow 已按这个顺序配置。
发布后检查
- 确认 crates.io 上两个包版本都可见
- 确认
orion-error的默认derivefeature 能正常解析orion-error-derive - 确认 docs.rs 页面生成成功:
orion-errororion-error-derive