tailcall-valid 0.1.4

A Rust library for validating multiple inputs, collecting all possible errors instead of failing at the first error. Useful for scenarios where comprehensive feedback is required for user inputs or configuration settings.
Documentation
# -------------------------------------------------------------------
# ------------------------------- WARNING ---------------------------
# -------------------------------------------------------------------
#
# This file was automatically generated by gh-workflows using the
# gh-workflow-gen bin. You should add and commit this file to your
# git repository. **DO NOT EDIT THIS FILE BY HAND!** Any manual changes
# will be lost if the file is regenerated.
#
# To make modifications, update your `build.rs` configuration to adjust
# the workflow description as needed, then regenerate this file to apply
# those changes.
#
# -------------------------------------------------------------------
# ----------------------------- END WARNING -------------------------
# -------------------------------------------------------------------

name: Build and Test
env:
  RUSTFLAGS: -Dwarnings
on:
  pull_request:
    types:
    - opened
    - synchronize
    - reopened
    branches:
    - main
  push:
    branches:
    - main
jobs:
  build:
    name: Build and Test
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
    - name: Checkout Code
      uses: actions/checkout@v4
    - name: Setup Rust Toolchain
      uses: actions-rust-lang/setup-rust-toolchain@v1
      with:
        toolchain: stable
    - name: Cargo Test
      run: cargo test --all-features --workspace
  lint:
    name: Lint
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
    - name: Checkout Code
      uses: actions/checkout@v4
    - name: Setup Rust Toolchain
      uses: actions-rust-lang/setup-rust-toolchain@v1
      with:
        toolchain: nightly
        components: clippy, rustfmt
    - name: Cargo Fmt
      run: cargo +nightly fmt --all --check
    - name: Cargo Clippy
      run: cargo +nightly clippy --all-features --workspace -- -D warnings
  release:
    needs:
    - build
    - lint
    if: ${{ github.ref == 'refs/heads/main' && github.event_name == 'push' }}
    name: Release
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      packages: write
    env:
      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
    steps:
    - name: Checkout Code
      uses: actions/checkout@v4
    - name: Release Plz
      uses: release-plz/action@v0.5
      with:
        command: release
    concurrency:
      group: release-${{github.ref}}
      cancel-in-progress: false
  release-pr:
    needs:
    - build
    - lint
    if: ${{ github.ref == 'refs/heads/main' && github.event_name == 'push' }}
    name: Release Pr
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      packages: write
    env:
      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
    steps:
    - name: Checkout Code
      uses: actions/checkout@v4
    - name: Release Plz
      uses: release-plz/action@v0.5
      with:
        command: release-pr
    concurrency:
      group: release-${{github.ref}}
      cancel-in-progress: false