Skip to content

Remove modules infrastructure #1030

@felixarntz

Description

@felixarntz

Following #1029, there are effectively no longer any modules as part of Performance Lab. This should remain that way. As such, all modules infrastructure should be entirely removed.

Let's focus on the minimum effort needed to clean up in this issue. Further enhancements to user experience should be considered in separate issues.

Here is a non comprehensive list of what needs to be removed:

  • All UI related to toggling modules (i.e. the checkboxes).
  • All UI related to the module migration.
  • All PHP functions related to module settings.
  • All PHP functions related to loading modules, module activation/deactivation etc.
  • All PHP functions related to migrating from modules to their standalone plugins.
  • The perflab_is_standalone_plugin_loaded() PHP function (as it relates to modules).
  • All unit test coverage related to module infrastructure.
  • All CLI scripts in bin that deal with modules exclusively.
  • All GitHub workflows that deal with modules exclusively (such as building and testing modules, publishing modules, ...).
  • Utility files, like module-i18n.php, default-enabled-modules.php, and their usage and surrounding infrastructure.
  • Any reference to modules, really :)

Additional changes to be made:

  • The plugins.json file should no longer support a "modules" entry. Tooling (e.g. scripts and GitHub workflows) should be updated to no longer consider that "modules" entry. For example, the deploy-standalone-plugins.yml workflow should be updated to only work with the actual plugins in the /plugins folder and no longer reference modules, which means for example scripts like get-plugin-dir can be removed as it will now always be the /plugins directory.
  • The $source parameter of the perflab_get_standalone_plugin_version_constants() function should be deprecated (or removed) and effectively always be for plugins.
  • The generator tag should be adjusted to not include any information about modules. In other words, it output should look like Performance Lab %1$s; plugins: %2$s going forward.
  • The copy of the default admin pointer should be adjusted to no longer say "performance features included in the plugin", but just "performance features".
  • The main readme.txt should be updated to no longer list the available modules.
  • The readme JS script should be adjusted to no longer try to populate the list of available modules into readme.txt (the changelog functionality should be kept though).

These lists may not be complete, and further things to remove/update may come up as a PR is being worked on.

Metadata

Metadata

Labels

InfrastructureIssues for the overall performance plugin infrastructure[Plugin] Performance LabIssue relates to work in the Performance Lab Plugin only[Type] EnhancementA suggestion for improvement of an existing feature

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions