serde_bencode 0.2.4

A Serde backed Bencode encoding/decoding library for Rust.
Documentation
name: Coverage

on:
  push:
    branches:
      - main
  pull_request_target:
    branches:
      - main

env:
  CARGO_TERM_COLOR: always

jobs:
  report:
    name: Report
    environment: coverage
    runs-on: ubuntu-latest
    env:
      CARGO_INCREMENTAL: "0"
      RUSTFLAGS: "-Z profile -C codegen-units=1 -C inline-threshold=0 -C link-dead-code -C overflow-checks=off -C panic=abort -Z panic_abort_tests"
      RUSTDOCFLAGS: "-Z profile -C codegen-units=1 -C inline-threshold=0 -C link-dead-code -C overflow-checks=off -C panic=abort -Z panic_abort_tests"

    steps:
      - id: checkout_push
        if: github.event_name  == 'push'
        name: Checkout Repository (Push)
        uses: actions/checkout@v4

      - id: checkout_pull_request_target
        if: github.event_name  == 'pull_request_target'
        name: Checkout Repository (Pull Request Target)
        uses: actions/checkout@v4
        with:
          ref: "refs/pull/${{ github.event.pull_request.number }}/head"

      - id: setup
        name: Setup Toolchain
        uses: dtolnay/rust-toolchain@stable
        with:
          toolchain: nightly
          components: llvm-tools-preview

      - id: cache
        name: Enable Workflow Cache
        uses: Swatinem/rust-cache@v2

      - id: tools
        name: Install tools
        uses: taiki-e/install-action@v2
        with:
          tool: grcov,cargo-llvm-cov,nextest

      - id: print
        name: Print Coverage Report
        run: cargo llvm-cov nextest

      - id: report
        name: Generate Coverage Report
        uses: alekitto/grcov@v0.2

      - id: upload
        name: Upload Coverage Report
        uses: codecov/codecov-action@v3
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ${{ steps.coverage.outputs.report }}
          verbose: true
          fail_ci_if_error: true