env:
global:
- RUST_BACKTRACE=1
- PATH=$PATH:$HOME/.cargo/bin
os:
- linux
- osx
language: rust
rust:
- 1.16.0
- nightly-2017-03-16
sudo: false
branches:
only:
- master
- stable
cache:
cargo: true
before_script:
- (which cargo-install-update && cargo install-update cargo-update) || cargo install cargo-update
- (which cargo-prune && cargo install-update cargo-prune) || cargo install cargo-prune
- if [ "${TRAVIS_RUST_VERSION}" = 1.16.0 ]; then
(which rustfmt && cargo install-update rustfmt) || cargo install rustfmt;
elif [ "${TRAVIS_OS_NAME}" = linux ]; then
clippy_vers=0.0.120;
if ! cargo clippy --version | grep -q $clippy_vers; then
cargo install clippy --vers=$clippy_vers --force;
fi
fi
script:
- if [ "${TRAVIS_RUST_VERSION}" = 1.16.0 ]; then
(
set -x;
cargo fmt -- --write-mode=diff &&
cargo rustc --verbose -- --test -Zno-trans &&
cargo rustc --verbose --example ci_test -- -Zno-trans &&
cargo rustc --verbose --example key_value_store -- -Zno-trans &&
cargo rustc --verbose -- -Zno-trans &&
env RUSTFLAGS="-C opt-level=2 -C codegen-units=8" cargo test --release --verbose --features use-mock-crust
);
elif [ "${TRAVIS_OS_NAME}" = linux ]; then
(
set -x;
cargo clippy &&
cargo clippy --features=use-mock-crust &&
cargo clippy --profile=test &&
cargo clippy --profile=test --features=use-mock-crust
);
fi
before_cache:
- cargo prune