Skip to content
Please note that GitHub no longer supports Internet Explorer.

We recommend upgrading to the latest Microsoft Edge, Google Chrome, or Firefox.

Learn more
Permalink
Tree: 25d638d720
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time. Cannot retrieve contributors at this time
208 lines (186 sloc) 9.34 KB
language: rust
sudo: false
# TODO: https://github.com/rust-lang-nursery/futures-rs/pull/1681#issuecomment-507791279
# cache: cargo
stages:
- name: test
- name: release
if: tag IS present
matrix:
include:
# This is the minimum Rust version supported by futures-rs.
# When updating this, the reminder to update the minimum required version in README.md.
- name: cargo build (minimum required version)
rust: 1.36.0
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
# Check default-features
- cargo build --all
# Check compat & threadpool features
- cargo build --manifest-path futures/Cargo.toml --features io-compat
- cargo build --manifest-path futures/Cargo.toml --features threadpool
# This is the minimum Rust version supported by `async-await` feature.
# When updating this, the reminder to update the minimum required version of `async-await` feature in README.md.
- name: cargo build --features async-await (minimum required version)
rust: beta # 1.39.0
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo build --all --features async-await
- name: cargo +stable build
rust: stable
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
# Check default-features
- cargo build --all
# Check compat & threadpool features
- cargo build --manifest-path futures/Cargo.toml --features io-compat
- cargo build --manifest-path futures/Cargo.toml --features threadpool
- name: cargo +beta build
rust: beta
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
# Check default-features
- cargo build --all
# Check compat & threadpool & async-await features
- cargo build --manifest-path futures/Cargo.toml --features io-compat
- cargo build --manifest-path futures/Cargo.toml --features threadpool
- cargo build --manifest-path futures/Cargo.toml --features async-await
- name: cargo test
rust: nightly
os: osx
- name: cargo test
rust: nightly
os: linux
- name: cargo build (with minimal versions)
rust: nightly
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo update -Zminimal-versions
- cargo build --all --all-features
- name: cargo clippy
rust: nightly
script:
- if ! rustup component add clippy; then
target=`curl https://rust-lang.github.io/rustup-components-history/x86_64-unknown-linux-gnu/clippy`;
echo "'clippy' is unavailable on the toolchain 'nightly', use the toolchain 'nightly-$target' instead";
rustup toolchain install nightly-$target;
rustup default nightly-$target;
rustup component add clippy;
fi
- cargo clippy --all --all-features
- name: cargo bench
rust: nightly
script:
- cargo bench --all
- cargo bench --manifest-path futures-util/Cargo.toml --features=bilock,unstable
- name: cargo +stable build --no-default-features
rust: stable
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo build --manifest-path futures/Cargo.toml --no-default-features
- cargo build --manifest-path futures-core/Cargo.toml --no-default-features
- cargo build --manifest-path futures-channel/Cargo.toml --no-default-features
- cargo build --manifest-path futures-executor/Cargo.toml --no-default-features
- cargo build --manifest-path futures-io/Cargo.toml --no-default-features
- cargo build --manifest-path futures-sink/Cargo.toml --no-default-features
- cargo build --manifest-path futures-util/Cargo.toml --no-default-features
- name: cargo +stable build (alloc)
rust: stable
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo build --manifest-path futures/Cargo.toml --no-default-features --features alloc
- cargo build --manifest-path futures-core/Cargo.toml --no-default-features --features alloc
- cargo build --manifest-path futures-sink/Cargo.toml --no-default-features --features alloc
- cargo build --manifest-path futures-channel/Cargo.toml --no-default-features --features alloc
- cargo build --manifest-path futures-util/Cargo.toml --no-default-features --features alloc
- name: cargo build --target=thumbv6m-none-eabi
rust: nightly
install:
- rustup target add thumbv6m-none-eabi
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo build --manifest-path futures/Cargo.toml
--target thumbv6m-none-eabi
--no-default-features
--features unstable,cfg-target-has-atomic
- cargo build --manifest-path futures/Cargo.toml
--target thumbv6m-none-eabi
--no-default-features
--features unstable,cfg-target-has-atomic,alloc
- cargo build --manifest-path futures/Cargo.toml
--target thumbv6m-none-eabi
--no-default-features
--features unstable,cfg-target-has-atomic,async-await
- name: cargo build --target=thumbv7m-none-eabi
rust: nightly
install:
- rustup target add thumbv7m-none-eabi
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
- cargo build --manifest-path futures/Cargo.toml
--target thumbv7m-none-eabi
--no-default-features
- cargo build --manifest-path futures/Cargo.toml
--target thumbv7m-none-eabi
--no-default-features
--features alloc
- cargo build --manifest-path futures/Cargo.toml
--target thumbv7m-none-eabi
--no-default-features
--features async-await
- name: cargo check (sub crates)
rust: nightly
script:
- cargo run --manifest-path ci/remove-dev-dependencies/Cargo.toml */Cargo.toml
# futures-io
# Check default-features, all-features
- cargo check --manifest-path futures-io/Cargo.toml
- cargo check --manifest-path futures-io/Cargo.toml --all-features
# Check each features
- cargo check --manifest-path futures-io/Cargo.toml --features read_initializer,unstable
# futures-util
# Check default-features, all-features
- cargo check --manifest-path futures-util/Cargo.toml
- cargo check --manifest-path futures-util/Cargo.toml --all-features
# Check each features
- cargo check --manifest-path futures-util/Cargo.toml --features sink
- cargo check --manifest-path futures-util/Cargo.toml --features io
- cargo check --manifest-path futures-util/Cargo.toml --features channel
- cargo check --manifest-path futures-util/Cargo.toml --features async-await
- cargo check --manifest-path futures-util/Cargo.toml --features async-await-macro
- cargo check --manifest-path futures-util/Cargo.toml --features compat
- cargo check --manifest-path futures-util/Cargo.toml --features io-compat
- cargo check --manifest-path futures-util/Cargo.toml --features sink,compat
- cargo check --manifest-path futures-util/Cargo.toml --features sink,channel
- cargo check --manifest-path futures-util/Cargo.toml --features bilock,unstable
- cargo check --manifest-path futures-util/Cargo.toml --features sink,bilock,unstable
- cargo check --manifest-path futures-util/Cargo.toml --features io,bilock,unstable
- cargo check --manifest-path futures-util/Cargo.toml --features sink,io
- cargo check --manifest-path futures-util/Cargo.toml --features read_initializer,unstable
# Check each features with --no-default-features
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features sink
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features alloc,sink
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features async-await
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features bilock,unstable
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features sink,bilock,unstable
- cargo check --manifest-path futures-util/Cargo.toml --no-default-features --features io,bilock,unstable
# futures-executor
# Check default-features, all-features
- cargo check --manifest-path futures-executor/Cargo.toml
- cargo check --manifest-path futures-executor/Cargo.toml --all-features
# Check each features
- cargo check --manifest-path futures-executor/Cargo.toml --features threadpool
- name: cargo doc
rust: nightly
script:
- RUSTDOCFLAGS=-Dwarnings cargo doc --all --no-deps --all-features
script:
- cargo test --all --all-features
- cargo test --all --all-features --release
env:
global:
- RUSTFLAGS=-Dwarnings
notifications:
email:
on_success: never
You can’t perform that action at this time.