版本发布介绍
- 在准备一个版本发布期间,停止代码往 master 分支的合并
- 基于 Github 的 PullRequest 记录,整理本次发布的内容与上一个版本之间的差异,需要注意仅统计目标分支是 master 且正常合并的 PullRequest
- 首先整理完原始信息以后,进行提炼和总结
- 通常情况下,一个 PullRequest 对应一个改动记录
- 也可能存在多个 PullRequest 是针对同一个改动的情况(如新功能,分开提 PullRequest,或者在同一个版本迭代中不断优化)
- 提炼后的完整 Release notes 记录格式可以参考
- 提炼后的 Release notes 需要有英文版本的记录
- 所有的改动点都需要有对应的测试记录,测试方式可以有多种,包括但不限于
- 完整的单元测试覆盖,确保基本的功能场景正确,默认代码合并的时候会执行
- 性能测试 Benchmark,针对可能对性能有影响的改动,需要执行性能测试。
- 手动模拟测试,主要针对一些单元测试无法很好覆盖的场景(如涉及网络 IO、Proxy 转发等多模块交互),通过手动搭建测试环境(配置、模拟 Server 与 Client)进行场景复现与验证
- 手动模拟测试完成以后记录详细的测试步骤,包括:模拟的场景、使用的配置、使用的 Server、使用的 Client 等;后续可以考虑将手动场景实现为 integrate 测试
- 测试完成以后,产出测试报告,说明对应的功能点使用哪种测试方式测试与测试的结果
-
- github.com/mosn/mosn.io/content/zh/blog/releases 下新增对应的 release notes.
- 英文版 release notes 也需要做一样的更新
-
- 合并完后,基于 master 分支完成 release
- release 时的描述内容填写英文版 release notes 的内容
- 完成 release