DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (409f3966645a)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
language: rust

# Using 16MB stacks for deep test/debug recursion
env:
  global:
    - RUST_MIN_STACK=16777216

matrix:
  fast_finish: true
  include:
    # NB: To help with CI delays, each `pull_request` is only tested on Linux,
    # with 1.13 for compatibility and nightly+rayon_unstable for broad test
    # coverage.  The bors bot counts as a `push` type, which will run it all.

    - rust: 1.13.0
      os: linux
      #if: everything!
      before_script:
        # rand 0.4.2 requires rust 1.15, and rand-0.3.22 requires rand-0.4  :/
        # manually hacking the lockfile due to the limitations of cargo#2773
        - cargo generate-lockfile
        - sed -i -e 's/"rand 0.[34].[0-9]\+/"rand 0.3.20/' Cargo.lock
        - sed -i -e '/^name = "rand"/,/^$/s/version = "0.3.[0-9]\+"/version = "0.3.20"/' Cargo.lock

    - rust: stable
      os: linux
      if: NOT type = pull_request
    - rust: stable
      os: linux
      env: RUSTFLAGS='--cfg rayon_unstable'
      if: NOT type = pull_request

    - rust: beta
      os: linux
      if: NOT type = pull_request
    - rust: beta
      os: linux
      env: RUSTFLAGS='--cfg rayon_unstable'
      if: NOT type = pull_request

    - rust: nightly
      os: linux
      if: NOT type = pull_request
    - rust: nightly
      os: linux
      env: RUSTFLAGS='--cfg rayon_unstable'
      #if: everything!

    - rust: stable
      os: osx
      if: NOT type = pull_request
    - rust: stable
      os: osx
      env: RUSTFLAGS='--cfg rayon_unstable'
      if: NOT type = pull_request

    - rust: nightly
      os: osx
      if: NOT type = pull_request
    - rust: nightly
      os: osx
      env: RUSTFLAGS='--cfg rayon_unstable'
      if: NOT type = pull_request

    # wasm won't actually work without threading, but it builds
    - rust: nightly
      os: linux
      env: TARGET=wasm32-unknown-unknown
      script:
        - rustup target add $TARGET
        - cargo build --target $TARGET
      if: NOT type = pull_request


script:
  - cargo build
  - |
    if [ $TRAVIS_RUST_VERSION == nightly ]; then
      cargo test -p rayon &&
      cargo test -p rayon-core &&
      cargo test -p rayon-demo &&
      ./ci/highlander.sh
    fi
  - |
    if [ -n "$RUSTFLAGS" ]; then
      cargo clean &&
      cargo build -p rayon-futures &&
      if [ $TRAVIS_RUST_VERSION == nightly ]; then
        cargo test -p rayon-futures
      fi
    fi

branches:
  only:
    - master
    - staging
    - trying