diff --git a/.travis.yml b/.travis.yml index 6403cfe1..de5fb5a2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,35 +1,88 @@ -language: rust -# We use OSX so that we can get a reasonably up to date version of SQLCipher. -# (The version in Travis's default Ubuntu Trusty is much too old). -os: osx -before_install: - - brew install sqlcipher --with-fts -rust: - - 1.25.0 # Must align with `build/version.rs`. - - stable - - beta - - nightly matrix: + fast_finish: true allow_failures: - rust: nightly - fast_finish: true -script: - - cargo test --verbose --all - - cargo test --features edn/serde_support --verbose --all - # We can't pick individual features out with `cargo test --all` (At the time of this writing, this - # works but does the wrong thing because of a bug in cargo, but its fix will be to disallow doing - # this all-together, see https://github.com/rust-lang/cargo/issues/5364 for more information). To - # work around this, we run individual tests for each subcrate individually. - - | - for manifest in $(find . -type f -name Cargo.toml); do - cargo test --manifest-path $manifest --verbose --no-default-features --features sqlcipher - done -after_success: - - | - if [[ "$TRAVIS_PULL_REQUEST" = "false" && "$TRAVIS_BRANCH" == "master" ]]; then - cargo doc && - echo "" > target/doc/index.html && - git clone https://github.com/davisp/ghp-import.git && - ./ghp-import/ghp_import.py -n -p -f -r https://"$GH_TOKEN"@github.com/"$TRAVIS_REPO_SLUG.git" target/doc - fi -cache: cargo + include: + - language: rust + # We use OSX so that we can get a reasonably up to date version of SQLCipher. + # (The version in Travis's default Ubuntu Trusty is much too old). + os: osx + before_install: + - brew install sqlcipher --with-fts + rust: 1.25.0 # Must align with `build/version.rs`. + script: + - cargo test --verbose --all + - cargo test --features edn/serde_support --verbose --all + # We can't pick individual features out with `cargo test --all` (At the time of this writing, this + # works but does the wrong thing because of a bug in cargo, but its fix will be to disallow doing + # this all-together, see https://github.com/rust-lang/cargo/issues/5364 for more information). To + # work around this, we run individual tests for each subcrate individually. + - | + for manifest in $(find . -type f -name Cargo.toml); do + cargo test --manifest-path $manifest --verbose --no-default-features --features sqlcipher + done + after_success: + - | + if [[ "$TRAVIS_PULL_REQUEST" = "false" && "$TRAVIS_BRANCH" == "master" ]]; then + cargo doc && + echo "" > target/doc/index.html && + git clone https://github.com/davisp/ghp-import.git && + ./ghp-import/ghp_import.py -n -p -f -r https://"$GH_TOKEN"@github.com/"$TRAVIS_REPO_SLUG.git" target/doc + fi + cache: cargo + - language: rust + # We use OSX so that we can get a reasonably up to date version of SQLCipher. + # (The version in Travis's default Ubuntu Trusty is much too old). + os: osx + before_install: + - brew install sqlcipher --with-fts + rust: stable + script: + - cargo test --verbose --all + - cargo test --features edn/serde_support --verbose --all + # We can't pick individual features out with `cargo test --all` (At the time of this writing, this + # works but does the wrong thing because of a bug in cargo, but its fix will be to disallow doing + # this all-together, see https://github.com/rust-lang/cargo/issues/5364 for more information). To + # work around this, we run individual tests for each subcrate individually. + - | + for manifest in $(find . -type f -name Cargo.toml); do + cargo test --manifest-path $manifest --verbose --no-default-features --features sqlcipher + done + cache: cargo + - language: rust + # We use OSX so that we can get a reasonably up to date version of SQLCipher. + # (The version in Travis's default Ubuntu Trusty is much too old). + os: osx + before_install: + - brew install sqlcipher --with-fts + rust: beta + script: + - cargo test --verbose --all + # We can't pick individual features out with `cargo test --all` (At the time of this writing, this + # works but does the wrong thing because of a bug in cargo, but its fix will be to disallow doing + # this all-together, see https://github.com/rust-lang/cargo/issues/5364 for more information). To + # work around this, we run individual tests for each subcrate individually. + - | + for manifest in $(find . -type f -name Cargo.toml); do + cargo test --manifest-path $manifest --verbose --no-default-features --features sqlcipher + done + cache: cargo + - language: rust + # We use OSX so that we can get a reasonably up to date version of SQLCipher. + # (The version in Travis's default Ubuntu Trusty is much too old). + os: osx + before_install: + - brew install sqlcipher --with-fts + rust: nightly + script: + - cargo test --verbose --all + - cargo test --features edn/serde_support --verbose --all + # We can't pick individual features out with `cargo test --all` (At the time of this writing, this + # works but does the wrong thing because of a bug in cargo, but its fix will be to disallow doing + # this all-together, see https://github.com/rust-lang/cargo/issues/5364 for more information). To + # work around this, we run individual tests for each subcrate individually. + - | + for manifest in $(find . -type f -name Cargo.toml); do + cargo test --manifest-path $manifest --verbose --no-default-features --features sqlcipher + done + cache: cargo