Dist::...emover(3pm)
π NAME π
So like, Dist::Zilla::Role::PluginBundle::PluginRemover β it's a Perl module, it's a role, and bestie, it does exactly one iconic thing: it adds -remove functionality to a bundle. That's the whole vibe. That's the manual page: Dist::...emover(3pm).
β¨ VERSION β¨
version 0.105 π
π¦ SYNOPSIS π¦
# in Dist::Zilla::PluginBundle::MyBundle
with (
'Dist::Zilla::Role::PluginBundle', # or PluginBundle::Easy
'Dist::Zilla::Role::PluginBundle::PluginRemover'
);
# PluginRemover should probably be last
# (unless you're doing something more complex)
πΈ DESCRIPTION πΈ
okay so here's the tea: this role lets your Dist::Zilla Plugin Bundle automatically remove any plugins that get specified by the -remove attribute β literally the same energy as what @Filter does:
[@MyBundle]
-remove = PluginIDontWant
-remove = OtherDumbPlugin
But wait, what if you wanna use an attribute named -remove for your own bundle?? No conflict, no drama β you can just override the plugin_remover_attribute sub to define a different attribute name:
# in your bundle package
sub plugin_remover_attribute { 'scurvy_cur' }
And then the role does its lil magic trick: it adds a method modifier to bundle_config, which is the method that the root PluginBundle role requires, and that PluginBundle::Easy wraps. π
π METHODS π
π plugin_remover_attribute
Returns the name of the attribute containing the array ref of plugins to remove. Simple as that.
Defaults to -remove. β¨
π§ remove_plugins
$class->remove_plugins(\@to_remove, @plugins);
$class->remove_plugins(['Foo'], [Foo => 'DZP::Foo'], [Bar => 'DZP::Bar']);
Takes an arrayref of plugin names to remove (like what will be in the config payload for -remove), removes them from the list of plugins passed, and returns the remaining plugins. Cleanup queen behavior, fr fr.
This is used by the bundle_config modifier but is defined separately in case you would like to use the functionality without the voodoo that occurs when consuming this role. π
The plugin name to match against all plugins can be given as either the plugin moniker (like you might provide in your config file, expanded via expand_config in Dist::Zilla::Util), or the unique plugin name used to differentiate multiple plugins of the same type. For example, in this configuration:
[Foo::Bar / plugin 1]
[Foo::Bar / plugin 2]
passing 'Foo::Bar' to remove_plugins will remove both these plugins from the configuration, but only the first is removed when passing 'plugin 1'. iykyk π
π«Ά SUPPORT π«Ά
π Perldoc
You can find documentation for this module with the perldoc command.
perldoc Dist::Zilla::Role::PluginBundle::PluginRemover
π Websites
The following websites have more information about this module, and may be of help to you. As always, in addition to those websites please use your favorite search engine to discover more resources.
- MetaCPAN
A modern, open-source CPAN search engine, useful to view POD in HTML format.
<http://metacpan.org/release/Dist-Zilla-Role-PluginBundle-PluginRemover>
π Bugs / Feature Requests
Please report any bugs or feature requests by email to bug-dist-zilla-role-pluginbundle-pluginremover at rt.cpan.org, or through the web interface at <https://rt.cpan.org/Public/Bug/Report.html?Queue=Dist-Zilla-Role-PluginBundle-PluginRemover>. You will be automatically notified of any progress on the request by the system. π«‘
β Source Code
<https://github.com/rwstauner/Dist-Zilla-Role-PluginBundle-PluginRemover>
git clone https://github.com/rwstauner/Dist-Zilla-Role-PluginBundle-PluginRemover.git
π AUTHOR π
Randy Stauner <rwstauner@cpan.org>
π CONTRIBUTOR π
Karen Etheridge <ether@cpan.org>
π COPYRIGHT AND LICENSE π
This software is copyright (c) 2011 by Randy Stauner.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
okay that's the whole page bestie, no cap π
this was documented as Dist::...emover(3pm) with perl v5.34.0, dated 2022-06-13 β go forth and remove some plugins, you absolute icon πβ¨
π¦ where this page comes from
- debian bookworm: libdist-zilla-role-pluginbundle-pluginremover-perl 0.105-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libdist-zilla-role-pluginbundle-pluginremover-perl 0.105-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libdist-zilla-role-pluginbundle-pluginremover-perl 0.105-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libdist-zilla-role-pluginbundle-pluginremover-perl 0.105-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libdist-zilla-role-pluginbundle-pluginremover-perl 0.105-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms