language: rust

rust:
  - 1.13.0
  - 1.14.0
  - 1.15.0
  - beta
  - nightly

# Opt for a less ancient distribution with a C++11-compliant compiler, in order
# to compile libfuzzer.
dist: trusty
sudo: false

addons:
  apt:
    packages:
      - flac

cache:
  directories:
    # Cache the fuzzing corpus, so it does not have to discover the entire corpus
    # again every time, and it can focus on finding bugs instead.
    - fuzz_corpus

    # Cache the test samples to not put so much load on archive.org, but on
    # Travis' S3 buckets instead.
    - testsamples

before_script:
  - cd testsamples && ./populate.sh && cd ..

script:
  # Do not use the default --verbose commands, they are only noisy.
  - cargo build
  - cargo test

  # On the nightly configuration, fuzz for 15 minutes.
  - FUZZ_SECONDS=900 tools/fuzz_on_ci.sh

language: rust

rust:
  - 1.13.0
  - 1.14.0
  - 1.15.1
  - 1.16.0
  - beta
  - nightly

# Opt for a less ancient distribution with a C++11-compliant compiler, in order
# to compile libfuzzer.
dist: trusty
sudo: false

addons:
  apt:
    packages:
      - flac

cache:
  directories:
    # Cache the fuzzing corpus, so it does not have to discover the entire corpus
    # again every time, and it can focus on finding bugs instead.
    - fuzz_corpus

    # Cache the test samples to not put so much load on archive.org, but on
    # Travis' S3 buckets instead.
    - testsamples

before_script:
  - cd testsamples && ./populate.sh && cd ..

script:
  # Do not use the default --verbose commands, they are only noisy.
  - cargo build
  - cargo test

  # On the nightly configuration, fuzz for 15 minutes.
  - FUZZ_SECONDS=900 tools/fuzz_on_ci.sh

Test on Rust 1.16 stable
Test on Rust 1.16 stable
