Understand detected dependency issues
masterThe tool detects several types of dependency misconfigurations:
- Shadowed dependencies: Dependencies of your dependencies that are used in your code but not explicitly listed in
composer.json. These can break if a direct dependency updates and removes the requirement. - Unused dependencies: Non-dev dependencies listed in
composer.jsonthat have no detected usage in the scanned paths. - Dev dependencies in production code: Packages listed in
require-devthat are actually used in your production source code. This can cause failures in environments running with--no-dev. - Prod dependencies used only in dev paths: Packages listed in
requirethat are only used within development paths (e.g., tests). Moving these torequire-devreduces unnecessary overhead for users. - Unknown classes/functions: Symbols that cannot be autoloaded or defined during runtime. These are reported because the tool cannot determine if they are shadowed or not.