X-Git-Url: http://git.bitcoin.ninja/index.cgi?p=rust-lightning;a=blobdiff_plain;f=.travis.yml;h=dcb3a11bf280b3f97074b9ed1b5c85e3ea60c37a;hp=0c36806c63c059869d44f3e56082340cbf03eca6;hb=HEAD;hpb=e6e69f51b97cc1a8ba334242cc02b76e8a0f2142 diff --git a/.travis.yml b/.travis.yml index 0c36806c..dcb3a11b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,7 @@ language: rust rust: - stable - - beta + - nightly # 1.22.0 is MSRV for rust-lightning in general: - 1.22.0 # 1.34.2 is Debian stable @@ -15,7 +15,7 @@ before_install: - sudo apt-get install -y binutils-dev libunwind8-dev libcurl4-openssl-dev libelf-dev libdw-dev cmake gcc binutils-dev libiberty-dev script: - # Support lightning-net-tokio only on Rust stable, beta, and 1.39.0 + # Support lightning-net-tokio only on Rust stable, nightly, and 1.39.0 - if [ "$(rustup show | grep default | grep '1.39.0')" != "" ]; then export BUILD_NET_TOKIO=1; fi - if [ "$(rustup show | grep default | grep '1\.')" == "" ]; then export BUILD_NET_TOKIO=1; fi # Build the appropriate workspace(s) @@ -27,6 +27,13 @@ script: - if [ "$BUILD_NET_TOKIO" != "1" ]; then RUSTFLAGS="-C link-dead-code" cargo test --verbose -p lightning; fi # Run lightning workspace fuzz tests on Rust stable - if [ "$(rustup show | grep default | grep stable)" != "" ]; then cd fuzz && cargo test --verbose && ./ci-fuzz.sh; fi + # Run mutagen on nightly with TheBlueMatt's fork which exits with non-0 status + # if any mutations resulted in anything except test failures to prevent regressions. + - if [ "$(rustup show | grep default | grep nightly)" != "" ]; then + rm -rf mutagen && git clone https://github.com/TheBlueMatt/mutagen && + cargo install --force --path mutagen/mutagen-runner && + cd lightning && + ~/.cargo/bin/cargo-mutagen --features mutation_testing; fi # Generate code cov information on Rust 1.39.0 - if [ "$(rustup show | grep default | grep 1.39.0)" != "" ]; then wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&