kern 1.8.3

General library for Rust
Documentation
name: CI
on: push

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Cargo Cache
        uses: actions/cache@v4
        with:
          path: |
            ~/.cargo/registry
            ~/.cargo/git
            target
          key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}

      - name: Format
        run: cargo fmt --all --verbose -- --check

      - name: Lint all features
        run: cargo clippy --workspace --all-features --verbose -- -D warnings

      - name: Lint no features
        run: cargo clippy --workspace --no-default-features --verbose -- -D warnings

      - name: Test all features
        run: cargo test --workspace --all-features --verbose

      - name: Test no features
        run: cargo test --workspace --no-default-features --verbose

  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Cargo Cache
        uses: actions/cache@v4
        with:
          path: |
            ~/.cargo/registry
            ~/.cargo/git
            target
          key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}

      - name: Build all features
        run: cargo build --workspace --all-features --verbose

      - name: Build no features
        run: cargo build --workspace --no-default-features --verbose