diff --git a/.github/settings.yml b/.github/settings.yml index ae50b5d2..aac834e0 100644 --- a/.github/settings.yml +++ b/.github/settings.yml @@ -30,6 +30,9 @@ branches: - context: "Tests (8.3, highest)" - context: "Tests (8.3, locked)" - context: "Tests (8.3, lowest)" + - context: "Tests (8.4, highest)" + - context: "Tests (8.4, locked)" + - context: "Tests (8.4, lowest)" strict: false restrictions: diff --git a/.github/workflows/integrate.yaml b/.github/workflows/integrate.yaml index df540a61..b8d9b7c1 100644 --- a/.github/workflows/integrate.yaml +++ b/.github/workflows/integrate.yaml @@ -420,6 +420,7 @@ jobs: - "8.1" - "8.2" - "8.3" + - "8.4" dependencies: - "lowest" @@ -456,6 +457,10 @@ jobs: key: "php-${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-${{ hashFiles('composer.lock') }}" restore-keys: "php-${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-" + - name: "Remove incompatible dependencies with composer" + if: "matrix.dependencies != 'locked'" + run: "composer remove roave/backward-compatibility-check --ansi --dev --no-interaction --no-progress" + - name: "Remove platform configuration with composer" if: "matrix.dependencies != 'locked'" run: "composer config platform.php --ansi --unset" diff --git a/composer.json b/composer.json index b9ef1c68..b1939332 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ "security": "https://github.com/ergebnis/php-cs-fixer-config-template/blob/main/.github/SECURITY.md" }, "require": { - "php": "~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", "friendsofphp/php-cs-fixer": "~3.64.0" }, "require-dev": { diff --git a/composer.lock b/composer.lock index 7e35ee38..92d47dd6 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ad562b51ae7056aee2cbf3f4548ad84a", + "content-hash": "7f4b78f143a22edea17ddf604fee4aa9", "packages": [ { "name": "clue/ndjson-react", @@ -6512,13 +6512,13 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": {}, "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "~8.1.0 || ~8.2.0 || ~8.3.0" + "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, - "platform-dev": [], + "platform-dev": {}, "platform-overrides": { "php": "8.1.26" }, diff --git a/test/EndToEnd/RuleSet/AbstractRuleSetTestCase.php b/test/EndToEnd/RuleSet/AbstractRuleSetTestCase.php index 1131f997..e2b91be1 100644 --- a/test/EndToEnd/RuleSet/AbstractRuleSetTestCase.php +++ b/test/EndToEnd/RuleSet/AbstractRuleSetTestCase.php @@ -38,6 +38,17 @@ final protected function tearDown(): void final public function testConfigurationIsConsideredValid(): void { + $env = []; + + if (PHP_VERSION_ID >= 80400) { + $env = [ + /** + * @see https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/v3.64.0/README.md#supported-php-versions + */ + 'PHP_CS_FIXER_IGNORE_ENV' => true, + ]; + } + $process = new Process\Process( [ 'vendor/bin/php-cs-fixer', @@ -49,7 +60,8 @@ final public function testConfigurationIsConsideredValid(): void '--dry-run', self::configPath(), ], - null + null, + $env, ); $process->run();