mutatis 0.5.0

`mutatis` is a library for writing custom, structure-aware test-case mutators for fuzzers in Rust.
Documentation
name: Rust

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

env:
  CARGO_TERM_COLOR: always

jobs:
  rustfmt:
    name: Rustfmt
    runs-on: ubuntu-latest
    steps:
    - name: Install `rustup`
      run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal
    - name: Install the latest stable Rust
      run: rustup toolchain install stable --component rustfmt && rustup default stable
    - uses: actions/checkout@v4
    - run: cargo fmt --all -- --check

  doc:
    runs-on: ubuntu-latest
    steps:
    - name: Install `rustup`
      run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal
    - name: Install the latest stable Rust
      run: rustup toolchain install stable && rustup default stable
    - uses: actions/checkout@v4
    - run: cargo doc --no-deps --all-features

  test:
    strategy:
      matrix:
        rust: ["stable", "beta", "nightly", "1.91.0"]
    runs-on: ubuntu-latest
    steps:
    - name: Install `rustup`
      run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal
    - name: Install Rust channel
      run: rustup toolchain install ${{matrix.rust}} && rustup default ${{matrix.rust}}
    - uses: actions/checkout@v4
    - run: cargo test --verbose
    - run: cargo test --verbose --features alloc
    - run: cargo test --verbose --features std
    - run: cargo test --verbose --features check
    - run: cargo test --verbose --features derive
    - run: cargo test --verbose --all-features

  miri:
    runs-on: ubuntu-latest
    env:
      MIRIFLAGS: "-Zmiri-strict-provenance"
    steps:
    - name: Install `rustup`
      run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain nightly -y
    - name: Install MIRI
      run: rustup toolchain install nightly --allow-downgrade --profile minimal --component miri
    - uses: actions/checkout@v4
    - run: cargo +nightly miri test --all-features