tokactor 2.1.0

A actor model framework wrapped around tokio
Documentation
on:
  push:
    branches:
      - master

name: Release

permissions:
  contents: read

jobs:
  release:
    environment: Publish
    name: Release
    runs-on: ubuntu-latest
    permissions:
      contents: write
      issues: write
      pull-requests: write
      id-token: write
    steps:
      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Setup Node.js
        uses: actions/setup-node@v3
        with:
          node-version: "lts/*"

      - name: Install Node Dependencies
        run: |
          npm install @semantic-release/commit-analyzer \
          @semantic-release/release-notes-generator \
          @semantic-release/changelog \
          @semantic-release/github \
          @semantic-release/git \
          @semantic-release/exec

      - uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true

      - name: "Install cargo-llvm-cov"
        uses: taiki-e/install-action@cargo-llvm-cov

      - name: Generate line code coverage
        run: cargo llvm-cov test --ignore-filename-regex "src/single/tuple.rs" --html

      - name: Generate summery code coverage
        run: cargo llvm-cov report --summary-only --ignore-filename-regex "src/single/tuple.rs" --json --output-path lcov.info

      - name: Install Toml Edit
        run: cargo install toml-cli

      - name: Release Build
        run: cargo build --release

      - name: Create Release
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN  }}
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
        run: npx semantic-release
# TODO(Alec): Upload test results to the release
#             Then we can download them in our PR's to compare master
# on:
#   pull_request:
#     types:
#       - closed

# jobs:
#   if_merged:
#     if: github.event.pull_request.merged == true
#     runs-on: ubuntu-latest
#     steps:
#       - name: Download PR summery test artifact
#         uses: actions/download-artifact@v3
#         with:
#           name: ${{ github.event.number }}-test-summery
#           path: new-master-lcov.info

#       - name: Upload PR summery test artifact as master
#         uses: actions/upload-artifact@v3
#         with:
#           name: master-test-summery
#           path: new-master-lcov.info