-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Overview: Creating standalone plugins #656
Comments
See #699 for the PR that brings all the initial Milestone 1 work into Related PL plugin changes (which are minimal) will be included in the upcoming 2.2.0 release. |
Reopening as the "2b" part (for Performance Lab 3.0 release, tentatively March) is still left to do. I'm planning to open issues for that this week. |
@joemcgill @mukeshpanchal27 @swissspidy @westonruter @thelovekesh Now that the There are still a few discussions going on regarding whether or when we should go through with the plan to remove the legacy modules from Performance Lab. For that reason, I would advise to not merge #1011 and #1019 until that decision has been finalized. Potentially we may delay the 3.0.0 release until the decision as well. Here are two alternative ideas how we can deal with that in a way that gets us out of the complex branching limbo state we're currently in:
Let me know your thoughts on those ideas. |
+1 for the second choice. For any immediate patch releases, we can focus on |
I also lean toward option 2. |
Option 2 👍 |
Thanks, looks like option 2 is already with enough votes to be a decision :) Before we do that, I just want to double check: I believe both https://github.com/WordPress/performance/blob/trunk/.github/workflows/deploy-dotorg.yml and https://github.com/WordPress/performance/blob/trunk/.github/workflows/deploy-standalone-plugins.yml act on the branch that a release is created from, correct? I just want to make sure that if we release a 2.9.x from the future Oh, and on another note: I just noticed we merged https://github.com/WordPress/performance/blob/feature/modules-to-plugins/.github/workflows/deploy-standalone-plugins.yml with the |
I also go with Option 2.
I will open PR that removes those |
The PR #1020 ready for review. |
@felixarntz I agree mostly with option 2, the only modification I would suggest is that we don't need a new release branch for any 2.9.x versions, as we already have release/2.9.0 that we can use to prepare and release any minor releases. The main thing we may need to be aware of is that many github actions will run the version that is described in the default branch of the repo, so we should review our workflows to make sure we won't be breaking anything (particularly deployment workflows) by merging changes to workflows prematurely. At this point, the sooner we can merge the current |
I just checked and there are a few minor fixes in |
I just ended up creating a The PR #1021 to merge |
Thanks for the explanation. Given that we also have tags for each release, having additional branches that are release specific, and not for the purpose of being able to handle bug/security fixes related to one of our previous major releases, probably isn't useful, but we can discuss updating our branching strategy elsewhere. |
I have opened issues for the additional polishing work discussed earlier today, which includes removing modules entirely and revising the UI to focus on features rather than plugins. See the 2c entry in the issue description for those issue links. |
I've changed #1032 to be an overview issue where we can define and collect the tasks to be done to enhance the onboarding experience as a separate epic. We can now consider the initial project for transitioning modules to standalone projects to be complete and close this epic. |
Originally discussed in #618, this issue acts purely as an overview of all the issues related to creating standalone plugins for the modules that are currently part of the Performance Lab plugin, and then removing the corresponding modules from the PL plugin in favor of the new standalone plugins.
Milestones
This effort should be broken down into 2 milestones:
The first milestone will unblock the more urgent goal of having standalone plugins for every performance feature project, as well as therefore having a clear path forward also for new features.
The second milestone will ensure those standalone plugins are the canonical way to test those features, with the Performance Lab plugin still providing supporting features e.g. related to performance measurement and management of the performance related features and their plugins.
While the first milestone does not change anything notable for existing Performance Lab plugin users, the second one will require administrators to install/activate the new plugins and can therefore be considered a breaking change. As such, the second milestone should eventually be released with a major version number change, as
3.0.0
.List of issues
The list below includes all related issues, somewhat ordered by their intended sequence of execution. Important to note:
Milestone 1
load.php
files #667Migrate SQLite integration plugin back into monorepo for development #661Milestone 2
2a (2.8.0 release)
feature/creating-standalone-plugins
feature branch intotrunk
#901Follow-up PRs:
2b (3.0.0 release)
plugins
folder for standalone plugins #9342c (3.0.0 release polishing)
Follow-up Issues & PRs:
phpcs.xml.dist
Files for Each Plugin to Isolate Text Domains #997plugins
directory plugin. #1006auto-sizes
to plugins folder #972feature/auto-sizes
branch #971TODO
fromdeploy-standalone-plugins.yml
#1020get-plugin-dir
command for plugins #1026See #911 for somewhat related discussion, which however is not a blocker to this effort. Additionally, documentation for how to write a module will need to be updated after the 2b changes, and basic documentation for how to start a new plugin in the repo should be added too.
The text was updated successfully, but these errors were encountered: