codecov-cache 0.2.1

Codecov API caching
Documentation
name: publish crates

on:
  pull_request:
    types: [opened, synchronize, reopened]
  release:
    # "released" events are emitted either when directly be released or be edited from pre-released.
    types: [prereleased, released]

jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2
      - run: cargo build --release --all-features

      - name: publish (dry-run)
        if: github.event_name == 'release' && github.event.release.prerelease
        run: cargo publish --dry-run --allow-dirty
        env:
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}

      - name: publish
        if: github.event_name == 'release' && !github.event.release.prerelease
        run: cargo publish --allow-dirty
        env:
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}