eventsourcingdb 2.0.4

A client library for the EventsourcingDB by the native web.
Documentation
name: Release

on:
  push:
    branches:
      - "main"

permissions:
  contents: write

jobs:
  release:
    name: Release
    runs-on: ubuntu-latest
    timeout-minutes: 15

    steps:
      - name: Clone repository
        uses: actions/checkout@v7.0.1
        with:
          fetch-depth: "0"
          token: ${{ secrets.TOKEN_GITHUB_TO_GITHUB_REPOSITORIES_RW }}
      - name: Run QA
        run: make qa
      - name: Get next version
        id: get_next_version
        uses: thenativeweb/get-next-version@2.7.4
      - name: Create new version
        if: ${{ steps.get_next_version.outputs.hasNextVersion == 'true' }}
        run: |
          cargo install cargo-edit
          cargo set-version ${{ steps.get_next_version.outputs.version }}
          git config --global user.email "hello@thenativeweb.io"
          git config --global user.name "${{ github.actor }}"
          git add .
          git commit -m 'chore: Bump version to ${{ steps.get_next_version.outputs.version }}. [skip ci]'
          git push
          git tag v${{steps.get_next_version.outputs.version}}
          git push origin v${{steps.get_next_version.outputs.version}}
      - name: Build artifacts
        if: ${{ steps.get_next_version.outputs.hasNextVersion == 'true' }}
        run: |
          cargo build
      - name: Publish new version
        if: ${{ steps.get_next_version.outputs.hasNextVersion == 'true' }}
        run: |
          echo "${{ secrets.TOKEN_GITHUB_TO_CRATES_RW }}" | cargo login
          cargo package
          cargo publish