Highlights
Follow-up to v0.5.343 — fixes the three release-blocking gaps that surfaced when the v0.5.343 publish gate failed, so binaries actually ship this time.
Fixes
-
Win64 perry-ui ABI (v0.5.345 — Windows worker fix): align the platform-crate FFI signatures with the codegen dispatch table across all 8 perry-ui-* crates. Two crashes in
ui/layout/snippets.ts(ACCESS_VIOLATION at0x5) andui/menus/snippets.ts(0xFFFFFFFFFFFFFFFC) traced to dispatch-table arg types disagreeing with the platform-crateextern "C"signatures —i64-vs-f64ABI mismatch on Windows where floats are passed in XMM registers vs ints in GPRs.perry_ui_stack_set_distributionaligned tof64across every backend (wasi64only on Windows).perry-ui-windows::toolbar::create()now parents under the parking HWND (the priorNoneparent was rejected by Windows with HRESULT 0x8007057E "Cannot create a top-level child window"). Local Windows verification: 76/81 doc-tests pass (was 74/81 with the two crashes). -
Parity triage (v0.5.344): two new failures added to
test-parity/known_failures.jsonto unblock the gate.test_gap_array_methods(known_limitation): TypedArray.at() returns undefined instead of element values on Int32Array/Float64Array — categorical typed-array gap, same family astest_gap_typed_arrays.test_json_lazy_predicates(bug):Array.isArray()returns false on the result of[...].map(fn)— missing isArray predicate recognition for the map-returned shape. -
Linux gallery baseline (v0.5.344):
docs/examples/_baselines/linux/gallery.pngre-blessed from the v0.5.343 CI artifact (900x1400 → 900x1024). Old baseline was stale, likely from a pre-#202/#206 GTK4 styling state where the gallery rendered taller.
Notes
The v0.5.343 tag stays as-is per the release skill rule (do not retag). v0.5.343's GitHub Release page documents the full v0.5.294 → v0.5.343 substantive change set — the cognitive-load reduction, dispatch-table centralization, SSO unbox hygiene, and the long #185 styling rollout. v0.5.345 is the publishable version of that work.