feat(pruning): block + undo pruner + utreexo-only mode coordinator #4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| CARGO_TERM_COLOR: never | |
| RUST_BACKTRACE: 1 | |
| CARGO_INCREMENTAL: 0 | |
| # Default storage features compatible with MSRV 1.85 + a clean (no-libboost-dev) host. | |
| PORTABLE_FEATURES: "rocksdb,fjall,redb" | |
| jobs: | |
| wallet-no-seckey: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: | | |
| ! grep -r 'SecretKey\|secp256k1::Secret\|seckey' crates/wallet/src | |
| fmt: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.85.0 | |
| with: | |
| components: rustfmt | |
| - run: cargo fmt --all -- --check | |
| clippy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.85.0 | |
| with: | |
| components: clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: | | |
| cargo clippy --workspace --all-targets \ | |
| --no-default-features --features "${PORTABLE_FEATURES}" \ | |
| -- -D warnings | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.85.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: | | |
| cargo test --workspace --no-fail-fast \ | |
| --no-default-features --features "${PORTABLE_FEATURES}" | |
| bench-smoke: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.85.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: | | |
| cargo bench --workspace --no-run \ | |
| --no-default-features --features "${PORTABLE_FEATURES}" | |
| deny: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: EmbarkStudios/cargo-deny-action@v2 | |
| with: | |
| arguments: --workspace --no-default-features --features "rocksdb,fjall,redb" | |
| # Heavy sys-crate matrix: | |
| # - libboost-dev for libbitcoinkernel-sys | |
| # - elevated toolchain (≥1.92) for signet-mdbx-sys | |
| # Runs the G3 kernel-parity gate and the G7 MDBX backend. | |
| kernel-mdbx: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: sudo apt-get update && sudo apt-get install -y libboost-dev cmake | |
| - uses: dtolnay/rust-toolchain@1.92.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: | | |
| cargo test --workspace --no-fail-fast \ | |
| --features "kernel,mdbx,${PORTABLE_FEATURES}" |