[wp-trac] [WordPress Trac] #60457: Plugin Dependencies: Running update_option within wp-settings can be catastrophic for a high traffic site

WordPress Trac noreply at wordpress.org
Sun Feb 18 21:13:56 UTC 2024


#60457: Plugin Dependencies: Running update_option within wp-settings can be
catastrophic for a high traffic site
-------------------------------------------------+-------------------------
 Reporter:  dd32                                 |       Owner:  costdev
     Type:  defect (bug)                         |      Status:  assigned
 Priority:  normal                               |   Milestone:  6.5
Component:  Plugins                              |     Version:  trunk
 Severity:  normal                               |  Resolution:
 Keywords:  dev-feedback has-patch has-unit-     |     Focuses:
  tests needs-testing has-testing-info           |  performance
-------------------------------------------------+-------------------------

Comment (by zunaid321):

 == Test Report
 This report validates that the indicated patch addresses the issue.

 Patch tested: https://github.com/WordPress/wordpress-
 develop/pull/6123.diff

 === Environment
 - WordPress: 6.5-beta1-57630-src
 - PHP: 8.2.12
 - Server: nginx/1.25.3
 - Database: mysqli (Server: 8.0.36 / Client: mysqlnd 8.2.12)
 - Browser: Chrome 121.0.0.0
 - OS: Windows 10/11
 - Theme: Twenty Twenty-Four 1.0
 - MU Plugins: None activated
 - Plugins:
   * Test Reports 1.1.0
   * WooCommerce 8.6.0
   * WPSSO Core 17.13.0
   * WPSSO Product Metadata for WooCommerce SEO 4.1.1

 === Actual Results
 - 2a. The "Install Now" button is disabled. ✅
 - 2b. The card contains a notice that additional plugins are required,
 with two plugins listed and a "More details" link for each. ✅
 - 3. The "Install Now" button at the bottom of the modal is disabled. ✅
 - 4. The "Install Now" button is enabled. ✅
 - 5a. The "Install Now" button changes to "Installing..." with a loading
 circle. ✅
 - 5b. After a few moments, the button changes to "Installed!", then
 changes to an enabled "Activate" button. ✅
 - 6. The "Activate" button changes briefly to "Activating..." with a
 loading circle, then to a disabled "Active" button. ✅
 - 7a. The "Install Now" button is disabled. ✅
 - 7b. The "Install Now" button changes to "Installing..." with a loading
 circle. ✅
 - 7c. After a few moments, the button changes to "Installed!", then
 changes to an enabled "Activate" button. ✅
 - 7d. The "Activate" button changes briefly to "Activating..." with a
 loading circle, then to a disabled "Active" button. ✅
 - 8. The "Install Now" button for the **WPSSO Product Metadata** plugin is
 still disabled. ✅
 - 9. The "Install Now" button is enabled. ✅
 - 10. The "Install Now" button for **WPSSO Product Metadata** is now
 enabled. ✅
 - 11a. The "Install Now" button changes to "Installing..." with a loading
 circle. ✅
 - 11b. After a few moments, the button changes to "Installed!", then
 changes to an enabled "Activate" button. ✅
 - 12. The "Activate" button changes briefly to "Activating..." with a
 loading circle, then to a disabled "Active" button. ✅
 - 13a. The **WPSSO Product Metadata** plugin and its required plugins are
 active. ✅
 - 13b. The checkbox for the two required plugins is disabled. ✅
 - 13c. The required plugins have a disabled "Deactivate" action. ✅
 - 13d. The required plugins have a "Required by:" line in their
 description with the **WPSSO Product Metadata** plugin included. ✅
 - 13e. The required plugins have a "Note:" that says they cannot be
 deactivated or deleted until the plugins that require them are deactivated
 and deleted. ✅
 - 13f. The checkbox for **WPSSO Product Metadata** is enabled. ✅
 - 13g. The "Deactivate" action for **WPSSO Product Metadata** is enabled.
 ✅
 - 13h. **WPSSO Product Metadata** has a "Requires:" line in its
 description with the two required plugins listed as links. ✅
 - 14. The required plugin links open a modal that shows that plugin's
 information, and at the bottom is a disabled "Active" button. ✅
 - 15. In the description for **WPSSO Product Metadata**, there is also a
 "Note:" that says it cannot be activated until the plugins that require it
 are activated. ✅
 - 16. When the page reloads, the "Deactivate" action for the two required
 plugins is enabled. ✅
 - 17. When the page reloads, the "Delete" action for the two required
 plugins is disabled. ✅
 - 19a. There is a notice saying that required plugins are missing. ✅
 - 19b. **WPSSO Product Metadata** is still active. ✅
 - 19c. The "Delete" action for the remaining required plugin is still
 disabled. ✅
 - 19d. The "Delete" action for **WPSSO Product Metadata** is enabled. ✅
 - 20. **WPSSO Product Metadata** deletes successfully. ✅
 - 21. The "Delete" action for the remaining required plugin is enabled. ✅
 - 22. The remaining required plugin deletes successfully. ✅

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


More information about the wp-trac mailing list