We build against various targets on CI, in order to not abuse CI its nice to see if code is good before pushing. Add a script that runs `cargo check` with various combinations of features and targets in order to enable thorough checking of the project source code during development.
32 lines
720 B
Bash
Executable File
32 lines
720 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Run various invocations of cargo check
|
|
|
|
features=( "default" "compiler" "electrum" "esplora" "compact_filters" "key-value-db" "async-interface" "all-keys" "keys-bip39" )
|
|
toolchains=( "+stable" "+1.45" "+nightly" )
|
|
|
|
main() {
|
|
check_src
|
|
check_all_targets
|
|
}
|
|
|
|
# Check with all features, with various toolchains.
|
|
check_src() {
|
|
for toolchain in "${toolchains[@]}"; do
|
|
cmd="cargo $toolchain clippy --all-targets --no-default-features"
|
|
|
|
for feature in "${features[@]}"; do
|
|
touch_files
|
|
$cmd --features "$feature"
|
|
done
|
|
done
|
|
}
|
|
|
|
# Touch files to prevent cached warnings from not showing up.
|
|
touch_files() {
|
|
touch $(find . -name *.rs)
|
|
}
|
|
|
|
main
|
|
exit 0
|