typed-arrow 0.7.0

Compile-time Arrow schemas for Rust.
Documentation
name: cargo

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

env:
  CARGO_TERM_COLOR: always

jobs:
  fmt:
    name: +nightly fmt
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install latest nightly
        uses: actions-rs/toolchain@v1
        with:
          toolchain: nightly
          override: true
          components: rustfmt, clippy

      - name: Run cargo fmt
        uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: -- --check

  build:
    name: clippy && test
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Rust Cache
        uses: Swatinem/rust-cache@v2
        with:
          key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.toml') }}
          cache-on-failure: false

      - name: Run cargo clippy
        uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: --workspace -- -D warnings

      - name: Run cargo test
        run: cargo test --verbose --workspace