Repository navigation
v0.4.1
Inimerse 0.4.1 Release Notes
Inimerse 0.4.1 is a patch release for the 0.4 portable runtime line.
Fixes
- Fixed hosted CI false failures in the range metadata regression by running
the core language test from an isolated CMake sandbox. - Removed the unsafe CTest failure regex that matched diagnostic string-table
output instead of executed program output. - Made CI CMake builds start from a clean build directory.
- Fixed Windows CI setup so the legacy
build.ps1path has a MinGW toolchain
available on GitHub hosted runners. - Made
build.ps1use CMake as the single canonical Windows source list,
preventing linker failures when new runtime modules are added. - Made the closure concurrency probe use the project's portable thread layer,
so the full probe set builds with MinGW as well as POSIX toolchains. - Updated GitHub's checkout and Node setup actions to their Node 24 releases.
- Fixed Windows collection conversion/join lifetime bugs exposed by the shared
cross-platform CTest suite. - Fixed an intermittent VM deadlock when thread result/await code created
Result dictionaries while worker threads were still active. - Made
--no-modsa working runtime flag so core tests can opt out of ambient
project modules explicitly. - Brought Windows runtime collection metadata, process probing, and thread
message timing behavior in line with the shared CTest suite. - Isolated core metadata and portable API tests with
--no-mods, and made
portable API failures report precise stage markers without tripping CTest on
diagnostic string-table output. - Replaced the function-message thread lifetime test's fixed startup sleep with
an explicit ready signal and queue handshake before sending the function
value, and verifies the result throughthread_resultinstead of thread-local
gui_sayoutput. - Split
--no-modsso core C modules still register while world, VDP,
packaging, and disk-loaded modules stay out of core runtime tests. - Made Windows
atomic_get/atomic_setuse interlocked operations for
cross-thread visibility. - Fixed Windows
splithandling for an empty separator so it matches the
portable runtime's whitespace split behavior. - Made copied function values clone their closure payload so queued
cross-thread function messages do not depend on sender lifetime. - Made function-value calls use the closure object's function index as the
canonical target. - Marked OS thread message queues as GC roots so queued function values remain
callable until the receiver consumes them. - Kept range metadata checks focused on the
range(value)runtime behavior,
with regex coverage handled by the portable API test. - Declared the Python cryptography dependency required by signed Inim packages.
- Made
build.ps1create the local deployment directory before copying the
Windows executable.
Assets
This release publishes the Linux runtime packages:
inimerse-0.4.1-Linux-x86_64.tar.gzinimerse-0.4.1-Linux-x86_64.zipinimerse-0.4.1-Linux-x86_64.debSHA256SUMS
SHA-256
2608345b5cb4fa0f91d37d98f881a18a15b1513048f2a6d5c27daa1b4336d6d2 build/inimerse-0.4.1-Linux-x86_64.deb
748a88e3253182ea9a4c00f307b847af7bc605fcd464cc2979b05728d412ac3a build/inimerse-0.4.1-Linux-x86_64.tar.gz
53d96f2731bd4e486415cd5d8cafe24b7bb80dc4db3bb2b0dac96c143db8ec1b build/inimerse-0.4.1-Linux-x86_64.zip