# https://help.github.com/en/categories/automating-your-workflow-with-github-actions

on:
  - "pull_request"
  - "push"

name: "CI"

env:
  COMPOSER_ROOT_VERSION: "5.0-dev"

permissions:
  contents: read

jobs:
  coding-guidelines:
    name: Coding Guidelines

    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Install PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: 8.3
          coverage: none

      - name: Run PHP-CS-Fixer
        run: ./tools/php-cs-fixer fix --dry-run --show-progress=dots --using-cache=no --verbose

  type-checker:
    name: Type Checker

    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Install PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: 8.3
          coverage: none

      - name: Install dependencies with Composer
        run: ./tools/composer update --no-interaction --no-ansi --no-progress

      - name: Run Psalm
        run: ./tools/psalm --config=.psalm/config.xml --no-progress --shepherd --show-info=false --stats
