I'm developing WordPress plugins. Each plugin in WordPress is a separate piece of software, there's no dependency management in WordPress, so plugins are not aware of other plugins and their dependencies. The problem with PHP is that all dependencies installed with Composer are global.
Let's imagine that my plugin uses a popular PHP library - Symfony, or Guzzle, let's say. More popular library = greater possibility of a conflict.
Is there any way to avoid conflicts? I was searching the web for Composer sandbox solutions or similar, but I didn't find anything - so I'm afraid the solution doesn't exist.
On the other hand, I can imagine a solution that wouldn't involve any rocket science. I can imagine a pre-deployment build script that would scan the /vendor
directory and prefix all the dependencies with a custom prefix.
Is there any tool or any technique that would provide a dependences isolations in PHP?