diff --git a/composer.json b/composer.json index 7c6269e2..7c9b9b98 100644 --- a/composer.json +++ b/composer.json @@ -27,7 +27,6 @@ ], "require": { "php": "^8.0", - "ext-json": "*", "ext-phar": "*", "composer-runtime-api": "^2.0.0", "nikic/php-parser": "^4.13.0", @@ -49,7 +48,8 @@ "optimize-autoloader": true, "sort-packages": true, "allow-plugins": { - "dealerdirect/phpcodesniffer-composer-installer": true + "dealerdirect/phpcodesniffer-composer-installer": true, + "infection/extension-installer": true } }, "extra": { diff --git a/data/config.dist.json b/data/config.dist.json index 1576e3f7..212d250f 100644 --- a/data/config.dist.json +++ b/data/config.dist.json @@ -7,6 +7,7 @@ "php-core-extensions" : [ "Core", "date", + "json", "pcre", "Phar", "Reflection", diff --git a/src/ComposerRequireChecker/Cli/Options.php b/src/ComposerRequireChecker/Cli/Options.php index 4f4b159a..2f244da7 100644 --- a/src/ComposerRequireChecker/Cli/Options.php +++ b/src/ComposerRequireChecker/Cli/Options.php @@ -41,6 +41,7 @@ class Options private array $phpCoreExtensions = [ 'Core', 'date', + 'json', 'pcre', 'Phar', 'Reflection', diff --git a/src/ComposerRequireChecker/DefinedExtensionsResolver/DefinedExtensionsResolver.php b/src/ComposerRequireChecker/DefinedExtensionsResolver/DefinedExtensionsResolver.php index 1b1be2c7..9e82285e 100644 --- a/src/ComposerRequireChecker/DefinedExtensionsResolver/DefinedExtensionsResolver.php +++ b/src/ComposerRequireChecker/DefinedExtensionsResolver/DefinedExtensionsResolver.php @@ -8,7 +8,7 @@ use function array_merge; use function file_get_contents; use function json_decode; -use function strpos; +use function str_starts_with; use function substr; class DefinedExtensionsResolver @@ -32,7 +32,7 @@ public function __invoke(string $composerJson, array $phpCoreExtensions = []): a continue; } - if (strpos($require, 'ext-') !== 0) { + if (! str_starts_with($require, 'ext-')) { continue; } diff --git a/src/ComposerRequireChecker/DependencyGuesser/GuessFromLoadedExtensions.php b/src/ComposerRequireChecker/DependencyGuesser/GuessFromLoadedExtensions.php index 25236e01..a401043d 100644 --- a/src/ComposerRequireChecker/DependencyGuesser/GuessFromLoadedExtensions.php +++ b/src/ComposerRequireChecker/DependencyGuesser/GuessFromLoadedExtensions.php @@ -41,7 +41,7 @@ public function __invoke(string $symbolName): Generator continue; } - if ($this->coreExtensions && in_array($extensionName, $this->coreExtensions)) { + if ($this->coreExtensions && in_array($extensionName, $this->coreExtensions, true)) { yield 'php'; }