Harden first-release validation and dependency hygiene
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
# Development and testing
|
||||
|
||||
Use Rust 1.92 or newer on Linux and the [native dependencies](getting-started.md).
|
||||
Tests additionally need Python 3, Python `cryptography`, and OpenSSL's CLI.
|
||||
Tests additionally need Python 3, Python `cryptography`, OpenSSL's CLI, and
|
||||
`ripgrep` (`rg`). Install them with `sudo apt-get install python3-cryptography openssl ripgrep`.
|
||||
|
||||
```bash
|
||||
cargo fmt --all --check
|
||||
python3 tools/check_format.py
|
||||
python3 -m unittest discover -s tools -p 'test_*.py'
|
||||
cargo check --locked --no-default-features
|
||||
cargo test --locked
|
||||
cargo clippy --locked --all-targets -- -D warnings
|
||||
@@ -31,3 +33,10 @@ Generated keys and outputs are temporary and unsuitable as production inputs.
|
||||
Internal Rust modules are not a stable library API. The supported interface is
|
||||
the CLI and documented output files. Add behavior tests and update documentation
|
||||
when changing these interfaces.
|
||||
|
||||
The format checker also checks files included through `include!`, which are not
|
||||
all traversed by `cargo fmt`. To format them, run `rustfmt --edition 2024` on
|
||||
the reported files, then rerun the checker. Preserve upstream license texts.
|
||||
|
||||
For dependency and release checks see [Releasing](releasing.md) and
|
||||
[Dependency maintenance](dependencies.md).
|
||||
|
||||
Reference in New Issue
Block a user