language: rust # Using 16MB stacks for deep test/debug recursion env: global: - RUST_MIN_STACK=16777216 matrix: fast_finish: true include: # NB: To help with CI delays, each `pull_request` is only tested on Linux, # with 1.13 for compatibility and nightly+rayon_unstable for broad test # coverage. The bors bot counts as a `push` type, which will run it all. - rust: 1.13.0 os: linux #if: everything! before_script: # rand 0.4.2 requires rust 1.15, and rand-0.3.22 requires rand-0.4 :/ # manually hacking the lockfile due to the limitations of cargo#2773 - cargo generate-lockfile - sed -i -e 's/"rand 0.[34].[0-9]\+/"rand 0.3.20/' Cargo.lock - sed -i -e '/^name = "rand"/,/^$/s/version = "0.3.[0-9]\+"/version = "0.3.20"/' Cargo.lock - rust: stable os: linux if: NOT type = pull_request - rust: stable os: linux env: RUSTFLAGS='--cfg rayon_unstable' if: NOT type = pull_request - rust: beta os: linux if: NOT type = pull_request - rust: beta os: linux env: RUSTFLAGS='--cfg rayon_unstable' if: NOT type = pull_request - rust: nightly os: linux if: NOT type = pull_request - rust: nightly os: linux env: RUSTFLAGS='--cfg rayon_unstable' #if: everything! - rust: stable os: osx if: NOT type = pull_request - rust: stable os: osx env: RUSTFLAGS='--cfg rayon_unstable' if: NOT type = pull_request - rust: nightly os: osx if: NOT type = pull_request - rust: nightly os: osx env: RUSTFLAGS='--cfg rayon_unstable' if: NOT type = pull_request # wasm won't actually work without threading, but it builds - rust: nightly os: linux env: TARGET=wasm32-unknown-unknown script: - rustup target add $TARGET - cargo build --target $TARGET if: NOT type = pull_request script: - cargo build - | if [ $TRAVIS_RUST_VERSION == nightly ]; then cargo test -p rayon && cargo test -p rayon-core && cargo test -p rayon-demo && ./ci/highlander.sh fi - | if [ -n "$RUSTFLAGS" ]; then cargo clean && cargo build -p rayon-futures && if [ $TRAVIS_RUST_VERSION == nightly ]; then cargo test -p rayon-futures fi fi branches: only: - master - staging - trying