jolt/host/chez
Yogthos 403c3f302f Clojure 1.13 parity: req!, checked-keys destructuring, keyword array maps
Bring the language up to the 1.13.0-alpha1 changes that apply off the JVM:

- req! (CLJ-2949): a get-variant that throws "Expected key: k" on a missing
  key, without nil-punning. The primitive behind checked destructuring.
- Checked-keys destructuring (CLJ-2961): :keys!/:syms!/:strs! bind and throw
  when a key is absent; keys after & are declared-only (required for the !
  variants, accepted otherwise) and create no binding.
- & is no longer a legal local binding in let/loop (CLJ-2954).
- Keyword-only array maps grow to 64 entries before going hash (was 8),
  across the literal, assoc, and transient paths, so the common keyword map
  keeps insertion order up to 64.

Skipped CLJ-2891 (JVM __init bytecode, JVM-only). 1.13 is still alpha, so
this tracks alpha1 and may shift. Regression tests in test/chez/unit.edn
(ahead of the JVM 1.12.5 the corpus certifies against). Seed re-minted.
2026-07-04 10:18:51 -04:00
..
java Resolve optional libc entries at runtime, not boot load 2026-07-02 18:36:40 -04:00
seed Clojure 1.13 parity: req!, checked-keys destructuring, keyword array maps 2026-07-04 10:18:51 -04:00
stub Windows release binaries (x86_64) via MSYS2/MinGW 2026-07-02 14:46:00 -04:00
atoms.ss One IRef seam: watches/validators/meta over atom, var, and agent 2026-07-02 09:07:00 -04:00
bootstrap.ss Clean up codebase: rename stdlib layer, strip porting residue, fix tooling 2026-06-22 22:18:00 -04:00
build-joltc.ss Fix nREPL on Windows; add a version string 2026-07-04 00:11:25 -04:00
build-smoke.sh Compile data readers that return code forms 2026-07-01 10:57:55 -04:00
build.ss Windows: static link (single-file exe) + a binary inspection step 2026-07-02 18:22:53 -04:00
cli.ss Fail actionably when vendor submodules are missing 2026-07-02 19:08:41 -04:00
collections.ss Clojure 1.13 parity: req!, checked-keys destructuring, keyword array maps 2026-07-04 10:18:51 -04:00
compile-eval.ss Contract fixes from the baseline audit; every residual suite failure traced 2026-07-02 13:52:59 -04:00
converters.ss Contract fixes from the baseline audit; every residual suite failure traced 2026-07-02 13:52:59 -04:00
cts.sh Vendor clojure-test-suite as a standing gate (make cts) 2026-07-02 03:46:57 -04:00
dce.ss Embed runtime source so a self-contained joltc can build apps 2026-07-01 17:24:50 -04:00
dyn-binding.ss One IRef seam: watches/validators/meta over atom, var, and agent 2026-07-02 09:07:00 -04:00
dynamic-var-defaults.ss Honor *print-length* / *print-level* / *default-data-reader-fn* 2026-06-26 19:04:42 -04:00
emit-image.ss Compile data readers that return code forms 2026-07-01 10:57:55 -04:00
host-contract.ss Fix six JVM divergences surfaced by rewrite-clj 2026-07-01 12:25:05 -04:00
host-table.ss Fix general gaps the hiccup suite shook out 2026-06-26 20:15:39 -04:00
joltc-selfbuild-smoke.sh Static-link :jolt/native C libraries into built binaries by default 2026-07-01 09:52:00 -04:00
lazy-bridge.ss Migrate list?/ratio?/rational? to the overlay; narrow jolt.host exposure 2026-06-30 11:10:36 -04:00
loader.ss Fix nREPL on Windows; add a version string 2026-07-04 00:11:25 -04:00
multimethods.ss clojure.string toString coercion; some-fn/ifn? reference semantics; misc host gaps 2026-07-02 11:38:37 -04:00
natives-coll.ss Migrate clojure.core/set from a native shim to the kernel overlay tier 2026-06-30 10:35:57 -04:00
natives-format.ss read-string constructs sets; format %x lowercase; extend/extends? on nil 2026-06-24 14:03:47 -04:00
natives-meta.ss One IRef seam: watches/validators/meta over atom, var, and agent 2026-07-02 09:07:00 -04:00
natives-misc.ss Tagged literals are value-equal 2026-06-24 11:03:33 -04:00
natives-num.ss ^long is a 64-bit long: fast-path-with-fallback ops + logical unsigned shift 2026-06-27 16:04:19 -04:00
natives-reader.ss Document why reader-conditional stays a native shim 2026-06-30 10:42:49 -04:00
natives-seq.ss seq fns are lazy by default, like Clojure (LazySeq, not eager-headed) 2026-06-28 00:16:47 -04:00
natives-transduce.ss Remove dead native transduce shim (overlay already provides it) 2026-06-30 10:27:27 -04:00
ns.ss Contract fixes from the baseline audit; every residual suite failure traced 2026-07-02 13:52:59 -04:00
png.ss Clean up codebase: rename stdlib layer, strip porting residue, fix tooling 2026-06-22 22:18:00 -04:00
post-prelude.ss Contract fixes from the baseline audit; every residual suite failure traced 2026-07-02 13:52:59 -04:00
predicates.ss Migrate list?/ratio?/rational? to the overlay; narrow jolt.host exposure 2026-06-30 11:10:36 -04:00
printing.ss Honor *print-length* / *print-level* / *default-data-reader-fn* 2026-06-26 19:04:42 -04:00
reader.ss Strict reader tokens; edn mode with the reference's error contracts 2026-07-02 12:00:13 -04:00
records.ss Hierarchy fns follow the reference contracts; deftype classes join the class graph 2026-07-02 08:48:30 -04:00
regex.ss Compile capturing regexes with the backtracking matcher 2026-07-01 12:48:12 -04:00
remint.sh Pure-Chez test gates (no Janet) 2026-06-21 11:22:32 -04:00
rt.ss Resolve optional libc entries at runtime, not boot load 2026-07-02 18:36:40 -04:00
run-corpus.ss rand-nth follows the reference shape; refresh doc counts and the corpus floor 2026-07-02 14:46:13 -04:00
run-devirt.ss Devirt: cache the resolved impl in a per-site cell (inline cache) (#237) 2026-06-26 18:34:13 +00:00
run-fieldnum.ss Make ^Record param hints work (resolve the record tag) (#232) 2026-06-26 16:03:57 +00:00
run-fieldread.ss Bare-index field reads for statically-known records (#228) 2026-06-26 11:29:14 +00:00
run-infer.ss infer gate: cover the run-inference / take-diags! checker path 2026-06-23 09:38:13 -04:00
run-narrow.ss Nilable record types + flow-sensitive nil narrowing (#235) 2026-06-26 17:16:16 +00:00
run-numwp.ss Hintless whole-program double inference (#230) 2026-06-26 14:18:10 +00:00
run-protoret.ss Infer monomorphic protocol-method return types (#234) 2026-06-26 16:59:35 +00:00
run-sci.ss Run core.memoize's test suite on jolt 2026-06-25 13:23:05 -04:00
run-unit.ss Real Thread/yield + Thread/interrupted (jolt-l2gc) 2026-06-23 00:06:04 -04:00
run-wp.ss WP: don't let a recursive pass-through poison a param to :any (#233) 2026-06-26 16:29:46 +00:00
selfcheck.sh Pure-Chez test gates (no Janet) 2026-06-21 11:22:32 -04:00
seq.ss Contract fixes from the baseline audit; every residual suite failure traced 2026-07-02 13:52:59 -04:00
smoke.sh Fix seven more JVM divergences (rewrite-clj full suite) 2026-07-01 14:17:03 -04:00
source-registry.ss fix tests 2026-06-30 21:25:33 -04:00
static-native-smoke.sh Static-link :jolt/native C libraries into built binaries by default 2026-07-01 09:52:00 -04:00
syntax-quote.ss Small maps preserve insertion order 2026-06-27 05:48:17 -04:00
transients.ss Clojure 1.13 parity: req!, checked-keys destructuring, keyword array maps 2026-07-04 10:18:51 -04:00
tree-shake-smoke.sh Tree-shake: count #'x references; multi-app soundness smoke 2026-06-23 20:27:21 -04:00
values.ss Fix general divergences surfaced by clojure-test-suite 2026-07-02 03:46:57 -04:00
vars.ss refactor: consolidate transducers, dissolve natives-parity.ss (jolt-jcs7) 2026-06-23 23:50:42 -04:00