Stars: 136
Forks: 11
Pull Requests: 505
Issues: 19
Watchers: 10
Last Updated: 2023-09-15 15:12:48
Composer plugin that wraps all composer vendor packages inside your own namespace. Intended for WordPress plugins.
License: MIT License
Languages: PHP
Composer plugin that wraps all composer vendor packages inside your own namespace. Intended for WordPress plugins.
Built with ♥ by Typist Tech
Imposter Plugin is an open source project and completely free to use.
However, the amount of effort needed to maintain and develop new features is not sustainable without proper financial backing. If you have the capability, please consider donating using the links below:
Wrapping all composer vendor packages inside your own namespace. Intended for WordPress plugins. Imposter Plugin is a composer plugin wrapper for Imposter.
Because of the lack of dependency management in WordPress, if two plugins bundled conflicting versions of the same package, hard-to-reproduce bugs arise. Monkey patching composer vendor packages, wrapping them inside your own namespace is a less-than-ideal solution to avoid such conflicts.
See:
Installation should be done via composer, details of how to install composer can be found at https://getcomposer.org/.
First, add Imposter configuration in your composer.json
"extra": {
"imposter": {
"namespace": "My\\App\\Vendor",
"excludes": [
"dummy/dummy-excluded"
]
}
}
Then, install via composer cli
composer require typisttech/imposter-plugin
See: Imposter readme for details.
Typist Tech is ready to build your next awesome WordPress site. Hire us!
Once installed, this plugin hooks into composer install
, composer update
and composer dump-autoload
, automatically run imposter for you.
Besides, imposter plugin autoloads all modified files as classmap.
When those events triggered, this plugin:
/path/to/project/root/composer.json
composer.json
Learn more on imposter's readme.
Help wanted. Pull requests are welcomed.
composer install
and composer update
Learn more on imposter's readme for more details.
Use imposter directly.
$ composer install --no-dev --classmap-authoritative --prefer-dist
$ composer archive
Impostified plugins are meant to be commited to wp.org svn.
Using imposter means you forgo the ability to install the plugins with composer directly via packagist.org or VCS (even with type: wordpress-plugin
in composer.json
).
To composer require
impostified plugins, use wpackagist.org.
Until WordPress core comes up with a solution on dependency managment, keep clam and carry on.
In the meantime, checkout these tools to make WordPress suck less modernizing WordPress development:
Here you go:
Add your own here
Both v1 and v2.
Never! This plugin will only work on actively supported PHP versions.
Don't use it on end of life or security fixes only PHP versions.
Thanks! Glad you like it. It's important to let me knows somebody is using this project. Please consider:
composer test
composer style:check
Here is a list of alternatives that I found. However, none of these satisfied my requirements.
If you know other similar projects, feel free to edit this section!
Mozart by Coen Jacobs
Please provide feedback! We want to make this project as useful as possible. Please submit an issue and point out what you do and don't like, or fork the project and send pull requests. No issue is too small.
If you discover a security vulnerability within this project, please email us at [email protected]. All security vulnerabilities will be promptly addressed.
Imposter Plugin is a Typist Tech project and maintained by Tang Rufus, freelance developer for hire.
Full list of contributors can be found here.
Imposter Plugin is released under the MIT License.