You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
⚠️⚠️ 这是那条 `glibc@2.44 ... not installed` 的**主因**,而它在索引里被逐字
预告过。`xim-pkgindex` 的 `pkgs/g/glibc.lua` 记着一对提交:
fb289b8 glibc: withdraw 2.44.2 until the client that can resolve it ships
557e862 glibc: restore 2.44.2 now that the client resolving it has shipped
以及那次失败的原文:
-- released xlings pinned `glibc@2.44`, payload directories are named
-- after the version, and so a clean environment installed 2.44.2 and
-- then found nothing answering to the binding
-- error: selected RuntimeBinding glibc@2.44 requires payload
-- '<home>/.../xpkgs/xim-x-glibc/2.44', but it is not installed
-- on every NEW environment and on none that already existed.
-- The index is DATA and the client is a PROGRAM: the consumer ships first.
⭐ 那个消费者是 **xlings 2026.8.27.1**(openxlings/xlings#567):它改为从索引文件
读默认 runtime binding,而不是读一个编译进客户端的常量。mcpp 钉的还是 8.17.2,
所以每一台冷缓存的 CI 机器都停在上面 —— **在 main 上和在任何分支上一样**。
## ⭐ 与前一条提交的关系(两条,不是一条的两半)
| | 覆盖谁 |
|---|---|
| 本条(pin) | **新环境**:xlings 从索引读绑定,直接绑到 2.44.2 |
| 前一条(`select_glibc_payload_lib`) | **已存在的环境升级**:subos 记下的绑定还是 `2.44`,而载荷已经是 `2.44.2`,且 SubOS 视图尚未建立 —— `runtime_binding.cppm:224` 早一个版本就记过这个形状 |
两者在不同的层,谁也替代不了谁;去掉后者,一台已经跑过一次的机器在升级后仍会停住。
## 判据
`.github/tools/check_version_pins.sh` 是这件事的唯一真源检查器,它一次列出了
全部 7 个不同步的点(3 个 workflow + 2 个 composite action + 2 个 release 段),
同步后退出码 0。**这正是它存在的理由** —— 注释里说过,手工维护的清单曾漏掉
两个 composite action,让 CI 的沙箱在 0.4.30 上停了很久没人发现。
0 commit comments