'wp-admin/css/colors.min.css',
'wp-admin/css/colors-rtl.css',
'wp-admin/css/colors-rtl.min.css',
-'wp-admin/css/media-rtl.min.css',
-'wp-admin/css/media.min.css',
-'wp-admin/css/farbtastic-rtl.min.css',
+// Following files added back in 4.5 see #36083
+// 'wp-admin/css/media-rtl.min.css',
+// 'wp-admin/css/media.min.css',
+// 'wp-admin/css/farbtastic-rtl.min.css',
'wp-admin/images/lock-2x.png',
'wp-admin/images/lock.png',
'wp-admin/js/theme-preview.js',
'wp-admin/js/wp-fullscreen.min.js',
'wp-includes/js/tinymce/wp-mce-help.php',
'wp-includes/js/tinymce/plugins/wpfullscreen',
+// 4.5
+'wp-includes/theme-compat/comments-popup.php',
+// 4.6
+'wp-admin/includes/class-wp-automatic-upgrader.php', // Wrong file name, see #37628.
);
/**
* Directories should be noted by suffixing it with a trailing slash (/)
*
* @since 3.2.0
+ * @since 4.4.0 New themes are not automatically installed on upgrade.
+ * This can still be explicitly asked for by defining
+ * CORE_UPGRADE_SKIP_NEW_BUNDLED as false.
* @global array $_new_bundled_files
* @var array
* @name $_new_bundled_files
'themes/twentythirteen/' => '3.6',
'themes/twentyfourteen/' => '3.8',
'themes/twentyfifteen/' => '4.1',
+ 'themes/twentysixteen/' => '4.4',
);
+// If not explicitly defined as false, don't install new default themes.
+if ( ! defined( 'CORE_UPGRADE_SKIP_NEW_BUNDLED' ) || CORE_UPGRADE_SKIP_NEW_BUNDLED ) {
+ $_new_bundled_files = array( 'plugins/akismet/' => '2.0' );
+}
+
/**
- * Upgrade the core of WordPress.
+ * Upgrades the core of WordPress.
*
* This will create a .maintenance file at the base of the WordPress directory
* to ensure that people can not access the web site, when the files are being
* copied to their locations.
*
- * The files in the {@link $_old_files} list will be removed and the new files
+ * The files in the `$_old_files` list will be removed and the new files
* copied from the zip file after the database is upgraded.
*
- * The files in the {@link $_new_bundled_files} list will be added to the installation
+ * The files in the `$_new_bundled_files` list will be added to the installation
* if the version is greater than or equal to the old version being upgraded.
*
* The steps for the upgrader for after the new release is downloaded and
@set_time_limit( 300 );
/**
- * Filter feedback messages displayed during the core update process.
+ * Filters feedback messages displayed during the core update process.
*
* The filter is first evaluated after the zip file for the latest version
* has been downloaded and unzipped. It is evaluated five more times during
if ( is_array( $checksums ) && isset( $checksums[ $wp_version ] ) )
$checksums = $checksums[ $wp_version ]; // Compat code for 3.7-beta2
if ( is_array( $checksums ) ) {
- foreach( $checksums as $file => $checksum ) {
+ foreach ( $checksums as $file => $checksum ) {
if ( 'wp-content' == substr( $file, 0, 10 ) )
continue;
if ( ! file_exists( ABSPATH . $file ) )
// Remove any Genericons example.html's from the filesystem
_upgrade_422_remove_genericons();
+ // Remove the REST API plugin if its version is Beta 4 or lower
+ _upgrade_440_force_deactivate_incompatible_plugins();
+
// Upgrade DB with separate request
/** This filter is documented in wp-admin/includes/update-core.php */
apply_filters( 'update_feedback', __( 'Upgrading database…' ) );
// Clear the cache to prevent an update_option() from saving a stale db_version to the cache
wp_cache_flush();
- // (Not all cache backends listen to 'flush')
+ // (Not all cache back ends listen to 'flush')
wp_cache_delete( 'alloptions', 'options' );
// Remove working directory
return $files;
}
+
+/**
+ * @ignore
+ * @since 4.4.0
+ */
+function _upgrade_440_force_deactivate_incompatible_plugins() {
+ if ( defined( 'REST_API_VERSION' ) && version_compare( REST_API_VERSION, '2.0-beta4', '<=' ) ) {
+ deactivate_plugins( array( 'rest-api/plugin.php' ), true );
+ }
+}