From 632ae79c8bdb9b5afd78e70d52af6a1608b97341 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Jul 2026 12:57:08 +0100 Subject: [PATCH 1/5] build(deps): bump actions/cache in the github-actions group (#1745) Bumps the github-actions group with 1 update: [actions/cache](https://github.com/actions/cache). Updates `actions/cache` from 5.0.5 to 6.1.0 - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/27d5ce7f107fe9357f9df03efb73ab90386fccae...55cc8345863c7cc4c66a329aec7e433d2d1c52a9) --- updated-dependencies: - dependency-name: actions/cache dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/static.yml | 2 +- .github/workflows/tests.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index c63b6750..67a81bef 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -44,7 +44,7 @@ jobs: run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - name: Cache Composer dependencies - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5 + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v5 with: path: ${{ steps.composer-cache.outputs.dir }} key: static-php-8.3-${{ matrix.dependency-version }}-composer-${{ hashFiles('**/composer.json', '**/composer.lock') }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8f5eb589..1e98af9b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -51,7 +51,7 @@ jobs: run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - name: Cache Composer dependencies - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5 + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v5 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ matrix.os }}-php-${{ matrix.php }}-symfony-${{ matrix.symfony }}-composer-${{ hashFiles('**/composer.json', '**/composer.lock') }} From df42b9ed7b0b247018347c3c9f40775bd75e909c Mon Sep 17 00:00:00 2001 From: nuno maduro Date: Mon, 6 Jul 2026 13:17:11 +0100 Subject: [PATCH 2/5] chore: style --- rector.php | 4 ++++ src/Expectation.php | 2 +- src/Plugins/Tia.php | 5 ++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/rector.php b/rector.php index caec3188..a5c426f5 100644 --- a/rector.php +++ b/rector.php @@ -4,7 +4,9 @@ declare(strict_types=1); use Rector\CodingStyle\Rector\ArrowFunction\ArrowFunctionDelegatingCallToFirstClassCallableRector; use Rector\Config\RectorConfig; +use Rector\DeadCode\Rector\ClassMethod\RemoveDuplicatedReturnSelfDocblockRector; use Rector\DeadCode\Rector\ClassMethod\RemoveParentDelegatingConstructorRector; +use Rector\DeadCode\Rector\ClassMethod\RemoveUselessUnionReturnDocblockRector; use Rector\TypeDeclaration\Rector\ClassMethod\NarrowObjectReturnTypeRector; use Rector\TypeDeclaration\Rector\ClassMethod\ReturnNeverTypeRector; @@ -18,6 +20,8 @@ return RectorConfig::configure() ArrowFunctionDelegatingCallToFirstClassCallableRector::class, NarrowObjectReturnTypeRector::class, RemoveParentDelegatingConstructorRector::class, + RemoveDuplicatedReturnSelfDocblockRector::class, + RemoveUselessUnionReturnDocblockRector::class, ]) ->withPreparedSets( deadCode: true, diff --git a/src/Expectation.php b/src/Expectation.php index b8c0862a..9dae7bdb 100644 --- a/src/Expectation.php +++ b/src/Expectation.php @@ -130,7 +130,7 @@ final class Expectation if (getenv('PARATEST') !== false || isset($_SERVER['COLLISION_PRINTER'])) { ob_start(); var_dump($this->value, ...$arguments); - $output = (string) ob_get_clean(); + $output = ob_get_clean(); throw new ExpectationFailedException($output); } diff --git a/src/Plugins/Tia.php b/src/Plugins/Tia.php index ef6c083a..23ad44fa 100644 --- a/src/Plugins/Tia.php +++ b/src/Plugins/Tia.php @@ -219,8 +219,11 @@ final class Tia implements AddsOutput, HandlesArguments, Terminable if (! $watchPatterns->isEnabled()) { return false; } + if (! $watchPatterns->isLocally()) { + return true; + } - return ! ($watchPatterns->isLocally() && self::argumentPresent('--ci', $arguments)); + return ! self::argumentPresent('--ci', $arguments); } /** From aadf7e92a65db841f636b0a01ffba6ee3e9e07ef Mon Sep 17 00:00:00 2001 From: nuno maduro Date: Mon, 6 Jul 2026 13:18:26 +0100 Subject: [PATCH 3/5] fix: escape generated test case filename (#1746) Co-authored-by: Claude Opus 4.8 (1M context) --- src/Factories/TestCaseFactory.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Factories/TestCaseFactory.php b/src/Factories/TestCaseFactory.php index b23082fd..f2bb3e1b 100644 --- a/src/Factories/TestCaseFactory.php +++ b/src/Factories/TestCaseFactory.php @@ -94,7 +94,8 @@ final class TestCaseFactory $filename = (string) preg_replace_callback('~^(?P[a-z]+:\\\)~i', static fn (array $match): string => strtolower($match['drive']), $filename); } - $filename = str_replace('\\\\', '\\', addslashes((string) realpath($filename))); + $realpath = (string) realpath($filename); + $filename = str_replace('\\\\', '\\', addslashes($realpath)); $rootPath = TestSuite::getInstance()->rootPath; $relativePath = str_replace($rootPath.DIRECTORY_SEPARATOR, '', $filename); @@ -149,6 +150,8 @@ final class TestCaseFactory $attributesCode = Attributes::code($this->attributes); + $filenameLiteral = var_export($realpath, true); + $methodsCode = implode('', array_map( fn (TestCaseMethodFactory $methodFactory): string => $methodFactory->buildForEvaluation(), $methods @@ -166,7 +169,7 @@ final class TestCaseFactory final class $className extends $baseClass implements $hasPrintableTestCaseClassFQN { $traitsCode - public static \$__filename = '$filename'; + public static \$__filename = $filenameLiteral; $methodsCode } From 1adb484d3fa7a194c1b582c4f424561af4737844 Mon Sep 17 00:00:00 2001 From: nuno maduro Date: Mon, 6 Jul 2026 18:05:35 +0100 Subject: [PATCH 4/5] chore: bumps deps --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 9ba318d1..a584ea5f 100644 --- a/composer.json +++ b/composer.json @@ -59,11 +59,11 @@ ] }, "require-dev": { - "mrpunyapal/peststan": "^0.2.10", + "mrpunyapal/peststan": "^0.2.11", "pestphp/pest-dev-tools": "^4.1.0", "pestphp/pest-plugin-browser": "^4.3.1", "pestphp/pest-plugin-type-coverage": "^4.0.4", - "psy/psysh": "^0.12.23" + "psy/psysh": "^0.12.24" }, "minimum-stability": "dev", "prefer-stable": true, From 5dc49a71d63602a9b98fed0f2017c4679ef9f8e0 Mon Sep 17 00:00:00 2001 From: nuno maduro Date: Mon, 6 Jul 2026 18:06:29 +0100 Subject: [PATCH 5/5] release: v4.7.5 --- src/Pest.php | 2 +- .../Visual/Help/visual_snapshot_of_help_command_output.snap | 2 +- .../Visual/Version/visual_snapshot_of_help_command_output.snap | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Pest.php b/src/Pest.php index a37c57df..fe25c6ae 100644 --- a/src/Pest.php +++ b/src/Pest.php @@ -6,7 +6,7 @@ namespace Pest; function version(): string { - return '4.7.4'; + return '4.7.5'; } function testDirectory(string $file = ''): string diff --git a/tests/.pest/snapshots/Visual/Help/visual_snapshot_of_help_command_output.snap b/tests/.pest/snapshots/Visual/Help/visual_snapshot_of_help_command_output.snap index b4e8e039..319fc91c 100644 --- a/tests/.pest/snapshots/Visual/Help/visual_snapshot_of_help_command_output.snap +++ b/tests/.pest/snapshots/Visual/Help/visual_snapshot_of_help_command_output.snap @@ -1,5 +1,5 @@ - Pest Testing Framework 4.7.4. + Pest Testing Framework 4.7.5. USAGE: pest [options] diff --git a/tests/.pest/snapshots/Visual/Version/visual_snapshot_of_help_command_output.snap b/tests/.pest/snapshots/Visual/Version/visual_snapshot_of_help_command_output.snap index 8869059b..36c2c23d 100644 --- a/tests/.pest/snapshots/Visual/Version/visual_snapshot_of_help_command_output.snap +++ b/tests/.pest/snapshots/Visual/Version/visual_snapshot_of_help_command_output.snap @@ -1,3 +1,3 @@ - Pest Testing Framework 4.7.4. + Pest Testing Framework 4.7.5.