veil 0.3.0

Rust derive macro for redacting sensitive data in `std::fmt::Debug`
Documentation
name: CI

on: [push, pull_request]

env:
  CARGO_TERM_COLOR: always

jobs:
  lint:
    # Avoid duplicate jobs on PR from a branch on the same repo
    if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # ratchet:Swatinem/rust-cache@v2
      - name: Build
        run: cargo build --workspace --all-features
      - name: cargo fmt
        run: cargo fmt --all -- --check
      - name: Clippy
        run: cargo clippy --workspace --all-features -- -D warnings
      - name: Build docs
        run: cargo doc --document-private-items --workspace --all-features --no-deps
    env:
      RUSTDOCFLAGS: -Dwarnings
  test:
    # Avoid duplicate jobs on PR from a branch on the same repo
    if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # ratchet:Swatinem/rust-cache@v2
      - name: Run tests for no features
        run: cargo test --all
      - name: Run tests with toggle feature
        run: cargo test --all --features toggle

  alls-green:
    if: always() && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name)
    runs-on: ubuntu-latest
    needs:
      - lint
      - test
    steps:
      - run: ${{ !contains(needs.*.result, 'failure') }}