Run this checklist before every release. The crate version (
Cargo.tomlversion) is the implementation version (semver). The language version ([package.metadata] language-versionandLANGUAGE_VERSIONinsrc/format/constants.rs) is the language version — it moves only on RFC-ratified change. SeeGOVERNANCE.md§5 for the distinction.
-
cargo test --lib— all tests pass (1541+) -
cargo check --tests— zero warnings -
python3 verify_implementation.py— exit 0 -
cargo fmt -- --check— no formatting diffs
- All 17 numbered examples compile and run:
for f in examples/[0-1][0-9]_*.nula; do echo "=== $f ===" && nulang "$f" && echo "OK: $f" || echo "FAIL: $f" done
- All 4 templates scaffold, build, test, and run:
for t in default cli lib full; do rm -rf /tmp/nula_test_$t nulang nula new /tmp/nula_test_$t --template $t cd /tmp/nula_test_$t nulang nula build nulang nula test nulang nula run cd - done
-
nulang --versionshows correct crate version (0.1.0) -
nulang --helpoutput is current and accurate -
Cargo.tomlversionmatchessrc/main.rsVERSIONconstant -
Cargo.toml[package.metadata] language-versionmatchessrc/format/constants.rsLANGUAGE_VERSION
-
CHANGELOG.mdincludes all user-visible changes since the last release -
README.mdlinks are valid (GitHub, website, docs) -
examples/README.mdis up to date with the current example count