async-compression 0.3.12

Adaptors between compression crates and Rust's modern asynchronous IO types.
Documentation
name: exhaustive

env:
  RUST_BACKTRACE: 1

jobs:
  test:
    name: cargo test
    strategy:
      matrix:
        platform:
        - { toolchain: stable, target: i686-pc-windows-msvc, os: windows-latest }
        - { toolchain: stable, target: i686-unknown-linux-gnu, os: ubuntu-latest }
        - { toolchain: stable, target: x86_64-apple-darwin, os: macos-latest }
        - { toolchain: stable, target: x86_64-pc-windows-msvc, os: windows-latest }
        - { toolchain: stable, target: x86_64-unknown-linux-gnu, os: ubuntu-latest }
    runs-on: ${{ matrix.platform.os }}
    steps:
    - uses: actions/checkout@v2
    - uses: hecrj/setup-rust-action@v1
      with:
        rust-version: ${{ matrix.platform.toolchain }}
        targets: ${{ matrix.platform.target }}
    - uses: actions-rs/cargo@v1
      with:
        toolchain: ${{ matrix.platform.toolchain }}
        command: test
        args: --all --locked --all-features

  min-versions:
    name: cargo test --shallow-minimal-versions
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: hecrj/setup-rust-action@v1
      with:
        rust-version: nightly
    - name: Update to shallow minimal versions
      run:
        cargo update $(
          cargo metadata --all-features --format-version 1
            | jq -r '
              . as $root
              | .resolve.nodes[]
              | select(.id == $root.resolve.root)
              | .deps[].pkg
              | . as $dep
              | $root.packages[]
              | select(.id == $dep)
              | "-p", "\(.name):\(.version)"
            '
        ) -Z minimal-versions
    - uses: hecrj/setup-rust-action@v1
      with:
        rust-version: stable
    - uses: actions-rs/cargo@v1
      with:
        command: test
        args: --workspace --locked --all-features

  check-features:
    name: cargo hack check --feature-powerset
    runs-on: ubuntu-latest
    env:
      RUSTFLAGS: -Dwarnings
    steps:
    - uses: actions/checkout@v2
    - uses: hecrj/setup-rust-action@v1
    - uses: actions-rs/cargo@v1
      with:
        command: install
        args: cargo-hack
    - uses: actions-rs/cargo@v1
      with:
        command: hack
        args: check
          --workspace
          --feature-powerset
          --no-dev-deps
          --skip 'all,all-algorithms,all-implementations,futures-bufread,futures-write'

  check-test-features:
    name: cargo hack check --all-targets --feature-powerset
    runs-on: ubuntu-latest
    env:
      RUSTFLAGS: -Dwarnings
    steps:
    - uses: actions/checkout@v2
    - uses: hecrj/setup-rust-action@v1
    - uses: actions-rs/cargo@v1
      with:
        command: install
        args: cargo-hack
    - uses: actions-rs/cargo@v1
      with:
        command: hack
        args: check
          --workspace
          --feature-powerset
          --all-targets
          --skip 'all,all-algorithms,all-implementations,futures-bufread,futures-write'

on:
  push:
    branches: [staging, trying]