jwtk 0.5.0

JWT signing (JWS) and verification, with first class JWK and JWK Set (JWKS) support.
Documentation
name: CI

on:
  - push
  - pull_request

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        features:
          - ""
          - "aws-lc"
          - "openssl"
          - "aws-lc,openssl"
          - "aws-lc,remote-jwks"
          - "openssl,remote-jwks"
          - "aws-lc,openssl,remote-jwks"
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@stable
      with:
        toolchain: 1.85.0
        components: rustfmt, clippy

    - name: cargo test (features=${{ matrix.features || 'none' }})
      env:
        RUSTFLAGS: -D warnings
      run: cargo test --no-default-features --features "${{ matrix.features }}"

    - name: cargo clippy (features=${{ matrix.features || 'none' }})
      run: cargo clippy --no-default-features --features "${{ matrix.features }}" -- -D clippy::all

  fmt:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@stable
      with:
        toolchain: 1.85.0
        components: rustfmt
    - name: cargo fmt
      run: cargo fmt -- --check

  bench:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
    - name: cargo test --benches (openssl)
      run: cargo +nightly test --no-default-features --features openssl --benches