salty 0.3.0

Small, sweet, swift Ed25519 signatures for microcontrollers
Documentation
# Note: to work on CI, use https://github.com/nektos/act 👍

name: CI

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

env:
  # need atomic CAS, so Cortex-M0/1 are out
  QEMU_TARGET: thumbv7m-none-eabi

jobs:
  test:
    # want QEMU >=4
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
        with:
          submodules: true
      - uses: RustCrypto/actions/cargo-cache@master
      - uses: dtolnay/rust-toolchain@stable
        with:
          targets: thumbv7em-none-eabi,thumbv7em-none-eabihf,thumbv8m.main-none-eabi
      - uses: carlosperate/arm-none-eabi-gcc-action@v1

      - name: Install build dependencies
        shell: bash
        run: |
          sudo apt-get update -y -qq >/dev/null
          sudo apt-get install -y -qq llvm libc6-dev-i386 libclang-dev make time qemu-system-arm >/dev/null
          cc --version
          qemu-system-arm --version
          arm-none-eabi-gcc --version

      - name: Check that all crates check without warning
        run: make check

      - name: Check formatting + lints
        run: make lint

      - name: Build PC
        run: cargo build --release
        shell: bash

      - name: Build Cortex-M4 (soft)
        run: cargo build --release --target thumbv7em-none-eabi
        shell: bash

      - name: Run all of the tests, including QEMU tests
        run: make test
        shell: bash