Allow Composer Dependencies to be scoped #309
Labels
ci/cd
PR checks, deploys, automation
enhancement
New feature or request
php
Requires understanding PHP
Description
I would like to see our plugins not conflict with code in a project and act more isolated. When requiring a
create-wordpress-plugin
-based plugin, you're also including all the Composer dependencies that come with the plugin (especially if you require it with Composer!). This shouldn't be the case (and won't work if you're pushing to WordPress.org).Plugins that are scaffolded from
create-wordpress-plugin
should have the option of a build step that will scope the plugin's dependencies and prune any dependencies fromcomposer.json
(we don't want to have them added back when you require the plugin). When a plugin is installed, the plugin will use the scoped plugin dependencies instead (My_Plugin_Vendor\Symfony\Console
vsSymfony\Console
).h2. Acceptance Criteria
php-scoper
that will automatically scope the plugin's vendor files for release.src
files should not be modified, only changed to reference and use the newly scoped classes (we don't want to scope the plugin's file, only vendor).Some prior art:
Use Case
When a user scaffolds a plugin they can optionally scope their vendor files to prevent any potential conflicts.
The text was updated successfully, but these errors were encountered: