Skip to content

moonsize 0.5.1 — repair Mooncakes documentation builds

Latest

Choose a tag to compare

@BigSaltyMan BigSaltyMan released this 21 Oct 14:49

moonsize 0.5.1 fixes the Mooncakes documentation failure affecting public 0.4.0 and 0.5.0. The old compression dependency still shipped moon.mod.json, which the current documentation builder rejects. Pinned-toolchain CI had not detected this separate registry build failure.

Repair

  • Remove the obsolete bikallem/compress → blit/async registry dependency chain. Ship only the pinned synchronous gzip/flate/checksum/blit runtime: 34 files, with original/adapted hashes, source URLs and Apache-2.0 license. Import paths, native symbol namespaces and equivalent deprecated syntax are adapted. Compressor algorithm/defaults remain unchanged.
  • Five inputs (empty, small, repeated, deterministic noise, unchanged fib.wasm) produce byte-identical complete gzip streams versus public 0.5.0. Root generated public API is identical; no report schema or feature change. Historical measured examples are not rewritten.
  • Existing pinned CI remains. An additional current-stable-toolchain job checks native code, compression regressions and actual moon doc. CI also verifies vendored file integrity. A manual trigger was added after no push run was listed; the successful run below targets the exact final SHA.

Verified delivery

  • Full source 2b0db5a, main. Implementation commit 7ec0e4b, followed only by the manual CI trigger addition. Tag v0.5.1 points to the final verified SHA.
  • Exact target Linux CI: all three jobs passed: 354 native tests, 914 CLI cases, four source demos, current-source budget 0/3, existing offline/PDF checks; current-toolchain 18 compression tests and documentation generation also passed. No full local CLI/browser/PDF matrix was repeated.
  • Isolated current Windows toolchain: moon0.1.20261020 / moonc0.10.16+b1a0e846e; original0.10.13 toolchain unchanged. 31 non-blocking implicit trait-method deprecations remain on the newer compiler; warning-free current-toolchain compatibility is not claimed.
  • Repository-external clean export from that exact SHA: audited 161 files, 1149347 bytes. Native output helper, vendored C stubs and package configs, chart resources and licenses are included. No build/cache directories, plans, AGENTS, screenshots/PDF evidence or generated API files.
  • Actual registry ZIP SHA-256 e18e242d89e80d0989d79f5f94e336e0e7e9845b36171e4be614a288a643620e. Every file length and content SHA matches the audited source package. Public version: BigSaltyMan/moonsize@0.5.1; install with moon add BigSaltyMan/moonsize@0.5.1.
  • Two separate repository-external exact-version consumers passed, one per toolchain: 11 public API checks each, no local dependency override. The public ZIP was separately extracted and built as a native CLI; HTML/data JSON generation (0), existing-output refusal preserving bytes (1), and data self-diff (0) passed.
  • Mooncakes online documentation: success, verified from the actual version page and Build log. The log records native check, moondoc, example Wasm build and completion. This is separate from upload acceptance. The raw build log and verification JSON are attached.

Compatibility notes, 0.5 API migration. Older releases/tags/packages are preserved; users of 0.4.0/0.5.0 should upgrade to 0.5.1 rather than expect their immutable dependency archives to change. Historical browser/PDF/performance evidence keeps its prior identity. Retained/path/gzip/data-segment model boundaries remain unchanged.