language: rust

rust:
  - stable
  - nightly

os:
  - linux
  - windows
  - osx

git:
  depth: 1
  quiet: true

matrix:
  allow_failures:
    - rust: nightly

before_script:
  - export PATH=$PATH:/home/travis/.cargo/bin
  - rustup component add rustfmt

script:
  - cargo fmt --version
  - rustup --version
  - rustc --version
  - if [ "$TRAVIS_RUST_VERSION" = "stable" ]; then cargo fmt --all -- --check; fi
  - cargo build
  - cargo test --all-features -- --nocapture --test-threads 1
