WordPress/wp-admin/includes
Sergey Biryukov dcca93232b Upgrade/Install: Create a temporary backup of plugins and themes before updating.
This aims to make the update process more reliable and ensures that if a plugin or theme update fails, the previous version can be safely restored.

* When updating a plugin or theme, the old version is moved to a temporary backup directory:
 * `wp-content/upgrade/temp-backup/plugins/[plugin-slug]` for plugins
 * `wp-content/upgrade/temp-backup/themes/[theme-slug]` for themes.

* If the update fails, then the temporary backup kept in the `upgrade/temp-backup` directory is restored to its original location.
* If the update succeeds, the temporary backup is deleted.

To further help troubleshoot plugin and theme updates, two new checks were added to the Site Health screen:
* A check to make sure that the `temp-backup` directory is writable.
* A check that there is enough disk space available to safely perform updates.

To avoid confusion: The `temp-backup` directory will NOT be used to "roll back" a plugin to a previous version after a completed update. This directory will simply contain a transient backup of the previous version of a plugin or theme being updated, and as soon as the update process finishes, the directory will be empty.

Props aristath, afragen, pbiron, dd32, poena, TimothyBlynJacobs, audrasjb, mikeschroder, a2hosting, hellofromTonya, KZeni, galbaras, richards1052, Boniu91, mai21, francina, SergeyBiryukov.
See #51857.
Built from https://develop.svn.wordpress.org/trunk@51815


