建议: 提取 `@semantic-release/core` 包,以启用可组合的发布流程

作者: babblebey创建于 2026年3月5日更新于 2026年9月8日
标签core

将核心引擎(orchestration,插件系统,git操作,配置加载)提取到独立的QQ语义-放行/核心"包中. 现有的 " 语义释放 " 软件包成为了提供CLI并捆绑四个默认插件的薄包装。

这使得用户能够自定义地编发管道,而不必被迫依赖语义-放行/承诺-分析器'、语义-放行/注释-生成器'、语义-放行/npm'和语义-放行/GitHub'。

□动机

今天,`语义释出'将三个不同的关切组合成一个一揽子:

~ 关注 ~ 来源 ~ 依赖 ~ |---------. ** 核心引擎** 索引.js、lib env-ci'、emver'、cosmiconfig'、hook-std'、git-log-parser'等 ** CLI** cli.js,语义-放行.js |'yargs',"标记地" |. ** 破损插件** * (被捆绑为解析器) * * * * * * * * 语义学-释放/承诺-分析器 ' ,释放-注释-生成器',npm',GitHub' * *

要构建自定义发布工作流程的用户. . 例如,一个框架专用的CLI,或者一个向私人登记处发布而不是npm/GitHub的管道;仍然必须安装所有四个默认插件作为过渡依赖,即使它们从未使用过.

QQ 使用此解块的大小写

  • ** 海关单位**: 团队在语义放出引擎上方构建内部放出工具,而无需继承默认的CLI或插件.
  • ** 替代插件集**: 使用不同的承诺分析器(我不知道,你永远无法分辨)或发布到GitLab/Bitbucket,而不拉入GitHub插件.
  • Lighter安装:仅需要引擎+1-2插件而不是全默认堆栈的CI环境.
  • ** 框架包装**: 将语义-放行嵌入为库的工具或平台特定放行管理器.

□ 拟议设计

数据包拆分

@semantic-release/core QQ NEW:引擎+插件系统(没有CLI,没有默认插件)
语义-放行-已存在: CLI +再导出核心+默认插件作为解析器

语义-释放/核心”

** 载有:**

** 不包括:**

** 关键变动:** [get-config.js#L75-L80] (https://GitHub.com/semantic-release/semantic-release/blob/master/lib/get-config.js#L75-L80)中默认的"插件"数组改为"[]"而改为". . . . . . . .

内容来源: semantic-release/semantic-release