Code style#
To apply Java + Rust formatters in one go:
make format
CI verifies formatting, lint, and license headers on every PR via the Lint and RAT License Check workflows.
Java#
Spotless is configured in the parent pom.xml. The CI fmt-check job
runs:
./mvnw spotless:check
Rust#
The CI clippy job runs (from native/):
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
-D warnings escalates every clippy warning to a build failure.
License headers#
Every tracked source file needs the Apache 2.0 license header. The
RAT License Check workflow runs ./mvnw -N apache-rat:check on every
PR (including docs-only changes). Exclusions live in
dev/release/rat_exclude_files.txt.