phparch
phparch copied to clipboard
Classes of PHP extensions not detected via composer `ext-*`
I have the following in my composer.json
"require": {
"ext-ds": "*",
}
but I still get an error if I'm using Ds\\*
classes:
App must only depend on dependencies in /app/tests/../composer.json (/app/tests/../composer.lock) but XXX depends on Ds\Map
.
As workaround I had to add Ds\\
as explicitly allowed dependency:
$composerParser = new ComposerFileParser(__DIR__ . '/../composer.json');
$validator = new MustOnlyDependOnComposerDependencies('App\\', $composerParser);
// ext-ds is not listed as dev dependency
$validator = new ExplicitlyAllowDependency($validator, 'App\\', 'Ds\\');
$this->phpArch->validate($validator);