Make WordPress Core

Opened 6 months ago

Last modified 5 months ago

#61419 new feature request

allow to disable plugin dependencies feature

Reported by: pir1's profile pir1 Owned by:
Milestone: Awaiting Review Priority: normal
Severity: normal Version:
Component: Plugins Keywords:
Focuses: Cc:

Description

Hi,
we are debuging quite a mix of plugins and some pages have 40 or more and multiple dependencies. With the plugin dependencies, it has become a chore to disable and enable a bunch of dependent plugins at once for debuging purposes. It would be a huge help, if there was an option to disable the plugin dependencies.
Thanks,
Karel

Change History (4)

#1 @poena
5 months ago

Each plugin developer defines their own dependencies, and the plugins likely not work without them, what do you suggest should happen if the feature is disabled in WordPress core? And how is it different from not being allowed to activate a plugin that has a missing dependency?

Version 0, edited 5 months ago by poena (next)

#2 @knutsp
5 months ago

The problem I see is that the checkbox for bulk actions are unavaliable. This is a pain and an uncesesary UI restriction. If the action is not allowed, just ignore it and emit a message that some plugins were not acted upon.

#3 follow-up: @peterwilsoncc
5 months ago

  • Severity changed from major to normal

I understand the frustration of the disabled checkboxes in bulk actions.

Instead of allowing plugin dependencies to be turned off, I think a better solution might be to improve the JavaScript so that once one plugin's checkbox is checked, the checkboxes for any plugins that depend on it become enabled.

There are a few complicating factors such as when the bulk actions as being used to deactivate or delete plugins that would need to be worked out so a little more brainstorming of various approaches would need to be considered.

#4 in reply to: ↑ 3 @knutsp
5 months ago

Replying to peterwilsoncc:

Instead of allowing plugin dependencies to be turned off, I think a better solution might be to improve the JavaScript so that once one plugin's checkbox is checked, the checkboxes for any plugins that depend on it become enabled.

Why not just enable them all?

Like when I tick activated plugins and apply bulk Delete, no action is taken on the active plugins. There is no explaining message in this case, which I think is bad UX.

Or when I want to enable or disable Auto-update for many depending plugins, there is no way to do that in bulk.

But much worse: When I frist deactivate a plugin that has dependent plugins, I can deactivate the depending ones one by one, but not in bulk. I have a plugin A that depends on about 10 other plugins. To debug something, I want to deactivate this plugin A and all the 10. I then have to deactivate 11 plugins one by one, instead of just 1 plugin individually, then 10 in bulk.

Your proposed solution will probably help in this last case, but it will require all of the plugins to be deactivated in the right order, as some of the 10 may depend on each other, too.

By ignoring illegal activations, deactivations and deletions, keep the selections on those and emit a message about it, the admin can just repeat the bulk actions one (or a few) time(s) until all are executed.

Then, in a future iteration, perhaps, this repetition can be automated, using this "incremental" approach towards the goal of getting them all activated, deactivated or deleted.

Note: See TracTickets for help on using tickets.