diff --git a/README.md b/README.md index 77d6100..eb678b2 100644 --- a/README.md +++ b/README.md @@ -107,6 +107,17 @@ FreeBSD's; before, which identity a system's runner is was a table of the engine. The version group is that of 0.26.0. An mcpp earlier than 2026.11.12.1 names the key it does not read and ignores it. +Platform 0.27.1 is a patch of the group. The implementations retire a handle +before closing it: openkal-linux 0.26.1, openkal-macos 0.23.1 and +openkal-windows 0.21.1. A connection, a listener and a datagram socket were +closed first, so a file another thread opened at that moment was left with a +stale handle, and above openkal-musl its reads and writes reached descriptor 0 +(openkal-linux#53). openkal-musl 0.29.4 delivers the byte a `poll` held together +with what else has arrived from `recv`, `recvfrom` and `recvmsg`, as `read` +does; before, a program that polls before each `recv` took a stream one byte +per call (openkal-musl#52). The group stays on openkal-windows 0.21, the line +openkal-run and mcpplibs.os name. The platform's statements are those of 0.27.0. + A project overrides any group under `[target.]`, for example `[target.'cfg(platform = "openkal")'.layers] "c++-abi" = false`, and selects another platform, or none, with `platform = "..."` or `--platform`. diff --git a/mcpp.toml b/mcpp.toml index 2abfd0a..8cbca29 100644 --- a/mcpp.toml +++ b/mcpp.toml @@ -12,7 +12,7 @@ [package] namespace = "mcpplibs" name = "openkal-platform" -version = "0.27.0" +version = "0.27.1" description = "The platform of ok images (-openkal): their toolchain, C library and C++ run-time, tools, compile and link conventions, seal, runner and carrier, as one versioned statement mcpp reads." license = "Apache-2.0" authors = ["mcpplibs"] @@ -53,7 +53,7 @@ debuggee = ["okrun", "--debugger", "{}"] [platform.layers] compiler-runtime = "openkal-llvm-runtime@0.20.1" "c++-abi" = "openkal-llvm-runtime@0.20.1" -c-abi = { name = "openkal-musl", version = "0.29.2", default-features = false, features = ["posix", "malloc-mimalloc"] } +c-abi = { name = "openkal-musl", version = "0.29.4", default-features = false, features = ["posix", "malloc-mimalloc"] } # Built for the building machine: `okld` writes and checks the notes, `okrun` # runs an image, `okprof` reads what a measured run recorded (0.23.0: the @@ -179,7 +179,7 @@ toolchain = "llvm@23.1.3" [platform.hosted.layers] compiler-runtime = "openkal-llvm-runtime@0.20.1" "c++-abi" = "openkal-llvm-runtime@0.20.1" -c-abi = { name = "openkal-musl", version = "0.29.2", default-features = false, features = ["posix", "malloc-mimalloc"] } +c-abi = { name = "openkal-musl", version = "0.29.4", default-features = false, features = ["posix", "malloc-mimalloc"] } # The family released together for openkal 0.17 (the 0.17.2 round: okb, the # runner's bundle and library interfaces, musl's renameat2; the 0.17.3 round: @@ -222,18 +222,21 @@ c-abi = { name = "openkal-musl", version = "0.29.2", default-features # over kal_fs_hard_link), openkal-llvm-runtime 0.20.0 and openkal-image 0.5.5; # 0.26.0, openkal-image 0.6.1 (the runner binds the interfaces its # implementation provides), openkal-freebsd 0.1.0 beneath openkal-musl 0.29.2 and -# openkal-llvm-runtime 0.20.1 on FreeBSD): one version of each in a build. From 0.24.1 the members name one another by +# openkal-llvm-runtime 0.20.1 on FreeBSD; 0.27.1, the implementations retire a +# handle before closing it (openkal-linux 0.26.1, openkal-macos 0.23.1, +# openkal-windows 0.21.1) and openkal-musl 0.29.4 delivers what a readiness +# enquiry held with the rest): one version of each in a build. From 0.24.1 the members name one another by # compatible ranges (`^0.28.0`) and this group chooses the versions: mcpp # 2026.11.7.1 resolves within it, and a fix of one member is that member's # release and a patch of this group, released together through one index change # (tools/family_release.py, .github/workflows/family-release.yml). [platform.versions] openkal = "0.25.0" -openkal-linux = "0.26.0" -openkal-macos = "0.23.0" -openkal-windows = "0.21.0" +openkal-linux = "0.26.1" +openkal-macos = "0.23.1" +openkal-windows = "0.21.1" openkal-freebsd = "0.1.0" -openkal-musl = "0.29.2" +openkal-musl = "0.29.4" openkal-llvm-runtime = "0.20.1" openkal-ld = "0.6.1" openkal-run = "0.6.1"