git-svn-id: http://core.svn.wordpress.org/trunk@51422 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-09-15 18:41:00 +00:00
..
admin-filters.php Upgrade/Install: Notify users of deactivated plugins during upgrade. 2021-06-30 00:21:58 +00:00
admin.php Code Modernization: Replace dirname( __FILE__ ) calls with __DIR__ magic constant. 2020-02-06 06:33:11 +00:00
ajax-actions.php Media: Check the posts_per_page value in wp_ajax_query_attachments() before using it as a divisor. 2021-07-25 09:56:57 +00:00
bookmark.php Administration: Improve the message about installing the Link Manager plugin to use legacy Links screen. 2021-05-25 20:14:59 +00:00
class-automatic-upgrader-skin.php Code Modernization: Fix reserved keyword and parameter name mismatches for parent/child classes in WP_Upgrader_Skin::feedback(). 2021-09-09 13:48:56 +00:00
class-bulk-plugin-upgrader-skin.php Text Changes: Unify various "Back to..." vs. "Return to..." vs. "Go to..." strings. 2020-11-09 10:53:10 +00:00
class-bulk-theme-upgrader-skin.php Text Changes: Unify various "Back to..." vs. "Return to..." vs. "Go to..." strings. 2020-11-09 10:53:10 +00:00
class-bulk-upgrader-skin.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_Upgrader_Skin::error(). 2021-09-09 13:59:56 +00:00
class-core-upgrader.php Docs: Correct DocBlock formatting for Core_Upgrader::upgrade(). 2021-06-19 21:37:57 +00:00
class-custom-background.php Customize: Hide native control on background position field. 2021-08-19 02:07:56 +00:00
class-custom-image-header.php Coding Standards: Use strict comparison in wp-admin/includes/class-custom-image-header.php. 2021-04-13 19:05:04 +00:00
class-file-upload-upgrader.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-ftp-pure.php Docs: Update URLs in some @link tags and switch them to HTTPS. 2019-11-01 14:57:02 +00:00
class-ftp-sockets.php Docs: Update URLs in some @link tags and switch them to HTTPS. 2019-11-01 14:57:02 +00:00
class-ftp.php General: Continuing to work towards a passing PHP Compatibility scan. 2020-06-03 17:40:12 +00:00
class-language-pack-upgrader-skin.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_Upgrader_Skin::error(). 2021-09-09 13:59:56 +00:00
class-language-pack-upgrader.php Docs: Add missing @return tag to Language_Pack_Upgrader::check_package(). 2020-10-05 13:44:11 +00:00
class-pclzip.php Filesystem API: Make sure to only call fread() on non-empty files in PclZip::privAddFile(). 2021-08-29 01:33:58 +00:00
class-plugin-installer-skin.php I18N: Combine escaping and translation functions. 2021-05-19 18:10:59 +00:00
class-plugin-upgrader-skin.php Text Changes: Unify various "Back to..." vs. "Return to..." vs. "Go to..." strings. 2020-11-09 10:53:10 +00:00
class-plugin-upgrader.php Upgrade/Install: Create a temporary backup of plugins and themes before updating. 2021-09-15 18:41:00 +00:00
class-theme-installer-skin.php I18N: Combine escaping and translation functions. 2021-05-19 18:10:59 +00:00
class-theme-upgrader-skin.php Text Changes: Unify various "Back to..." vs. "Return to..." vs. "Go to..." strings. 2020-11-09 10:53:10 +00:00
class-theme-upgrader.php Upgrade/Install: Create a temporary backup of plugins and themes before updating. 2021-09-15 18:41:00 +00:00
class-walker-category-checklist.php Code Modernization: Fix reserved keyword and parameter name mismatches for parent/child classes in Walker::end_el(). 2021-09-09 13:03:55 +00:00
class-walker-nav-menu-checklist.php Code Modernization: Fix last parameter name mismatches for parent/child classes in Walker::start_el(). 2021-09-09 12:39:59 +00:00
class-walker-nav-menu-edit.php Code Modernization: Fix last parameter name mismatches for parent/child classes in Walker::start_el(). 2021-09-09 12:39:59 +00:00
class-wp-ajax-upgrader-skin.php Code Modernization: Fix reserved keyword and parameter name mismatches for parent/child classes in WP_Upgrader_Skin::feedback(). 2021-09-09 13:48:56 +00:00
class-wp-application-passwords-list-table.php Application Passwords: Allow enter key to submit profile form. 2021-06-07 23:49:58 +00:00
class-wp-automatic-updater.php Coding Standards: Use strict comparison in wp-admin/includes/class-wp-automatic-updater.php. 2021-04-16 12:01:15 +00:00
class-wp-comments-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-community-events.php Coding Standards: Use static closures when not using $this. 2021-08-26 12:59:02 +00:00
class-wp-debug-data.php Site Health: Remove MySQL query cache size from the Site Health Info screen. 2021-09-01 07:01:56 +00:00
class-wp-filesystem-base.php Docs: Clarify the @return value for WP_Filesystem_Base::getnumchmodfromh(). 2021-07-27 11:01:57 +00:00
class-wp-filesystem-direct.php Docs: Correct @return type for WP_Filesystem_Base::getnumchmodfromh(). 2021-07-27 09:29:01 +00:00
class-wp-filesystem-ftpext.php Docs: Correct @return type for WP_Filesystem_Base::getnumchmodfromh(). 2021-07-27 09:29:01 +00:00
class-wp-filesystem-ftpsockets.php Docs: Correct @return type for WP_Filesystem_Base::getnumchmodfromh(). 2021-07-27 09:29:01 +00:00
class-wp-filesystem-ssh2.php Docs: Correct @return type for WP_Filesystem_Base::getnumchmodfromh(). 2021-07-27 09:29:01 +00:00
class-wp-importer.php Coding Standards: Remove unnecessary unset() calls in WP_Importer methods. 2021-04-08 11:12:08 +00:00
class-wp-internal-pointers.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-wp-links-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-list-table-compat.php Docs: Add missing descriptions for _WP_List_Table_Compat methods. 2020-11-14 16:54:08 +00:00
class-wp-list-table.php Administration: Escape the values of data-colname. 2021-06-08 22:21:57 +00:00
class-wp-media-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-ms-sites-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-ms-themes-list-table.php Accessibility: Administration: Improve aria-label on network admin Themes screen. 2021-09-10 14:49:00 +00:00
class-wp-ms-users-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-plugin-install-list-table.php Plugins: Display a message on Plugins list table if a plugin requires a higher version of PHP or WordPress. 2021-08-27 15:43:57 +00:00
class-wp-plugins-list-table.php Accessibility: Administration: Improve aria-label on network admin Themes screen. 2021-09-10 14:49:00 +00:00
class-wp-post-comments-list-table.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:51:36 +00:00
class-wp-posts-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-privacy-data-export-requests-list-table.php Coding Standards: Fix WPCS issues in [49258]. 2020-10-20 21:20:07 +00:00
class-wp-privacy-data-removal-requests-list-table.php Coding Standards: Fix WPCS issues in [49258]. 2020-10-20 21:20:07 +00:00
class-wp-privacy-policy-content.php Privacy: Print screen reader text for the "Copy suggested policy text..." action button. 2021-03-25 20:21:04 +00:00
class-wp-privacy-requests-table.php Privacy: Introduce manage_{$this->screen->id}_custom_column action in WP_Privacy_Requests_Table::column_default(). 2021-02-02 16:44:04 +00:00
class-wp-screen.php Docs: Replace $this in hook param docs with more appropriate names. 2021-07-30 19:35:58 +00:00
class-wp-site-health-auto-updates.php Coding Standards: Make ignore annotation more specific in WP_Site_Health_Auto_Updates::test_vcs_abspath(). 2021-08-26 13:59:59 +00:00
class-wp-site-health.php Upgrade/Install: Create a temporary backup of plugins and themes before updating. 2021-09-15 18:41:00 +00:00
class-wp-site-icon.php Media: Avoid suppressing errors when using getimagesize(). 2021-02-02 16:53:04 +00:00
class-wp-terms-list-table.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_List_Table::handle_row_actions(). 2021-09-07 19:24:53 +00:00
class-wp-theme-install-list-table.php Docs: Add examples of possible names for various hooks whose name contains a dynamic portion. 2021-03-07 12:32:09 +00:00
class-wp-themes-list-table.php I18N: Add context to some theme strings for consistency. 2020-07-21 16:33:05 +00:00
class-wp-upgrader-skin.php Code Modernization: Fix parameter name mismatches for parent/child classes in WP_Upgrader_Skin::error(). 2021-09-09 13:59:56 +00:00
class-wp-upgrader-skins.php Docs: Add missing @deprecated tags in the file docblock of some deprecated files. 2019-10-08 17:19:04 +00:00
class-wp-upgrader.php Upgrade/Install: Create a temporary backup of plugins and themes before updating. 2021-09-15 18:41:00 +00:00
class-wp-users-list-table.php Administration: Escape the values of data-colname. 2021-06-08 22:21:57 +00:00
comment.php Coding Standards: Use strict comparison in wp-admin/includes/comment.php. 2021-04-06 13:45:09 +00:00
continents-cities.php I18N: Update list of continents and cities for the timezone selection. 2021-03-19 15:42:04 +00:00
credits.php Help/About: WordPress 5.8 About Page. 2021-06-29 19:06:57 +00:00
dashboard.php Docs: Adjust wp_dashboard_browser_nag() DocBlock per the documentation standards. 2021-06-30 16:07:57 +00:00
deprecated.php Code Modernization: Correct expected data type for WP_User_Search::$page property. 2021-03-22 22:42:04 +00:00
edit-tag-messages.php Coding Standards: Fix the Squiz.PHP.DisallowMultipleAssignments violations in wp-admin. 2019-07-01 12:52:01 +00:00
export.php Coding Standards: Simplify the check for parent terms in export_wp(). 2021-04-11 13:44:13 +00:00
file.php Code Modernization: Check the return type of parse_url() in download_url(). 2021-08-17 00:16:01 +00:00
image-edit.php Docs: Correct description for the $image parameter of the wp_save_image_file filter. 2021-07-02 07:11:58 +00:00
image.php Docs: Update syntax for multi-line comment in wp_generate_attachment_metadata() per the documentation standards. 2021-06-15 19:10:58 +00:00
import.php Docs: Corrections and improvements to types used in various docblocks. 2021-01-05 17:16:11 +00:00
list-table.php Docs: Promote many bool types to true or false where only that value is used. 2021-01-03 22:04:04 +00:00
media.php Media: Remove unused code from wp-admin/includes/media.php. 2021-07-24 13:03:56 +00:00
menu.php Coding Standards: Use strict comparison for count() calls. 2020-05-23 11:38:08 +00:00
meta-boxes.php Docs: Correct the post_submitbox_minor_actions hook description. 2021-09-06 13:36:01 +00:00
misc.php Administration: Standardize colors used in CSS to a single palette. 2021-01-26 18:54:59 +00:00
ms-admin-filters.php Docs: Improve comments in some wp-admin files per the documentation standards. 2020-01-29 00:35:08 +00:00
ms-deprecated.php I18N: Capitalize translator comments consistently, add trailing punctuation. 2019-09-03 00:41:05 +00:00
ms.php Docs: Document the usage of $pagenow global in a few functions. 2021-02-22 19:18:12 +00:00
nav-menu.php General: Avoid unnecessary calls to update_user_option(). 2021-05-24 19:59:57 +00:00
network.php Coding Standards: Adds spacing so define() statements displayed when creating a network. 2021-05-11 17:10:02 +00:00
noop.php Code Modernization: Remove conditional use of PHP realpath(). 2019-09-20 20:46:56 +00:00
options.php External Libraries: First pass at fixing jQuery deprecations in WordPress core and bundled themes. 2021-01-22 12:32:03 +00:00
plugin-install.php Plugins: Escape the currently installed version number on Add Plugins screen. 2021-05-07 13:49:58 +00:00
plugin.php Upgrade/Install: Notify users of deactivated plugins during upgrade. 2021-06-30 00:21:58 +00:00
post.php Docs: Further type corrections and improvements for various docblocks. 2021-07-01 22:02:57 +00:00
privacy-tools.php Coding Standards: Fix indentation and remove ignore annotation in wp_privacy_send_personal_data_export_email(). 2021-08-26 14:05:58 +00:00
revision.php Docs: Add examples of possible names for various hooks whose name contains a dynamic portion. 2021-03-07 12:32:09 +00:00
schema.php Coding Standards: Remove redundant ignore annotation in populate_options(). 2021-08-26 13:50:59 +00:00
screen.php Coding Standards: Use strict comparison in wp-admin/includes/screen.php. 2021-05-09 20:27:02 +00:00
taxonomy.php Docs: Further type corrections and improvements for various docblocks. 2021-07-01 22:02:57 +00:00
template.php Administration: Consistently escape network_admin_url() links. 2021-06-21 04:30:56 +00:00
theme-install.php Coding Standards: Add a space before / character in some self-closing HTML tags. 2021-03-20 18:30:08 +00:00
theme.php Themes: Make sure the theme API response is not an error before operating on it in themes_api(). 2021-08-11 13:01:56 +00:00
translation-install.php Docs: Promote many bool types to true or false where only that value is used. 2021-01-03 22:04:04 +00:00
update-core.php Coding Standards: Use static closures when not using $this. 2021-08-26 12:59:02 +00:00
update.php Docs: Correct documentation for the in_plugin_update_message-{$file} filter. 2021-09-07 12:55:00 +00:00
upgrade.php Widgets: Revert [51705]. 2021-09-09 21:40:57 +00:00
user.php Application Passwords: Improve various user-facing and developer-facing terminology. 2021-07-19 21:14:57 +00:00
widgets.php Widgets: Make sure WP_Widget constructor creates a correct classname value for a namespaced widget class. 2021-05-24 09:51:56 +00:00