| language: rust |
| |
| addons: |
| apt: |
| packages: |
| - libev-dev |
| - protobuf-compiler |
| - uthash-dev |
| |
| matrix: |
| include: |
| - rust: stable |
| before_install: |
| # Install and use the current stable release of Go |
| - gimme --list |
| - eval "$(gimme stable)" |
| - gimme --list |
| install: |
| - rustup component add clippy |
| script: |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose |
| - RUSTFLAGS="-D warnings" cargo test --verbose |
| - cargo clippy --examples -- -D warnings |
| - cargo doc --no-deps |
| - make -C examples |
| # http3_test |
| - RUSTFLAGS="-D warnings" cargo test --no-run --verbose --manifest-path tools/http3_test/Cargo.toml |
| - cargo clippy --manifest-path tools/http3_test/Cargo.toml -- -D warnings |
| # quic-trace-log |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose --manifest-path tools/quic-trace-log/Cargo.toml |
| - cargo clippy --manifest-path tools/quic-trace-log/Cargo.toml -- -D warnings |
| - rust: nightly |
| before_install: |
| # Install and use the current stable release of Go |
| - gimme --list |
| - eval "$(gimme stable)" |
| - gimme --list |
| install: |
| - rustup component add rustfmt |
| - cargo install cargo-fuzz |
| script: |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose |
| - RUSTFLAGS="-D warnings" cargo test --verbose |
| - cargo fmt -- --check |
| - cargo doc --no-deps |
| - make -C examples |
| # fuzzers |
| - RUSTFLAGS="-D warnings" cargo fuzz run packet_recv_client -- -runs=1 |
| - RUSTFLAGS="-D warnings" cargo fuzz run packet_recv_server -- -runs=1 |
| - RUSTFLAGS="-D warnings" cargo fuzz run qpack_decode -- -runs=1 |
| - cargo fmt --manifest-path fuzz/Cargo.toml -- --check |
| # http3_test |
| - RUSTFLAGS="-D warnings" cargo test --no-run --verbose --manifest-path tools/http3_test/Cargo.toml |
| - cargo fmt --manifest-path tools/http3_test/Cargo.toml -- --check |
| # quic-trace-log |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose --manifest-path tools/quic-trace-log/Cargo.toml |
| - cargo fmt --manifest-path tools/quic-trace-log/Cargo.toml -- --check |
| - rust: stable |
| os: osx |
| script: |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose |
| - RUSTFLAGS="-D warnings" cargo test --verbose |
| - rust: stable |
| os: osx |
| osx_image: xcode11.2 |
| install: |
| - rustup target add aarch64-apple-ios x86_64-apple-ios |
| - cargo install cargo-lipo |
| script: |
| - RUSTFLAGS="-D warnings" cargo lipo --release --verbose |
| - rust: stable |
| os: windows |
| before_install: |
| - choco install golang nasm |
| # Update $PATH |
| - export PATH="$(powershell -Command '("Process", "Machine" | % { [Environment]::GetEnvironmentVariable("PATH", $_) -Split ";" -Replace "\\$", "" } | Select -Unique | % { cygpath $_ }) -Join ":"')" |
| script: |
| - RUSTFLAGS="-D warnings" cargo build --release --verbose |
| - RUSTFLAGS="-D warnings" cargo test --verbose |
| |
| deploy: |
| provider: pages |
| fqdn: docs.quic.tech |
| local-dir: target/doc |
| skip-cleanup: true |
| github-token: $GITHUB_TOKEN |
| on: |
| branch: master |
| condition: $TRAVIS_RUST_VERSION = stable && $TRAVIS_OS_NAME = linux |