Skip to content

chore: migrate benchmarks to PHPBench with performance regression guards #157

chore: migrate benchmarks to PHPBench with performance regression guards

chore: migrate benchmarks to PHPBench with performance regression guards #157

# SPDX-FileCopyrightText: 2026 LibreSign
# SPDX-License-Identifier: AGPL-3.0-or-later
name: compatibility-matrix
on:
pull_request:
jobs:
matrix:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
deps: [lowest, highest]
steps:
- uses: actions/checkout@v6
- name: Detect minimum PHP from composer.json
id: php_min
run: |
php_version=$(grep -Po '"php"\s*:\s*"\K[^"]+' composer.json | grep -Eo '[0-9]+\.[0-9]+' | head -n1)
[[ -n "$php_version" ]] || { echo "Could not determine minimum PHP version"; exit 1; }
echo "version=$php_version" >> "$GITHUB_OUTPUT"
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ steps.php_min.outputs.version }}
- run: |
if [ "${{ matrix.deps }}" = "lowest" ]; then
composer update --prefer-lowest --prefer-dist --no-interaction
else
composer update --prefer-stable --prefer-dist --no-interaction
fi
- run: composer bin phpunit install --no-interaction --prefer-dist
- run: composer run test:unit