Releases: clojurewasm/zwasm
Releases · clojurewasm/zwasm
Release list
v2.3.0
v2.2.1
What's Changed
- chore(handover): close the AOT-full-fidelity campaign section — v2.2.0 released by @chaploud in #143
- ADR-0204 kickoff: binary-size campaign — measured baseline + levers (D-521/D-522) by @chaploud in #144
- D-522 stage 1: shared FP-bridge bodies — jit_host_bridge −82% (binary −21%) by @chaploud in #145
- ADR-0204 close: refutation record + retrospective + v2.2.1 version bump by @chaploud in #146
Full Changelog: v2.2.0...v2.2.1
v2.2.0
What's Changed
- docs(handover): post-v2.1.0 sync by @chaploud in #129
- docs(debt): open front G-senior-gap (senior-runtime gap analysis, measured) by @chaploud in #130
- D-507 phase 1: ADR-0202 + reservation-backed linear memory (guard-page groundwork) by @chaploud in #131
- D-507 phase 2: fault→trap PC-redirect handler + trap registry (ADR-0202 D2+D3) by @chaploud in #132
- D-507 phase 3: bounds-check elision flip + AOT soundness guard (ADR-0202 D4/D5) — completes D-507 by @chaploud in #133
- docs: close D-507 (guard-page bounds elision complete) by @chaploud in #134
- D-510: committed differential-fuzz gate — memory-snapshot compare + dual bounds-mode JIT lanes + regression corpus by @chaploud in #135
- AOT-full-fidelity campaign: Phase I findings (D-516 bug) + Phase II cross-process differential net by @chaploud in #136
- ADR-0203 stage 1: de-bake all JIT helper absolute addresses into JitRuntime slots (closes D-516) by @chaploud in #137
- ADR-0203 stage 2: .cwasm v0.5 (embedded wasm_bytes) + full-fidelity deserializer — exit test green by @chaploud in #138
- ADR-0203 stage 3: .cwasm runs through the full runtime — aot-diff 62/62 MATCH (closes D-517 + D-518) by @chaploud in #139
- ADR-0203 stage 4: elided artifacts serialize + load soundly — closes D-515(1) by @chaploud in #140
- ADR-0203 stage 5: transparent on-disk compilation cache (--cache, closes D-508) by @chaploud in #141
- ADR-0203 stage V: campaign retrospective — docs, bench record, lesson, debt reconcile by @chaploud in #142
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's Changed
- ci: portable timeout in AOT cross-compile check + raise gate cap to 120min by @chaploud in #117
- chore(debt): reconcile ledger vs code truth + proposal sweep (Batch A) by @chaploud in #118
- docs(scaffolding): maintenance-mode necessity audit + deloop stale docs (E) by @chaploud in #119
- feat(component): D-502 utf16/latin1+utf16 string encodings + D-504 wasi_p2 hardening (Batch B) by @chaploud in #120
- chore(scaffolding): E-段2 — enact ratified maintenance-mode gate/cap decisions by @chaploud in #121
- ci(gate): D-254 — gate the rust-host embedding consumer on the ubuntu leg by @chaploud in #122
- docs(handover): sync to post-D-254 state (scaffolding campaign complete) by @chaploud in #123
- docs(handover): fix stale E-段2/zone_check status by @chaploud in #124
- fix(codegen): D-505 — arm64 SIMD spill-awareness triage + promote spill_aware_check to CI by @chaploud in #125
- chore(bench): fold per-merge bench record into the feature PR (PR-only main) by @chaploud in #126
- feat(jit): D-475 — table64 (i64-indexed tables) compiles natively in the JIT by @chaploud in #127
- release: prepare v2.1.0 (table64-JIT) by @chaploud in #128
Full Changelog: v2.0.0...v2.1.0
v2.0.0
What's Changed
- Bump spec testsuite to d7b6783 by @github-actions[bot] in #58
- feat(env): Nix-mirror versions.lock + WASI SDK 30 + environment.md by @chaploud in #60
- feat(scripts): unified gate runners + Windows installer by @chaploud in #61
- ci: enforce versions.lock ↔ flake.nix consistency by @chaploud in #62
- ci: add Windows memory usage check via PowerShell by @chaploud in #64
- ci: source HYPERFINE_VERSION from versions.lock by @chaploud in #65
- docs(handoff): resume-guide.md + W49-W52 + CHANGELOG [Unreleased] by @chaploud in #66
- docs: cleanup sweep — bench-record policy, stale-version sweep, gate audit by @chaploud in #67
- ci(windows): drop shared-lib guard — Plan C-a by @chaploud in #68
- ci(windows): drop static-lib + static-link guards — Plan C-d by @chaploud in #69
- ci(windows): drop Rust example dynamic guard — Plan C-c by @chaploud in #71
- ci(windows): cross-platform binary size via -Dstrip=true — Plan C-e + C-f by @chaploud in #70
- ci(windows): port FFI tests to Win32 — Plan C-b by @chaploud in #72
- docs(decisions): D137 — cross-platform stripping + per-OS size ceilings by @chaploud in #73
- feat(windows): install-tools.ps1 — Rust / Go / TinyGo (W52) by @chaploud in #74
- docs: align Merge Gate / runner forms / per-OS size ceilings by @chaploud in #75
- docs: drop obsolete .dev/checklist-jit-fuel-timeout.md by @chaploud in #76
- docs: changelog [Unreleased] PR-tags + D137 + memo refresh by @chaploud in #77
- docs(readme): W52 status + per-OS size ceilings (D137) by @chaploud in #78
- docs+ci: trailing cleanup after #75..#78 by @chaploud in #79
- feat(flake): explicit URL+sha256 pins for wasm-tools + wasmtime (W50 PR-A) by @chaploud in #80
- ci: add test-nix Linux job using Nix devshell (W50 PR-B) by @chaploud in #81
- ci: extend test-nix to macos-latest (W50 PR-C) by @chaploud in #82
- ci: complete W50 — Windows install-tools.ps1 + restore extras (W50 PR-D) by @chaploud in #83
- docs(w47): investigation note — variance dominates the +24 % signal by @chaploud in #84
- fix(w53): route rustup-init stdout through Out-Host by @chaploud in #85
- bench(c-g): make history.yaml multi-arch by @chaploud in #86
- docs: refocus handover after W53 + C-g shipped by @chaploud in #87
- ci(c-g step 5): flip benchmark job to a 3-OS matrix by @chaploud in #88
- ci: add bench-baseline workflow_dispatch (C-g step 3 followup) by @chaploud in #89
- docs(w54): investigation — gap is post-fold loop overhead, not missing fold by @chaploud in #90
- feat(w54): LoopInfo substrate (shared branch / loop / liveness analysis) by @chaploud in #91
- Bump spec testsuite to a6ed9b2 by @github-actions[bot] in #93
- Bump wasm-tools to 1.248.0 by @github-actions[bot] in #92
- Enable arm64_32-apple-watchos (ILP32) static-lib build — cleanup of #97 by @chaploud in #98
Full Changelog: v1.11.0...v2.0.0
v1.11.1 — final v1 release
Final release of the v1 line (frozen). Captures post-v1.11.0 work, notably arm64_32-apple-watchos (ILP32) static-lib support (#98).
zwasm v2 (Apache-2.0, ground-up rewrite) inherits main. v1 stays available via its tags. See the v2 migration guide: https://github.com/clojurewasm/zwasm/blob/main/docs/migration_v1_to_v2.md
Note: built from source (the v1 release workflow is frozen for the v2 migration).
v1.11.0
What's Changed
- docs(v1.10.0): post-migration cleanup — size guard, gotchas, archive by @chaploud in #46
- refactor(delib-1a): platform pfd I/O uses Linux direct syscalls by @chaploud in #47
- refactor(delib-1b): wasi path-based ops use Linux direct syscalls by @chaploud in #48
- chore: credit @notxorand as contributor (#41 superseded by #45) by @chaploud in #50
- refactor(delib-1c/1d/1e/1f): un-link-libc — full migration by @chaploud in #49
- docs: mark W46 Phase 1 done and refresh memo by @chaploud in #51
- refactor(w46-phase2): route std.c.* WASI calls through platform helpers by @chaploud in #52
- perf(w48): trim release binary -83 KB Linux / -180 KB Mac by @chaploud in #53
- docs(w48): tighten size ceiling to 1.60 MB and refresh README + book by @chaploud in #54
- Avoid use-after-free by heap-allocating FailingAllocator in OOM test by @jtakakura in #56
- fix(types): plug export_fns/cached_fns leak when start function traps (#42) by @chaploud in #57
Full Changelog: v1.10.0...v1.11.0
v1.10.0
What's Changed
Full Changelog: v1.9.1...v1.10.0
v1.9.1
What's Changed
Full Changelog: v1.9.0...v1.9.1
v1.9.0
What's Changed
- Merge PR #28: Execution cancellation API (jtakakura) + refinements by @chaploud in #43
- Support explicit cancellation of Wasm execution by @jtakakura in #28
Full Changelog: v1.8.0...v1.9.0