From cc9f05ed573b40221859638b00c783e8d50eaa34 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 18 Oct 2025 12:35:39 +0200 Subject: [PATCH 01/27] Utilize build-infection --- .github/workflows/build.yml | 3 ++ tests/Infection/TrinaryLogicMutator.php | 69 ------------------------- 2 files changed, 3 insertions(+), 69 deletions(-) delete mode 100644 tests/Infection/TrinaryLogicMutator.php diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 991d22ed..83f04407 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -178,6 +178,9 @@ jobs: - name: "Install dependencies" run: "composer install --no-interaction --no-progress" + - name: "Install build-infection" + run: "composer require phpstan/build-infection --no-interaction --no-progress" + - uses: "actions/download-artifact@v4" with: name: "result-cache-${{ matrix.php-version }}" diff --git a/tests/Infection/TrinaryLogicMutator.php b/tests/Infection/TrinaryLogicMutator.php deleted file mode 100644 index 67e9b530..00000000 --- a/tests/Infection/TrinaryLogicMutator.php +++ /dev/null @@ -1,69 +0,0 @@ - - */ -final class TrinaryLogicMutator implements Mutator -{ - - public static function getDefinition(): Definition - { - return new Definition( - <<<'TXT' - Replaces TrinaryLogic->yes() with !TrinaryLogic->no() and vice versa. - TXT - , - MutatorCategory::ORTHOGONAL_REPLACEMENT, - null, - <<<'DIFF' - - $type->isBoolean()->yes(); - + !$type->isBoolean()->no(); - DIFF, - ); - } - - public function getName(): string - { - return 'TrinaryLogicMutator'; - } - - public function canMutate(Node $node): bool - { - if (!$node instanceof Node\Expr\MethodCall) { - return false; - } - - if (!$node->name instanceof Node\Identifier) { - return false; - } - - if (!in_array($node->name->name, ['yes', 'no'], true)) { - return false; - } - - return true; - } - - public function mutate(Node $node): iterable - { - if (!$node->name instanceof Node\Identifier) { - throw new LogicException(); - } - - if ($node->name->name === 'yes') { - yield new Node\Expr\BooleanNot(new Node\Expr\MethodCall($node->var, 'no')); - } else { - yield new Node\Expr\BooleanNot(new Node\Expr\MethodCall($node->var, 'yes')); - } - } - -} From 6e9daf17e84ff9830c679224fb486e1ebcc64343 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 18 Oct 2025 12:36:50 +0200 Subject: [PATCH 02/27] Update phpstan.neon --- phpstan.neon | 1 - 1 file changed, 1 deletion(-) diff --git a/phpstan.neon b/phpstan.neon index 385b9690..b5f35ecc 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -25,7 +25,6 @@ parameters: - tests/*/data-attributes/* - tests/*/data-php-*/* - tests/Rules/Doctrine/ORM/entity-manager.php - - tests/Infection/ reportUnmatchedIgnoredErrors: false From 747ec2db8e0ee1c79e033837e0d9d60445b09ff7 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 19:56:33 +0200 Subject: [PATCH 03/27] checkout build-infection --- .github/workflows/build.yml | 12 ++++++++++-- infection.json5 | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 83f04407..4a31e0e5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -178,8 +178,16 @@ jobs: - name: "Install dependencies" run: "composer install --no-interaction --no-progress" - - name: "Install build-infection" - run: "composer require phpstan/build-infection --no-interaction --no-progress" + - name: "Checkout build-infection" + uses: actions/checkout@v5 + with: + repository: "phpstan/build-infection" + path: "build-infection" + ref: "1.x" + + - name: "Install build-infection dependencies" + working-directory: "build-infection" + run: "composer install --no-interaction --no-progress" - uses: "actions/download-artifact@v4" with: diff --git a/infection.json5 b/infection.json5 index 7afd7230..1c6c2ed0 100644 --- a/infection.json5 +++ b/infection.json5 @@ -10,6 +10,7 @@ "logs": { "text": "tmp/infection.log" }, + "bootstrap":"build-infection/vendor/autoload.php", "mutators": { "@default": false, "PHPStan\\Infection\\TrinaryLogicMutator": true From 9c591dd8b4f0bc3e09bcb490c32484a7eda953a3 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:01:00 +0200 Subject: [PATCH 04/27] trigger mutation testing --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index 69f9791a..ad6df78d 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -69,6 +69,14 @@ public function processNode(Node $node, Scope $scope): array return []; } + // testing stuff + $obj = (new ObjectType('Doctrine\ORM\QueryBuilder'))->isSuperTypeOf($calledOnType); + if ($obj->yes()) { + $x = 1; + } else { + $x = 2; + } + try { $dqlType = $scope->getType(new MethodCall($node, new Node\Identifier('getDQL'), [])); } catch (Throwable $e) { From f4be5fe4c6c450bbcefbbf8d85c65122bb28bdff Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:04:12 +0200 Subject: [PATCH 05/27] Update QueryBuilderDqlRule.php --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index ad6df78d..0c9e1d1a 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -74,7 +74,11 @@ public function processNode(Node $node, Scope $scope): array if ($obj->yes()) { $x = 1; } else { - $x = 2; + $x = 3; + } + + if ($x) { + echo ''; } try { From 9cc6c774e74048ea54506c587f887a58891aa6e9 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:04:17 +0200 Subject: [PATCH 06/27] Update QueryBuilderDqlRule.php --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index 0c9e1d1a..f16c1eb2 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -74,7 +74,7 @@ public function processNode(Node $node, Scope $scope): array if ($obj->yes()) { $x = 1; } else { - $x = 3; + $x = 0; } if ($x) { From b31655d6c31226ba33ce515b183be1297741f10c Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:06:55 +0200 Subject: [PATCH 07/27] Update QueryBuilderDqlRule.php --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index f16c1eb2..6685db2a 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -72,9 +72,9 @@ public function processNode(Node $node, Scope $scope): array // testing stuff $obj = (new ObjectType('Doctrine\ORM\QueryBuilder'))->isSuperTypeOf($calledOnType); if ($obj->yes()) { - $x = 1; + $x = true; } else { - $x = 0; + $x = false; } if ($x) { From 95851bd1e482199fdef195b29a3447f5746a23f0 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:16:19 +0200 Subject: [PATCH 08/27] Discard changes to src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index 6685db2a..69f9791a 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -69,18 +69,6 @@ public function processNode(Node $node, Scope $scope): array return []; } - // testing stuff - $obj = (new ObjectType('Doctrine\ORM\QueryBuilder'))->isSuperTypeOf($calledOnType); - if ($obj->yes()) { - $x = true; - } else { - $x = false; - } - - if ($x) { - echo ''; - } - try { $dqlType = $scope->getType(new MethodCall($node, new Node\Identifier('getDQL'), [])); } catch (Throwable $e) { From d4edda185b89e69bf54164c7de65d609efa52949 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sun, 19 Oct 2025 20:25:11 +0200 Subject: [PATCH 09/27] Update infection.json5 --- infection.json5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/infection.json5 b/infection.json5 index 1c6c2ed0..f6a55ac1 100644 --- a/infection.json5 +++ b/infection.json5 @@ -10,7 +10,7 @@ "logs": { "text": "tmp/infection.log" }, - "bootstrap":"build-infection/vendor/autoload.php", + "bootstrap": "build-infection/vendor/autoload.php", "mutators": { "@default": false, "PHPStan\\Infection\\TrinaryLogicMutator": true From 0645768226833006e8a9107b798da18b9a6133b9 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 10:37:56 +0200 Subject: [PATCH 10/27] mutator script --- .github/workflows/build.yml | 6 ++++++ infection.json5 | 18 ------------------ 2 files changed, 6 insertions(+), 18 deletions(-) delete mode 100644 infection.json5 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4a31e0e5..e4a8f963 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -189,6 +189,12 @@ jobs: working-directory: "build-infection" run: "composer install --no-interaction --no-progress" + - name: "Configure mutators" + run: | + php build-infection/bin/infection-config.php \ + --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ + > infection.json5 + - uses: "actions/download-artifact@v4" with: name: "result-cache-${{ matrix.php-version }}" diff --git a/infection.json5 b/infection.json5 deleted file mode 100644 index f6a55ac1..00000000 --- a/infection.json5 +++ /dev/null @@ -1,18 +0,0 @@ -{ - "$schema": "vendor/infection/infection/resources/schema.json", - "timeout": 30, - "source": { - "directories": [ - "src" - ] - }, - "staticAnalysisTool": "phpstan", - "logs": { - "text": "tmp/infection.log" - }, - "bootstrap": "build-infection/vendor/autoload.php", - "mutators": { - "@default": false, - "PHPStan\\Infection\\TrinaryLogicMutator": true - } -} From 971df8b67a9781ff83175f5d41cd09ba6d8a16f8 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 10:44:56 +0200 Subject: [PATCH 11/27] simplify result cache handling --- .github/workflows/build.yml | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e4a8f963..2dcd76fd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -195,10 +195,13 @@ jobs: --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ > infection.json5 - - uses: "actions/download-artifact@v4" + - name: "Cache Result cache" + uses: actions/cache@v4 with: - name: "result-cache-${{ matrix.php-version }}" - path: "tmp/" + path: ./tmp + key: "result-cache-v14-${{ matrix.php-version }}-${{ github.run_id }}" + restore-keys: | + result-cache-v14-${{ matrix.php-version }}- - name: "Run infection" run: | @@ -257,9 +260,3 @@ jobs: - name: "PHPStan" run: "make phpstan" - - - uses: "actions/upload-artifact@v4" - with: - # "update-packages" is not relevant for the download-artifact counterpart, but we need it here to get unique artifact names across all jobs - name: "result-cache-${{ matrix.php-version }}${{ matrix.update-packages && '-packages-updated' || '' }}" - path: "tmp/resultCache.php" From 72d95207f8eaf37d62bd5aff592a8b0de3a027f3 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 10:55:37 +0200 Subject: [PATCH 12/27] force testing --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index 69f9791a..b67b39e3 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -54,6 +54,15 @@ public function processNode(Node $node, Scope $scope): array } $calledOnType = $scope->getType($node->var); + + // testing stuff + $obj = (new ObjectType('SomeClass'))->isSuperTypeOf($calledOnType); + if ($obj->yes()) { + $x = 1; + } else { + $x = 2; + } + $queryBuilderTypes = DoctrineTypeUtils::getQueryBuilderTypes($calledOnType); if (count($queryBuilderTypes) === 0) { if ( From 7c875075a6d29a3c1d55ef4f7bcc02bbd6679590 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 10:58:31 +0200 Subject: [PATCH 13/27] escaping? --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2dcd76fd..2229a1c9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -192,7 +192,7 @@ jobs: - name: "Configure mutators" run: | php build-infection/bin/infection-config.php \ - --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ + --mutator-class='PHPStan\\Infection\\TrinaryLogicMutator' \ > infection.json5 - name: "Cache Result cache" From 1ce7e3bdcc39c621b689b696505c0ff2b6f81464 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:03:00 +0200 Subject: [PATCH 14/27] Update build.yml --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2229a1c9..6c1ce5b2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -192,8 +192,9 @@ jobs: - name: "Configure mutators" run: | php build-infection/bin/infection-config.php \ - --mutator-class='PHPStan\\Infection\\TrinaryLogicMutator' \ + --mutator-class='PHPStan\\\Infection\\\TrinaryLogicMutator' \ > infection.json5 + cat infection.json5 - name: "Cache Result cache" uses: actions/cache@v4 From f55a9905984256f7471c087740d7b00181b72589 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:03:26 +0200 Subject: [PATCH 15/27] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6c1ce5b2..f08d2b14 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -148,7 +148,7 @@ jobs: mutation-testing: name: "Mutation Testing" runs-on: "ubuntu-latest" - needs: ["tests", "static-analysis"] + #needs: ["tests", "static-analysis"] strategy: fail-fast: false From 02659449e2d682231dccd7c3bc6d87ca8355c163 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:04:37 +0200 Subject: [PATCH 16/27] Update build.yml --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f08d2b14..bffaef0f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -192,9 +192,9 @@ jobs: - name: "Configure mutators" run: | php build-infection/bin/infection-config.php \ - --mutator-class='PHPStan\\\Infection\\\TrinaryLogicMutator' \ + --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ > infection.json5 - cat infection.json5 + cat infection.json5 | jq - name: "Cache Result cache" uses: actions/cache@v4 From 4d596fe31db0da78725f125bb04d1564d7cad41c Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:05:30 +0200 Subject: [PATCH 17/27] Update build.yml --- .github/workflows/build.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bffaef0f..37ef4052 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,6 +8,10 @@ on: branches: - "2.0.x" +concurrency: + group: tests-${{ github.head_ref || github.run_id }} # will be canceled on subsequent pushes in pull requests but not branches + cancel-in-progress: true + jobs: lint: name: "Lint" From 998db4f3fbde9f2dcc4812b70f910a2bd43a1f57 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:19:11 +0200 Subject: [PATCH 18/27] Update build.yml --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 37ef4052..6221596e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -173,7 +173,7 @@ jobs: php-version: "${{ matrix.php-version }}" ini-file: development extensions: pdo, mysqli, pgsql, pdo_mysql, pdo_pgsql, pdo_sqlite, mongodb - tools: infection:0.31.6 + tools: infection:0.31.7 - name: "Allow installing on PHP 8.4" if: matrix.php-version == '8.4' @@ -202,6 +202,7 @@ jobs: - name: "Cache Result cache" uses: actions/cache@v4 + if: always() with: path: ./tmp key: "result-cache-v14-${{ matrix.php-version }}-${{ github.run_id }}" From da0569a6273bb868993234e828e8f8dc5137c600 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:26:27 +0200 Subject: [PATCH 19/27] cleanup --- .github/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6221596e..21eeb053 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -152,7 +152,7 @@ jobs: mutation-testing: name: "Mutation Testing" runs-on: "ubuntu-latest" - #needs: ["tests", "static-analysis"] + needs: ["tests", "static-analysis"] strategy: fail-fast: false @@ -202,7 +202,6 @@ jobs: - name: "Cache Result cache" uses: actions/cache@v4 - if: always() with: path: ./tmp key: "result-cache-v14-${{ matrix.php-version }}-${{ github.run_id }}" From ef9a60a914fc9a434991f9157f3cac9c315b655a Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:26:36 +0200 Subject: [PATCH 20/27] Revert "force testing" This reverts commit 72d95207f8eaf37d62bd5aff592a8b0de3a027f3. --- src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php index b67b39e3..69f9791a 100644 --- a/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php +++ b/src/Rules/Doctrine/ORM/QueryBuilderDqlRule.php @@ -54,15 +54,6 @@ public function processNode(Node $node, Scope $scope): array } $calledOnType = $scope->getType($node->var); - - // testing stuff - $obj = (new ObjectType('SomeClass'))->isSuperTypeOf($calledOnType); - if ($obj->yes()) { - $x = 1; - } else { - $x = 2; - } - $queryBuilderTypes = DoctrineTypeUtils::getQueryBuilderTypes($calledOnType); if (count($queryBuilderTypes) === 0) { if ( From e686defcc56ce9162bd55a6bd864c0998ca66e7f Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:33:15 +0200 Subject: [PATCH 21/27] Update build.yml --- .github/workflows/build.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21eeb053..1cbe1b28 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -194,11 +194,13 @@ jobs: run: "composer install --no-interaction --no-progress" - name: "Configure mutators" - run: | - php build-infection/bin/infection-config.php \ - --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ - > infection.json5 - cat infection.json5 | jq + run: cp build-infection/resources/infection.json5 . + #- name: "Configure mutators" + # run: | + # php build-infection/bin/infection-config.php \ + # --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ + # > infection.json5 + # cat infection.json5 | jq - name: "Cache Result cache" uses: actions/cache@v4 From 6dccbc473db7764b1eea4c56bfb56e0bb5a204c8 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 11:33:44 +0200 Subject: [PATCH 22/27] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1cbe1b28..1983be30 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -198,7 +198,7 @@ jobs: #- name: "Configure mutators" # run: | # php build-infection/bin/infection-config.php \ - # --mutator-class='PHPStan\Infection\TrinaryLogicMutator' \ + # --mutator-class='Infection\Mutator\Removal\MethodCallRemoval' \ # > infection.json5 # cat infection.json5 | jq From dd9d5bc58e9e0f53a74411428f9758abf3278243 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 13:17:38 +0200 Subject: [PATCH 23/27] Update build.yml --- .github/workflows/build.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1983be30..a6af901d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -195,12 +195,6 @@ jobs: - name: "Configure mutators" run: cp build-infection/resources/infection.json5 . - #- name: "Configure mutators" - # run: | - # php build-infection/bin/infection-config.php \ - # --mutator-class='Infection\Mutator\Removal\MethodCallRemoval' \ - # > infection.json5 - # cat infection.json5 | jq - name: "Cache Result cache" uses: actions/cache@v4 From cf4eb88d72526046fe878fbe591710d144ff090a Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 13:34:48 +0200 Subject: [PATCH 24/27] fix --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a6af901d..2d69adb1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ on: - "2.0.x" concurrency: - group: tests-${{ github.head_ref || github.run_id }} # will be canceled on subsequent pushes in pull requests but not branches + group: build-${{ github.head_ref || github.run_id }} # will be canceled on subsequent pushes in pull requests but not branches cancel-in-progress: true jobs: From 7491018c500c5ec87033992dc9f8002c88eed505 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 18:55:54 +0200 Subject: [PATCH 25/27] Update build.yml --- .github/workflows/build.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2d69adb1..db352615 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -193,8 +193,11 @@ jobs: working-directory: "build-infection" run: "composer install --no-interaction --no-progress" - - name: "Configure mutators" - run: cp build-infection/resources/infection.json5 . + - name: "Configure infection" + run: | + php build-infection/bin/infection-config.php \ + > infection.json5 + cat infection.json5 | jq - name: "Cache Result cache" uses: actions/cache@v4 From 8da5e2f14dba94c54f14bd3316d589aaacf21fb4 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 18:56:38 +0200 Subject: [PATCH 26/27] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index db352615..b972a2e0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -203,7 +203,7 @@ jobs: uses: actions/cache@v4 with: path: ./tmp - key: "result-cache-v14-${{ matrix.php-version }}-${{ github.run_id }}" + key: "result-cache-v1-${{ matrix.php-version }}-${{ github.run_id }}" restore-keys: | result-cache-v14-${{ matrix.php-version }}- From 5193dc7517d70212ebabeb7ca9d23862dce96f40 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 25 Oct 2025 18:57:06 +0200 Subject: [PATCH 27/27] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b972a2e0..635d82da 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -205,7 +205,7 @@ jobs: path: ./tmp key: "result-cache-v1-${{ matrix.php-version }}-${{ github.run_id }}" restore-keys: | - result-cache-v14-${{ matrix.php-version }}- + result-cache-v1-${{ matrix.php-version }}- - name: "Run infection" run: |