bfc 1.12.0

An industrial-grade brainfuck compiler
name: Release

on:
  push:
    tags:
      - "[0-9]+.*"

jobs:
  push_crates_io:
    runs-on: ubuntu-22.04
    steps:
      - uses: actions/checkout@v3
      - uses: katyo/publish-crates@v1
        with:
          registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}

  create-release:
    runs-on: ubuntu-22.04
    steps:
      - uses: actions/checkout@v3
      - uses: taiki-e/create-gh-release-action@v1
        env:
          # (required)
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          # Create a draft release so we can add the changelog before publishing it
          # so the changelog is included in the release email
          draft: true

  upload-assets:
    strategy:
      matrix:
        include:
          - target: x86_64-unknown-linux-gnu
            os: ubuntu-22.04
          # - target: x86_64-apple-darwin
          #   os: macos-latest
          # - target: x86_64-pc-windows-msvc
          #   os: windows-latest
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v3
      - uses: taiki-e/upload-rust-binary-action@v1
        with:
          bin: bfc
          # (optional) On which platform to distribute the `.tar.gz` file.
          # [default value: unix]
          # [possible values: all, unix, windows, none]
          tar: unix
          # (optional) On which platform to distribute the `.zip` file.
          # [default value: windows]
          # [possible values: all, unix, windows, none]
          zip: windows
          # (optional) Target triple, default is host triple.
          target: ${{ matrix.target }}
        env:
          # (required)
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}