108 lines
3.3 KiB
YAML
108 lines
3.3 KiB
YAML
language: rust
|
|
|
|
matrix:
|
|
include:
|
|
- rust: stable
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build --features rc
|
|
- cargo build --no-default-features
|
|
- cd "${TRAVIS_BUILD_DIR}/serde_test"
|
|
- cargo build
|
|
- cargo test --features serde/derive,serde/rc
|
|
|
|
- rust: beta
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build --features rc
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite"
|
|
- cargo test
|
|
|
|
- rust: nightly
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build
|
|
- cargo build --no-default-features
|
|
- cargo build --no-default-features --features alloc
|
|
- cargo build --no-default-features --features rc,alloc
|
|
- cargo test --features derive,rc,unstable
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite"
|
|
- cargo test --features unstable
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite/no_std"
|
|
- cargo build
|
|
|
|
- rust: 1.13.0
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build --features rc
|
|
- cargo build --no-default-features
|
|
- cd "${TRAVIS_BUILD_DIR}/serde_test"
|
|
- cargo build
|
|
|
|
- rust: 1.15.0
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde_derive"
|
|
- cargo build
|
|
|
|
- rust: 1.19.0
|
|
- rust: 1.20.0
|
|
- rust: 1.21.0
|
|
- rust: 1.25.0
|
|
- rust: 1.26.0
|
|
|
|
# Work around failing to parse manifest because editions are unstable.
|
|
- rust: 1.27.0
|
|
before_script: sed -i /test_suite/d Cargo.toml
|
|
- rust: 1.28.0
|
|
before_script: sed -i /test_suite/d Cargo.toml
|
|
|
|
- rust: 1.34.0
|
|
|
|
- rust: 1.36.0
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build --no-default-features --features alloc
|
|
|
|
- rust: nightly
|
|
name: Clippy
|
|
script:
|
|
- rustup component add clippy || travis_terminate 0
|
|
- cargo clippy -- -D clippy::all
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo clippy --features rc,unstable -- -D clippy::all
|
|
- cd "${TRAVIS_BUILD_DIR}/serde_derive"
|
|
- cargo clippy -- -D clippy::all
|
|
- cd "${TRAVIS_BUILD_DIR}/serde_test"
|
|
- cargo clippy -- -D clippy::all
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite"
|
|
- cargo clippy --tests --features unstable -- -D clippy::all
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite/no_std"
|
|
- cargo clippy -- -D clippy::all
|
|
|
|
- rust: nightly
|
|
name: Emscripten
|
|
script:
|
|
- CARGO_WEB_RELEASE=$(curl -L -s -H Accept:application/json https://github.com/koute/cargo-web/releases/latest)
|
|
- CARGO_WEB_VERSION=$(echo "${CARGO_WEB_RELEASE}" | jq -r .tag_name)
|
|
- CARGO_WEB_URL="https://github.com/koute/cargo-web/releases/download/${CARGO_WEB_VERSION}/cargo-web-x86_64-unknown-linux-gnu.gz"
|
|
|
|
- nvm install 9
|
|
- mkdir -p ~/.cargo/bin
|
|
- curl -L "${CARGO_WEB_URL}" | gzip -d > ~/.cargo/bin/cargo-web
|
|
- chmod +x ~/.cargo/bin/cargo-web
|
|
|
|
- cd "${TRAVIS_BUILD_DIR}/test_suite"
|
|
- cargo web test --target=asmjs-unknown-emscripten --nodejs
|
|
- cargo web test --target=wasm32-unknown-emscripten --nodejs
|
|
|
|
allow_failures:
|
|
- rust: nightly
|
|
name: Clippy
|
|
- rust: nightly
|
|
name: Emscripten
|
|
|
|
script:
|
|
- cd "${TRAVIS_BUILD_DIR}/serde"
|
|
- cargo build --no-default-features
|
|
- cargo build
|