async-std 0.99.7

Async version of the Rust standard library
Documentation
language: rust

env:
  - RUSTFLAGS="-D warnings"

# Cache the whole `~/.cargo` directory to keep `~/cargo/.crates.toml`.
cache:
  directories:
    - /home/travis/.cargo

# Don't cache the cargo registry because it's too big.
before_cache:
  - rm -rf /home/travis/.cargo/registry


branches:
  only:
    - master
    - staging
    - trying

matrix:
  fast_finish: true
  include:
    - rust: nightly
      os: linux

    - rust: nightly
      os: osx
      osx_image: xcode9.2

    - rust: nightly-x86_64-pc-windows-msvc
      os: windows

    - name: fmt
      rust: nightly
      os: linux
      before_script: |
        if ! rustup component add rustfmt; then
          target=`curl https://rust-lang.github.io/rustup-components-history/x86_64-unknown-linux-gnu/rustfmt`;
          echo "'rustfmt' is unavailable on the toolchain 'nightly', use the toolchain 'nightly-$target' instead";
          rustup toolchain install nightly-$target;
          rustup default nightly-$target;
          rustup component add rustfmt;
        fi
      script:
        - cargo fmt --all -- --check

    - name: docs
      rust: nightly
      os: linux
      script:
        - cargo doc --features docs unstable

    - name: book
      rust: nightly
      os: linux
      before_script:
        - test -x $HOME/.cargo/bin/mdbook || ./ci/install-mdbook.sh
        - cargo build # to find 'extern crate async_std' by `mdbook test`
      script:
        - mdbook build docs
        - mdbook test -L ./target/debug/deps docs

script:
  - cargo check --all --benches --bins --examples --tests
  - cargo check --features unstable --all --benches --bins --examples --tests
  - cargo test --all --doc --features unstable