[wp-trac] [WordPress Trac] #22316: Plugin Dependencies (Yet Another Plugin Dependencies Ticket)

WordPress Trac noreply at wordpress.org
Sat Feb 11 19:02:33 UTC 2023


#22316: Plugin Dependencies (Yet Another Plugin Dependencies Ticket)
-------------------------------------------------+-------------------------
 Reporter:  Viper007Bond                         |       Owner:  afragen
     Type:  enhancement                          |      Status:  assigned
 Priority:  normal                               |   Milestone:  6.3
Component:  Upgrade/Install                      |     Version:  3.4.2
 Severity:  normal                               |  Resolution:
 Keywords:  dev-feedback has-patch needs-        |     Focuses:
  design-feedback needs-dev-note has-unit-tests  |
  2nd-opinion                                    |
-------------------------------------------------+-------------------------

Comment (by costdev):

 > @azaozz Not sure the global "Dependencies" tab is a good idea here. The
 other tabs are for popular, recommended, favorite, etc. plugins that are
 selected by the plugins repository. The tabs are (mostly) shortcuts when
 searching for new or replacement plugins. Dependencies are predetermined
 and required. A "Dependencies" tab doesn't belong there imho.

 While it's true that one difference is that the plugins shown in the
 **Dependencies** tab are required, both the **Dependencies** and
 **Favorites** tabs contain a somewhat pre-determined list of plugins - One
 determined via the "Requires Plugins" headers, one determined by the user
 (plugins the user has marked as favorites).

 In that sense, these tabs are not only used as search filters, but as
 lists of plugins curated through a number of paths, and the
 **Dependencies** tab provides shortcuts to install/activate a curated list
 of required plugins.

 > Thinking that perhaps the dependencies will be shown separately for each
 theme/plugin. Seems this can be in the plugin's "Install/View details"
 dialog (popup/card). Installing dependencies should be from there too
 imho.

 Interesting thought. I took a look at the View details dialog to think
 about this in situ. I'm not sure where we could put dependency
 installation/activation links that would be easily consumed by users. On
 the other hand, the **Dependencies** tab provides an experience that's
 consistent with the other **Install plugin** tabs. It also doesn't
 overload users with too much additional information, and only shows the
 user what they need to handle the task of installing/activating
 dependencies.

 > It is unclear how incompatibilities between different versions of
 themes/plugins and their dependencies can be handled.

 In the event that old versions of **Plugin A** and **Plugin A addon 1**
 are installed, and a site owner installs and is able to activate **Plugin
 A addon 2** that requires the latest version of **Plugin A**, Core already
 acts on a fatal error upon activation and forces **Plugin A addon 2** to
 deactivate. If the error came later, then the handling of this is a site
 owner matter, as it is today.

 For this initial phase of Plugin Dependencies, I think it's important that
 we don't explore versioning, as there's a fine line to tread between
 Plugin Dependencies, and Composer in WP. We could do with some time to
 discuss such possibilities and consider whether there's a viable path
 forward for some level of version handling in Core.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/22316#comment:278>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list