somni 0.2.0

Somni scripting language and VM
Documentation
name: CI

on:
  pull_request:
    types: [opened, synchronize, reopened]
  push:
    branches:
      - main
  merge_group:

env:
  CARGO_TERM_COLOR: always

# Cancel any currently running workflows from the same PR, branch, or
# tag when a new workflow is triggered.
#
# https://stackoverflow.com/a/66336834
concurrency:
  cancel-in-progress: true
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}

jobs:
  ci:
    runs-on: ubuntu-latest

    strategy:
      fail-fast: false
      matrix:
        toolchain:
          - "stable"
          - "nightly"
          - "1.82.0"

    steps:
      - uses: actions/checkout@v4

      - uses: dtolnay/rust-toolchain@v1
        with:
          toolchain: ${{ matrix.toolchain }}
          components: clippy

      - name: Build and Check
        shell: bash
        run: |
          echo "::add-matcher::.github/rust-matchers.json"
          cargo clippy
          cargo +${{ matrix.toolchain }} xtest