lamellar 0.8.0

Lamellar is an asynchronous tasking runtime for HPC systems developed in RUST.
name: Rust

on:
  push:
    branches: [ master, dev ]
  pull_request:
    branches: [ master, dev ]

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Update Rust
      run: rustup update stable
    - name: Build
      run: rustup -V && cargo build --verbose

  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Update Rust
        run: rustup update stable
      - name: Build
        run: rustup -V && cargo build --verbose
      - name: Run tests
        run: |
          cd impl
          cargo test --verbose

  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Install Cargo Audit
        uses: taiki-e/install-action@v2
        with:
          tool: cargo-audit

      - name: Run Cargo Audit
        run: cargo audit

  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Update Rust
        run: rustup update stable
      - name: impl clippy
        run: |
          cd impl
          cargo clippy --all-features --tests -- -D warnings