delta-sharing 0.2.0

Delta Sharing client library
name: CI

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

env:
  CARGO_TERM_COLOR: always
  RUST_BACKTRACE: 1

jobs:
  pass:
    name: CI is OK
    runs-on: ubuntu-latest
    needs:
      - style
      - test
    steps:
      - run: exit 0

  style:
    name: Style check

    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Install rust
        uses: dtolnay/rust-toolchain@stable
        with:
          components: rustfmt

      - name: cargo fmt -- --check
        run: cargo fmt -- --check

  test:
    name: ${{ matrix.name }}
    needs: [style]

    runs-on: ${{ matrix.os || 'ubuntu-latest' }}

    strategy:
      matrix:
        name:
          - Build and run all tests
          # - macOS / stable
          # - feature / blocking

        include:
          - name: Build and run all tests
            features: "--features blocking"

          # - name: feature / blocking
          #   features: "--features blocking"

          # - name: macOS / stable
          #   os: macOS-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Install Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ matrix.rust || 'stable' }}
          targets: ${{ matrix.target }}

      - name: Build
        run: cargo build ${{ matrix.features }}

      - name: Test
        run: cargo test ${{ matrix.features }} -- --test-threads=1