edge-net 0.14.0

no_std and no-alloc async implementations of various network protocols.
Documentation
name: CI

on:
  push:
    branches:
      - master
  pull_request:
  schedule:
    - cron: '50 4 * * *'
  workflow_dispatch:

jobs:
  compile:
    name: Compile / Rust ${{ matrix.rust_toolchain }}
    runs-on: ubuntu-latest

    strategy:
      matrix:
        rust_toolchain:
          - nightly
          - 1.88

    steps:
      - name: Setup | Checkout
        uses: actions/checkout@v4
      - name: Setup | Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ matrix.rust_toolchain }}
          components: rustfmt, clippy, rust-src
      - name: Build | Fmt Check
        run: cargo fmt -- --check
      - name: Build | Clippy
        run: cargo clippy --features std --examples --no-deps -- -Dwarnings
      - name: Build | Clippy - defmt
        run: cargo clippy --features std,defmt --no-deps -- -Dwarnings
      - name: Build | Clippy - log
        run: cargo clippy --features std,log --examples --no-deps -- -Dwarnings
      - name: Build | Default
        run: cargo build --features log
      - name: Build | Non-default
        run: cargo build --no-default-features
      - name: Build | Examples
        run: cargo build --examples --features log
      - name: Build | Examples - defmt
        run: export DEFMT_LOG=trace; cargo check --examples --features std,defmt

  embassy:
    name: Embassy / Requires Rust 1.91
    runs-on: ubuntu-latest

    steps:
      - name: Setup | Checkout
        uses: actions/checkout@v4
      - name: Setup | Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: 1.91
          components: rustfmt, clippy, rust-src
      - name: Build | Clippy
        run: cargo clippy --features std,edge-nal-embassy/all --examples --no-deps -- -Dwarnings
      - name: Build | Clippy - defmt
        run: cargo clippy --features std,edge-nal-embassy/all,defmt --no-deps -- -Dwarnings
      - name: Build | Clippy - log
        run: cargo clippy --features std,edge-nal-embassy/all,log --examples --no-deps -- -Dwarnings
      - name: Build | Embassy
        run: cargo build --no-default-features --features embassy,defmt
      - name: Test | edge-nal-embassy
        run: cargo test -p edge-nal-embassy --all-features