Contributing#
Build and test a pinned checkout with its Cargo lockfile. The C and C++ smoke tests require the C ABI library as well as the test executables.
cargo build --locked --features capi
cargo test --locked --features capi
cargo clippy --locked --all-targets --all-features -- -D warnings
cargo fmt --check
Optional features are checked with their dependencies enabled. The faer feature is part of the default set. It is the dense self-adjoint spectrum used by connect and SQNM. The Kani workflow’s prove step builds with --no-default-features --features capi so that job does not compile pulp. The kani-github-action default command is a bare cargo-kani, which would enable faer; the workflow overrides that command and does not pass --ignore-global-asm. Build the Python package with scikit-build-core (pip install .) and run tests/python against the installed package. The algebra and interval checks live in validation and tests/symbolic; the Lean libraries live in formal.
Narrative additions use the Org sources under docs/orgmode and matching reStructuredText files under docs/source. docs/export.el exports the nested guides and changelog. Sphinx reads the generated tree. Retain numerical assertions and record the source, dependency and library revisions with performance results.