WordPress/wp-admin
costdev 9ebcbfae5c Upgrade/Install: Check plugin compatibility during bulk upgrades.
Previously, bulk upgrades did not verify that a plugin package was compatible with the site's WordPress version or the server's PHP version. This could lead to incompatible updates being installed, causing various compatibility issues and errors.

This change implements the following checks:
- If available, the API response's `requires` and `requires_php` values are checked for compatibility. This saves time, diskspace, memory and file operations by failing the upgrade before the package is downloaded and unpacked.
- If the API check passes, the downloaded and unpacked package is verified using `Plugin_Upgrader::check_package()` to ensure a plugin file is present, and the plugin's "RequiresWP" and "RequiresPHP" headers are compatible, if present. This ensures that a mismatch between the API response and the plugin file's headers does not cause an incompatible plugin to be installed.

Props salcode, afragen, mukesh27, iammehedi1, zunaid321, johnbillion, SergeyBiryukov, costdev.
Fixes #59198.
Built from https://develop.svn.wordpress.org/trunk@56525


git-svn-id: http://core.svn.wordpress.org/trunk@56037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 18:30:19 +00:00
..
css General: Use regular core button styles for page header actions. 2023-08-24 20:16:18 +00:00
images Help/About: Updates to About page. 2023-07-24 23:39:22 +00:00
includes Upgrade/Install: Check plugin compatibility during bulk upgrades. 2023-09-06 18:30:19 +00:00
js External Libraries: Update deprecated jQuery code in Farbtastic lib. 2023-07-17 22:03:26 +00:00
maint Coding Standards: Use strict comparison in `wp-admin/maint/repair.php`. 2023-04-11 16:30:22 +00:00
network Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
user
about.php Help/About: Add images to About page, match header style to images. 2023-08-01 15:04:22 +00:00
admin-ajax.php Coding Standards: Remove extra space in `wp-admin/admin-ajax.php`. 2022-05-07 16:21:18 +00:00
admin-footer.php Coding Standards: Simplify a condition in `wp-admin/admin-footer.php`. 2021-06-01 11:30:57 +00:00
admin-functions.php
admin-header.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
admin-post.php Administration: Require a valid action parameter to be set for `admin-ajax.php` requests. 2022-03-02 15:00:11 +00:00
admin.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
async-upload.php Media: Remove target blank attribute from media uploader edit links. 2022-01-27 22:17:00 +00:00
authorize-application.php Docs: Various corrections and improvements to inline documentation. 2022-08-04 14:52:11 +00:00
comment.php Code Modernization: Replace usage of `strpos()` with `str_contains()`. 2023-06-22 14:36:26 +00:00
contribute.php Help/About: Escape "Contribute" links, for better consistency. 2023-08-01 12:58:22 +00:00
credits.php Help/About: Escape "Contribute" links, for better consistency. 2023-08-01 12:58:22 +00:00
custom-background.php
custom-header.php
customize.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
edit-comments.php General: Replace some instances of "blog" with "site" in documentation, translator comments, and user-facing text strings. 2023-06-19 18:27:27 +00:00
edit-form-advanced.php Help/About: Avoid extra redirections on HelpHub Links. 2023-02-23 11:06:19 +00:00
edit-form-blocks.php Editor: Fix layout of no-js state in site editor. 2023-07-10 21:22:21 +00:00
edit-form-comment.php I18N: Mark screen reader strings as such with translator comments. 2023-02-07 17:10:21 +00:00
edit-link-form.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
edit-tag-form.php Networks and Sites: Officially remove global terms. 2022-09-20 02:51:09 +00:00
edit-tags.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
edit.php Help/About: Match icon and text in Help for bulk edit button. 2023-08-24 20:27:12 +00:00
erase-personal-data.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
export-personal-data.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
export.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
freedoms.php Help/About: Updates to About page. 2023-07-24 23:39:22 +00:00
import.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
index.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
install-helper.php Docs: Fix typo and improve DocBlock formatting in `wp-admin/install-helper.php`. 2022-11-20 14:10:15 +00:00
install.php Upgrade/Install: Add aria-describedby for input descriptions. 2023-06-25 18:44:23 +00:00
link-add.php Docs: Add a comment about the `$title` global usage in various admin files. 2021-07-22 13:53:00 +00:00
link-manager.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
link-parse-opml.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
link.php Coding Standards: Apply some alignment fixes from `composer format`. 2021-07-27 19:01:59 +00:00
load-scripts.php Docs: Update a comment in `wp-admin/load-styles.php` per the documentation standards. 2021-12-12 14:52:02 +00:00
load-styles.php Database: Replace `str_contains()` and `str_ends_with()` usage in `wpdb` methods. 2023-06-23 12:17:24 +00:00
media-new.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
media-upload.php
media.php Media: Redirect deprecated `wp-admin/media.php` file. 2023-06-19 23:20:21 +00:00
menu-header.php Docs: Replace multiple single line comments with multi-line comments. 2023-07-09 19:56:23 +00:00
menu.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
moderation.php
ms-admin.php
ms-delete-site.php Text Changes: Improve the wording of the email sent to confirm site deletion. 2022-11-14 21:57:10 +00:00
ms-edit.php
ms-options.php
ms-sites.php
ms-themes.php
ms-upgrade-network.php
ms-users.php
my-sites.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
nav-menus.php Menus: Fix proximity of controls to Save and Delete menus. 2023-08-24 15:59:12 +00:00
network.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
options-discussion.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
options-general.php I18n: Move translator comments inside `sprintf` for tagline field description. 2023-07-11 05:55:20 +00:00
options-head.php
options-media.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
options-permalink.php Code Modernization: Replace usage of `strpos()` with `str_starts_with()`. 2023-05-02 15:45:22 +00:00
options-privacy.php Coding Standards: Use `__DIR__` magic constant in `wp-admin/options-privacy.php`. 2023-04-27 13:14:23 +00:00
options-reading.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
options-writing.php Administration: Hide password in options/writing. 2023-06-22 00:32:21 +00:00
options.php Code Modernization: Replace usage of `strpos()` with `str_contains()`. 2023-06-22 14:36:26 +00:00
plugin-editor.php Code Modernization: Use `str_ends_with()` in a few more places. 2023-06-24 09:52:19 +00:00
plugin-install.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
plugins.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
post-new.php
post.php Code Modernization: Replace usage of `strpos()` with `str_contains()`. 2023-06-22 14:36:26 +00:00
press-this.php
privacy-policy-guide.php Coding Standards: Replace `include_once` with `require_once` for required files. 2023-04-09 11:57:22 +00:00
privacy.php Help/About: Updates to About page. 2023-07-24 23:39:22 +00:00
profile.php
revision.php Revisions: Add missing escaping function for `$post_edit_link` in `wp-admin/revision.php`. 2023-08-24 09:32:21 +00:00
setup-config.php Upgrade/Install: Show/hide toggle on password fields. 2023-06-23 23:09:29 +00:00
site-editor.php Coding Standards: Correct equals sign alignment in various files. 2023-09-06 09:33:21 +00:00
site-health-info.php Site Health: Internationalizes count in the info section headings. 2021-11-01 22:36:59 +00:00
site-health.php Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards. 2023-06-14 14:08:18 +00:00
term.php General: Replace all `esc_url_raw()` calls in core with `sanitize_url()`. 2022-06-01 18:14:10 +00:00
theme-editor.php Code Modernization: Use `str_ends_with()` in a few more places. 2023-06-24 09:52:19 +00:00
theme-install.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
themes.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
tools.php Help/About: Use the new `/documentation/` URLs for HelpHub links in WordPress Admin. 2023-02-23 10:38:21 +00:00
update-core.php Upgrade/Install: Remove unused globals in `core_upgrade_preamble()`. 2023-09-01 11:07:13 +00:00
update.php Coding Standards: Replace `include_once` with `require_once` for required files. 2023-04-09 11:57:22 +00:00
upgrade-functions.php
upgrade.php Upgrade/Install: Add missing escaping function for `get_option( 'home' )` in `upgrade.php`. 2023-08-25 05:44:16 +00:00
upload.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
user-edit.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
user-new.php Upgrade/Install: Show/hide toggle on password fields. 2023-06-23 23:09:29 +00:00
users.php Administration: Add improved context for `add new` links. 2023-09-05 19:26:26 +00:00
widgets-form-blocks.php Editor: Update preload paths for post, site and widgets editors 2022-04-07 13:40:04 +00:00
widgets-form.php Code Modernization: Replace usage of `substr()` with `str_starts_with()` and `str_ends_with()`. 2023-06-22 14:57:24 +00:00
widgets.php Administration: Replace contracted verb forms for better consistency. 2022-03-22 19:59:04 +00:00