rusty_crypt 0.2.0

Rust library allowing for a very quick and simple implementation of AES-GCM encryption
Documentation
name: Rust CI

on:
    push:
        branches:
            - main
            - dev

    pull_request:
        branches:
            - main
            - dev


concurrency:
    group: ${{ github.workflow }}-${{ github.ref }}
    cancel-in-progress: true


env:
    CARGO_TERM_COLOR: always


jobs:

    quality:
        name: Code quality
        runs-on: ubuntu-latest

        steps:

            - name: Checkout repository
              uses: actions/checkout@v4


            - name: Setup Rust
              uses: dtolnay/rust-toolchain@stable


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


            - name: Check formatting
              run: cargo fmt --all -- --check


            - name: Run Clippy
              run: cargo clippy --all-targets --all-features -- -D warnings


            - name: Check compilation
              run: cargo check --all-features


            - name: Build
              run: cargo build --verbose


            - name: Run tests
              run: cargo test --all-features --verbose


            - name: Build documentation
              run: cargo doc --no-deps --all-features



    security:

        name: Security audit

        runs-on: ubuntu-latest


        steps:

            - name: Checkout repository
              uses: actions/checkout@v4


            - name: Setup Rust
              uses: dtolnay/rust-toolchain@stable


            - name: Install cargo-audit
              run: cargo install cargo-audit


            - name: Run security audit
              run: cargo audit