Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 49 additions & 45 deletions .github/workflows/continuous-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

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

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
Expand All @@ -28,14 +28,14 @@ jobs:
tools: "cs2pr"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHP-CS-Fixer on src/"
run: "vendor/bin/php-cs-fixer fix src/ --dry-run --stop-on-violation --format=checkstyle | cs2pr"
Expand All @@ -50,11 +50,11 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

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

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
Expand All @@ -64,14 +64,14 @@ jobs:
tools: "cs2pr"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run require-checker"
run: "composer require-checker"
Expand All @@ -83,7 +83,7 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
mysql:
Expand All @@ -96,7 +96,7 @@ jobs:

steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 2

Expand All @@ -109,20 +109,20 @@ jobs:
tools: "cs2pr"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.mysql8.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"

# PHPStan is run after PHPUnit because we want to analyze the generated files too.
- name: "Run a static analysis with phpstan/phpstan"
Expand All @@ -135,7 +135,6 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
Expand All @@ -149,7 +148,7 @@ jobs:

steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 2

Expand All @@ -161,20 +160,20 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.mysql8.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"

phpunit-prefer-lowest:
name: "PHPUnit with prefer-lowest"
Expand All @@ -183,7 +182,7 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
mysql:
Expand All @@ -196,7 +195,7 @@ jobs:

steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 2

Expand All @@ -208,20 +207,20 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer update --no-interaction --no-progress --no-suggest --prefer-lowest"
run: "composer update --no-interaction --no-progress --prefer-lowest"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.mysql8.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"

phpunit-mariadb105:
name: "PHPUnit on MariaDB 10.5"
Expand All @@ -230,7 +229,7 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
mysql:
Expand All @@ -242,7 +241,7 @@ jobs:

steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 2

Expand All @@ -254,20 +253,20 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.mariadb.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"

phpunit-postgresql:
name: "PHPUnit on PostgreSQL"
Expand All @@ -276,7 +275,7 @@ jobs:
strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
postgres:
Expand All @@ -293,7 +292,7 @@ jobs:
--health-retries 5
steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 2

Expand All @@ -305,29 +304,31 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.postgres.github.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"

phpunit-phpbench:
name: "PHPBench"
runs-on: "ubuntu-latest"
# TODO: Re-enable this job once the dependencies are fixed
if: false # Current master branch dependencies are broken because it requires dbal3 and brain-diminished/schema-version-control

strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
mysql:
Expand All @@ -340,7 +341,7 @@ jobs:

steps:
- name: "Checkout"
uses: "actions/checkout@v2"
uses: "actions/checkout@v4"
with:
fetch-depth: 0

Expand All @@ -352,38 +353,41 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Running PHPBench on current branch"
run: "./phpbench.dist.sh run --tag=current_pr --store"

- name: "Reverting any change (that could have been triggered by composer install)"
run: "git checkout -- ."
run: "git checkout -- . && rm composer.lock"

- name: "Switching to master branch"
run: "git checkout master"

- name: "Updating dependencies"
run: "composer update"
- name: "Install master dependencies"
run: "composer install --no-interaction --no-progress"

- name: "Running PHPBENCH on master, Generating Report (RESULTS ARE INVERTED AS MASTER IS RUN AFTER CURRENT)"
run: "./phpbench.dist.sh run --ref=current_pr --store --report=aggregate"

phpunit-oci8:
name: "PHPUnit on OCI8"
runs-on: "ubuntu-latest"
# disabled due to issue on doctrine/dbal with Oracle, see https://github.com/doctrine/dbal/issues/6764#issuecomment-2781153676
# TODO: re-enable after doctrine/dbal 4 (or 5) upgrade
if: false

strategy:
matrix:
php-version:
- "7.4"
- "8.0"

services:
oracle:
Expand All @@ -393,7 +397,7 @@ jobs:

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

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
Expand All @@ -403,17 +407,17 @@ jobs:
coverage: "pcov"

- name: "Cache dependencies installed with composer"
uses: "actions/cache@v1"
uses: "actions/cache@v4"
with:
path: "~/.composer/cache"
key: "php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
restore-keys: "php-${{ matrix.php-version }}-composer-locked-"

- name: "Install dependencies with composer"
run: "composer install --no-interaction --no-progress --no-suggest"
run: "composer install --no-interaction --no-progress"

- name: "Run PHPUnit"
run: "vendor/bin/phpunit -c phpunit.oracle.xml --coverage-clover=coverage.xml"

- name: "Upload Code Coverage"
uses: "codecov/codecov-action@v1"
uses: "codecov/codecov-action@v5"
2 changes: 1 addition & 1 deletion .github/workflows/deploy-website.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:

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

- uses: CouscousPHP/GitHub-Action@v1
- name: Deploy
Expand Down
2 changes: 1 addition & 1 deletion .scrutinizer.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
build:
environment:
php:
version: 7.4
version: 8.0
nodes:
analysis:
project_setup:
Expand Down
Loading