内容提要
Heroku CLI v9.0.0发布,采用oclif平台进行架构改进和过渡。核心CLI命令现在基于oclif构建,提供统一的包和改进的测试和发布流程。输出格式和命令语法发生了重大变化。过渡到oclif允许更一致的命令行行为和更好的可扩展性。此升级与Heroku的长期愿景一致,并为未来创新铺平了道路。
延伸解读
破坏性变更:升级前需注意
Heroku CLI v9.0.0 带来了多项破坏性变更,包括输出格式调整(如新增换行、空格、表格格式和颜色)、部分标志需使用 -- 分隔符、命令参数顺序更新或标志移除,以及移除了 outbound-rules、pg:repoint、orgs:default、certs:chain 和 certs:key 等已弃用命令。这些变更仅影响核心 CLI 命令,不影响通过插件单独安装的命令。升级前请检查脚本和自动化流程,确保兼容性。
统一包与测试改进:提升可维护性
v9.0.0 将所有核心 CLI 命令整合到一个统一的包中,取代了之前分散的多个包,简化了依赖管理。同时,单元和集成测试的代码覆盖率显著提高,发布流程也更加简单和自动化,支持轻松发布预发布版本进行测试。这些改进降低了维护成本,为快速迭代奠定了基础。
oclif 平台:从遗留架构到统一架构
此前许多核心命令基于 oclif 之前的遗留架构,现在所有核心命令都构建在 oclif 平台上。oclif 是 Heroku 开创的开源 CLI 框架,现已被 Salesforce、Twilio 和 Shopify 等公司采用为标准 CLI 技术。迁移到 oclif 统一了命令架构,带来了更一致的命令行为、更好的可扩展性和更简便的维护。
Q&A
Heroku CLI v9.0.0的主要改进是什么?
Heroku CLI v9.0.0主要通过采用oclif平台进行架构改进,整合所有核心CLI命令为一个统一的包,简化了依赖管理,并提高了测试覆盖率。
oclif平台对Heroku CLI有什么影响?
oclif平台使所有核心CLI命令统一,改善了命令的一致性、维护性和可扩展性,推动了更快速的创新和发布。
Heroku CLI v9.0.0的发布流程有什么变化?
发布流程变得更简单和自动化,支持轻松发布预发布版本进行测试。
Heroku CLI v9.0.0中有哪些命令格式的变化?
命令格式发生了重大变化,包括额外的新行、空格、表格格式和输出颜色,某些命令的参数顺序也进行了更新。
Heroku如何确保CLI的测试覆盖率?
Heroku显著提高了单元和集成测试的代码覆盖率,以确保CLI的稳定性和可靠性。
Heroku CLI v9.0.0的架构改进如何支持未来创新?
通过重构核心CLI库和改进测试及发布流程,Heroku为快速创新和功能发布奠定了坚实基础。