cacache 13.1.0

Content-addressable, key-value, high-performance, on-disk cache.
Documentation
name: CI

on: [push, pull_request]

env:
  RUSTFLAGS: -Dwarnings

jobs:
  fmt_and_docs:
    name: Check fmt & build docs
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          components: rustfmt
          override: true
      - name: rustfmt
        run: cargo fmt --all -- --check
      - name: docs
        run: cargo doc

  build_and_test:
    name: Build & Test
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        rust: [1.70.0, stable]
        os: [ubuntu-latest, macOS-latest, windows-latest]

    steps:
      - uses: actions/checkout@v1
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: ${{ matrix.rust }}
          components: clippy
          override: true
      - name: Clippy
        run: cargo clippy -- -D warnings
      - name: Check (async-std)
        run: cargo check --features link_to
      - name: Run tests (async-std)
        run: cargo test --verbose  --features link_to
      - name: Check (Tokio)
        run: cargo check --no-default-features --features tokio-runtime,link_to
      - name: Run unit tests (Tokio)
        run: cargo test --verbose --no-default-features --features tokio-runtime,link_to --lib