jolt/test/integration
Yogthos 877373b7e6 aot: marshal compiled namespaces to bytecode images
Adds src/jolt/aot.janet: save-ns / load-ns-image marshal a namespace's compiled
var cells to a Janet bytecode image and load them back, skipping
parse/analyze/emit/compile on reload.

Compiled functions close over core fns (cfunctions) that can't marshal by value,
so we marshal against a dictionary built from the baked-in runtime env
(env-lookup jolt-runtime-env, which chains to the Janet boot env): core fns and
builtins are referenced by name, only user bytecode and its var cells are
serialized. The runtime env is identical at save and load time (same binary), so
the dictionaries match.

Test round-trips a namespace (constant, fn over it, core-fn user, recursion) into
a fresh context and confirms the loaded vars run and stay redefinable.
2026-06-06 02:57:32 -04:00
..
aot-test.janet aot: marshal compiled namespaces to bytecode images 2026-06-06 02:57:32 -04:00
api-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
cli-test.janet cli: babashka-style flags (--version, --eval, --main, nrepl-server) 2026-06-05 23:20:29 -04:00
clojure-test-suite-test.janet feat: futures on real OS threads (ev/thread) 2026-06-05 20:00:11 -04:00
compile-mode-test.janet compiler: compile multi-arity, named, and variadic fns + recur-in-fn 2026-06-06 01:56:01 -04:00
conformance-test.janet compiler: fix compile-mode correctness (conformance 87->218/218) 2026-06-06 02:41:18 -04:00
deps-conformance-test.janet deps phases 3-4: uberscript bundling + conformance harness 2026-06-05 23:36:40 -04:00
deps-loader-test.janet test: fall back to /tmp when TMPDIR is unset (Linux CI) 2026-06-05 23:07:20 -04:00
deps-resolve-test.janet test: fall back to /tmp when TMPDIR is unset (Linux CI) 2026-06-05 23:07:20 -04:00
embedded-stdlib-test.janet bake the .clj stdlib into the binary 2026-06-05 23:51:03 -04:00
features-test.janet chore: remove dev artifacts; keep only published code/tests/docs 2026-06-05 15:45:04 -04:00
jank-conformance-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
namespace-test.janet test(spec): macros, reader, host-interop, namespaces — fix def-doc, resolve, %& 2026-06-05 00:35:48 -04:00
nrepl-test.janet fix: pr-str/str of a var, and nREPL namespace switching 2026-06-05 22:05:45 -04:00
sci-bootstrap-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
sci-runtime-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
suite-worker.janet compiler: resolve Janet-env fallback symbols; validate full suite under compile 2026-06-06 02:49:53 -04:00
systematic-coverage-test.janet feat(strictness): numeric ops reject non-numbers/non-integers like Clojure 2026-06-05 10:58:21 -04:00
uberscript-test.janet deps phases 3-4: uberscript bundling + conformance harness 2026-06-05 23:36:40 -04:00