Skip to content

PHPStan 2.0

PHPStan 2.0 #425

Workflow file for this run

name: 'Run Tests'
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.can-fail }}
strategy:
fail-fast: true
matrix:
php: ['8.1', '8.2', '8.3', '8.4']
symfony: ['5.4.*', '6.4.*', '7.1.*', '7.2.*']
pagerfanta: ['']
composer-flags: ['--prefer-stable']
can-fail: [false]
with-twig: [true]
include:
# Run "no Twig" build on latest PHP and Symfony LTS
- php: '8.4'
symfony: '6.4.*'
composer-flags: '--prefer-stable'
can-fail: false
with-twig: false
- php: '8.1'
symfony: '5.4.*'
composer-flags: '--prefer-stable --prefer-lowest'
can-fail: false
with-twig: true
exclude:
- php: '8.1'
symfony: '7.1.*'
- php: '8.1'
symfony: '7.2.*'
name: "PHP ${{ matrix.php }}${{ matrix.pagerfanta != '' && format(' - Pagerfanta {0}', matrix.pagerfanta) || '' }}${{ matrix.with-twig == false && ' - Without Twig' || '' }} - Symfony ${{ matrix.symfony }}${{ matrix.composer-flags != '' && format(' - Composer {0}', matrix.composer-flags) || '' }}"
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Cache dependencies
uses: actions/cache@v4
with:
path: ~/.composer/cache/files
key: dependencies-symfony-${{ matrix.symfony }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}-flags-${{ matrix.composer-flags }}
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v2,flex
extensions: curl, iconv, mbstring, pdo, pdo_sqlite, sqlite, zip
coverage: none
- name: Restrict Pagerfanta version
if: ${{ matrix.pagerfanta }}
run: |
composer require --no-update pagerfanta/core:${{ matrix.pagerfanta }}
composer require --dev --no-update pagerfanta/twig:${{ matrix.pagerfanta }}
- name: Remove Twig
if: matrix.with-twig == false
run: composer remove --dev --no-update pagerfanta/twig symfony/twig-bridge symfony/twig-bundle twig/twig
- name: Install dependencies
run: composer update ${{ matrix.composer-flags }} --prefer-dist
env:
SYMFONY_REQUIRE: ${{ matrix.symfony }}
- name: Execute tests
run: vendor/bin/phpunit