From 2e51a4bacd88474895d4c4169e13d706d445080e Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Thu, 27 Aug 2026 20:16:31 +0800 Subject: [PATCH 1/2] Validate against the engine that fixes what this index tripped over MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MCPP_VERSION 2026.8.27.1 -> 2026.8.27.2. #263 moved this pin seventeen versions forward, to 2026.8.27.1. That is the version PR #260 is failing on, and the failure is not #260's: error: internal: unhandled exception: No mapping for the Unicode character exists in the target multi-byte code page. three times, in `workspace (windows default 0/2)` and `1/2` — one per httplib example. It is mcpp-community/mcpp#516: on Windows `path::string()` converts through the process ANSI code page and throws for a name that code page cannot spell, and `is_excluded_walk_dir` narrowed a directory name on the first line of the glob walk. cpp-httplib ships `test/www/Dir/`, and the `include_dirs = { "*" }` convention walks the whole extracted tarball. Fixed in mcpp 2026.8.27.2 (mcpp-community/mcpp#517), released and mirrored on both hosts, with xim-pkgindex's `latest` pointing at it. ⚠️ RE-RUNNING #260 WITHOUT THIS BUMP PROVES NOTHING. Its CI would fetch 2026.8.27.1 — the version that still carries the defect — and reproduce the same three errors. That is a re-confirmation of the bug, not a test of the fix. Attribution first: the failing job's log was read and it is #516's message verbatim, not some other Windows problem wearing the same red. Keeping #263's caution in force: a red at this pin can come from the engine change or from what accumulated across the versions this repository never ran against, and a one-sided reading cannot tell them apart. --- .github/workflows/validate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 4efbeb5..d3425aa 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -163,7 +163,7 @@ env: # - mcpp#405 依赖 BMI 缓存命中时,被恢复的包传递依赖的 `std` 没进构建图 —— # **每个图形项目的第二次构建必挂**(消费方自己不 `import std` 时现形)。 # - mcpp#407 `mcpp build` 会重放 `mcpp test` 留下的构建图。 - MCPP_VERSION: "2026.8.27.1" + MCPP_VERSION: "2026.8.27.2" jobs: lint: From 041efdfb70e169365a63f251169f0483f6a5edd7 Mon Sep 17 00:00:00 2001 From: speak-agent Date: Thu, 27 Aug 2026 23:14:20 +0800 Subject: [PATCH 2/2] Five packages: the routes openkal 0.8's atoms made possible MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit openkal-musl 0.4.0 -> 0.5.0 openkal-macos 0.4.0 -> 0.5.0 openkal-windows 0.2.0 -> 0.3.0 openkal-llvm-runtime 0.2.0 -> 0.3.0 sbase 0.1.1 -> 0.1.2 The specification does not move. openkal 0.8 already carried the atoms; what changed is that the layers above and below now use them --- the socket family upon `openkal.net', datagrams upon `openkal.datagram', `poll' and `select' upon `openkal.timeout', and `fork' composed above `openkal.space'. Reported as mcpplibs/openkal-linux#13 and mcpplibs/openkal-musl#13. `openkal-windows' provides four of the five and declines `openkal.space' in terms: this system starts a NAMED PROGRAM and has no primitive that copies an address space, so a program calling `kal_space_start' fails at the link naming the operation, which is clause 6.1's report. `sbase' had been pinned below 0.4.0 --- a caret on a 0.x version bounds it under the next minor --- so ninety-seven utilities were testing a C library two minors behind the one everything else builds against. ⚠️ EVERY HASH WAS FETCHED BACK BEFORE IT WAS WRITTEN HERE. The publisher tags, uploads, and then RETRIEVES the CN asset and compares its bytes; this index records one sha256 for two URLs, and a wrong digit produces a package that resolves, downloads and fails verification on every machine but the one that published it. Both mirrors were then read a second time, independently of the publisher, and all ten fetches matched. --- pkgs/o/openkal-llvm-runtime.lua | 21 +++++++++++++++++++++ pkgs/o/openkal-macos.lua | 21 +++++++++++++++++++++ pkgs/o/openkal-musl.lua | 21 +++++++++++++++++++++ pkgs/o/openkal-windows.lua | 21 +++++++++++++++++++++ pkgs/s/sbase.lua | 21 +++++++++++++++++++++ 5 files changed, 105 insertions(+) diff --git a/pkgs/o/openkal-llvm-runtime.lua b/pkgs/o/openkal-llvm-runtime.lua index 8ddf592..7259eb2 100644 --- a/pkgs/o/openkal-llvm-runtime.lua +++ b/pkgs/o/openkal-llvm-runtime.lua @@ -26,6 +26,13 @@ package = { xpm = { linux = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.3.0/openkal-llvm-runtime-0.3.0.tar.gz", + }, + sha256 = "732740451b39f6016e81e0735005c4144633de7c8858e0399c90d036e160913e", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.2.0.tar.gz", @@ -63,6 +70,13 @@ package = { }, }, macosx = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.3.0/openkal-llvm-runtime-0.3.0.tar.gz", + }, + sha256 = "732740451b39f6016e81e0735005c4144633de7c8858e0399c90d036e160913e", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.2.0.tar.gz", @@ -100,6 +114,13 @@ package = { }, }, windows = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.3.0/openkal-llvm-runtime-0.3.0.tar.gz", + }, + sha256 = "732740451b39f6016e81e0735005c4144633de7c8858e0399c90d036e160913e", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.2.0.tar.gz", diff --git a/pkgs/o/openkal-macos.lua b/pkgs/o/openkal-macos.lua index 868f359..e3ddf71 100644 --- a/pkgs/o/openkal-macos.lua +++ b/pkgs/o/openkal-macos.lua @@ -19,6 +19,13 @@ package = { xpm = { linux = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-macos/releases/download/0.5.0/openkal-macos-0.5.0.tar.gz", + }, + sha256 = "3816e752cbb7d6a5f1dc93663154fa978eacdff31dbe4224dc4b8ee045dc7c56", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.4.0.tar.gz", @@ -63,6 +70,13 @@ package = { }, }, macosx = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-macos/releases/download/0.5.0/openkal-macos-0.5.0.tar.gz", + }, + sha256 = "3816e752cbb7d6a5f1dc93663154fa978eacdff31dbe4224dc4b8ee045dc7c56", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.4.0.tar.gz", @@ -107,6 +121,13 @@ package = { }, }, windows = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-macos/releases/download/0.5.0/openkal-macos-0.5.0.tar.gz", + }, + sha256 = "3816e752cbb7d6a5f1dc93663154fa978eacdff31dbe4224dc4b8ee045dc7c56", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-macos/archive/refs/tags/0.4.0.tar.gz", diff --git a/pkgs/o/openkal-musl.lua b/pkgs/o/openkal-musl.lua index 0c03aa6..71890b9 100644 --- a/pkgs/o/openkal-musl.lua +++ b/pkgs/o/openkal-musl.lua @@ -24,6 +24,13 @@ package = { xpm = { linux = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.5.0/openkal-musl-0.5.0.tar.gz", + }, + sha256 = "315238f2f15fb486816e570aa6a549284daa248a5206b332b67ada4ecad4426b", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.4.0.tar.gz", @@ -75,6 +82,13 @@ package = { }, }, macosx = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.5.0/openkal-musl-0.5.0.tar.gz", + }, + sha256 = "315238f2f15fb486816e570aa6a549284daa248a5206b332b67ada4ecad4426b", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.4.0.tar.gz", @@ -126,6 +140,13 @@ package = { }, }, windows = { + ["0.5.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.5.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.5.0/openkal-musl-0.5.0.tar.gz", + }, + sha256 = "315238f2f15fb486816e570aa6a549284daa248a5206b332b67ada4ecad4426b", + }, ["0.4.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.4.0.tar.gz", diff --git a/pkgs/o/openkal-windows.lua b/pkgs/o/openkal-windows.lua index 2d1522a..0de7f0d 100644 --- a/pkgs/o/openkal-windows.lua +++ b/pkgs/o/openkal-windows.lua @@ -21,6 +21,13 @@ package = { xpm = { linux = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-windows/releases/download/0.3.0/openkal-windows-0.3.0.tar.gz", + }, + sha256 = "99b783e7d47fce29afe86ff298a915c3255a139ba211f2c8f17199ced3820400", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.2.0.tar.gz", @@ -65,6 +72,13 @@ package = { }, }, macosx = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-windows/releases/download/0.3.0/openkal-windows-0.3.0.tar.gz", + }, + sha256 = "99b783e7d47fce29afe86ff298a915c3255a139ba211f2c8f17199ced3820400", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.2.0.tar.gz", @@ -109,6 +123,13 @@ package = { }, }, windows = { + ["0.3.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.3.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-windows/releases/download/0.3.0/openkal-windows-0.3.0.tar.gz", + }, + sha256 = "99b783e7d47fce29afe86ff298a915c3255a139ba211f2c8f17199ced3820400", + }, ["0.2.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-windows/archive/refs/tags/0.2.0.tar.gz", diff --git a/pkgs/s/sbase.lua b/pkgs/s/sbase.lua index 1f87261..834e6c1 100644 --- a/pkgs/s/sbase.lua +++ b/pkgs/s/sbase.lua @@ -21,6 +21,13 @@ package = { xpm = { linux = { + ["0.1.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/sbase/releases/download/0.1.2/sbase-0.1.2.tar.gz", + }, + sha256 = "798976b039e773db843825139229c81552ae1e2e6903874181feaa9f8cf2d283", + }, ["0.1.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.1.tar.gz", @@ -37,6 +44,13 @@ package = { }, }, macosx = { + ["0.1.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/sbase/releases/download/0.1.2/sbase-0.1.2.tar.gz", + }, + sha256 = "798976b039e773db843825139229c81552ae1e2e6903874181feaa9f8cf2d283", + }, ["0.1.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.1.tar.gz", @@ -53,6 +67,13 @@ package = { }, }, windows = { + ["0.1.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/sbase/releases/download/0.1.2/sbase-0.1.2.tar.gz", + }, + sha256 = "798976b039e773db843825139229c81552ae1e2e6903874181feaa9f8cf2d283", + }, ["0.1.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/sbase/archive/refs/tags/0.1.1.tar.gz",