pb30 / phpstan-composer-analysis
Installs: 10 166
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 1
Type:phpstan-extension
Requires
- php: ~8.1|~8.2|~8.3|~8.4
- phpstan/phpstan: ^2.1.6
- shipmonk/composer-dependency-analyser: 1.8.2
Requires (Dev)
- laravel/pint: ^1.20
README
PHPStan Wrapper for Composer Dependency Analysis
This is a PHPStan Extension for shipmonk/composer-dependency-analyser.
This allows you to use composer-dependency-analyser
without adding additional steps in your CI pipeline.
Installation
composer require --dev pb30/phpstan-composer-analysis
- Add the following to your
phpstan.neon
includes:- vendor/pb30/phpstan-composer-analysis/extension.neon
Usage
Composer dependency issues are reported as standard PHPStan errors.
You can ignore any errors or false positives using the standard PHPStan ignoreErrors
configuration or through the settings below..
------ ---------------------------------------------------------------------
Line app/DateHelpers.php
------ ---------------------------------------------------------------------
17 Shadow dependency detected: nesbot/carbon using Carbon\CarbonPeriod
💡 Class is used, but is not specified in composer.json
------ ---------------------------------------------------------------------
------ -------------------------------------------------------------------------
Line app/MyHelper.php
------ -------------------------------------------------------------------------
19 Dev dependency used in production: fakerphp/faker using Faker\Generator
💡 This should probably be moved to "require" section in composer.json
------ -------------------------------------------------------------------------
------ ---------------------------------------------------------------------------------
Line composer.json
------ ---------------------------------------------------------------------------------
-1 Prod dependency used only in dev paths: spatie/once
💡 This should probably be moved to "require-dev" section in composer.json
-1 Unused dependency detected: predis/predis
💡 This is are listed in composer.json, but no usage was found in scanned paths
------ ---------------------------------------------------------------------------------
Configuration
Several settings for composer-dependency-analyser
can be configured in phpstan.neon
:
parameters: composerAnalysis: additionalProdPath: - config - routes additionalDevPaths: - database/seeders ignoreAllShadowDeps: false ignoreAllDevDepsInProd: false ignoreAllProdDepsInDev: false ignoreAllUnusedDeps: false disableExtensionsAnalysis: false ignoreSpecificUnusedDeps: - laravel/tinker