From da8242e155777c32c6dcfc54b2f266c54c2bf837 Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Mon, 26 Aug 2024 17:58:40 +0200 Subject: [PATCH 1/3] Allow dot-prefixed config files --- src/Command/CommandHelper.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Command/CommandHelper.php b/src/Command/CommandHelper.php index 931f3bfe02..a1eb86b491 100644 --- a/src/Command/CommandHelper.php +++ b/src/Command/CommandHelper.php @@ -179,7 +179,15 @@ public static function begin( })($autoloadFile); } if ($projectConfigFile === null) { - foreach (['phpstan.neon', 'phpstan.neon.dist', 'phpstan.dist.neon'] as $discoverableConfigName) { + $discoverableConfigNames = [ + '.phpstan.neon', + '.phpstan.neon.dist', + '.phpstan.dist.neon', + 'phpstan.neon', + 'phpstan.neon.dist', + 'phpstan.dist.neon' + ]; + foreach ($discoverableConfigNames as $discoverableConfigName) { $discoverableConfigFile = $currentWorkingDirectory . DIRECTORY_SEPARATOR . $discoverableConfigName; if (is_file($discoverableConfigFile)) { $projectConfigFile = $discoverableConfigFile; From fb7b3f3681de7ee6283f076e076d4f46ab7f9cf3 Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Mon, 26 Aug 2024 18:05:42 +0200 Subject: [PATCH 2/3] CS fix --- src/Command/CommandHelper.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Command/CommandHelper.php b/src/Command/CommandHelper.php index a1eb86b491..e5dd75c186 100644 --- a/src/Command/CommandHelper.php +++ b/src/Command/CommandHelper.php @@ -185,7 +185,7 @@ public static function begin( '.phpstan.dist.neon', 'phpstan.neon', 'phpstan.neon.dist', - 'phpstan.dist.neon' + 'phpstan.dist.neon', ]; foreach ($discoverableConfigNames as $discoverableConfigName) { $discoverableConfigFile = $currentWorkingDirectory . DIRECTORY_SEPARATOR . $discoverableConfigName; From 146f91a978b753ae3ad2ee8d5b7fefc25f49909c Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Thu, 29 Aug 2024 23:59:53 +0200 Subject: [PATCH 3/3] Updated tests --- tests/PHPStan/Command/AnalyseCommandTest.php | 28 +++++++++++++++---- .../.phpstan.dist.neon} | 0 .../.phpstan.neon.dist} | 0 .../.phpstan.neon} | 0 .../phpstan.dist.neon | 4 +++ .../phpstan.neon.dist | 4 +++ .../test-autodiscover-no-dot/phpstan.neon | 4 +++ .../.phpstan.neon | 4 +++ .../phpstan.neon | 4 +++ 9 files changed, 42 insertions(+), 6 deletions(-) rename tests/PHPStan/Command/{test-autodiscover-dist-dot-neon/phpstan.dist.neon => test-autodiscover-dot-dist-dot-neon/.phpstan.dist.neon} (100%) rename tests/PHPStan/Command/{test-autodiscover-dist/phpstan.neon.dist => test-autodiscover-dot-dist/.phpstan.neon.dist} (100%) rename tests/PHPStan/Command/{test-autodiscover/phpstan.neon => test-autodiscover-dot/.phpstan.neon} (100%) create mode 100644 tests/PHPStan/Command/test-autodiscover-no-dot-dist-dot-neon/phpstan.dist.neon create mode 100644 tests/PHPStan/Command/test-autodiscover-no-dot-dist/phpstan.neon.dist create mode 100644 tests/PHPStan/Command/test-autodiscover-no-dot/phpstan.neon create mode 100644 tests/PHPStan/Command/test-autodiscover-priority-dot/.phpstan.neon create mode 100644 tests/PHPStan/Command/test-autodiscover-priority-dot/phpstan.neon diff --git a/tests/PHPStan/Command/AnalyseCommandTest.php b/tests/PHPStan/Command/AnalyseCommandTest.php index 2bec6dfa21..f47edea747 100644 --- a/tests/PHPStan/Command/AnalyseCommandTest.php +++ b/tests/PHPStan/Command/AnalyseCommandTest.php @@ -78,16 +78,28 @@ public static function autoDiscoveryPathsProvider(): array { return [ [ - __DIR__ . '/test-autodiscover', - __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover' . DIRECTORY_SEPARATOR . 'phpstan.neon', + __DIR__ . '/test-autodiscover-dot', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-dot' . DIRECTORY_SEPARATOR . '.phpstan.neon', ], [ - __DIR__ . '/test-autodiscover-dist', - __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-dist' . DIRECTORY_SEPARATOR . 'phpstan.neon.dist', + __DIR__ . '/test-autodiscover-dot-dist', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-dot-dist' . DIRECTORY_SEPARATOR . '.phpstan.neon.dist', ], [ - __DIR__ . '/test-autodiscover-dist-dot-neon', - __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-dist-dot-neon' . DIRECTORY_SEPARATOR . 'phpstan.dist.neon', + __DIR__ . '/test-autodiscover-dot-dist-dot-neon', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-dot-dist-dot-neon' . DIRECTORY_SEPARATOR . '.phpstan.dist.neon', + ], + [ + __DIR__ . '/test-autodiscover-no-dot', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-no-dot' . DIRECTORY_SEPARATOR . 'phpstan.neon', + ], + [ + __DIR__ . '/test-autodiscover-no-dot-dist', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-no-dot-dist' . DIRECTORY_SEPARATOR . 'phpstan.neon.dist', + ], + [ + __DIR__ . '/test-autodiscover-no-dot-dist-dot-neon', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-no-dot-dist-dot-neon' . DIRECTORY_SEPARATOR . 'phpstan.dist.neon', ], [ __DIR__ . '/test-autodiscover-priority', @@ -97,6 +109,10 @@ public static function autoDiscoveryPathsProvider(): array __DIR__ . '/test-autodiscover-priority-dist-dot-neon', __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-priority-dist-dot-neon' . DIRECTORY_SEPARATOR . 'phpstan.neon', ], + [ + __DIR__ . '/test-autodiscover-priority-dot', + __DIR__ . DIRECTORY_SEPARATOR . 'test-autodiscover-priority-dot' . DIRECTORY_SEPARATOR . '.phpstan.neon', + ], ]; } diff --git a/tests/PHPStan/Command/test-autodiscover-dist-dot-neon/phpstan.dist.neon b/tests/PHPStan/Command/test-autodiscover-dot-dist-dot-neon/.phpstan.dist.neon similarity index 100% rename from tests/PHPStan/Command/test-autodiscover-dist-dot-neon/phpstan.dist.neon rename to tests/PHPStan/Command/test-autodiscover-dot-dist-dot-neon/.phpstan.dist.neon diff --git a/tests/PHPStan/Command/test-autodiscover-dist/phpstan.neon.dist b/tests/PHPStan/Command/test-autodiscover-dot-dist/.phpstan.neon.dist similarity index 100% rename from tests/PHPStan/Command/test-autodiscover-dist/phpstan.neon.dist rename to tests/PHPStan/Command/test-autodiscover-dot-dist/.phpstan.neon.dist diff --git a/tests/PHPStan/Command/test-autodiscover/phpstan.neon b/tests/PHPStan/Command/test-autodiscover-dot/.phpstan.neon similarity index 100% rename from tests/PHPStan/Command/test-autodiscover/phpstan.neon rename to tests/PHPStan/Command/test-autodiscover-dot/.phpstan.neon diff --git a/tests/PHPStan/Command/test-autodiscover-no-dot-dist-dot-neon/phpstan.dist.neon b/tests/PHPStan/Command/test-autodiscover-no-dot-dist-dot-neon/phpstan.dist.neon new file mode 100644 index 0000000000..f242b77eeb --- /dev/null +++ b/tests/PHPStan/Command/test-autodiscover-no-dot-dist-dot-neon/phpstan.dist.neon @@ -0,0 +1,4 @@ +includes: + - ../../../../conf/bleedingEdge.neon + +parameters: diff --git a/tests/PHPStan/Command/test-autodiscover-no-dot-dist/phpstan.neon.dist b/tests/PHPStan/Command/test-autodiscover-no-dot-dist/phpstan.neon.dist new file mode 100644 index 0000000000..f242b77eeb --- /dev/null +++ b/tests/PHPStan/Command/test-autodiscover-no-dot-dist/phpstan.neon.dist @@ -0,0 +1,4 @@ +includes: + - ../../../../conf/bleedingEdge.neon + +parameters: diff --git a/tests/PHPStan/Command/test-autodiscover-no-dot/phpstan.neon b/tests/PHPStan/Command/test-autodiscover-no-dot/phpstan.neon new file mode 100644 index 0000000000..f242b77eeb --- /dev/null +++ b/tests/PHPStan/Command/test-autodiscover-no-dot/phpstan.neon @@ -0,0 +1,4 @@ +includes: + - ../../../../conf/bleedingEdge.neon + +parameters: diff --git a/tests/PHPStan/Command/test-autodiscover-priority-dot/.phpstan.neon b/tests/PHPStan/Command/test-autodiscover-priority-dot/.phpstan.neon new file mode 100644 index 0000000000..f242b77eeb --- /dev/null +++ b/tests/PHPStan/Command/test-autodiscover-priority-dot/.phpstan.neon @@ -0,0 +1,4 @@ +includes: + - ../../../../conf/bleedingEdge.neon + +parameters: diff --git a/tests/PHPStan/Command/test-autodiscover-priority-dot/phpstan.neon b/tests/PHPStan/Command/test-autodiscover-priority-dot/phpstan.neon new file mode 100644 index 0000000000..f242b77eeb --- /dev/null +++ b/tests/PHPStan/Command/test-autodiscover-priority-dot/phpstan.neon @@ -0,0 +1,4 @@ +includes: + - ../../../../conf/bleedingEdge.neon + +parameters: