SuperAPI AI 工具集

release

通用与其它

查看项目

更新于 10-15 20:12

技能介绍

用途:这是 clickhouse-js 发布流程的权威说明,取代旧的 RELEASING.md。发布按包独立进行,没有“一键全发”,需先与用户确认要发布哪个包。涉及包:@clickhouse/client(packages/client-node)、@clickhouse/client-web(packages/client-web)、@clickhouse/client-common(已弃用、基本冻结,仅在明确要求时发最终独立版)、@clickhouse/datatype-parser(packages/datatype-parser)、@clickhouse/rowbinary(skills/clickhouse-js-node-rowbinary)。流程分两类:工作区客户端包与独立包。

主要能力与用法:release 是长期受保护分支,npm-publish 环境只允许 release 分支部署且需人工批准。人负责判断,你负责执行:用 gh 跑工作流、盯 CI,并在评审发布 PR、npm-publish 批准、GitHub Release 文案三处暂停。绝不直接推 release,修复走 main。

客户端包流程:先核对各包自己的 CHANGELOG.md(根 CHANGELOG 已冻结),确认顶部 # <新版本> 段含本次说明,有误则单独小 PR 修 main;用 gh workflow run bump-version.yml --ref main -f package='@clickhouse/client' -f bump_type=patch 升版本并开 PR 合入 main;再 gh pr create --base release --head main 建发布 PR 评审合并;合并触发按路径的 head 预发布与 e2e(Node 20/22/24/26,Web 端 Playwright 跑 chromium+firefox),需在 npm-publish 批准;e2e 绿后 gh workflow run publish-client.yml --ref release 发 latest(OIDC+provenance,推 client-<ver> 标签),再次批准;最后用 CHANGELOG 段落 gh release create client-1.23.0 --notes-file /tmp/notes.md,不加 --title、不加 --prerelease,并回填缺失 Release。

独立包流程:手动改 package.json 版本并更新其 CHANGELOG,PR 合入 main;同样建 release←main PR 合并;gh workflow run publish-datatype-parser.yml --ref release 或 publish-skill-rowbinary.yml --ref release 发布(标签带 v 前缀),批准并观察 e2e;再创建 GitHub Release。

限制:所有发布都需 npm-publish 人工批准;head beta 不计入 GitHub Release;e2e 失败时可将坏版本 dist-tag 移到 debugging 再在 main 修复重同步。资料未提供具体版本号、时间表或额外收费信息。