Skip to content

Commit 2c2794e

Browse files
committed
release: cljw 1.2.1 — the *cider-error* buffer (analyze-last-stacktrace) + *e parity
Smell-audited: 1: version bump + CHANGELOG + the D-548 recurrence record; the feature shipped in eafc4fd (ADR-0170 am1). Pre-tag verification on this tree: smoke green; three full-gate runs each 401/402 with ONLY the ledger-tracked D-548(a) roaming SIGABRT failing — at its two RECORDED abort sites (delay_once_under_concurrency 2026-07-02, the cancel section 2026-06-25), 20/20 standalone green, 8x-parallel stress 1/8 vs the ledger's own pre-change 3/8 baseline, and CI (the release platform) green on the feature commit — the documented pre-existing host-load race, not an am1 regression (full record in the D-548 row).
1 parent eafc4fd commit 2c2794e

3 files changed

Lines changed: 37 additions & 2 deletions

File tree

‎.dev/debt.yaml‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1069,7 +1069,13 @@ active:
10691069
last_reviewed: "2026-06-25"
10701070
- id: "D-548"
10711071
status: |-
1072-
open (2026-07-02). Low-core concurrency exposure, surfaced by the first nightly
1072+
open (2026-07-02). RECURRED 2026-07-14 during the v1.2.1 pre-tag full gates
1073+
(Mac local, serial-e2e, TWICE in a row): (a) future_promise_delay exit 134;
1074+
20× standalone all PASS; the A/B check vs the ledger's own pre-am1 baseline —
1075+
8× parallel stress — reproduced 1/8 exit 134 vs the recorded 3/8, so the
1076+
ADR-0170 am1 throw-path change did NOT worsen it (rate at/below baseline;
1077+
the race predates am1 by 3 weeks and ships in released 1.1.0/1.2.0).
1078+
Low-core concurrency exposure, surfaced by the first nightly
10731079
FULL gate on the hosted 3-vCPU macos-15 runner (runs 28571235224 + 28574985879):
10741080
(a) e2e_phase14_future_promise_delay — a ROAMING case SIGABRTs the ReleaseSafe
10751081
binary (exit 134): run 28574985879 aborted delay_once_under_concurrency; run

‎CHANGELOG.md‎

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,35 @@ All notable changes to ClojureWasm are documented here. The format follows
55
[SemVer](https://semver.org/). SemVer compatibility guarantees start at the
66
first stable `1.0.0` tag; pre-1.0 `alpha` / `rc` tags may still change surfaces.
77

8+
## [1.2.1] - 2026-07-14
9+
10+
Patch release: the `*cider-error*` buffer works — CIDER renders numbered
11+
causes with stack frames, phase-aware routing, and Show/Hide frame filters
12+
against cljw, instead of "[no stack trace available]".
13+
14+
### Added
15+
16+
- **nREPL `cider/analyze-last-stacktrace` op** (+ the bare alias) — analyzes
17+
the session's `*e` on demand: one cause per `ex-cause` chain link with
18+
class / message / printed ex-data / error phase / stack frames
19+
(innermost-first, with `clj` / `repl` / `project` / `dup` flags and
20+
navigable `file-url` for on-disk frames). CIDER's rich error buffer and
21+
its compile-phase inline overlays activate automatically.
22+
23+
### Fixed
24+
25+
- **`*e` is now set for every caught REPL error** — Clojure parity:
26+
compiler-class errors (an unresolved symbol, a syntax error) previously
27+
left `*e` untouched; now `(ex-message *e)` works after any error, in both
28+
the CLI REPL and nREPL sessions.
29+
- **`(throw (ex-info …))` carries a stack trace** — the live call stack is
30+
stamped on the thrown value, so user throws render frames like runtime
31+
errors (both backends).
32+
- **nREPL use-after-free** — the 1.2.0 re-architecture fed the per-message
33+
scratch-owned request source into evals whose products outlive the
34+
message; long editor sessions could see corrupted strings. The source is
35+
now copied to the persistent arena.
36+
837
## [1.2.0] - 2026-07-13
938

1039
Minor release: the nREPL server is rebuilt to full base-protocol fidelity —

‎build.zig.zon‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
.{
22
.name = .cljw,
3-
.version = "1.2.0",
3+
.version = "1.2.1",
44
.fingerprint = 0x1869d207073beffa,
55
.minimum_zig_version = "0.16.0",
66
.dependencies = .{

0 commit comments

Comments
 (0)