Skip to content

Commit 501dbc2

Browse files
committed
release: cljw 1.3.1 — Clojure 1.12 static method values + defrecord ns-qualified identity
Smell-audited: 1: version bump + CHANGELOG; the features shipped in ab152f1. Pre-tag verification on this tree: full gate fully green (one run), conformance 0 DRIFT, verify_projects 19/19; the method-value + record behaviours are corpus-locked against real clj (26 golden pairs). Driver: the brew-user report — (every? Character/isWhitespace s) Name error on 1.3.0.
1 parent ab152f1 commit 501dbc2

2 files changed

Lines changed: 30 additions & 1 deletion

File tree

‎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.3.1] - 2026-07-16
9+
10+
Patch release: Clojure 1.12 method values (`(every? Character/isWhitespace
11+
s)` — the brew-user report), and defrecords gain their mainline
12+
ns-qualified identity (`#user.Pt{…}` printing, reader round-trip, portable
13+
record hash).
14+
15+
### Added
16+
17+
- **Method values (Clojure 1.12, static form)** — a bare `Class/method`
18+
in value position is the static method as a first-class fn:
19+
`(every? Character/isWhitespace s)`, `(map Character/toUpperCase "ab")`,
20+
`(sort-by Math/abs …)` all work as in mainline. (The 1.12
21+
`Class/.instanceMethod` / `Class/new` forms are tracked for a future
22+
release.)
23+
- **Record literals read back** — `#user.Pt{:x 1, :y 2}` constructs the
24+
record through the reader (mainline parity; extra keys land in the
25+
extmap), so the printed form round-trips.
26+
- **`scripts/nrepl_send.py`** — a dependency-free nREPL debug client
27+
(eval / describe / completions against a running server).
28+
29+
### Changed
30+
31+
- **Records print ns-qualified** — `#user.Pt{:x 1, :y 2}` (was `#Pt{…}`),
32+
matching mainline and making the print form readable.
33+
- **Record hash values are portable** — `(hash (->Pt 1 2))` returns real
34+
Clojure's value (the qualified-name type-hash XOR the map hash),
35+
completing the 1.3.0 portable-hash work for records.
36+
837
## [1.3.0] - 2026-07-16
938

1039
Minor release: mainline-parity deep-dive — the `rt` namespace is gone

‎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.3.0",
3+
.version = "1.3.1",
44
.fingerprint = 0x1869d207073beffa,
55
.minimum_zig_version = "0.16.0",
66
.dependencies = .{

0 commit comments

Comments
 (0)