name: ci on: pull_request: push: branches: - master schedule: - cron: '00 01 * * *' jobs: test: name: test runs-on: ${{ matrix.os }} strategy: matrix: build: - pinned - stable - beta - nightly - win-gnu - linux - macos include: - build: pinned os: windows-2019 rust: 1.34.0 - build: stable os: windows-2019 rust: stable - build: beta os: windows-2019 rust: beta - build: nightly os: ubuntu-18.04 rust: nightly - build: win-gnu os: windows-2019 rust: stable-x86_64-gnu - build: linux os: ubuntu-18.04 rust: stable - build: macos os: macos-latest rust: stable steps: - name: Checkout repository uses: actions/checkout@v2 with: fetch-depth: 1 - name: Install Rust uses: hecrj/setup-rust-action@v1 with: rust-version: ${{ matrix.rust }} - run: cargo build --verbose - run: cargo doc --verbose - run: cargo test --verbose rustfmt: name: rustfmt runs-on: ubuntu-18.04 steps: - name: Checkout repository uses: actions/checkout@v2 with: fetch-depth: 1 - name: Install Rust uses: hecrj/setup-rust-action@v1 with: rust-version: stable - name: Install rustfmt run: rustup component add rustfmt - name: Check formatting run: | cargo fmt --all -- --check