nom 2.1.0

A byte-oriented, zero-copy, parser combinators library
Documentation
language: rust

addons:
  apt:
    packages:
      - libcurl4-openssl-dev
      - libelf-dev
      - libdw-dev

rust:
  - nightly
  - beta
  - stable
  - 1.2.0

env:
  - FEATURES="--features \"regexp regexp_macros\""
  - FEATURES="--features \"stream regexp regexp_macros\""
  - FEATURES="--features \"stream regexp regexp_macros\" --no-default-features"

before_script:
  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH

script:
  - travis-cargo --only 1.2     test  -- --features regexp
  - travis-cargo --only nightly build -- --features "nightly core regexp"
  - travis-cargo --only stable  test  -- $FEATURES
  - travis-cargo --only beta    test  -- $FEATURES
  - travis-cargo --only nightly test  -- $FEATURES
  - travis-cargo bench
  - travis-cargo --only stable doc -- --features "stream regexp regexp_macros" --no-default-features

after_success:
  - travis-cargo bench
  - travis-cargo coveralls --no-sudo
  - ./kcov/build/src/kcov --verify --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/nom-*
  - ./kcov/build/src/kcov --verify --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/arithmetic*
  - ./kcov/build/src/kcov --verify --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/ini*
  - ./kcov/build/src/kcov --verify --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/mp4*
  - ./kcov/build/src/kcov --verify --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/json*
  - if [ "$TRAVIS_RUST_VERSION" == "nightly" ]; then
      cargo bench;
    fi
  - if [ "${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH}" != "master" ] && [ "$TRAVIS_RUST_VERSION" == "nightly" ]; then
        cargo install cargo-benchcmp --force;
        cargo bench > benches-variable;
        git fetch;
        git checkout master;
        cargo bench > benches-control;
        cargo benchcmp benches-control benches-variable;
    fi


notifications:
  webhooks:
    urls:
      - https://webhooks.gitter.im/e/9c035a194ac4fd4cc061
    on_success: change
    on_failure: always
    on_start: false


env:
  global:
    # override the default `--features unstable` used for the nightly branch (optional)
    - TRAVIS_CARGO_NIGHTLY_FEATURE=nightly

sudo: false