Skip to content

v0.1.14

Choose a tag to compare

@zy84338719 zy84338719 released this 24 Oct 04:11
· 42 commits to main since this release
200736c

这次加的是什么

嵌套模块的「多层子目录路径」支持——kitex v0.7.0 把 kitexotel / istio 拆成嵌套模块后,
工具链里五处「单层目录」假设全部算错。

Go 的子目录模块 tag 规则要求 tag 带完整子路径 ⇒ 这类嵌套模块的 tag 是
observability/tracing/instrumentation/kitexotel/v0.1.0,而工具链按「仓根下一层」解析:

位置 旧假设 修法
gen_versions.py tag.split("/", 1) 改 rsplit(split 会把多层路径切成 path=observability / ver=tracing/…/v0.1.0)
gen_matrix_go.py NESTED_ONLY_TAGS 正则只放行单层路径 放宽为允许多层,版本号改 rsplit 取最后一段
release_train.py 嵌套模块的 CHANGELOG 取 module_dir.parent/CHANGELOG.md 上溯到仓根——多层时原指向不存在的目录,发版被凭空拦下
verify_release_units.py llms.txt 嵌套条目正则只放行单层路径 名字与链接正则同步放宽
audit.py 嵌套模块父仓地板门禁只扫「仓根下一层」 放宽为递归 **/go.mod(排除仓根本身)

计数漏数也修了:count_units 用 r.glob("*/go.mod") 只扫一层 ⇒ 多层嵌套模块被漏数
(实测文件系统里有 11 个,单层 glob 只数出 10)⇒ 站点文案据此判漂移
(真实 11 / 36,误判 10 / 35)。改为递归扫 **/go.mod,排除仓根本身与
.git / vendor / third_party / testdata / examples(与共享 CI 的发现口径一致)。

口径变化

嵌套模块 9 → 11、发版单元 34 → 36(24 根 + 11 嵌套 + 1 伞仓)。

NESTED_MODULES 登记表补齐 kitex v0.7.0 拆出的两个嵌套模块——登记表是「应该有什么」的唯一声明,
缺登记会让三类判据失真(发版单元口径门禁判「口径分裂」红 / llms.txt 逐字节比对判站点段漂移红 /
嵌套模块安装行缺失 ⇒ Agent 装不上):

  • kitex/observability/tracing/instrumentation/kitexotel → kitexotel/v0.1.0
  • kitex/istio → istio/v0.1.0

顺带把 BOM_RELEASE_UNIT 旁过期的计数注释(「裁决定死 34」)改成只写裁决不写绝对数——
裁决本身(伞仓必须计入发版单元口径)没变,变的是总数随嵌套模块增减。

附带

matrix.py 的 DESC 同步已发布事实:pkg 补 v0.23.0 起 Peek 非删除式读
(可选接口 PeekGetter 外置——读到过期条目只算不命中、不删除它,stale-if-error 兜底需要那份过期真值留在表内,pkg#72)、
data 补 v0.18.0 起 cache 壳 PeekGetter 别名 + cachetest 壳 2 个 stale-if-error 契约入口。

验证

changelog_check ✓ · verify_release_units ✅ 36 个发版单元 · verify_site_copy ✅(24 / 25 / 11 / 36)·
MODULES 24 | NESTED 11 | UNITS 36