DataStructure #388
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Check | |
on: | |
workflow_dispatch: ~ | |
push: | |
branches: ['*.x'] | |
pull_request: ~ | |
jobs: | |
composer: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
tools: composer:v2 | |
coverage: none | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
- run: task composer-validate composer-check-require | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
tools: composer:v2 | |
coverage: none | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
- run: task lint -- --format=checkstyle | |
psalm: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
dependency-versions: [lowest, highest] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
tools: composer:v2 | |
coverage: none | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
dependency-versions: ${{ matrix.dependency-versions }} | |
- run: task psalm -- --stats --output-format=github ${{ matrix.dependency-versions == 'lowest' && '--shepherd' || '' }} | |
phpstan: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
tools: composer:v2 | |
coverage: none | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
- run: task phpstan | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php: [8.1, 8.2, 8.3] | |
dependency-versions: [lowest, highest] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
ini-file: development | |
tools: composer:v2 | |
coverage: ${{ matrix.php == '8.1' && matrix.dependency-versions == 'lowest' && 'pcov' || '' }} | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
dependency-versions: ${{ matrix.dependency-versions }} | |
- run: task test -- --colors=always --coverage-clover coverage.xml | |
- if: ${{ matrix.php == '8.1' && matrix.dependency-versions == 'lowest' }} | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
infection: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
ini-file: development | |
tools: composer:v2 | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
- run: task infection | |
env: | |
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }} | |
packages: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: arduino/setup-task@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
tools: composer:v2 | |
coverage: none | |
- uses: ramsey/composer-install@v3 | |
with: | |
composer-options: --optimize-autoloader | |
- run: NAME=Reflection task check-package | |
env: | |
COMPOSER_ROOT_VERSION: 0.4-dev |