Permalink
Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign up
Fetching contributors…
Cannot retrieve contributors at this time.
Cannot retrieve contributors at this time
| 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 |