Repository navigation
v5.0.2 — Attestation pipeline goes fully pure-Rail
Patch release. The first Rail release attested end-to-end through the Rail substrate — no curl, no shasum, no Python anywhere in the attestation path.
Fixes
stdlib/file.rail:foreign fopen path mode -> int(084791f).fopenreturns a file descriptor, not aFILE*; declaring it asptrbypassed Rail's tagging and tripped a polymorphic untag for odd fds (3 → 1, i.e. stdout). Corrected the foreign return type.- runtime
_fopen: unwrap path + mode beforeopen(2)(95d81de). Wrapped Rail strings carry theirptrat the heap header, soopen()saw the header tag byte as the path._fopennow calls_str_unwrap, matching the_rail_read_filecontract. Closes the argv-vs-literal path bug.
Attestation — retired the shell escape hatches (bbda5dd): attest.sh, sign_attestation.sh, and publish.sh deleted; release_index.rail replaces the Python heredoc in attest_release.sh. attest.rail + publish.rail are now canonical.
Stability — new seed rail_native (3b89d0f5) is at the 2-pass byte-identical fixed point.
Full detail in CHANGELOG.md.