| language: rust |
| sudo: false |
| |
| # Since most OS-specific code has moved to the getrandom crate, we require |
| # few target-specific tests here. |
| |
| matrix: |
| include: |
| - rust: 1.32.0 |
| name: "Linux, 1.32.0" |
| env: ALLOC=0 |
| os: linux |
| |
| - rust: stable |
| name: "Linux, stable" |
| |
| - rust: stable |
| name: "OSX+iOS, stable" |
| os: osx |
| install: |
| - rustup target add aarch64-apple-ios |
| script: |
| - bash utils/ci/script.sh |
| - cargo build --target=aarch64-apple-ios |
| |
| - rust: beta |
| name: "Linux, beta" |
| |
| - rust: nightly |
| os: linux |
| name: "Linux, nightly, docs" |
| env: NIGHTLY=1 |
| install: |
| - cargo --list | egrep "^\s*deadlinks$" -q || cargo install cargo-deadlinks |
| - cargo deadlinks -V |
| before_script: |
| - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH |
| script: |
| - bash utils/ci/script.sh |
| # remove cached documentation, otherwise files from previous PRs can get included |
| - rm -rf target/doc |
| - cargo doc --no-deps --all --all-features |
| - cargo deadlinks --dir target/doc |
| after_success: |
| - travis-cargo --only nightly doc-upload |
| |
| # This target catches endianness issues |
| - rust: stable |
| sudo: required |
| dist: trusty |
| services: docker |
| name: "Linux (MIPS, big-endian)" |
| env: TARGET=mips-unknown-linux-gnu |
| install: |
| - sh utils/ci/install.sh |
| - source ~/.cargo/env || true |
| |
| # This target checks we really can build no_std binaries |
| - rust: nightly |
| name: "no_std platform test" |
| install: |
| - rustup target add thumbv6m-none-eabi |
| script: |
| # Test the top-level crate with all features: |
| - cargo build --target=thumbv6m-none-eabi --no-default-features |
| |
| - rust: nightly |
| name: "Linux, nightly (32-bit test)" |
| env: TARGET=i686-unknown-linux-musl |
| install: |
| - rustup target add $TARGET |
| |
| - rust: nightly |
| os: linux |
| name: "Miri, nightly" |
| script: |
| - sh utils/ci/miri.sh |
| |
| - rust: nightly |
| os: linux |
| name: "Minimal dep versions" |
| script: |
| - cargo generate-lockfile -Z minimal-versions |
| - bash utils/ci/script.sh |
| |
| before_install: |
| - set -e |
| - rustup self update |
| |
| script: |
| - bash utils/ci/script.sh |
| |
| after_script: set +e |
| |
| # Cache: this seems to do more harm than good |
| #cache: |
| #cargo: true |
| #directories: |
| #- .local/share/cargo-web |
| |
| #before_cache: |
| ## Travis can't cache files that are not readable by "others" |
| #- chmod -R a+r $HOME/.cargo |
| |
| env: |
| global: |
| secure: "BdDntVHSompN+Qxz5Rz45VI4ZqhD72r6aPl166FADlnkIwS6N6FLWdqs51O7G5CpoMXEDvyYrjmRMZe/GYLIG9cmqmn/wUrWPO+PauGiIuG/D2dmfuUNvSTRcIe7UQLXrfP3yyfZPgqsH6pSnNEVopquQKy3KjzqepgriOJtbyY=" |
| |
| notifications: |
| email: |
| on_success: never |