github PerryTS/perry v0.5.345

latest releases: v0.5.1159, v0.5.1158, v0.5.1151...
one month ago

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 at 0x5) and ui/menus/snippets.ts (0xFFFFFFFFFFFFFFFC) traced to dispatch-table arg types disagreeing with the platform-crate extern "C" signatures — i64-vs-f64 ABI mismatch on Windows where floats are passed in XMM registers vs ints in GPRs. perry_ui_stack_set_distribution aligned to f64 across every backend (was i64 only on Windows). perry-ui-windows::toolbar::create() now parents under the parking HWND (the prior None parent 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.json to 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 as test_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.png re-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.

Don't miss a new perry release

NewReleases is sending notifications on new releases.