build: pre cargo build --all-targets cargo doc pre: cargo deny --all-features check licenses cargo fmt --all -- --check cargo clippy --all --all-targets release: pre cargo build --release flamegraph: cargo flamegraph --bench lmdb_benchmark firefox ./flamegraph.svg publish_py: test_py docker pull quay.io/pypa/manylinux2014_x86_64 MATURIN_PYPI_TOKEN=$(cat ~/.pypi/redb_token) docker run -it --rm -e "MATURIN_PYPI_TOKEN" -v `pwd`:/redb-ro:ro quay.io/pypa/manylinux2014_x86_64 /redb-ro/publish_py.sh test_py: install_py python3 -m unittest discover install_py: pre maturin develop test: pre RUST_BACKTRACE=1 cargo test test_wasi: cargo +nightly test --target=wasm32-wasip1 -- --nocapture bench bench='lmdb_benchmark': pre cargo bench --bench {{bench}} watch +args='test': cargo watch --clear --exec "{{args}}" fuzz: pre cargo fuzz run --sanitizer=none fuzz_redb -- -max_len=10000 fuzz_cmin: cargo fuzz cmin --sanitizer=none fuzz_redb -- -max_len=10000 fuzz_ci: pre cargo fuzz run --sanitizer=none fuzz_redb -- -max_len=10000 -max_total_time=60 fuzz_coverage: pre #!/usr/bin/env bash set -euxo pipefail RUST_SYSROOT=`cargo rustc -- --print sysroot 2>/dev/null` LLVM_COV=`find $RUST_SYSROOT -name llvm-cov` echo $LLVM_COV rustup component add llvm-tools-preview cargo fuzz coverage --sanitizer=none fuzz_redb $LLVM_COV show fuzz/target/*/release/fuzz_redb --format html \ -instr-profile=fuzz/coverage/fuzz_redb/coverage.profdata \ -ignore-filename-regex='.*(cargo/registry|redb/fuzz|rustc).*' > fuzz/coverage/coverage_report.html $LLVM_COV report fuzz/target/*/release/fuzz_redb \ -instr-profile=fuzz/coverage/fuzz_redb/coverage.profdata \ -ignore-filename-regex='.*(cargo/registry|redb/fuzz|rustc).*' firefox ./fuzz/coverage/coverage_report.html