# This is a basic workflow to help you get started with Actions

name: CI

# Controls when the workflow will run
on:
  # Triggers the workflow on push or pull request events but only for the "main" branch
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  test-melpa:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        emacs_version:
          - 29.2
          - 29.3
          - 29.4
        ignore_warnings:
          - false
        warnings_as_errors:
          - true
        check:
          - melpa
        file:
          - elisa.el
    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
      - uses: actions/checkout@v4
      - uses: purcell/setup-emacs@master
        with:
          version: ${{ matrix.emacs_version }}
      - uses: leotaku/elisp-check@master
        with:
          check: ${{ matrix.check }}
          file: ${{ matrix.file }}
          ignore_warnings: ${{ matrix.ignore_warnings }}
          warnings_as_errors: ${{ matrix.warnings_as_errors }}
