wp/wp-admin/includes/update-core.php
changeset 9 177826044cd9
parent 7 cf61fcea0001
child 16 a86126ab1dd4
equal deleted inserted replaced
8:c7c34916027a 9:177826044cd9
    16  * @name $_old_files
    16  * @name $_old_files
    17  */
    17  */
    18 global $_old_files;
    18 global $_old_files;
    19 
    19 
    20 $_old_files = array(
    20 $_old_files = array(
    21 // 2.0
    21 	// 2.0
    22 'wp-admin/import-b2.php',
    22 	'wp-admin/import-b2.php',
    23 'wp-admin/import-blogger.php',
    23 	'wp-admin/import-blogger.php',
    24 'wp-admin/import-greymatter.php',
    24 	'wp-admin/import-greymatter.php',
    25 'wp-admin/import-livejournal.php',
    25 	'wp-admin/import-livejournal.php',
    26 'wp-admin/import-mt.php',
    26 	'wp-admin/import-mt.php',
    27 'wp-admin/import-rss.php',
    27 	'wp-admin/import-rss.php',
    28 'wp-admin/import-textpattern.php',
    28 	'wp-admin/import-textpattern.php',
    29 'wp-admin/quicktags.js',
    29 	'wp-admin/quicktags.js',
    30 'wp-images/fade-butt.png',
    30 	'wp-images/fade-butt.png',
    31 'wp-images/get-firefox.png',
    31 	'wp-images/get-firefox.png',
    32 'wp-images/header-shadow.png',
    32 	'wp-images/header-shadow.png',
    33 'wp-images/smilies',
    33 	'wp-images/smilies',
    34 'wp-images/wp-small.png',
    34 	'wp-images/wp-small.png',
    35 'wp-images/wpminilogo.png',
    35 	'wp-images/wpminilogo.png',
    36 'wp.php',
    36 	'wp.php',
    37 // 2.0.8
    37 	// 2.0.8
    38 'wp-includes/js/tinymce/plugins/inlinepopups/readme.txt',
    38 	'wp-includes/js/tinymce/plugins/inlinepopups/readme.txt',
    39 // 2.1
    39 	// 2.1
    40 'wp-admin/edit-form-ajax-cat.php',
    40 	'wp-admin/edit-form-ajax-cat.php',
    41 'wp-admin/execute-pings.php',
    41 	'wp-admin/execute-pings.php',
    42 'wp-admin/inline-uploading.php',
    42 	'wp-admin/inline-uploading.php',
    43 'wp-admin/link-categories.php',
    43 	'wp-admin/link-categories.php',
    44 'wp-admin/list-manipulation.js',
    44 	'wp-admin/list-manipulation.js',
    45 'wp-admin/list-manipulation.php',
    45 	'wp-admin/list-manipulation.php',
    46 'wp-includes/comment-functions.php',
    46 	'wp-includes/comment-functions.php',
    47 'wp-includes/feed-functions.php',
    47 	'wp-includes/feed-functions.php',
    48 'wp-includes/functions-compat.php',
    48 	'wp-includes/functions-compat.php',
    49 'wp-includes/functions-formatting.php',
    49 	'wp-includes/functions-formatting.php',
    50 'wp-includes/functions-post.php',
    50 	'wp-includes/functions-post.php',
    51 'wp-includes/js/dbx-key.js',
    51 	'wp-includes/js/dbx-key.js',
    52 'wp-includes/js/tinymce/plugins/autosave/langs/cs.js',
    52 	'wp-includes/js/tinymce/plugins/autosave/langs/cs.js',
    53 'wp-includes/js/tinymce/plugins/autosave/langs/sv.js',
    53 	'wp-includes/js/tinymce/plugins/autosave/langs/sv.js',
    54 'wp-includes/links.php',
    54 	'wp-includes/links.php',
    55 'wp-includes/pluggable-functions.php',
    55 	'wp-includes/pluggable-functions.php',
    56 'wp-includes/template-functions-author.php',
    56 	'wp-includes/template-functions-author.php',
    57 'wp-includes/template-functions-category.php',
    57 	'wp-includes/template-functions-category.php',
    58 'wp-includes/template-functions-general.php',
    58 	'wp-includes/template-functions-general.php',
    59 'wp-includes/template-functions-links.php',
    59 	'wp-includes/template-functions-links.php',
    60 'wp-includes/template-functions-post.php',
    60 	'wp-includes/template-functions-post.php',
    61 'wp-includes/wp-l10n.php',
    61 	'wp-includes/wp-l10n.php',
    62 // 2.2
    62 	// 2.2
    63 'wp-admin/cat-js.php',
    63 	'wp-admin/cat-js.php',
    64 'wp-admin/import/b2.php',
    64 	'wp-admin/import/b2.php',
    65 'wp-includes/js/autosave-js.php',
    65 	'wp-includes/js/autosave-js.php',
    66 'wp-includes/js/list-manipulation-js.php',
    66 	'wp-includes/js/list-manipulation-js.php',
    67 'wp-includes/js/wp-ajax-js.php',
    67 	'wp-includes/js/wp-ajax-js.php',
    68 // 2.3
    68 	// 2.3
    69 'wp-admin/admin-db.php',
    69 	'wp-admin/admin-db.php',
    70 'wp-admin/cat.js',
    70 	'wp-admin/cat.js',
    71 'wp-admin/categories.js',
    71 	'wp-admin/categories.js',
    72 'wp-admin/custom-fields.js',
    72 	'wp-admin/custom-fields.js',
    73 'wp-admin/dbx-admin-key.js',
    73 	'wp-admin/dbx-admin-key.js',
    74 'wp-admin/edit-comments.js',
    74 	'wp-admin/edit-comments.js',
    75 'wp-admin/install-rtl.css',
    75 	'wp-admin/install-rtl.css',
    76 'wp-admin/install.css',
    76 	'wp-admin/install.css',
    77 'wp-admin/upgrade-schema.php',
    77 	'wp-admin/upgrade-schema.php',
    78 'wp-admin/upload-functions.php',
    78 	'wp-admin/upload-functions.php',
    79 'wp-admin/upload-rtl.css',
    79 	'wp-admin/upload-rtl.css',
    80 'wp-admin/upload.css',
    80 	'wp-admin/upload.css',
    81 'wp-admin/upload.js',
    81 	'wp-admin/upload.js',
    82 'wp-admin/users.js',
    82 	'wp-admin/users.js',
    83 'wp-admin/widgets-rtl.css',
    83 	'wp-admin/widgets-rtl.css',
    84 'wp-admin/widgets.css',
    84 	'wp-admin/widgets.css',
    85 'wp-admin/xfn.js',
    85 	'wp-admin/xfn.js',
    86 'wp-includes/js/tinymce/license.html',
    86 	'wp-includes/js/tinymce/license.html',
    87 // 2.5
    87 	// 2.5
    88 'wp-admin/css/upload.css',
    88 	'wp-admin/css/upload.css',
    89 'wp-admin/images/box-bg-left.gif',
    89 	'wp-admin/images/box-bg-left.gif',
    90 'wp-admin/images/box-bg-right.gif',
    90 	'wp-admin/images/box-bg-right.gif',
    91 'wp-admin/images/box-bg.gif',
    91 	'wp-admin/images/box-bg.gif',
    92 'wp-admin/images/box-butt-left.gif',
    92 	'wp-admin/images/box-butt-left.gif',
    93 'wp-admin/images/box-butt-right.gif',
    93 	'wp-admin/images/box-butt-right.gif',
    94 'wp-admin/images/box-butt.gif',
    94 	'wp-admin/images/box-butt.gif',
    95 'wp-admin/images/box-head-left.gif',
    95 	'wp-admin/images/box-head-left.gif',
    96 'wp-admin/images/box-head-right.gif',
    96 	'wp-admin/images/box-head-right.gif',
    97 'wp-admin/images/box-head.gif',
    97 	'wp-admin/images/box-head.gif',
    98 'wp-admin/images/heading-bg.gif',
    98 	'wp-admin/images/heading-bg.gif',
    99 'wp-admin/images/login-bkg-bottom.gif',
    99 	'wp-admin/images/login-bkg-bottom.gif',
   100 'wp-admin/images/login-bkg-tile.gif',
   100 	'wp-admin/images/login-bkg-tile.gif',
   101 'wp-admin/images/notice.gif',
   101 	'wp-admin/images/notice.gif',
   102 'wp-admin/images/toggle.gif',
   102 	'wp-admin/images/toggle.gif',
   103 'wp-admin/includes/upload.php',
   103 	'wp-admin/includes/upload.php',
   104 'wp-admin/js/dbx-admin-key.js',
   104 	'wp-admin/js/dbx-admin-key.js',
   105 'wp-admin/js/link-cat.js',
   105 	'wp-admin/js/link-cat.js',
   106 'wp-admin/profile-update.php',
   106 	'wp-admin/profile-update.php',
   107 'wp-admin/templates.php',
   107 	'wp-admin/templates.php',
   108 'wp-includes/images/wlw/WpComments.png',
   108 	'wp-includes/images/wlw/WpComments.png',
   109 'wp-includes/images/wlw/WpIcon.png',
   109 	'wp-includes/images/wlw/WpIcon.png',
   110 'wp-includes/images/wlw/WpWatermark.png',
   110 	'wp-includes/images/wlw/WpWatermark.png',
   111 'wp-includes/js/dbx.js',
   111 	'wp-includes/js/dbx.js',
   112 'wp-includes/js/fat.js',
   112 	'wp-includes/js/fat.js',
   113 'wp-includes/js/list-manipulation.js',
   113 	'wp-includes/js/list-manipulation.js',
   114 'wp-includes/js/tinymce/langs/en.js',
   114 	'wp-includes/js/tinymce/langs/en.js',
   115 'wp-includes/js/tinymce/plugins/autosave/editor_plugin_src.js',
   115 	'wp-includes/js/tinymce/plugins/autosave/editor_plugin_src.js',
   116 'wp-includes/js/tinymce/plugins/autosave/langs',
   116 	'wp-includes/js/tinymce/plugins/autosave/langs',
   117 'wp-includes/js/tinymce/plugins/directionality/images',
   117 	'wp-includes/js/tinymce/plugins/directionality/images',
   118 'wp-includes/js/tinymce/plugins/directionality/langs',
   118 	'wp-includes/js/tinymce/plugins/directionality/langs',
   119 'wp-includes/js/tinymce/plugins/inlinepopups/css',
   119 	'wp-includes/js/tinymce/plugins/inlinepopups/css',
   120 'wp-includes/js/tinymce/plugins/inlinepopups/images',
   120 	'wp-includes/js/tinymce/plugins/inlinepopups/images',
   121 'wp-includes/js/tinymce/plugins/inlinepopups/jscripts',
   121 	'wp-includes/js/tinymce/plugins/inlinepopups/jscripts',
   122 'wp-includes/js/tinymce/plugins/paste/images',
   122 	'wp-includes/js/tinymce/plugins/paste/images',
   123 'wp-includes/js/tinymce/plugins/paste/jscripts',
   123 	'wp-includes/js/tinymce/plugins/paste/jscripts',
   124 'wp-includes/js/tinymce/plugins/paste/langs',
   124 	'wp-includes/js/tinymce/plugins/paste/langs',
   125 'wp-includes/js/tinymce/plugins/spellchecker/classes/HttpClient.class.php',
   125 	'wp-includes/js/tinymce/plugins/spellchecker/classes/HttpClient.class.php',
   126 'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyGoogleSpell.class.php',
   126 	'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyGoogleSpell.class.php',
   127 'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyPspell.class.php',
   127 	'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyPspell.class.php',
   128 'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyPspellShell.class.php',
   128 	'wp-includes/js/tinymce/plugins/spellchecker/classes/TinyPspellShell.class.php',
   129 'wp-includes/js/tinymce/plugins/spellchecker/css/spellchecker.css',
   129 	'wp-includes/js/tinymce/plugins/spellchecker/css/spellchecker.css',
   130 'wp-includes/js/tinymce/plugins/spellchecker/images',
   130 	'wp-includes/js/tinymce/plugins/spellchecker/images',
   131 'wp-includes/js/tinymce/plugins/spellchecker/langs',
   131 	'wp-includes/js/tinymce/plugins/spellchecker/langs',
   132 'wp-includes/js/tinymce/plugins/spellchecker/tinyspell.php',
   132 	'wp-includes/js/tinymce/plugins/spellchecker/tinyspell.php',
   133 'wp-includes/js/tinymce/plugins/wordpress/images',
   133 	'wp-includes/js/tinymce/plugins/wordpress/images',
   134 'wp-includes/js/tinymce/plugins/wordpress/langs',
   134 	'wp-includes/js/tinymce/plugins/wordpress/langs',
   135 'wp-includes/js/tinymce/plugins/wordpress/wordpress.css',
   135 	'wp-includes/js/tinymce/plugins/wordpress/wordpress.css',
   136 'wp-includes/js/tinymce/plugins/wphelp',
   136 	'wp-includes/js/tinymce/plugins/wphelp',
   137 'wp-includes/js/tinymce/themes/advanced/css',
   137 	'wp-includes/js/tinymce/themes/advanced/css',
   138 'wp-includes/js/tinymce/themes/advanced/images',
   138 	'wp-includes/js/tinymce/themes/advanced/images',
   139 'wp-includes/js/tinymce/themes/advanced/jscripts',
   139 	'wp-includes/js/tinymce/themes/advanced/jscripts',
   140 'wp-includes/js/tinymce/themes/advanced/langs',
   140 	'wp-includes/js/tinymce/themes/advanced/langs',
   141 // 2.5.1
   141 	// 2.5.1
   142 'wp-includes/js/tinymce/tiny_mce_gzip.php',
   142 	'wp-includes/js/tinymce/tiny_mce_gzip.php',
   143 // 2.6
   143 	// 2.6
   144 'wp-admin/bookmarklet.php',
   144 	'wp-admin/bookmarklet.php',
   145 'wp-includes/js/jquery/jquery.dimensions.min.js',
   145 	'wp-includes/js/jquery/jquery.dimensions.min.js',
   146 'wp-includes/js/tinymce/plugins/wordpress/popups.css',
   146 	'wp-includes/js/tinymce/plugins/wordpress/popups.css',
   147 'wp-includes/js/wp-ajax.js',
   147 	'wp-includes/js/wp-ajax.js',
   148 // 2.7
   148 	// 2.7
   149 'wp-admin/css/press-this-ie-rtl.css',
   149 	'wp-admin/css/press-this-ie-rtl.css',
   150 'wp-admin/css/press-this-ie.css',
   150 	'wp-admin/css/press-this-ie.css',
   151 'wp-admin/css/upload-rtl.css',
   151 	'wp-admin/css/upload-rtl.css',
   152 'wp-admin/edit-form.php',
   152 	'wp-admin/edit-form.php',
   153 'wp-admin/images/comment-pill.gif',
   153 	'wp-admin/images/comment-pill.gif',
   154 'wp-admin/images/comment-stalk-classic.gif',
   154 	'wp-admin/images/comment-stalk-classic.gif',
   155 'wp-admin/images/comment-stalk-fresh.gif',
   155 	'wp-admin/images/comment-stalk-fresh.gif',
   156 'wp-admin/images/comment-stalk-rtl.gif',
   156 	'wp-admin/images/comment-stalk-rtl.gif',
   157 'wp-admin/images/del.png',
   157 	'wp-admin/images/del.png',
   158 'wp-admin/images/gear.png',
   158 	'wp-admin/images/gear.png',
   159 'wp-admin/images/media-button-gallery.gif',
   159 	'wp-admin/images/media-button-gallery.gif',
   160 'wp-admin/images/media-buttons.gif',
   160 	'wp-admin/images/media-buttons.gif',
   161 'wp-admin/images/postbox-bg.gif',
   161 	'wp-admin/images/postbox-bg.gif',
   162 'wp-admin/images/tab.png',
   162 	'wp-admin/images/tab.png',
   163 'wp-admin/images/tail.gif',
   163 	'wp-admin/images/tail.gif',
   164 'wp-admin/js/forms.js',
   164 	'wp-admin/js/forms.js',
   165 'wp-admin/js/upload.js',
   165 	'wp-admin/js/upload.js',
   166 'wp-admin/link-import.php',
   166 	'wp-admin/link-import.php',
   167 'wp-includes/images/audio.png',
   167 	'wp-includes/images/audio.png',
   168 'wp-includes/images/css.png',
   168 	'wp-includes/images/css.png',
   169 'wp-includes/images/default.png',
   169 	'wp-includes/images/default.png',
   170 'wp-includes/images/doc.png',
   170 	'wp-includes/images/doc.png',
   171 'wp-includes/images/exe.png',
   171 	'wp-includes/images/exe.png',
   172 'wp-includes/images/html.png',
   172 	'wp-includes/images/html.png',
   173 'wp-includes/images/js.png',
   173 	'wp-includes/images/js.png',
   174 'wp-includes/images/pdf.png',
   174 	'wp-includes/images/pdf.png',
   175 'wp-includes/images/swf.png',
   175 	'wp-includes/images/swf.png',
   176 'wp-includes/images/tar.png',
   176 	'wp-includes/images/tar.png',
   177 'wp-includes/images/text.png',
   177 	'wp-includes/images/text.png',
   178 'wp-includes/images/video.png',
   178 	'wp-includes/images/video.png',
   179 'wp-includes/images/zip.png',
   179 	'wp-includes/images/zip.png',
   180 'wp-includes/js/tinymce/tiny_mce_config.php',
   180 	'wp-includes/js/tinymce/tiny_mce_config.php',
   181 'wp-includes/js/tinymce/tiny_mce_ext.js',
   181 	'wp-includes/js/tinymce/tiny_mce_ext.js',
   182 // 2.8
   182 	// 2.8
   183 'wp-admin/js/users.js',
   183 	'wp-admin/js/users.js',
   184 'wp-includes/js/swfupload/plugins/swfupload.documentready.js',
   184 	'wp-includes/js/swfupload/plugins/swfupload.documentready.js',
   185 'wp-includes/js/swfupload/plugins/swfupload.graceful_degradation.js',
   185 	'wp-includes/js/swfupload/plugins/swfupload.graceful_degradation.js',
   186 'wp-includes/js/swfupload/swfupload_f9.swf',
   186 	'wp-includes/js/swfupload/swfupload_f9.swf',
   187 'wp-includes/js/tinymce/plugins/autosave',
   187 	'wp-includes/js/tinymce/plugins/autosave',
   188 'wp-includes/js/tinymce/plugins/paste/css',
   188 	'wp-includes/js/tinymce/plugins/paste/css',
   189 'wp-includes/js/tinymce/utils/mclayer.js',
   189 	'wp-includes/js/tinymce/utils/mclayer.js',
   190 'wp-includes/js/tinymce/wordpress.css',
   190 	'wp-includes/js/tinymce/wordpress.css',
   191 // 2.8.5
   191 	// 2.8.5
   192 'wp-admin/import/btt.php',
   192 	'wp-admin/import/btt.php',
   193 'wp-admin/import/jkw.php',
   193 	'wp-admin/import/jkw.php',
   194 // 2.9
   194 	// 2.9
   195 'wp-admin/js/page.dev.js',
   195 	'wp-admin/js/page.dev.js',
   196 'wp-admin/js/page.js',
   196 	'wp-admin/js/page.js',
   197 'wp-admin/js/set-post-thumbnail-handler.dev.js',
   197 	'wp-admin/js/set-post-thumbnail-handler.dev.js',
   198 'wp-admin/js/set-post-thumbnail-handler.js',
   198 	'wp-admin/js/set-post-thumbnail-handler.js',
   199 'wp-admin/js/slug.dev.js',
   199 	'wp-admin/js/slug.dev.js',
   200 'wp-admin/js/slug.js',
   200 	'wp-admin/js/slug.js',
   201 'wp-includes/gettext.php',
   201 	'wp-includes/gettext.php',
   202 'wp-includes/js/tinymce/plugins/wordpress/js',
   202 	'wp-includes/js/tinymce/plugins/wordpress/js',
   203 'wp-includes/streams.php',
   203 	'wp-includes/streams.php',
   204 // MU
   204 	// MU
   205 'README.txt',
   205 	'README.txt',
   206 'htaccess.dist',
   206 	'htaccess.dist',
   207 'index-install.php',
   207 	'index-install.php',
   208 'wp-admin/css/mu-rtl.css',
   208 	'wp-admin/css/mu-rtl.css',
   209 'wp-admin/css/mu.css',
   209 	'wp-admin/css/mu.css',
   210 'wp-admin/images/site-admin.png',
   210 	'wp-admin/images/site-admin.png',
   211 'wp-admin/includes/mu.php',
   211 	'wp-admin/includes/mu.php',
   212 'wp-admin/wpmu-admin.php',
   212 	'wp-admin/wpmu-admin.php',
   213 'wp-admin/wpmu-blogs.php',
   213 	'wp-admin/wpmu-blogs.php',
   214 'wp-admin/wpmu-edit.php',
   214 	'wp-admin/wpmu-edit.php',
   215 'wp-admin/wpmu-options.php',
   215 	'wp-admin/wpmu-options.php',
   216 'wp-admin/wpmu-themes.php',
   216 	'wp-admin/wpmu-themes.php',
   217 'wp-admin/wpmu-upgrade-site.php',
   217 	'wp-admin/wpmu-upgrade-site.php',
   218 'wp-admin/wpmu-users.php',
   218 	'wp-admin/wpmu-users.php',
   219 'wp-includes/images/wordpress-mu.png',
   219 	'wp-includes/images/wordpress-mu.png',
   220 'wp-includes/wpmu-default-filters.php',
   220 	'wp-includes/wpmu-default-filters.php',
   221 'wp-includes/wpmu-functions.php',
   221 	'wp-includes/wpmu-functions.php',
   222 'wpmu-settings.php',
   222 	'wpmu-settings.php',
   223 // 3.0
   223 	// 3.0
   224 'wp-admin/categories.php',
   224 	'wp-admin/categories.php',
   225 'wp-admin/edit-category-form.php',
   225 	'wp-admin/edit-category-form.php',
   226 'wp-admin/edit-page-form.php',
   226 	'wp-admin/edit-page-form.php',
   227 'wp-admin/edit-pages.php',
   227 	'wp-admin/edit-pages.php',
   228 'wp-admin/images/admin-header-footer.png',
   228 	'wp-admin/images/admin-header-footer.png',
   229 'wp-admin/images/browse-happy.gif',
   229 	'wp-admin/images/browse-happy.gif',
   230 'wp-admin/images/ico-add.png',
   230 	'wp-admin/images/ico-add.png',
   231 'wp-admin/images/ico-close.png',
   231 	'wp-admin/images/ico-close.png',
   232 'wp-admin/images/ico-edit.png',
   232 	'wp-admin/images/ico-edit.png',
   233 'wp-admin/images/ico-viewpage.png',
   233 	'wp-admin/images/ico-viewpage.png',
   234 'wp-admin/images/fav-top.png',
   234 	'wp-admin/images/fav-top.png',
   235 'wp-admin/images/screen-options-left.gif',
   235 	'wp-admin/images/screen-options-left.gif',
   236 'wp-admin/images/wp-logo-vs.gif',
   236 	'wp-admin/images/wp-logo-vs.gif',
   237 'wp-admin/images/wp-logo.gif',
   237 	'wp-admin/images/wp-logo.gif',
   238 'wp-admin/import',
   238 	'wp-admin/import',
   239 'wp-admin/js/wp-gears.dev.js',
   239 	'wp-admin/js/wp-gears.dev.js',
   240 'wp-admin/js/wp-gears.js',
   240 	'wp-admin/js/wp-gears.js',
   241 'wp-admin/options-misc.php',
   241 	'wp-admin/options-misc.php',
   242 'wp-admin/page-new.php',
   242 	'wp-admin/page-new.php',
   243 'wp-admin/page.php',
   243 	'wp-admin/page.php',
   244 'wp-admin/rtl.css',
   244 	'wp-admin/rtl.css',
   245 'wp-admin/rtl.dev.css',
   245 	'wp-admin/rtl.dev.css',
   246 'wp-admin/update-links.php',
   246 	'wp-admin/update-links.php',
   247 'wp-admin/wp-admin.css',
   247 	'wp-admin/wp-admin.css',
   248 'wp-admin/wp-admin.dev.css',
   248 	'wp-admin/wp-admin.dev.css',
   249 'wp-includes/js/codepress',
   249 	'wp-includes/js/codepress',
   250 'wp-includes/js/codepress/engines/khtml.js',
   250 	'wp-includes/js/codepress/engines/khtml.js',
   251 'wp-includes/js/codepress/engines/older.js',
   251 	'wp-includes/js/codepress/engines/older.js',
   252 'wp-includes/js/jquery/autocomplete.dev.js',
   252 	'wp-includes/js/jquery/autocomplete.dev.js',
   253 'wp-includes/js/jquery/autocomplete.js',
   253 	'wp-includes/js/jquery/autocomplete.js',
   254 'wp-includes/js/jquery/interface.js',
   254 	'wp-includes/js/jquery/interface.js',
   255 'wp-includes/js/scriptaculous/prototype.js',
   255 	'wp-includes/js/scriptaculous/prototype.js',
   256 'wp-includes/js/tinymce/wp-tinymce.js',
   256 	// Following file added back in 5.1 see #45645
   257 // 3.1
   257 	//'wp-includes/js/tinymce/wp-tinymce.js',
   258 'wp-admin/edit-attachment-rows.php',
   258 	// 3.1
   259 'wp-admin/edit-link-categories.php',
   259 	'wp-admin/edit-attachment-rows.php',
   260 'wp-admin/edit-link-category-form.php',
   260 	'wp-admin/edit-link-categories.php',
   261 'wp-admin/edit-post-rows.php',
   261 	'wp-admin/edit-link-category-form.php',
   262 'wp-admin/images/button-grad-active-vs.png',
   262 	'wp-admin/edit-post-rows.php',
   263 'wp-admin/images/button-grad-vs.png',
   263 	'wp-admin/images/button-grad-active-vs.png',
   264 'wp-admin/images/fav-arrow-vs-rtl.gif',
   264 	'wp-admin/images/button-grad-vs.png',
   265 'wp-admin/images/fav-arrow-vs.gif',
   265 	'wp-admin/images/fav-arrow-vs-rtl.gif',
   266 'wp-admin/images/fav-top-vs.gif',
   266 	'wp-admin/images/fav-arrow-vs.gif',
   267 'wp-admin/images/list-vs.png',
   267 	'wp-admin/images/fav-top-vs.gif',
   268 'wp-admin/images/screen-options-right-up.gif',
   268 	'wp-admin/images/list-vs.png',
   269 'wp-admin/images/screen-options-right.gif',
   269 	'wp-admin/images/screen-options-right-up.gif',
   270 'wp-admin/images/visit-site-button-grad-vs.gif',
   270 	'wp-admin/images/screen-options-right.gif',
   271 'wp-admin/images/visit-site-button-grad.gif',
   271 	'wp-admin/images/visit-site-button-grad-vs.gif',
   272 'wp-admin/link-category.php',
   272 	'wp-admin/images/visit-site-button-grad.gif',
   273 'wp-admin/sidebar.php',
   273 	'wp-admin/link-category.php',
   274 'wp-includes/classes.php',
   274 	'wp-admin/sidebar.php',
   275 'wp-includes/js/tinymce/blank.htm',
   275 	'wp-includes/classes.php',
   276 'wp-includes/js/tinymce/plugins/media/css/content.css',
   276 	'wp-includes/js/tinymce/blank.htm',
   277 'wp-includes/js/tinymce/plugins/media/img',
   277 	'wp-includes/js/tinymce/plugins/media/css/content.css',
   278 'wp-includes/js/tinymce/plugins/safari',
   278 	'wp-includes/js/tinymce/plugins/media/img',
   279 // 3.2
   279 	'wp-includes/js/tinymce/plugins/safari',
   280 'wp-admin/images/logo-login.gif',
   280 	// 3.2
   281 'wp-admin/images/star.gif',
   281 	'wp-admin/images/logo-login.gif',
   282 'wp-admin/js/list-table.dev.js',
   282 	'wp-admin/images/star.gif',
   283 'wp-admin/js/list-table.js',
   283 	'wp-admin/js/list-table.dev.js',
   284 'wp-includes/default-embeds.php',
   284 	'wp-admin/js/list-table.js',
   285 'wp-includes/js/tinymce/plugins/wordpress/img/help.gif',
   285 	'wp-includes/default-embeds.php',
   286 'wp-includes/js/tinymce/plugins/wordpress/img/more.gif',
   286 	'wp-includes/js/tinymce/plugins/wordpress/img/help.gif',
   287 'wp-includes/js/tinymce/plugins/wordpress/img/toolbars.gif',
   287 	'wp-includes/js/tinymce/plugins/wordpress/img/more.gif',
   288 'wp-includes/js/tinymce/themes/advanced/img/fm.gif',
   288 	'wp-includes/js/tinymce/plugins/wordpress/img/toolbars.gif',
   289 'wp-includes/js/tinymce/themes/advanced/img/sflogo.png',
   289 	'wp-includes/js/tinymce/themes/advanced/img/fm.gif',
   290 // 3.3
   290 	'wp-includes/js/tinymce/themes/advanced/img/sflogo.png',
   291 'wp-admin/css/colors-classic-rtl.css',
   291 	// 3.3
   292 'wp-admin/css/colors-classic-rtl.dev.css',
   292 	'wp-admin/css/colors-classic-rtl.css',
   293 'wp-admin/css/colors-fresh-rtl.css',
   293 	'wp-admin/css/colors-classic-rtl.dev.css',
   294 'wp-admin/css/colors-fresh-rtl.dev.css',
   294 	'wp-admin/css/colors-fresh-rtl.css',
   295 'wp-admin/css/dashboard-rtl.dev.css',
   295 	'wp-admin/css/colors-fresh-rtl.dev.css',
   296 'wp-admin/css/dashboard.dev.css',
   296 	'wp-admin/css/dashboard-rtl.dev.css',
   297 'wp-admin/css/global-rtl.css',
   297 	'wp-admin/css/dashboard.dev.css',
   298 'wp-admin/css/global-rtl.dev.css',
   298 	'wp-admin/css/global-rtl.css',
   299 'wp-admin/css/global.css',
   299 	'wp-admin/css/global-rtl.dev.css',
   300 'wp-admin/css/global.dev.css',
   300 	'wp-admin/css/global.css',
   301 'wp-admin/css/install-rtl.dev.css',
   301 	'wp-admin/css/global.dev.css',
   302 'wp-admin/css/login-rtl.dev.css',
   302 	'wp-admin/css/install-rtl.dev.css',
   303 'wp-admin/css/login.dev.css',
   303 	'wp-admin/css/login-rtl.dev.css',
   304 'wp-admin/css/ms.css',
   304 	'wp-admin/css/login.dev.css',
   305 'wp-admin/css/ms.dev.css',
   305 	'wp-admin/css/ms.css',
   306 'wp-admin/css/nav-menu-rtl.css',
   306 	'wp-admin/css/ms.dev.css',
   307 'wp-admin/css/nav-menu-rtl.dev.css',
   307 	'wp-admin/css/nav-menu-rtl.css',
   308 'wp-admin/css/nav-menu.css',
   308 	'wp-admin/css/nav-menu-rtl.dev.css',
   309 'wp-admin/css/nav-menu.dev.css',
   309 	'wp-admin/css/nav-menu.css',
   310 'wp-admin/css/plugin-install-rtl.css',
   310 	'wp-admin/css/nav-menu.dev.css',
   311 'wp-admin/css/plugin-install-rtl.dev.css',
   311 	'wp-admin/css/plugin-install-rtl.css',
   312 'wp-admin/css/plugin-install.css',
   312 	'wp-admin/css/plugin-install-rtl.dev.css',
   313 'wp-admin/css/plugin-install.dev.css',
   313 	'wp-admin/css/plugin-install.css',
   314 'wp-admin/css/press-this-rtl.dev.css',
   314 	'wp-admin/css/plugin-install.dev.css',
   315 'wp-admin/css/press-this.dev.css',
   315 	'wp-admin/css/press-this-rtl.dev.css',
   316 'wp-admin/css/theme-editor-rtl.css',
   316 	'wp-admin/css/press-this.dev.css',
   317 'wp-admin/css/theme-editor-rtl.dev.css',
   317 	'wp-admin/css/theme-editor-rtl.css',
   318 'wp-admin/css/theme-editor.css',
   318 	'wp-admin/css/theme-editor-rtl.dev.css',
   319 'wp-admin/css/theme-editor.dev.css',
   319 	'wp-admin/css/theme-editor.css',
   320 'wp-admin/css/theme-install-rtl.css',
   320 	'wp-admin/css/theme-editor.dev.css',
   321 'wp-admin/css/theme-install-rtl.dev.css',
   321 	'wp-admin/css/theme-install-rtl.css',
   322 'wp-admin/css/theme-install.css',
   322 	'wp-admin/css/theme-install-rtl.dev.css',
   323 'wp-admin/css/theme-install.dev.css',
   323 	'wp-admin/css/theme-install.css',
   324 'wp-admin/css/widgets-rtl.dev.css',
   324 	'wp-admin/css/theme-install.dev.css',
   325 'wp-admin/css/widgets.dev.css',
   325 	'wp-admin/css/widgets-rtl.dev.css',
   326 'wp-admin/includes/internal-linking.php',
   326 	'wp-admin/css/widgets.dev.css',
   327 'wp-includes/images/admin-bar-sprite-rtl.png',
   327 	'wp-admin/includes/internal-linking.php',
   328 'wp-includes/js/jquery/ui.button.js',
   328 	'wp-includes/images/admin-bar-sprite-rtl.png',
   329 'wp-includes/js/jquery/ui.core.js',
   329 	'wp-includes/js/jquery/ui.button.js',
   330 'wp-includes/js/jquery/ui.dialog.js',
   330 	'wp-includes/js/jquery/ui.core.js',
   331 'wp-includes/js/jquery/ui.draggable.js',
   331 	'wp-includes/js/jquery/ui.dialog.js',
   332 'wp-includes/js/jquery/ui.droppable.js',
   332 	'wp-includes/js/jquery/ui.draggable.js',
   333 'wp-includes/js/jquery/ui.mouse.js',
   333 	'wp-includes/js/jquery/ui.droppable.js',
   334 'wp-includes/js/jquery/ui.position.js',
   334 	'wp-includes/js/jquery/ui.mouse.js',
   335 'wp-includes/js/jquery/ui.resizable.js',
   335 	'wp-includes/js/jquery/ui.position.js',
   336 'wp-includes/js/jquery/ui.selectable.js',
   336 	'wp-includes/js/jquery/ui.resizable.js',
   337 'wp-includes/js/jquery/ui.sortable.js',
   337 	'wp-includes/js/jquery/ui.selectable.js',
   338 'wp-includes/js/jquery/ui.tabs.js',
   338 	'wp-includes/js/jquery/ui.sortable.js',
   339 'wp-includes/js/jquery/ui.widget.js',
   339 	'wp-includes/js/jquery/ui.tabs.js',
   340 'wp-includes/js/l10n.dev.js',
   340 	'wp-includes/js/jquery/ui.widget.js',
   341 'wp-includes/js/l10n.js',
   341 	'wp-includes/js/l10n.dev.js',
   342 'wp-includes/js/tinymce/plugins/wplink/css',
   342 	'wp-includes/js/l10n.js',
   343 'wp-includes/js/tinymce/plugins/wplink/img',
   343 	'wp-includes/js/tinymce/plugins/wplink/css',
   344 'wp-includes/js/tinymce/plugins/wplink/js',
   344 	'wp-includes/js/tinymce/plugins/wplink/img',
   345 'wp-includes/js/tinymce/themes/advanced/img/wpicons.png',
   345 	'wp-includes/js/tinymce/plugins/wplink/js',
   346 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png',
   346 	'wp-includes/js/tinymce/themes/advanced/img/wpicons.png',
   347 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png',
   347 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png',
   348 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif',
   348 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png',
   349 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png',
   349 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif',
   350 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif',
   350 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png',
   351 // Don't delete, yet: 'wp-rss.php',
   351 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif',
   352 // Don't delete, yet: 'wp-rdf.php',
   352 	// Don't delete, yet: 'wp-rss.php',
   353 // Don't delete, yet: 'wp-rss2.php',
   353 	// Don't delete, yet: 'wp-rdf.php',
   354 // Don't delete, yet: 'wp-commentsrss2.php',
   354 	// Don't delete, yet: 'wp-rss2.php',
   355 // Don't delete, yet: 'wp-atom.php',
   355 	// Don't delete, yet: 'wp-commentsrss2.php',
   356 // Don't delete, yet: 'wp-feed.php',
   356 	// Don't delete, yet: 'wp-atom.php',
   357 // 3.4
   357 	// Don't delete, yet: 'wp-feed.php',
   358 'wp-admin/images/gray-star.png',
   358 	// 3.4
   359 'wp-admin/images/logo-login.png',
   359 	'wp-admin/images/gray-star.png',
   360 'wp-admin/images/star.png',
   360 	'wp-admin/images/logo-login.png',
   361 'wp-admin/index-extra.php',
   361 	'wp-admin/images/star.png',
   362 'wp-admin/network/index-extra.php',
   362 	'wp-admin/index-extra.php',
   363 'wp-admin/user/index-extra.php',
   363 	'wp-admin/network/index-extra.php',
   364 'wp-admin/images/screenshots/admin-flyouts.png',
   364 	'wp-admin/user/index-extra.php',
   365 'wp-admin/images/screenshots/coediting.png',
   365 	'wp-admin/images/screenshots/admin-flyouts.png',
   366 'wp-admin/images/screenshots/drag-and-drop.png',
   366 	'wp-admin/images/screenshots/coediting.png',
   367 'wp-admin/images/screenshots/help-screen.png',
   367 	'wp-admin/images/screenshots/drag-and-drop.png',
   368 'wp-admin/images/screenshots/media-icon.png',
   368 	'wp-admin/images/screenshots/help-screen.png',
   369 'wp-admin/images/screenshots/new-feature-pointer.png',
   369 	'wp-admin/images/screenshots/media-icon.png',
   370 'wp-admin/images/screenshots/welcome-screen.png',
   370 	'wp-admin/images/screenshots/new-feature-pointer.png',
   371 'wp-includes/css/editor-buttons.css',
   371 	'wp-admin/images/screenshots/welcome-screen.png',
   372 'wp-includes/css/editor-buttons.dev.css',
   372 	'wp-includes/css/editor-buttons.css',
   373 'wp-includes/js/tinymce/plugins/paste/blank.htm',
   373 	'wp-includes/css/editor-buttons.dev.css',
   374 'wp-includes/js/tinymce/plugins/wordpress/css',
   374 	'wp-includes/js/tinymce/plugins/paste/blank.htm',
   375 'wp-includes/js/tinymce/plugins/wordpress/editor_plugin.dev.js',
   375 	'wp-includes/js/tinymce/plugins/wordpress/css',
   376 'wp-includes/js/tinymce/plugins/wordpress/img/embedded.png',
   376 	'wp-includes/js/tinymce/plugins/wordpress/editor_plugin.dev.js',
   377 'wp-includes/js/tinymce/plugins/wordpress/img/more_bug.gif',
   377 	'wp-includes/js/tinymce/plugins/wordpress/img/embedded.png',
   378 'wp-includes/js/tinymce/plugins/wordpress/img/page_bug.gif',
   378 	'wp-includes/js/tinymce/plugins/wordpress/img/more_bug.gif',
   379 'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin.dev.js',
   379 	'wp-includes/js/tinymce/plugins/wordpress/img/page_bug.gif',
   380 'wp-includes/js/tinymce/plugins/wpeditimage/css/editimage-rtl.css',
   380 	'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin.dev.js',
   381 'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.dev.js',
   381 	'wp-includes/js/tinymce/plugins/wpeditimage/css/editimage-rtl.css',
   382 'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.dev.js',
   382 	'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.dev.js',
   383 'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin.dev.js',
   383 	'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.dev.js',
   384 'wp-includes/js/tinymce/plugins/wpgallery/img/gallery.png',
   384 	'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin.dev.js',
   385 'wp-includes/js/tinymce/plugins/wplink/editor_plugin.dev.js',
   385 	'wp-includes/js/tinymce/plugins/wpgallery/img/gallery.png',
   386 // Don't delete, yet: 'wp-pass.php',
   386 	'wp-includes/js/tinymce/plugins/wplink/editor_plugin.dev.js',
   387 // Don't delete, yet: 'wp-register.php',
   387 	// Don't delete, yet: 'wp-pass.php',
   388 // 3.5
   388 	// Don't delete, yet: 'wp-register.php',
   389 'wp-admin/gears-manifest.php',
   389 	// 3.5
   390 'wp-admin/includes/manifest.php',
   390 	'wp-admin/gears-manifest.php',
   391 'wp-admin/images/archive-link.png',
   391 	'wp-admin/includes/manifest.php',
   392 'wp-admin/images/blue-grad.png',
   392 	'wp-admin/images/archive-link.png',
   393 'wp-admin/images/button-grad-active.png',
   393 	'wp-admin/images/blue-grad.png',
   394 'wp-admin/images/button-grad.png',
   394 	'wp-admin/images/button-grad-active.png',
   395 'wp-admin/images/ed-bg-vs.gif',
   395 	'wp-admin/images/button-grad.png',
   396 'wp-admin/images/ed-bg.gif',
   396 	'wp-admin/images/ed-bg-vs.gif',
   397 'wp-admin/images/fade-butt.png',
   397 	'wp-admin/images/ed-bg.gif',
   398 'wp-admin/images/fav-arrow-rtl.gif',
   398 	'wp-admin/images/fade-butt.png',
   399 'wp-admin/images/fav-arrow.gif',
   399 	'wp-admin/images/fav-arrow-rtl.gif',
   400 'wp-admin/images/fav-vs.png',
   400 	'wp-admin/images/fav-arrow.gif',
   401 'wp-admin/images/fav.png',
   401 	'wp-admin/images/fav-vs.png',
   402 'wp-admin/images/gray-grad.png',
   402 	'wp-admin/images/fav.png',
   403 'wp-admin/images/loading-publish.gif',
   403 	'wp-admin/images/gray-grad.png',
   404 'wp-admin/images/logo-ghost.png',
   404 	'wp-admin/images/loading-publish.gif',
   405 'wp-admin/images/logo.gif',
   405 	'wp-admin/images/logo-ghost.png',
   406 'wp-admin/images/menu-arrow-frame-rtl.png',
   406 	'wp-admin/images/logo.gif',
   407 'wp-admin/images/menu-arrow-frame.png',
   407 	'wp-admin/images/menu-arrow-frame-rtl.png',
   408 'wp-admin/images/menu-arrows.gif',
   408 	'wp-admin/images/menu-arrow-frame.png',
   409 'wp-admin/images/menu-bits-rtl-vs.gif',
   409 	'wp-admin/images/menu-arrows.gif',
   410 'wp-admin/images/menu-bits-rtl.gif',
   410 	'wp-admin/images/menu-bits-rtl-vs.gif',
   411 'wp-admin/images/menu-bits-vs.gif',
   411 	'wp-admin/images/menu-bits-rtl.gif',
   412 'wp-admin/images/menu-bits.gif',
   412 	'wp-admin/images/menu-bits-vs.gif',
   413 'wp-admin/images/menu-dark-rtl-vs.gif',
   413 	'wp-admin/images/menu-bits.gif',
   414 'wp-admin/images/menu-dark-rtl.gif',
   414 	'wp-admin/images/menu-dark-rtl-vs.gif',
   415 'wp-admin/images/menu-dark-vs.gif',
   415 	'wp-admin/images/menu-dark-rtl.gif',
   416 'wp-admin/images/menu-dark.gif',
   416 	'wp-admin/images/menu-dark-vs.gif',
   417 'wp-admin/images/required.gif',
   417 	'wp-admin/images/menu-dark.gif',
   418 'wp-admin/images/screen-options-toggle-vs.gif',
   418 	'wp-admin/images/required.gif',
   419 'wp-admin/images/screen-options-toggle.gif',
   419 	'wp-admin/images/screen-options-toggle-vs.gif',
   420 'wp-admin/images/toggle-arrow-rtl.gif',
   420 	'wp-admin/images/screen-options-toggle.gif',
   421 'wp-admin/images/toggle-arrow.gif',
   421 	'wp-admin/images/toggle-arrow-rtl.gif',
   422 'wp-admin/images/upload-classic.png',
   422 	'wp-admin/images/toggle-arrow.gif',
   423 'wp-admin/images/upload-fresh.png',
   423 	'wp-admin/images/upload-classic.png',
   424 'wp-admin/images/white-grad-active.png',
   424 	'wp-admin/images/upload-fresh.png',
   425 'wp-admin/images/white-grad.png',
   425 	'wp-admin/images/white-grad-active.png',
   426 'wp-admin/images/widgets-arrow-vs.gif',
   426 	'wp-admin/images/white-grad.png',
   427 'wp-admin/images/widgets-arrow.gif',
   427 	'wp-admin/images/widgets-arrow-vs.gif',
   428 'wp-admin/images/wpspin_dark.gif',
   428 	'wp-admin/images/widgets-arrow.gif',
   429 'wp-includes/images/upload.png',
   429 	'wp-admin/images/wpspin_dark.gif',
   430 'wp-includes/js/prototype.js',
   430 	'wp-includes/images/upload.png',
   431 'wp-includes/js/scriptaculous',
   431 	'wp-includes/js/prototype.js',
   432 'wp-admin/css/wp-admin-rtl.dev.css',
   432 	'wp-includes/js/scriptaculous',
   433 'wp-admin/css/wp-admin.dev.css',
   433 	'wp-admin/css/wp-admin-rtl.dev.css',
   434 'wp-admin/css/media-rtl.dev.css',
   434 	'wp-admin/css/wp-admin.dev.css',
   435 'wp-admin/css/media.dev.css',
   435 	'wp-admin/css/media-rtl.dev.css',
   436 'wp-admin/css/colors-classic.dev.css',
   436 	'wp-admin/css/media.dev.css',
   437 'wp-admin/css/customize-controls-rtl.dev.css',
   437 	'wp-admin/css/colors-classic.dev.css',
   438 'wp-admin/css/customize-controls.dev.css',
   438 	'wp-admin/css/customize-controls-rtl.dev.css',
   439 'wp-admin/css/ie-rtl.dev.css',
   439 	'wp-admin/css/customize-controls.dev.css',
   440 'wp-admin/css/ie.dev.css',
   440 	'wp-admin/css/ie-rtl.dev.css',
   441 'wp-admin/css/install.dev.css',
   441 	'wp-admin/css/ie.dev.css',
   442 'wp-admin/css/colors-fresh.dev.css',
   442 	'wp-admin/css/install.dev.css',
   443 'wp-includes/js/customize-base.dev.js',
   443 	'wp-admin/css/colors-fresh.dev.css',
   444 'wp-includes/js/json2.dev.js',
   444 	'wp-includes/js/customize-base.dev.js',
   445 'wp-includes/js/comment-reply.dev.js',
   445 	'wp-includes/js/json2.dev.js',
   446 'wp-includes/js/customize-preview.dev.js',
   446 	'wp-includes/js/comment-reply.dev.js',
   447 'wp-includes/js/wplink.dev.js',
   447 	'wp-includes/js/customize-preview.dev.js',
   448 'wp-includes/js/tw-sack.dev.js',
   448 	'wp-includes/js/wplink.dev.js',
   449 'wp-includes/js/wp-list-revisions.dev.js',
   449 	'wp-includes/js/tw-sack.dev.js',
   450 'wp-includes/js/autosave.dev.js',
   450 	'wp-includes/js/wp-list-revisions.dev.js',
   451 'wp-includes/js/admin-bar.dev.js',
   451 	'wp-includes/js/autosave.dev.js',
   452 'wp-includes/js/quicktags.dev.js',
   452 	'wp-includes/js/admin-bar.dev.js',
   453 'wp-includes/js/wp-ajax-response.dev.js',
   453 	'wp-includes/js/quicktags.dev.js',
   454 'wp-includes/js/wp-pointer.dev.js',
   454 	'wp-includes/js/wp-ajax-response.dev.js',
   455 'wp-includes/js/hoverIntent.dev.js',
   455 	'wp-includes/js/wp-pointer.dev.js',
   456 'wp-includes/js/colorpicker.dev.js',
   456 	'wp-includes/js/hoverIntent.dev.js',
   457 'wp-includes/js/wp-lists.dev.js',
   457 	'wp-includes/js/colorpicker.dev.js',
   458 'wp-includes/js/customize-loader.dev.js',
   458 	'wp-includes/js/wp-lists.dev.js',
   459 'wp-includes/js/jquery/jquery.table-hotkeys.dev.js',
   459 	'wp-includes/js/customize-loader.dev.js',
   460 'wp-includes/js/jquery/jquery.color.dev.js',
   460 	'wp-includes/js/jquery/jquery.table-hotkeys.dev.js',
   461 'wp-includes/js/jquery/jquery.color.js',
   461 	'wp-includes/js/jquery/jquery.color.dev.js',
   462 'wp-includes/js/jquery/jquery.hotkeys.dev.js',
   462 	'wp-includes/js/jquery/jquery.color.js',
   463 'wp-includes/js/jquery/jquery.form.dev.js',
   463 	'wp-includes/js/jquery/jquery.hotkeys.dev.js',
   464 'wp-includes/js/jquery/suggest.dev.js',
   464 	'wp-includes/js/jquery/jquery.form.dev.js',
   465 'wp-admin/js/xfn.dev.js',
   465 	'wp-includes/js/jquery/suggest.dev.js',
   466 'wp-admin/js/set-post-thumbnail.dev.js',
   466 	'wp-admin/js/xfn.dev.js',
   467 'wp-admin/js/comment.dev.js',
   467 	'wp-admin/js/set-post-thumbnail.dev.js',
   468 'wp-admin/js/theme.dev.js',
   468 	'wp-admin/js/comment.dev.js',
   469 'wp-admin/js/cat.dev.js',
   469 	'wp-admin/js/theme.dev.js',
   470 'wp-admin/js/password-strength-meter.dev.js',
   470 	'wp-admin/js/cat.dev.js',
   471 'wp-admin/js/user-profile.dev.js',
   471 	'wp-admin/js/password-strength-meter.dev.js',
   472 'wp-admin/js/theme-preview.dev.js',
   472 	'wp-admin/js/user-profile.dev.js',
   473 'wp-admin/js/post.dev.js',
   473 	'wp-admin/js/theme-preview.dev.js',
   474 'wp-admin/js/media-upload.dev.js',
   474 	'wp-admin/js/post.dev.js',
   475 'wp-admin/js/word-count.dev.js',
   475 	'wp-admin/js/media-upload.dev.js',
   476 'wp-admin/js/plugin-install.dev.js',
   476 	'wp-admin/js/word-count.dev.js',
   477 'wp-admin/js/edit-comments.dev.js',
   477 	'wp-admin/js/plugin-install.dev.js',
   478 'wp-admin/js/media-gallery.dev.js',
   478 	'wp-admin/js/edit-comments.dev.js',
   479 'wp-admin/js/custom-fields.dev.js',
   479 	'wp-admin/js/media-gallery.dev.js',
   480 'wp-admin/js/custom-background.dev.js',
   480 	'wp-admin/js/custom-fields.dev.js',
   481 'wp-admin/js/common.dev.js',
   481 	'wp-admin/js/custom-background.dev.js',
   482 'wp-admin/js/inline-edit-tax.dev.js',
   482 	'wp-admin/js/common.dev.js',
   483 'wp-admin/js/gallery.dev.js',
   483 	'wp-admin/js/inline-edit-tax.dev.js',
   484 'wp-admin/js/utils.dev.js',
   484 	'wp-admin/js/gallery.dev.js',
   485 'wp-admin/js/widgets.dev.js',
   485 	'wp-admin/js/utils.dev.js',
   486 'wp-admin/js/wp-fullscreen.dev.js',
   486 	'wp-admin/js/widgets.dev.js',
   487 'wp-admin/js/nav-menu.dev.js',
   487 	'wp-admin/js/wp-fullscreen.dev.js',
   488 'wp-admin/js/dashboard.dev.js',
   488 	'wp-admin/js/nav-menu.dev.js',
   489 'wp-admin/js/link.dev.js',
   489 	'wp-admin/js/dashboard.dev.js',
   490 'wp-admin/js/user-suggest.dev.js',
   490 	'wp-admin/js/link.dev.js',
   491 'wp-admin/js/postbox.dev.js',
   491 	'wp-admin/js/user-suggest.dev.js',
   492 'wp-admin/js/tags.dev.js',
   492 	'wp-admin/js/postbox.dev.js',
   493 'wp-admin/js/image-edit.dev.js',
   493 	'wp-admin/js/tags.dev.js',
   494 'wp-admin/js/media.dev.js',
   494 	'wp-admin/js/image-edit.dev.js',
   495 'wp-admin/js/customize-controls.dev.js',
   495 	'wp-admin/js/media.dev.js',
   496 'wp-admin/js/inline-edit-post.dev.js',
   496 	'wp-admin/js/customize-controls.dev.js',
   497 'wp-admin/js/categories.dev.js',
   497 	'wp-admin/js/inline-edit-post.dev.js',
   498 'wp-admin/js/editor.dev.js',
   498 	'wp-admin/js/categories.dev.js',
   499 'wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.dev.js',
   499 	'wp-admin/js/editor.dev.js',
   500 'wp-includes/js/tinymce/plugins/wpdialogs/js/popup.dev.js',
   500 	'wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.dev.js',
   501 'wp-includes/js/tinymce/plugins/wpdialogs/js/wpdialog.dev.js',
   501 	'wp-includes/js/tinymce/plugins/wpdialogs/js/popup.dev.js',
   502 'wp-includes/js/plupload/handlers.dev.js',
   502 	'wp-includes/js/tinymce/plugins/wpdialogs/js/wpdialog.dev.js',
   503 'wp-includes/js/plupload/wp-plupload.dev.js',
   503 	'wp-includes/js/plupload/handlers.dev.js',
   504 'wp-includes/js/swfupload/handlers.dev.js',
   504 	'wp-includes/js/plupload/wp-plupload.dev.js',
   505 'wp-includes/js/jcrop/jquery.Jcrop.dev.js',
   505 	'wp-includes/js/swfupload/handlers.dev.js',
   506 'wp-includes/js/jcrop/jquery.Jcrop.js',
   506 	'wp-includes/js/jcrop/jquery.Jcrop.dev.js',
   507 'wp-includes/js/jcrop/jquery.Jcrop.css',
   507 	'wp-includes/js/jcrop/jquery.Jcrop.js',
   508 'wp-includes/js/imgareaselect/jquery.imgareaselect.dev.js',
   508 	'wp-includes/js/jcrop/jquery.Jcrop.css',
   509 'wp-includes/css/wp-pointer.dev.css',
   509 	'wp-includes/js/imgareaselect/jquery.imgareaselect.dev.js',
   510 'wp-includes/css/editor.dev.css',
   510 	'wp-includes/css/wp-pointer.dev.css',
   511 'wp-includes/css/jquery-ui-dialog.dev.css',
   511 	'wp-includes/css/editor.dev.css',
   512 'wp-includes/css/admin-bar-rtl.dev.css',
   512 	'wp-includes/css/jquery-ui-dialog.dev.css',
   513 'wp-includes/css/admin-bar.dev.css',
   513 	'wp-includes/css/admin-bar-rtl.dev.css',
   514 'wp-includes/js/jquery/ui/jquery.effects.clip.min.js',
   514 	'wp-includes/css/admin-bar.dev.css',
   515 'wp-includes/js/jquery/ui/jquery.effects.scale.min.js',
   515 	'wp-includes/js/jquery/ui/jquery.effects.clip.min.js',
   516 'wp-includes/js/jquery/ui/jquery.effects.blind.min.js',
   516 	'wp-includes/js/jquery/ui/jquery.effects.scale.min.js',
   517 'wp-includes/js/jquery/ui/jquery.effects.core.min.js',
   517 	'wp-includes/js/jquery/ui/jquery.effects.blind.min.js',
   518 'wp-includes/js/jquery/ui/jquery.effects.shake.min.js',
   518 	'wp-includes/js/jquery/ui/jquery.effects.core.min.js',
   519 'wp-includes/js/jquery/ui/jquery.effects.fade.min.js',
   519 	'wp-includes/js/jquery/ui/jquery.effects.shake.min.js',
   520 'wp-includes/js/jquery/ui/jquery.effects.explode.min.js',
   520 	'wp-includes/js/jquery/ui/jquery.effects.fade.min.js',
   521 'wp-includes/js/jquery/ui/jquery.effects.slide.min.js',
   521 	'wp-includes/js/jquery/ui/jquery.effects.explode.min.js',
   522 'wp-includes/js/jquery/ui/jquery.effects.drop.min.js',
   522 	'wp-includes/js/jquery/ui/jquery.effects.slide.min.js',
   523 'wp-includes/js/jquery/ui/jquery.effects.highlight.min.js',
   523 	'wp-includes/js/jquery/ui/jquery.effects.drop.min.js',
   524 'wp-includes/js/jquery/ui/jquery.effects.bounce.min.js',
   524 	'wp-includes/js/jquery/ui/jquery.effects.highlight.min.js',
   525 'wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js',
   525 	'wp-includes/js/jquery/ui/jquery.effects.bounce.min.js',
   526 'wp-includes/js/jquery/ui/jquery.effects.transfer.min.js',
   526 	'wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js',
   527 'wp-includes/js/jquery/ui/jquery.effects.fold.min.js',
   527 	'wp-includes/js/jquery/ui/jquery.effects.transfer.min.js',
   528 'wp-admin/images/screenshots/captions-1.png',
   528 	'wp-includes/js/jquery/ui/jquery.effects.fold.min.js',
   529 'wp-admin/images/screenshots/captions-2.png',
   529 	'wp-admin/images/screenshots/captions-1.png',
   530 'wp-admin/images/screenshots/flex-header-1.png',
   530 	'wp-admin/images/screenshots/captions-2.png',
   531 'wp-admin/images/screenshots/flex-header-2.png',
   531 	'wp-admin/images/screenshots/flex-header-1.png',
   532 'wp-admin/images/screenshots/flex-header-3.png',
   532 	'wp-admin/images/screenshots/flex-header-2.png',
   533 'wp-admin/images/screenshots/flex-header-media-library.png',
   533 	'wp-admin/images/screenshots/flex-header-3.png',
   534 'wp-admin/images/screenshots/theme-customizer.png',
   534 	'wp-admin/images/screenshots/flex-header-media-library.png',
   535 'wp-admin/images/screenshots/twitter-embed-1.png',
   535 	'wp-admin/images/screenshots/theme-customizer.png',
   536 'wp-admin/images/screenshots/twitter-embed-2.png',
   536 	'wp-admin/images/screenshots/twitter-embed-1.png',
   537 'wp-admin/js/utils.js',
   537 	'wp-admin/images/screenshots/twitter-embed-2.png',
   538 'wp-admin/options-privacy.php',
   538 	'wp-admin/js/utils.js',
   539 'wp-app.php',
   539 	'wp-admin/options-privacy.php',
   540 'wp-includes/class-wp-atom-server.php',
   540 	'wp-app.php',
   541 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/ui.css',
   541 	'wp-includes/class-wp-atom-server.php',
   542 // 3.5.2
   542 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/ui.css',
   543 'wp-includes/js/swfupload/swfupload-all.js',
   543 	// 3.5.2
   544 // 3.6
   544 	'wp-includes/js/swfupload/swfupload-all.js',
   545 'wp-admin/js/revisions-js.php',
   545 	// 3.6
   546 'wp-admin/images/screenshots',
   546 	'wp-admin/js/revisions-js.php',
   547 'wp-admin/js/categories.js',
   547 	'wp-admin/images/screenshots',
   548 'wp-admin/js/categories.min.js',
   548 	'wp-admin/js/categories.js',
   549 'wp-admin/js/custom-fields.js',
   549 	'wp-admin/js/categories.min.js',
   550 'wp-admin/js/custom-fields.min.js',
   550 	'wp-admin/js/custom-fields.js',
   551 // 3.7
   551 	'wp-admin/js/custom-fields.min.js',
   552 'wp-admin/js/cat.js',
   552 	// 3.7
   553 'wp-admin/js/cat.min.js',
   553 	'wp-admin/js/cat.js',
   554 'wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.min.js',
   554 	'wp-admin/js/cat.min.js',
   555 // 3.8
   555 	'wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.min.js',
   556 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/page_bug.gif',
   556 	// 3.8
   557 'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/more_bug.gif',
   557 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/page_bug.gif',
   558 'wp-includes/js/thickbox/tb-close-2x.png',
   558 	'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/more_bug.gif',
   559 'wp-includes/js/thickbox/tb-close.png',
   559 	'wp-includes/js/thickbox/tb-close-2x.png',
   560 'wp-includes/images/wpmini-blue-2x.png',
   560 	'wp-includes/js/thickbox/tb-close.png',
   561 'wp-includes/images/wpmini-blue.png',
   561 	'wp-includes/images/wpmini-blue-2x.png',
   562 'wp-admin/css/colors-fresh.css',
   562 	'wp-includes/images/wpmini-blue.png',
   563 'wp-admin/css/colors-classic.css',
   563 	'wp-admin/css/colors-fresh.css',
   564 'wp-admin/css/colors-fresh.min.css',
   564 	'wp-admin/css/colors-classic.css',
   565 'wp-admin/css/colors-classic.min.css',
   565 	'wp-admin/css/colors-fresh.min.css',
   566 'wp-admin/js/about.min.js',
   566 	'wp-admin/css/colors-classic.min.css',
   567 'wp-admin/js/about.js',
   567 	'wp-admin/js/about.min.js',
   568 'wp-admin/images/arrows-dark-vs-2x.png',
   568 	'wp-admin/js/about.js',
   569 'wp-admin/images/wp-logo-vs.png',
   569 	'wp-admin/images/arrows-dark-vs-2x.png',
   570 'wp-admin/images/arrows-dark-vs.png',
   570 	'wp-admin/images/wp-logo-vs.png',
   571 'wp-admin/images/wp-logo.png',
   571 	'wp-admin/images/arrows-dark-vs.png',
   572 'wp-admin/images/arrows-pr.png',
   572 	'wp-admin/images/wp-logo.png',
   573 'wp-admin/images/arrows-dark.png',
   573 	'wp-admin/images/arrows-pr.png',
   574 'wp-admin/images/press-this.png',
   574 	'wp-admin/images/arrows-dark.png',
   575 'wp-admin/images/press-this-2x.png',
   575 	'wp-admin/images/press-this.png',
   576 'wp-admin/images/arrows-vs-2x.png',
   576 	'wp-admin/images/press-this-2x.png',
   577 'wp-admin/images/welcome-icons.png',
   577 	'wp-admin/images/arrows-vs-2x.png',
   578 'wp-admin/images/wp-logo-2x.png',
   578 	'wp-admin/images/welcome-icons.png',
   579 'wp-admin/images/stars-rtl-2x.png',
   579 	'wp-admin/images/wp-logo-2x.png',
   580 'wp-admin/images/arrows-dark-2x.png',
   580 	'wp-admin/images/stars-rtl-2x.png',
   581 'wp-admin/images/arrows-pr-2x.png',
   581 	'wp-admin/images/arrows-dark-2x.png',
   582 'wp-admin/images/menu-shadow-rtl.png',
   582 	'wp-admin/images/arrows-pr-2x.png',
   583 'wp-admin/images/arrows-vs.png',
   583 	'wp-admin/images/menu-shadow-rtl.png',
   584 'wp-admin/images/about-search-2x.png',
   584 	'wp-admin/images/arrows-vs.png',
   585 'wp-admin/images/bubble_bg-rtl-2x.gif',
   585 	'wp-admin/images/about-search-2x.png',
   586 'wp-admin/images/wp-badge-2x.png',
   586 	'wp-admin/images/bubble_bg-rtl-2x.gif',
   587 'wp-admin/images/wordpress-logo-2x.png',
   587 	'wp-admin/images/wp-badge-2x.png',
   588 'wp-admin/images/bubble_bg-rtl.gif',
   588 	'wp-admin/images/wordpress-logo-2x.png',
   589 'wp-admin/images/wp-badge.png',
   589 	'wp-admin/images/bubble_bg-rtl.gif',
   590 'wp-admin/images/menu-shadow.png',
   590 	'wp-admin/images/wp-badge.png',
   591 'wp-admin/images/about-globe-2x.png',
   591 	'wp-admin/images/menu-shadow.png',
   592 'wp-admin/images/welcome-icons-2x.png',
   592 	'wp-admin/images/about-globe-2x.png',
   593 'wp-admin/images/stars-rtl.png',
   593 	'wp-admin/images/welcome-icons-2x.png',
   594 'wp-admin/images/wp-logo-vs-2x.png',
   594 	'wp-admin/images/stars-rtl.png',
   595 'wp-admin/images/about-updates-2x.png',
   595 	'wp-admin/images/wp-logo-vs-2x.png',
   596 // 3.9
   596 	'wp-admin/images/about-updates-2x.png',
   597 'wp-admin/css/colors.css',
   597 	// 3.9
   598 'wp-admin/css/colors.min.css',
   598 	'wp-admin/css/colors.css',
   599 'wp-admin/css/colors-rtl.css',
   599 	'wp-admin/css/colors.min.css',
   600 'wp-admin/css/colors-rtl.min.css',
   600 	'wp-admin/css/colors-rtl.css',
   601 // Following files added back in 4.5 see #36083
   601 	'wp-admin/css/colors-rtl.min.css',
   602 // 'wp-admin/css/media-rtl.min.css',
   602 	// Following files added back in 4.5 see #36083
   603 // 'wp-admin/css/media.min.css',
   603 	// 'wp-admin/css/media-rtl.min.css',
   604 // 'wp-admin/css/farbtastic-rtl.min.css',
   604 	// 'wp-admin/css/media.min.css',
   605 'wp-admin/images/lock-2x.png',
   605 	// 'wp-admin/css/farbtastic-rtl.min.css',
   606 'wp-admin/images/lock.png',
   606 	'wp-admin/images/lock-2x.png',
   607 'wp-admin/js/theme-preview.js',
   607 	'wp-admin/images/lock.png',
   608 'wp-admin/js/theme-install.min.js',
   608 	'wp-admin/js/theme-preview.js',
   609 'wp-admin/js/theme-install.js',
   609 	'wp-admin/js/theme-install.min.js',
   610 'wp-admin/js/theme-preview.min.js',
   610 	'wp-admin/js/theme-install.js',
   611 'wp-includes/js/plupload/plupload.html4.js',
   611 	'wp-admin/js/theme-preview.min.js',
   612 'wp-includes/js/plupload/plupload.html5.js',
   612 	'wp-includes/js/plupload/plupload.html4.js',
   613 'wp-includes/js/plupload/changelog.txt',
   613 	'wp-includes/js/plupload/plupload.html5.js',
   614 'wp-includes/js/plupload/plupload.silverlight.js',
   614 	'wp-includes/js/plupload/changelog.txt',
   615 'wp-includes/js/plupload/plupload.flash.js',
   615 	'wp-includes/js/plupload/plupload.silverlight.js',
   616 // Added back in 4.9 [41328], see #41755
   616 	'wp-includes/js/plupload/plupload.flash.js',
   617 // 'wp-includes/js/plupload/plupload.js',
   617 	// Added back in 4.9 [41328], see #41755
   618 'wp-includes/js/tinymce/plugins/spellchecker',
   618 	// 'wp-includes/js/plupload/plupload.js',
   619 'wp-includes/js/tinymce/plugins/inlinepopups',
   619 	'wp-includes/js/tinymce/plugins/spellchecker',
   620 'wp-includes/js/tinymce/plugins/media/js',
   620 	'wp-includes/js/tinymce/plugins/inlinepopups',
   621 'wp-includes/js/tinymce/plugins/media/css',
   621 	'wp-includes/js/tinymce/plugins/media/js',
   622 'wp-includes/js/tinymce/plugins/wordpress/img',
   622 	'wp-includes/js/tinymce/plugins/media/css',
   623 'wp-includes/js/tinymce/plugins/wpdialogs/js',
   623 	'wp-includes/js/tinymce/plugins/wordpress/img',
   624 'wp-includes/js/tinymce/plugins/wpeditimage/img',
   624 	'wp-includes/js/tinymce/plugins/wpdialogs/js',
   625 'wp-includes/js/tinymce/plugins/wpeditimage/js',
   625 	'wp-includes/js/tinymce/plugins/wpeditimage/img',
   626 'wp-includes/js/tinymce/plugins/wpeditimage/css',
   626 	'wp-includes/js/tinymce/plugins/wpeditimage/js',
   627 'wp-includes/js/tinymce/plugins/wpgallery/img',
   627 	'wp-includes/js/tinymce/plugins/wpeditimage/css',
   628 'wp-includes/js/tinymce/plugins/wpfullscreen/css',
   628 	'wp-includes/js/tinymce/plugins/wpgallery/img',
   629 'wp-includes/js/tinymce/plugins/paste/js',
   629 	'wp-includes/js/tinymce/plugins/wpfullscreen/css',
   630 'wp-includes/js/tinymce/themes/advanced',
   630 	'wp-includes/js/tinymce/plugins/paste/js',
   631 'wp-includes/js/tinymce/tiny_mce.js',
   631 	'wp-includes/js/tinymce/themes/advanced',
   632 'wp-includes/js/tinymce/mark_loaded_src.js',
   632 	'wp-includes/js/tinymce/tiny_mce.js',
   633 'wp-includes/js/tinymce/wp-tinymce-schema.js',
   633 	'wp-includes/js/tinymce/mark_loaded_src.js',
   634 'wp-includes/js/tinymce/plugins/media/editor_plugin.js',
   634 	'wp-includes/js/tinymce/wp-tinymce-schema.js',
   635 'wp-includes/js/tinymce/plugins/media/editor_plugin_src.js',
   635 	'wp-includes/js/tinymce/plugins/media/editor_plugin.js',
   636 'wp-includes/js/tinymce/plugins/media/media.htm',
   636 	'wp-includes/js/tinymce/plugins/media/editor_plugin_src.js',
   637 'wp-includes/js/tinymce/plugins/wpview/editor_plugin_src.js',
   637 	'wp-includes/js/tinymce/plugins/media/media.htm',
   638 'wp-includes/js/tinymce/plugins/wpview/editor_plugin.js',
   638 	'wp-includes/js/tinymce/plugins/wpview/editor_plugin_src.js',
   639 'wp-includes/js/tinymce/plugins/directionality/editor_plugin.js',
   639 	'wp-includes/js/tinymce/plugins/wpview/editor_plugin.js',
   640 'wp-includes/js/tinymce/plugins/directionality/editor_plugin_src.js',
   640 	'wp-includes/js/tinymce/plugins/directionality/editor_plugin.js',
   641 'wp-includes/js/tinymce/plugins/wordpress/editor_plugin.js',
   641 	'wp-includes/js/tinymce/plugins/directionality/editor_plugin_src.js',
   642 'wp-includes/js/tinymce/plugins/wordpress/editor_plugin_src.js',
   642 	'wp-includes/js/tinymce/plugins/wordpress/editor_plugin.js',
   643 'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin_src.js',
   643 	'wp-includes/js/tinymce/plugins/wordpress/editor_plugin_src.js',
   644 'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin.js',
   644 	'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin_src.js',
   645 'wp-includes/js/tinymce/plugins/wpeditimage/editimage.html',
   645 	'wp-includes/js/tinymce/plugins/wpdialogs/editor_plugin.js',
   646 'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js',
   646 	'wp-includes/js/tinymce/plugins/wpeditimage/editimage.html',
   647 'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin_src.js',
   647 	'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js',
   648 'wp-includes/js/tinymce/plugins/fullscreen/editor_plugin_src.js',
   648 	'wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin_src.js',
   649 'wp-includes/js/tinymce/plugins/fullscreen/fullscreen.htm',
   649 	'wp-includes/js/tinymce/plugins/fullscreen/editor_plugin_src.js',
   650 'wp-includes/js/tinymce/plugins/fullscreen/editor_plugin.js',
   650 	'wp-includes/js/tinymce/plugins/fullscreen/fullscreen.htm',
   651 'wp-includes/js/tinymce/plugins/wplink/editor_plugin_src.js',
   651 	'wp-includes/js/tinymce/plugins/fullscreen/editor_plugin.js',
   652 'wp-includes/js/tinymce/plugins/wplink/editor_plugin.js',
   652 	'wp-includes/js/tinymce/plugins/wplink/editor_plugin_src.js',
   653 'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin_src.js',
   653 	'wp-includes/js/tinymce/plugins/wplink/editor_plugin.js',
   654 'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin.js',
   654 	'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin_src.js',
   655 'wp-includes/js/tinymce/plugins/tabfocus/editor_plugin.js',
   655 	'wp-includes/js/tinymce/plugins/wpgallery/editor_plugin.js',
   656 'wp-includes/js/tinymce/plugins/tabfocus/editor_plugin_src.js',
   656 	'wp-includes/js/tinymce/plugins/tabfocus/editor_plugin.js',
   657 'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.js',
   657 	'wp-includes/js/tinymce/plugins/tabfocus/editor_plugin_src.js',
   658 'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin_src.js',
   658 	'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.js',
   659 'wp-includes/js/tinymce/plugins/paste/editor_plugin.js',
   659 	'wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin_src.js',
   660 'wp-includes/js/tinymce/plugins/paste/pasteword.htm',
   660 	'wp-includes/js/tinymce/plugins/paste/editor_plugin.js',
   661 'wp-includes/js/tinymce/plugins/paste/editor_plugin_src.js',
   661 	'wp-includes/js/tinymce/plugins/paste/pasteword.htm',
   662 'wp-includes/js/tinymce/plugins/paste/pastetext.htm',
   662 	'wp-includes/js/tinymce/plugins/paste/editor_plugin_src.js',
   663 'wp-includes/js/tinymce/langs/wp-langs.php',
   663 	'wp-includes/js/tinymce/plugins/paste/pastetext.htm',
   664 // 4.1
   664 	'wp-includes/js/tinymce/langs/wp-langs.php',
   665 'wp-includes/js/jquery/ui/jquery.ui.accordion.min.js',
   665 	// 4.1
   666 'wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js',
   666 	'wp-includes/js/jquery/ui/jquery.ui.accordion.min.js',
   667 'wp-includes/js/jquery/ui/jquery.ui.button.min.js',
   667 	'wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js',
   668 'wp-includes/js/jquery/ui/jquery.ui.core.min.js',
   668 	'wp-includes/js/jquery/ui/jquery.ui.button.min.js',
   669 'wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js',
   669 	'wp-includes/js/jquery/ui/jquery.ui.core.min.js',
   670 'wp-includes/js/jquery/ui/jquery.ui.dialog.min.js',
   670 	'wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js',
   671 'wp-includes/js/jquery/ui/jquery.ui.draggable.min.js',
   671 	'wp-includes/js/jquery/ui/jquery.ui.dialog.min.js',
   672 'wp-includes/js/jquery/ui/jquery.ui.droppable.min.js',
   672 	'wp-includes/js/jquery/ui/jquery.ui.draggable.min.js',
   673 'wp-includes/js/jquery/ui/jquery.ui.effect-blind.min.js',
   673 	'wp-includes/js/jquery/ui/jquery.ui.droppable.min.js',
   674 'wp-includes/js/jquery/ui/jquery.ui.effect-bounce.min.js',
   674 	'wp-includes/js/jquery/ui/jquery.ui.effect-blind.min.js',
   675 'wp-includes/js/jquery/ui/jquery.ui.effect-clip.min.js',
   675 	'wp-includes/js/jquery/ui/jquery.ui.effect-bounce.min.js',
   676 'wp-includes/js/jquery/ui/jquery.ui.effect-drop.min.js',
   676 	'wp-includes/js/jquery/ui/jquery.ui.effect-clip.min.js',
   677 'wp-includes/js/jquery/ui/jquery.ui.effect-explode.min.js',
   677 	'wp-includes/js/jquery/ui/jquery.ui.effect-drop.min.js',
   678 'wp-includes/js/jquery/ui/jquery.ui.effect-fade.min.js',
   678 	'wp-includes/js/jquery/ui/jquery.ui.effect-explode.min.js',
   679 'wp-includes/js/jquery/ui/jquery.ui.effect-fold.min.js',
   679 	'wp-includes/js/jquery/ui/jquery.ui.effect-fade.min.js',
   680 'wp-includes/js/jquery/ui/jquery.ui.effect-highlight.min.js',
   680 	'wp-includes/js/jquery/ui/jquery.ui.effect-fold.min.js',
   681 'wp-includes/js/jquery/ui/jquery.ui.effect-pulsate.min.js',
   681 	'wp-includes/js/jquery/ui/jquery.ui.effect-highlight.min.js',
   682 'wp-includes/js/jquery/ui/jquery.ui.effect-scale.min.js',
   682 	'wp-includes/js/jquery/ui/jquery.ui.effect-pulsate.min.js',
   683 'wp-includes/js/jquery/ui/jquery.ui.effect-shake.min.js',
   683 	'wp-includes/js/jquery/ui/jquery.ui.effect-scale.min.js',
   684 'wp-includes/js/jquery/ui/jquery.ui.effect-slide.min.js',
   684 	'wp-includes/js/jquery/ui/jquery.ui.effect-shake.min.js',
   685 'wp-includes/js/jquery/ui/jquery.ui.effect-transfer.min.js',
   685 	'wp-includes/js/jquery/ui/jquery.ui.effect-slide.min.js',
   686 'wp-includes/js/jquery/ui/jquery.ui.effect.min.js',
   686 	'wp-includes/js/jquery/ui/jquery.ui.effect-transfer.min.js',
   687 'wp-includes/js/jquery/ui/jquery.ui.menu.min.js',
   687 	'wp-includes/js/jquery/ui/jquery.ui.effect.min.js',
   688 'wp-includes/js/jquery/ui/jquery.ui.mouse.min.js',
   688 	'wp-includes/js/jquery/ui/jquery.ui.menu.min.js',
   689 'wp-includes/js/jquery/ui/jquery.ui.position.min.js',
   689 	'wp-includes/js/jquery/ui/jquery.ui.mouse.min.js',
   690 'wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js',
   690 	'wp-includes/js/jquery/ui/jquery.ui.position.min.js',
   691 'wp-includes/js/jquery/ui/jquery.ui.resizable.min.js',
   691 	'wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js',
   692 'wp-includes/js/jquery/ui/jquery.ui.selectable.min.js',
   692 	'wp-includes/js/jquery/ui/jquery.ui.resizable.min.js',
   693 'wp-includes/js/jquery/ui/jquery.ui.slider.min.js',
   693 	'wp-includes/js/jquery/ui/jquery.ui.selectable.min.js',
   694 'wp-includes/js/jquery/ui/jquery.ui.sortable.min.js',
   694 	'wp-includes/js/jquery/ui/jquery.ui.slider.min.js',
   695 'wp-includes/js/jquery/ui/jquery.ui.spinner.min.js',
   695 	'wp-includes/js/jquery/ui/jquery.ui.sortable.min.js',
   696 'wp-includes/js/jquery/ui/jquery.ui.tabs.min.js',
   696 	'wp-includes/js/jquery/ui/jquery.ui.spinner.min.js',
   697 'wp-includes/js/jquery/ui/jquery.ui.tooltip.min.js',
   697 	'wp-includes/js/jquery/ui/jquery.ui.tabs.min.js',
   698 'wp-includes/js/jquery/ui/jquery.ui.widget.min.js',
   698 	'wp-includes/js/jquery/ui/jquery.ui.tooltip.min.js',
   699 'wp-includes/js/tinymce/skins/wordpress/images/dashicon-no-alt.png',
   699 	'wp-includes/js/jquery/ui/jquery.ui.widget.min.js',
   700 // 4.3
   700 	'wp-includes/js/tinymce/skins/wordpress/images/dashicon-no-alt.png',
   701 'wp-admin/js/wp-fullscreen.js',
   701 	// 4.3
   702 'wp-admin/js/wp-fullscreen.min.js',
   702 	'wp-admin/js/wp-fullscreen.js',
   703 'wp-includes/js/tinymce/wp-mce-help.php',
   703 	'wp-admin/js/wp-fullscreen.min.js',
   704 'wp-includes/js/tinymce/plugins/wpfullscreen',
   704 	'wp-includes/js/tinymce/wp-mce-help.php',
   705 // 4.5
   705 	'wp-includes/js/tinymce/plugins/wpfullscreen',
   706 'wp-includes/theme-compat/comments-popup.php',
   706 	// 4.5
   707 // 4.6
   707 	'wp-includes/theme-compat/comments-popup.php',
   708 'wp-admin/includes/class-wp-automatic-upgrader.php', // Wrong file name, see #37628.
   708 	// 4.6
   709 // 4.8
   709 	'wp-admin/includes/class-wp-automatic-upgrader.php', // Wrong file name, see #37628.
   710 'wp-includes/js/tinymce/plugins/wpembed',
   710 	// 4.8
   711 'wp-includes/js/tinymce/plugins/media/moxieplayer.swf',
   711 	'wp-includes/js/tinymce/plugins/wpembed',
   712 'wp-includes/js/tinymce/skins/lightgray/fonts/readme.md',
   712 	'wp-includes/js/tinymce/plugins/media/moxieplayer.swf',
   713 'wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.json',
   713 	'wp-includes/js/tinymce/skins/lightgray/fonts/readme.md',
   714 'wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.json',
   714 	'wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.json',
   715 'wp-includes/js/tinymce/skins/lightgray/skin.ie7.min.css',
   715 	'wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.json',
   716 // 4.9
   716 	'wp-includes/js/tinymce/skins/lightgray/skin.ie7.min.css',
   717 'wp-admin/css/press-this-editor-rtl.css',
   717 	// 4.9
   718 'wp-admin/css/press-this-editor-rtl.min.css',
   718 	'wp-admin/css/press-this-editor-rtl.css',
   719 'wp-admin/css/press-this-editor.css',
   719 	'wp-admin/css/press-this-editor-rtl.min.css',
   720 'wp-admin/css/press-this-editor.min.css',
   720 	'wp-admin/css/press-this-editor.css',
   721 'wp-admin/css/press-this-rtl.css',
   721 	'wp-admin/css/press-this-editor.min.css',
   722 'wp-admin/css/press-this-rtl.min.css',
   722 	'wp-admin/css/press-this-rtl.css',
   723 'wp-admin/css/press-this.css',
   723 	'wp-admin/css/press-this-rtl.min.css',
   724 'wp-admin/css/press-this.min.css',
   724 	'wp-admin/css/press-this.css',
   725 'wp-admin/includes/class-wp-press-this.php',
   725 	'wp-admin/css/press-this.min.css',
   726 'wp-admin/js/bookmarklet.js',
   726 	'wp-admin/includes/class-wp-press-this.php',
   727 'wp-admin/js/bookmarklet.min.js',
   727 	'wp-admin/js/bookmarklet.js',
   728 'wp-admin/js/press-this.js',
   728 	'wp-admin/js/bookmarklet.min.js',
   729 'wp-admin/js/press-this.min.js',
   729 	'wp-admin/js/press-this.js',
   730 'wp-includes/js/mediaelement/background.png',
   730 	'wp-admin/js/press-this.min.js',
   731 'wp-includes/js/mediaelement/bigplay.png',
   731 	'wp-includes/js/mediaelement/background.png',
   732 'wp-includes/js/mediaelement/bigplay.svg',
   732 	'wp-includes/js/mediaelement/bigplay.png',
   733 'wp-includes/js/mediaelement/controls.png',
   733 	'wp-includes/js/mediaelement/bigplay.svg',
   734 'wp-includes/js/mediaelement/controls.svg',
   734 	'wp-includes/js/mediaelement/controls.png',
   735 'wp-includes/js/mediaelement/flashmediaelement.swf',
   735 	'wp-includes/js/mediaelement/controls.svg',
   736 'wp-includes/js/mediaelement/froogaloop.min.js',
   736 	'wp-includes/js/mediaelement/flashmediaelement.swf',
   737 'wp-includes/js/mediaelement/jumpforward.png',
   737 	'wp-includes/js/mediaelement/froogaloop.min.js',
   738 'wp-includes/js/mediaelement/loading.gif',
   738 	'wp-includes/js/mediaelement/jumpforward.png',
   739 'wp-includes/js/mediaelement/silverlightmediaelement.xap',
   739 	'wp-includes/js/mediaelement/loading.gif',
   740 'wp-includes/js/mediaelement/skipback.png',
   740 	'wp-includes/js/mediaelement/silverlightmediaelement.xap',
   741 'wp-includes/js/plupload/plupload.flash.swf',
   741 	'wp-includes/js/mediaelement/skipback.png',
   742 'wp-includes/js/plupload/plupload.full.min.js',
   742 	'wp-includes/js/plupload/plupload.flash.swf',
   743 'wp-includes/js/plupload/plupload.silverlight.xap',
   743 	'wp-includes/js/plupload/plupload.full.min.js',
   744 'wp-includes/js/swfupload/plugins',
   744 	'wp-includes/js/plupload/plupload.silverlight.xap',
   745 'wp-includes/js/swfupload/swfupload.swf',
   745 	'wp-includes/js/swfupload/plugins',
       
   746 	'wp-includes/js/swfupload/swfupload.swf',
   746 	// 4.9.2
   747 	// 4.9.2
   747 	'wp-includes/js/mediaelement/lang',
   748 	'wp-includes/js/mediaelement/lang',
   748 	'wp-includes/js/mediaelement/lang/ca.js',
   749 	'wp-includes/js/mediaelement/lang/ca.js',
   749 	'wp-includes/js/mediaelement/lang/cs.js',
   750 	'wp-includes/js/mediaelement/lang/cs.js',
   750 	'wp-includes/js/mediaelement/lang/de.js',
   751 	'wp-includes/js/mediaelement/lang/de.js',
   777 	'wp-includes/js/mediaelement/renderers/facebook.min.js',
   778 	'wp-includes/js/mediaelement/renderers/facebook.min.js',
   778 	'wp-includes/js/mediaelement/renderers/soundcloud.js',
   779 	'wp-includes/js/mediaelement/renderers/soundcloud.js',
   779 	'wp-includes/js/mediaelement/renderers/soundcloud.min.js',
   780 	'wp-includes/js/mediaelement/renderers/soundcloud.min.js',
   780 	'wp-includes/js/mediaelement/renderers/twitch.js',
   781 	'wp-includes/js/mediaelement/renderers/twitch.js',
   781 	'wp-includes/js/mediaelement/renderers/twitch.min.js',
   782 	'wp-includes/js/mediaelement/renderers/twitch.min.js',
       
   783 	// 5.0
       
   784 	'wp-includes/js/codemirror/jshint.js',
       
   785 	// 5.1
       
   786 	'wp-includes/random_compat/random_bytes_openssl.php',
       
   787 	'wp-includes/js/tinymce/wp-tinymce.js.gz',
   782 );
   788 );
   783 
   789 
   784 /**
   790 /**
   785  * Stores new files in wp-content to copy
   791  * Stores new files in wp-content to copy
   786  *
   792  *
   812 	'themes/twentythirteen/'  => '3.6',
   818 	'themes/twentythirteen/'  => '3.6',
   813 	'themes/twentyfourteen/'  => '3.8',
   819 	'themes/twentyfourteen/'  => '3.8',
   814 	'themes/twentyfifteen/'   => '4.1',
   820 	'themes/twentyfifteen/'   => '4.1',
   815 	'themes/twentysixteen/'   => '4.4',
   821 	'themes/twentysixteen/'   => '4.4',
   816 	'themes/twentyseventeen/' => '4.7',
   822 	'themes/twentyseventeen/' => '4.7',
       
   823 	'themes/twentynineteen/'  => '5.0',
   817 );
   824 );
   818 
   825 
   819 /**
   826 /**
   820  * Upgrades the core of WordPress.
   827  * Upgrades the core of WordPress.
   821  *
   828  *
   856  * themes, then if you edit the default theme, you should rename it, so that
   863  * themes, then if you edit the default theme, you should rename it, so that
   857  * your changes remain.
   864  * your changes remain.
   858  *
   865  *
   859  * @since 2.7.0
   866  * @since 2.7.0
   860  *
   867  *
   861  * @global WP_Filesystem_Base $wp_filesystem
   868  * @global WP_Filesystem_Base $wp_filesystem          WordPress filesystem subclass.
   862  * @global array              $_old_files
   869  * @global array              $_old_files
   863  * @global array              $_new_bundled_files
   870  * @global array              $_new_bundled_files
   864  * @global wpdb               $wpdb
   871  * @global wpdb               $wpdb
   865  * @global string             $wp_version
   872  * @global string             $wp_version
   866  * @global string             $required_php_version
   873  * @global string             $required_php_version
   868  *
   875  *
   869  * @param string $from New release unzipped path.
   876  * @param string $from New release unzipped path.
   870  * @param string $to   Path to old WordPress installation.
   877  * @param string $to   Path to old WordPress installation.
   871  * @return WP_Error|null WP_Error on failure, null on success.
   878  * @return WP_Error|null WP_Error on failure, null on success.
   872  */
   879  */
   873 function update_core($from, $to) {
   880 function update_core( $from, $to ) {
   874 	global $wp_filesystem, $_old_files, $_new_bundled_files, $wpdb;
   881 	global $wp_filesystem, $_old_files, $_new_bundled_files, $wpdb;
   875 
   882 
   876 	@set_time_limit( 300 );
   883 	@set_time_limit( 300 );
   877 
   884 
   878 	/**
   885 	/**
   894 	 */
   901 	 */
   895 	apply_filters( 'update_feedback', __( 'Verifying the unpacked files…' ) );
   902 	apply_filters( 'update_feedback', __( 'Verifying the unpacked files…' ) );
   896 
   903 
   897 	// Sanity check the unzipped distribution.
   904 	// Sanity check the unzipped distribution.
   898 	$distro = '';
   905 	$distro = '';
   899 	$roots = array( '/wordpress/', '/wordpress-mu/' );
   906 	$roots  = array( '/wordpress/', '/wordpress-mu/' );
   900 	foreach ( $roots as $root ) {
   907 	foreach ( $roots as $root ) {
   901 		if ( $wp_filesystem->exists( $from . $root . 'readme.html' ) && $wp_filesystem->exists( $from . $root . 'wp-includes/version.php' ) ) {
   908 		if ( $wp_filesystem->exists( $from . $root . 'readme.html' ) && $wp_filesystem->exists( $from . $root . 'wp-includes/version.php' ) ) {
   902 			$distro = $root;
   909 			$distro = $root;
   903 			break;
   910 			break;
   904 		}
   911 		}
   905 	}
   912 	}
   906 	if ( ! $distro ) {
   913 	if ( ! $distro ) {
   907 		$wp_filesystem->delete( $from, true );
   914 		$wp_filesystem->delete( $from, true );
   908 		return new WP_Error( 'insane_distro', __('The update could not be unpacked') );
   915 		return new WP_Error( 'insane_distro', __( 'The update could not be unpacked' ) );
   909 	}
   916 	}
   910 
       
   911 
   917 
   912 	/*
   918 	/*
   913 	 * Import $wp_version, $required_php_version, and $required_mysql_version from the new version.
   919 	 * Import $wp_version, $required_php_version, and $required_mysql_version from the new version.
   914 	 * DO NOT globalise any variables imported from `version-current.php` in this function.
   920 	 * DO NOT globalise any variables imported from `version-current.php` in this function.
   915 	 *
   921 	 *
   923 
   929 
   924 	$wp_filesystem->chmod( $versions_file, FS_CHMOD_FILE );
   930 	$wp_filesystem->chmod( $versions_file, FS_CHMOD_FILE );
   925 	require( WP_CONTENT_DIR . '/upgrade/version-current.php' );
   931 	require( WP_CONTENT_DIR . '/upgrade/version-current.php' );
   926 	$wp_filesystem->delete( $versions_file );
   932 	$wp_filesystem->delete( $versions_file );
   927 
   933 
   928 	$php_version    = phpversion();
   934 	$php_version       = phpversion();
   929 	$mysql_version  = $wpdb->db_version();
   935 	$mysql_version     = $wpdb->db_version();
   930 	$old_wp_version = $GLOBALS['wp_version']; // The version of WordPress we're updating from
   936 	$old_wp_version    = $GLOBALS['wp_version']; // The version of WordPress we're updating from
   931 	$development_build = ( false !== strpos( $old_wp_version . $wp_version, '-' )  ); // a dash in the version indicates a Development release
   937 	$development_build = ( false !== strpos( $old_wp_version . $wp_version, '-' ) ); // a dash in the version indicates a Development release
   932 	$php_compat     = version_compare( $php_version, $required_php_version, '>=' );
   938 	$php_compat        = version_compare( $php_version, $required_php_version, '>=' );
   933 	if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) )
   939 	if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) {
   934 		$mysql_compat = true;
   940 		$mysql_compat = true;
   935 	else
   941 	} else {
   936 		$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
   942 		$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
   937 
   943 	}
   938 	if ( !$mysql_compat || !$php_compat )
   944 
   939 		$wp_filesystem->delete($from, true);
   945 	if ( ! $mysql_compat || ! $php_compat ) {
   940 
   946 		$wp_filesystem->delete( $from, true );
   941 	if ( !$mysql_compat && !$php_compat )
   947 	}
   942 		return new WP_Error( 'php_mysql_not_compatible', sprintf( __('The update cannot be installed because WordPress %1$s requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version ) );
   948 
   943 	elseif ( !$php_compat )
   949 	$php_update_message = '';
   944 		return new WP_Error( 'php_not_compatible', sprintf( __('The update cannot be installed because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.'), $wp_version, $required_php_version, $php_version ) );
   950 	if ( function_exists( 'wp_get_update_php_url' ) ) {
   945 	elseif ( !$mysql_compat )
   951 		/* translators: %s: Update PHP page URL */
   946 		return new WP_Error( 'mysql_not_compatible', sprintf( __('The update cannot be installed because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version ) );
   952 		$php_update_message = '</p><p>' . sprintf( __( '<a href="%s">Learn more about updating PHP</a>.' ), esc_url( wp_get_update_php_url() ) );
       
   953 
       
   954 		if ( function_exists( 'wp_get_update_php_annotation' ) ) {
       
   955 			$annotation = wp_get_update_php_annotation();
       
   956 			if ( $annotation ) {
       
   957 				$php_update_message .= '</p><p><em>' . $annotation . '</em>';
       
   958 			}
       
   959 		}
       
   960 	}
       
   961 
       
   962 	if ( ! $mysql_compat && ! $php_compat ) {
       
   963 		return new WP_Error( 'php_mysql_not_compatible', sprintf( __( 'The update cannot be installed because WordPress %1$s requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.' ), $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version ) . $php_update_message );
       
   964 	} elseif ( ! $php_compat ) {
       
   965 		return new WP_Error( 'php_not_compatible', sprintf( __( 'The update cannot be installed because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.' ), $wp_version, $required_php_version, $php_version ) . $php_update_message );
       
   966 	} elseif ( ! $mysql_compat ) {
       
   967 		return new WP_Error( 'mysql_not_compatible', sprintf( __( 'The update cannot be installed because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.' ), $wp_version, $required_mysql_version, $mysql_version ) );
       
   968 	}
   947 
   969 
   948 	/** This filter is documented in wp-admin/includes/update-core.php */
   970 	/** This filter is documented in wp-admin/includes/update-core.php */
   949 	apply_filters( 'update_feedback', __( 'Preparing to install the latest version&#8230;' ) );
   971 	apply_filters( 'update_feedback', __( 'Preparing to install the latest version&#8230;' ) );
   950 
   972 
   951 	// Don't copy wp-content, we'll deal with that below
   973 	// Don't copy wp-content, we'll deal with that below
   952 	// We also copy version.php last so failed updates report their old version
   974 	// We also copy version.php last so failed updates report their old version
   953 	$skip = array( 'wp-content', 'wp-includes/version.php' );
   975 	$skip              = array( 'wp-content', 'wp-includes/version.php' );
   954 	$check_is_writable = array();
   976 	$check_is_writable = array();
   955 
   977 
   956 	// Check to see which files don't really need updating - only available for 3.7 and higher
   978 	// Check to see which files don't really need updating - only available for 3.7 and higher
   957 	if ( function_exists( 'get_core_checksums' ) ) {
   979 	if ( function_exists( 'get_core_checksums' ) ) {
   958 		// Find the local version of the working directory
   980 		// Find the local version of the working directory
   959 		$working_dir_local = WP_CONTENT_DIR . '/upgrade/' . basename( $from ) . $distro;
   981 		$working_dir_local = WP_CONTENT_DIR . '/upgrade/' . basename( $from ) . $distro;
   960 
   982 
   961 		$checksums = get_core_checksums( $wp_version, isset( $wp_local_package ) ? $wp_local_package : 'en_US' );
   983 		$checksums = get_core_checksums( $wp_version, isset( $wp_local_package ) ? $wp_local_package : 'en_US' );
   962 		if ( is_array( $checksums ) && isset( $checksums[ $wp_version ] ) )
   984 		if ( is_array( $checksums ) && isset( $checksums[ $wp_version ] ) ) {
   963 			$checksums = $checksums[ $wp_version ]; // Compat code for 3.7-beta2
   985 			$checksums = $checksums[ $wp_version ]; // Compat code for 3.7-beta2
       
   986 		}
   964 		if ( is_array( $checksums ) ) {
   987 		if ( is_array( $checksums ) ) {
   965 			foreach ( $checksums as $file => $checksum ) {
   988 			foreach ( $checksums as $file => $checksum ) {
   966 				if ( 'wp-content' == substr( $file, 0, 10 ) )
   989 				if ( 'wp-content' == substr( $file, 0, 10 ) ) {
   967 					continue;
   990 					continue;
   968 				if ( ! file_exists( ABSPATH . $file ) )
   991 				}
       
   992 				if ( ! file_exists( ABSPATH . $file ) ) {
   969 					continue;
   993 					continue;
   970 				if ( ! file_exists( $working_dir_local . $file ) )
   994 				}
       
   995 				if ( ! file_exists( $working_dir_local . $file ) ) {
   971 					continue;
   996 					continue;
   972 				if ( '.' === dirname( $file ) && in_array( pathinfo( $file, PATHINFO_EXTENSION ), array( 'html', 'txt' ) ) )
   997 				}
       
   998 				if ( '.' === dirname( $file ) && in_array( pathinfo( $file, PATHINFO_EXTENSION ), array( 'html', 'txt' ) ) ) {
   973 					continue;
   999 					continue;
   974 				if ( md5_file( ABSPATH . $file ) === $checksum )
  1000 				}
       
  1001 				if ( md5_file( ABSPATH . $file ) === $checksum ) {
   975 					$skip[] = $file;
  1002 					$skip[] = $file;
   976 				else
  1003 				} else {
   977 					$check_is_writable[ $file ] = ABSPATH . $file;
  1004 					$check_is_writable[ $file ] = ABSPATH . $file;
       
  1005 				}
   978 			}
  1006 			}
   979 		}
  1007 		}
   980 	}
  1008 	}
   981 
  1009 
   982 	// If we're using the direct method, we can predict write failures that are due to permissions.
  1010 	// If we're using the direct method, we can predict write failures that are due to permissions.
   985 		if ( $files_writable !== $check_is_writable ) {
  1013 		if ( $files_writable !== $check_is_writable ) {
   986 			$files_not_writable = array_diff_key( $check_is_writable, $files_writable );
  1014 			$files_not_writable = array_diff_key( $check_is_writable, $files_writable );
   987 			foreach ( $files_not_writable as $relative_file_not_writable => $file_not_writable ) {
  1015 			foreach ( $files_not_writable as $relative_file_not_writable => $file_not_writable ) {
   988 				// If the writable check failed, chmod file to 0644 and try again, same as copy_dir().
  1016 				// If the writable check failed, chmod file to 0644 and try again, same as copy_dir().
   989 				$wp_filesystem->chmod( $file_not_writable, FS_CHMOD_FILE );
  1017 				$wp_filesystem->chmod( $file_not_writable, FS_CHMOD_FILE );
   990 				if ( $wp_filesystem->is_writable( $file_not_writable ) )
  1018 				if ( $wp_filesystem->is_writable( $file_not_writable ) ) {
   991 					unset( $files_not_writable[ $relative_file_not_writable ] );
  1019 					unset( $files_not_writable[ $relative_file_not_writable ] );
       
  1020 				}
   992 			}
  1021 			}
   993 
  1022 
   994 			// Store package-relative paths (the key) of non-writable files in the WP_Error object.
  1023 			// Store package-relative paths (the key) of non-writable files in the WP_Error object.
   995 			$error_data = version_compare( $old_wp_version, '3.7-beta2', '>' ) ? array_keys( $files_not_writable ) : '';
  1024 			$error_data = version_compare( $old_wp_version, '3.7-beta2', '>' ) ? array_keys( $files_not_writable ) : '';
   996 
  1025 
   997 			if ( $files_not_writable )
  1026 			if ( $files_not_writable ) {
   998 				return new WP_Error( 'files_not_writable', __( 'The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.' ), implode( ', ', $error_data ) );
  1027 				return new WP_Error( 'files_not_writable', __( 'The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.' ), implode( ', ', $error_data ) );
       
  1028 			}
   999 		}
  1029 		}
  1000 	}
  1030 	}
  1001 
  1031 
  1002 	/** This filter is documented in wp-admin/includes/update-core.php */
  1032 	/** This filter is documented in wp-admin/includes/update-core.php */
  1003 	apply_filters( 'update_feedback', __( 'Enabling Maintenance mode&#8230;' ) );
  1033 	apply_filters( 'update_feedback', __( 'Enabling Maintenance mode&#8230;' ) );
  1004 	// Create maintenance file to signal that we are upgrading
  1034 	// Create maintenance file to signal that we are upgrading
  1005 	$maintenance_string = '<?php $upgrading = ' . time() . '; ?>';
  1035 	$maintenance_string = '<?php $upgrading = ' . time() . '; ?>';
  1006 	$maintenance_file = $to . '.maintenance';
  1036 	$maintenance_file   = $to . '.maintenance';
  1007 	$wp_filesystem->delete($maintenance_file);
  1037 	$wp_filesystem->delete( $maintenance_file );
  1008 	$wp_filesystem->put_contents($maintenance_file, $maintenance_string, FS_CHMOD_FILE);
  1038 	$wp_filesystem->put_contents( $maintenance_file, $maintenance_string, FS_CHMOD_FILE );
  1009 
  1039 
  1010 	/** This filter is documented in wp-admin/includes/update-core.php */
  1040 	/** This filter is documented in wp-admin/includes/update-core.php */
  1011 	apply_filters( 'update_feedback', __( 'Copying the required files&#8230;' ) );
  1041 	apply_filters( 'update_feedback', __( 'Copying the required files&#8230;' ) );
  1012 	// Copy new versions of WP files into place.
  1042 	// Copy new versions of WP files into place.
  1013 	$result = _copy_dir( $from . $distro, $to, $skip );
  1043 	$result = _copy_dir( $from . $distro, $to, $skip );
  1014 	if ( is_wp_error( $result ) )
  1044 	if ( is_wp_error( $result ) ) {
  1015 		$result = new WP_Error( $result->get_error_code(), $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) );
  1045 		$result = new WP_Error( $result->get_error_code(), $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) );
       
  1046 	}
  1016 
  1047 
  1017 	// Since we know the core files have copied over, we can now copy the version file
  1048 	// Since we know the core files have copied over, we can now copy the version file
  1018 	if ( ! is_wp_error( $result ) ) {
  1049 	if ( ! is_wp_error( $result ) ) {
  1019 		if ( ! $wp_filesystem->copy( $from . $distro . 'wp-includes/version.php', $to . 'wp-includes/version.php', true /* overwrite */ ) ) {
  1050 		if ( ! $wp_filesystem->copy( $from . $distro . 'wp-includes/version.php', $to . 'wp-includes/version.php', true /* overwrite */ ) ) {
  1020 			$wp_filesystem->delete( $from, true );
  1051 			$wp_filesystem->delete( $from, true );
  1022 		}
  1053 		}
  1023 		$wp_filesystem->chmod( $to . 'wp-includes/version.php', FS_CHMOD_FILE );
  1054 		$wp_filesystem->chmod( $to . 'wp-includes/version.php', FS_CHMOD_FILE );
  1024 	}
  1055 	}
  1025 
  1056 
  1026 	// Check to make sure everything copied correctly, ignoring the contents of wp-content
  1057 	// Check to make sure everything copied correctly, ignoring the contents of wp-content
  1027 	$skip = array( 'wp-content' );
  1058 	$skip   = array( 'wp-content' );
  1028 	$failed = array();
  1059 	$failed = array();
  1029 	if ( isset( $checksums ) && is_array( $checksums ) ) {
  1060 	if ( isset( $checksums ) && is_array( $checksums ) ) {
  1030 		foreach ( $checksums as $file => $checksum ) {
  1061 		foreach ( $checksums as $file => $checksum ) {
  1031 			if ( 'wp-content' == substr( $file, 0, 10 ) )
  1062 			if ( 'wp-content' == substr( $file, 0, 10 ) ) {
  1032 				continue;
  1063 				continue;
  1033 			if ( ! file_exists( $working_dir_local . $file ) )
  1064 			}
       
  1065 			if ( ! file_exists( $working_dir_local . $file ) ) {
  1034 				continue;
  1066 				continue;
       
  1067 			}
  1035 			if ( '.' === dirname( $file ) && in_array( pathinfo( $file, PATHINFO_EXTENSION ), array( 'html', 'txt' ) ) ) {
  1068 			if ( '.' === dirname( $file ) && in_array( pathinfo( $file, PATHINFO_EXTENSION ), array( 'html', 'txt' ) ) ) {
  1036 				$skip[] = $file;
  1069 				$skip[] = $file;
  1037 				continue;
  1070 				continue;
  1038 			}
  1071 			}
  1039 			if ( file_exists( ABSPATH . $file ) && md5_file( ABSPATH . $file ) == $checksum )
  1072 			if ( file_exists( ABSPATH . $file ) && md5_file( ABSPATH . $file ) == $checksum ) {
  1040 				$skip[] = $file;
  1073 				$skip[] = $file;
  1041 			else
  1074 			} else {
  1042 				$failed[] = $file;
  1075 				$failed[] = $file;
       
  1076 			}
  1043 		}
  1077 		}
  1044 	}
  1078 	}
  1045 
  1079 
  1046 	// Some files didn't copy properly
  1080 	// Some files didn't copy properly
  1047 	if ( ! empty( $failed ) ) {
  1081 	if ( ! empty( $failed ) ) {
  1048 		$total_size = 0;
  1082 		$total_size = 0;
  1049 		foreach ( $failed as $file ) {
  1083 		foreach ( $failed as $file ) {
  1050 			if ( file_exists( $working_dir_local . $file ) )
  1084 			if ( file_exists( $working_dir_local . $file ) ) {
  1051 				$total_size += filesize( $working_dir_local . $file );
  1085 				$total_size += filesize( $working_dir_local . $file );
       
  1086 			}
  1052 		}
  1087 		}
  1053 
  1088 
  1054 		// If we don't have enough free space, it isn't worth trying again.
  1089 		// If we don't have enough free space, it isn't worth trying again.
  1055 		// Unlikely to be hit due to the check in unzip_file().
  1090 		// Unlikely to be hit due to the check in unzip_file().
  1056 		$available_space = @disk_free_space( ABSPATH );
  1091 		$available_space = @disk_free_space( ABSPATH );
  1057 		if ( $available_space && $total_size >= $available_space ) {
  1092 		if ( $available_space && $total_size >= $available_space ) {
  1058 			$result = new WP_Error( 'disk_full', __( 'There is not enough free disk space to complete the update.' ) );
  1093 			$result = new WP_Error( 'disk_full', __( 'There is not enough free disk space to complete the update.' ) );
  1059 		} else {
  1094 		} else {
  1060 			$result = _copy_dir( $from . $distro, $to, $skip );
  1095 			$result = _copy_dir( $from . $distro, $to, $skip );
  1061 			if ( is_wp_error( $result ) )
  1096 			if ( is_wp_error( $result ) ) {
  1062 				$result = new WP_Error( $result->get_error_code() . '_retry', $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) );
  1097 				$result = new WP_Error( $result->get_error_code() . '_retry', $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) );
       
  1098 			}
  1063 		}
  1099 		}
  1064 	}
  1100 	}
  1065 
  1101 
  1066 	// Custom Content Directory needs updating now.
  1102 	// Custom Content Directory needs updating now.
  1067 	// Copy Languages
  1103 	// Copy Languages
  1068 	if ( !is_wp_error($result) && $wp_filesystem->is_dir($from . $distro . 'wp-content/languages') ) {
  1104 	if ( ! is_wp_error( $result ) && $wp_filesystem->is_dir( $from . $distro . 'wp-content/languages' ) ) {
  1069 		if ( WP_LANG_DIR != ABSPATH . WPINC . '/languages' || @is_dir(WP_LANG_DIR) )
  1105 		if ( WP_LANG_DIR != ABSPATH . WPINC . '/languages' || @is_dir( WP_LANG_DIR ) ) {
  1070 			$lang_dir = WP_LANG_DIR;
  1106 			$lang_dir = WP_LANG_DIR;
  1071 		else
  1107 		} else {
  1072 			$lang_dir = WP_CONTENT_DIR . '/languages';
  1108 			$lang_dir = WP_CONTENT_DIR . '/languages';
  1073 
  1109 		}
  1074 		if ( !@is_dir($lang_dir) && 0 === strpos($lang_dir, ABSPATH) ) { // Check the language directory exists first
  1110 
  1075 			$wp_filesystem->mkdir($to . str_replace(ABSPATH, '', $lang_dir), FS_CHMOD_DIR); // If it's within the ABSPATH we can handle it here, otherwise they're out of luck.
  1111 		if ( ! @is_dir( $lang_dir ) && 0 === strpos( $lang_dir, ABSPATH ) ) { // Check the language directory exists first
       
  1112 			$wp_filesystem->mkdir( $to . str_replace( ABSPATH, '', $lang_dir ), FS_CHMOD_DIR ); // If it's within the ABSPATH we can handle it here, otherwise they're out of luck.
  1076 			clearstatcache(); // for FTP, Need to clear the stat cache
  1113 			clearstatcache(); // for FTP, Need to clear the stat cache
  1077 		}
  1114 		}
  1078 
  1115 
  1079 		if ( @is_dir($lang_dir) ) {
  1116 		if ( @is_dir( $lang_dir ) ) {
  1080 			$wp_lang_dir = $wp_filesystem->find_folder($lang_dir);
  1117 			$wp_lang_dir = $wp_filesystem->find_folder( $lang_dir );
  1081 			if ( $wp_lang_dir ) {
  1118 			if ( $wp_lang_dir ) {
  1082 				$result = copy_dir($from . $distro . 'wp-content/languages/', $wp_lang_dir);
  1119 				$result = copy_dir( $from . $distro . 'wp-content/languages/', $wp_lang_dir );
  1083 				if ( is_wp_error( $result ) )
  1120 				if ( is_wp_error( $result ) ) {
  1084 					$result = new WP_Error( $result->get_error_code() . '_languages', $result->get_error_message(), substr( $result->get_error_data(), strlen( $wp_lang_dir ) ) );
  1121 					$result = new WP_Error( $result->get_error_code() . '_languages', $result->get_error_message(), substr( $result->get_error_data(), strlen( $wp_lang_dir ) ) );
       
  1122 				}
  1085 			}
  1123 			}
  1086 		}
  1124 		}
  1087 	}
  1125 	}
  1088 
  1126 
  1089 	/** This filter is documented in wp-admin/includes/update-core.php */
  1127 	/** This filter is documented in wp-admin/includes/update-core.php */
  1091 	// Remove maintenance file, we're done with potential site-breaking changes
  1129 	// Remove maintenance file, we're done with potential site-breaking changes
  1092 	$wp_filesystem->delete( $maintenance_file );
  1130 	$wp_filesystem->delete( $maintenance_file );
  1093 
  1131 
  1094 	// 3.5 -> 3.5+ - an empty twentytwelve directory was created upon upgrade to 3.5 for some users, preventing installation of Twenty Twelve.
  1132 	// 3.5 -> 3.5+ - an empty twentytwelve directory was created upon upgrade to 3.5 for some users, preventing installation of Twenty Twelve.
  1095 	if ( '3.5' == $old_wp_version ) {
  1133 	if ( '3.5' == $old_wp_version ) {
  1096 		if ( is_dir( WP_CONTENT_DIR . '/themes/twentytwelve' ) && ! file_exists( WP_CONTENT_DIR . '/themes/twentytwelve/style.css' )  ) {
  1134 		if ( is_dir( WP_CONTENT_DIR . '/themes/twentytwelve' ) && ! file_exists( WP_CONTENT_DIR . '/themes/twentytwelve/style.css' ) ) {
  1097 			$wp_filesystem->delete( $wp_filesystem->wp_themes_dir() . 'twentytwelve/' );
  1135 			$wp_filesystem->delete( $wp_filesystem->wp_themes_dir() . 'twentytwelve/' );
  1098 		}
  1136 		}
  1099 	}
  1137 	}
  1100 
  1138 
  1101 	// Copy New bundled plugins & themes
  1139 	// Copy New bundled plugins & themes
  1102 	// This gives us the ability to install new plugins & themes bundled with future versions of WordPress whilst avoiding the re-install upon upgrade issue.
  1140 	// This gives us the ability to install new plugins & themes bundled with future versions of WordPress whilst avoiding the re-install upon upgrade issue.
  1103 	// $development_build controls us overwriting bundled themes and plugins when a non-stable release is being updated
  1141 	// $development_build controls us overwriting bundled themes and plugins when a non-stable release is being updated
  1104 	if ( !is_wp_error($result) && ( ! defined('CORE_UPGRADE_SKIP_NEW_BUNDLED') || ! CORE_UPGRADE_SKIP_NEW_BUNDLED ) ) {
  1142 	if ( ! is_wp_error( $result ) && ( ! defined( 'CORE_UPGRADE_SKIP_NEW_BUNDLED' ) || ! CORE_UPGRADE_SKIP_NEW_BUNDLED ) ) {
  1105 		foreach ( (array) $_new_bundled_files as $file => $introduced_version ) {
  1143 		foreach ( (array) $_new_bundled_files as $file => $introduced_version ) {
  1106 			// If a $development_build or if $introduced version is greater than what the site was previously running
  1144 			// If a $development_build or if $introduced version is greater than what the site was previously running
  1107 			if ( $development_build || version_compare( $introduced_version, $old_wp_version, '>' ) ) {
  1145 			if ( $development_build || version_compare( $introduced_version, $old_wp_version, '>' ) ) {
  1108 				$directory = ('/' == $file[ strlen($file)-1 ]);
  1146 				$directory             = ( '/' == $file[ strlen( $file ) - 1 ] );
  1109 				list($type, $filename) = explode('/', $file, 2);
  1147 				list($type, $filename) = explode( '/', $file, 2 );
  1110 
  1148 
  1111 				// Check to see if the bundled items exist before attempting to copy them
  1149 				// Check to see if the bundled items exist before attempting to copy them
  1112 				if ( ! $wp_filesystem->exists( $from . $distro . 'wp-content/' . $file ) )
  1150 				if ( ! $wp_filesystem->exists( $from . $distro . 'wp-content/' . $file ) ) {
  1113 					continue;
  1151 					continue;
  1114 
  1152 				}
  1115 				if ( 'plugins' == $type )
  1153 
       
  1154 				if ( 'plugins' == $type ) {
  1116 					$dest = $wp_filesystem->wp_plugins_dir();
  1155 					$dest = $wp_filesystem->wp_plugins_dir();
  1117 				elseif ( 'themes' == $type )
  1156 				} elseif ( 'themes' == $type ) {
  1118 					$dest = trailingslashit($wp_filesystem->wp_themes_dir()); // Back-compat, ::wp_themes_dir() did not return trailingslash'd pre-3.2
  1157 					$dest = trailingslashit( $wp_filesystem->wp_themes_dir() ); // Back-compat, ::wp_themes_dir() did not return trailingslash'd pre-3.2
  1119 				else
  1158 				} else {
  1120 					continue;
  1159 					continue;
       
  1160 				}
  1121 
  1161 
  1122 				if ( ! $directory ) {
  1162 				if ( ! $directory ) {
  1123 					if ( ! $development_build && $wp_filesystem->exists( $dest . $filename ) )
  1163 					if ( ! $development_build && $wp_filesystem->exists( $dest . $filename ) ) {
  1124 						continue;
  1164 						continue;
  1125 
  1165 					}
  1126 					if ( ! $wp_filesystem->copy($from . $distro . 'wp-content/' . $file, $dest . $filename, FS_CHMOD_FILE) )
  1166 
       
  1167 					if ( ! $wp_filesystem->copy( $from . $distro . 'wp-content/' . $file, $dest . $filename, FS_CHMOD_FILE ) ) {
  1127 						$result = new WP_Error( "copy_failed_for_new_bundled_$type", __( 'Could not copy file.' ), $dest . $filename );
  1168 						$result = new WP_Error( "copy_failed_for_new_bundled_$type", __( 'Could not copy file.' ), $dest . $filename );
       
  1169 					}
  1128 				} else {
  1170 				} else {
  1129 					if ( ! $development_build && $wp_filesystem->is_dir( $dest . $filename ) )
  1171 					if ( ! $development_build && $wp_filesystem->is_dir( $dest . $filename ) ) {
  1130 						continue;
  1172 						continue;
  1131 
  1173 					}
  1132 					$wp_filesystem->mkdir($dest . $filename, FS_CHMOD_DIR);
  1174 
  1133 					$_result = copy_dir( $from . $distro . 'wp-content/' . $file, $dest . $filename);
  1175 					$wp_filesystem->mkdir( $dest . $filename, FS_CHMOD_DIR );
       
  1176 					$_result = copy_dir( $from . $distro . 'wp-content/' . $file, $dest . $filename );
  1134 
  1177 
  1135 					// If a error occurs partway through this final step, keep the error flowing through, but keep process going.
  1178 					// If a error occurs partway through this final step, keep the error flowing through, but keep process going.
  1136 					if ( is_wp_error( $_result ) ) {
  1179 					if ( is_wp_error( $_result ) ) {
  1137 						if ( ! is_wp_error( $result ) )
  1180 						if ( ! is_wp_error( $result ) ) {
  1138 							$result = new WP_Error;
  1181 							$result = new WP_Error;
       
  1182 						}
  1139 						$result->add( $_result->get_error_code() . "_$type", $_result->get_error_message(), substr( $_result->get_error_data(), strlen( $dest ) ) );
  1183 						$result->add( $_result->get_error_code() . "_$type", $_result->get_error_message(), substr( $_result->get_error_data(), strlen( $dest ) ) );
  1140 					}
  1184 					}
  1141 				}
  1185 				}
  1142 			}
  1186 			}
  1143 		} //end foreach
  1187 		} //end foreach
  1144 	}
  1188 	}
  1145 
  1189 
  1146 	// Handle $result error from the above blocks
  1190 	// Handle $result error from the above blocks
  1147 	if ( is_wp_error($result) ) {
  1191 	if ( is_wp_error( $result ) ) {
  1148 		$wp_filesystem->delete($from, true);
  1192 		$wp_filesystem->delete( $from, true );
  1149 		return $result;
  1193 		return $result;
  1150 	}
  1194 	}
  1151 
  1195 
  1152 	// Remove old files
  1196 	// Remove old files
  1153 	foreach ( $_old_files as $old_file ) {
  1197 	foreach ( $_old_files as $old_file ) {
  1154 		$old_file = $to . $old_file;
  1198 		$old_file = $to . $old_file;
  1155 		if ( !$wp_filesystem->exists($old_file) )
  1199 		if ( ! $wp_filesystem->exists( $old_file ) ) {
  1156 			continue;
  1200 			continue;
       
  1201 		}
  1157 
  1202 
  1158 		// If the file isn't deleted, try writing an empty string to the file instead.
  1203 		// If the file isn't deleted, try writing an empty string to the file instead.
  1159 		if ( ! $wp_filesystem->delete( $old_file, true ) && $wp_filesystem->is_file( $old_file ) ) {
  1204 		if ( ! $wp_filesystem->delete( $old_file, true ) && $wp_filesystem->is_file( $old_file ) ) {
  1160 			$wp_filesystem->put_contents( $old_file, '' );
  1205 			$wp_filesystem->put_contents( $old_file, '' );
  1161 		}
  1206 		}
  1168 	_upgrade_440_force_deactivate_incompatible_plugins();
  1213 	_upgrade_440_force_deactivate_incompatible_plugins();
  1169 
  1214 
  1170 	// Upgrade DB with separate request
  1215 	// Upgrade DB with separate request
  1171 	/** This filter is documented in wp-admin/includes/update-core.php */
  1216 	/** This filter is documented in wp-admin/includes/update-core.php */
  1172 	apply_filters( 'update_feedback', __( 'Upgrading database&#8230;' ) );
  1217 	apply_filters( 'update_feedback', __( 'Upgrading database&#8230;' ) );
  1173 	$db_upgrade_url = admin_url('upgrade.php?step=upgrade_db');
  1218 	$db_upgrade_url = admin_url( 'upgrade.php?step=upgrade_db' );
  1174 	wp_remote_post($db_upgrade_url, array('timeout' => 60));
  1219 	wp_remote_post( $db_upgrade_url, array( 'timeout' => 60 ) );
  1175 
  1220 
  1176 	// Clear the cache to prevent an update_option() from saving a stale db_version to the cache
  1221 	// Clear the cache to prevent an update_option() from saving a stale db_version to the cache
  1177 	wp_cache_flush();
  1222 	wp_cache_flush();
  1178 	// (Not all cache back ends listen to 'flush')
  1223 	// (Not all cache back ends listen to 'flush')
  1179 	wp_cache_delete( 'alloptions', 'options' );
  1224 	wp_cache_delete( 'alloptions', 'options' );
  1180 
  1225 
  1181 	// Remove working directory
  1226 	// Remove working directory
  1182 	$wp_filesystem->delete($from, true);
  1227 	$wp_filesystem->delete( $from, true );
  1183 
  1228 
  1184 	// Force refresh of update information
  1229 	// Force refresh of update information
  1185 	if ( function_exists('delete_site_transient') )
  1230 	if ( function_exists( 'delete_site_transient' ) ) {
  1186 		delete_site_transient('update_core');
  1231 		delete_site_transient( 'update_core' );
  1187 	else
  1232 	} else {
  1188 		delete_option('update_core');
  1233 		delete_option( 'update_core' );
       
  1234 	}
  1189 
  1235 
  1190 	/**
  1236 	/**
  1191 	 * Fires after WordPress core has been successfully updated.
  1237 	 * Fires after WordPress core has been successfully updated.
  1192 	 *
  1238 	 *
  1193 	 * @since 3.3.0
  1239 	 * @since 3.3.0
  1195 	 * @param string $wp_version The current WordPress version.
  1241 	 * @param string $wp_version The current WordPress version.
  1196 	 */
  1242 	 */
  1197 	do_action( '_core_updated_successfully', $wp_version );
  1243 	do_action( '_core_updated_successfully', $wp_version );
  1198 
  1244 
  1199 	// Clear the option that blocks auto updates after failures, now that we've been successful.
  1245 	// Clear the option that blocks auto updates after failures, now that we've been successful.
  1200 	if ( function_exists( 'delete_site_option' ) )
  1246 	if ( function_exists( 'delete_site_option' ) ) {
  1201 		delete_site_option( 'auto_core_update_failed' );
  1247 		delete_site_option( 'auto_core_update_failed' );
       
  1248 	}
  1202 
  1249 
  1203 	return $wp_version;
  1250 	return $wp_version;
  1204 }
  1251 }
  1205 
  1252 
  1206 /**
  1253 /**
  1220  * @param string $from     source directory
  1267  * @param string $from     source directory
  1221  * @param string $to       destination directory
  1268  * @param string $to       destination directory
  1222  * @param array $skip_list a list of files/folders to skip copying
  1269  * @param array $skip_list a list of files/folders to skip copying
  1223  * @return mixed WP_Error on failure, True on success.
  1270  * @return mixed WP_Error on failure, True on success.
  1224  */
  1271  */
  1225 function _copy_dir($from, $to, $skip_list = array() ) {
  1272 function _copy_dir( $from, $to, $skip_list = array() ) {
  1226 	global $wp_filesystem;
  1273 	global $wp_filesystem;
  1227 
  1274 
  1228 	$dirlist = $wp_filesystem->dirlist($from);
  1275 	$dirlist = $wp_filesystem->dirlist( $from );
  1229 
  1276 
  1230 	$from = trailingslashit($from);
  1277 	$from = trailingslashit( $from );
  1231 	$to = trailingslashit($to);
  1278 	$to   = trailingslashit( $to );
  1232 
  1279 
  1233 	foreach ( (array) $dirlist as $filename => $fileinfo ) {
  1280 	foreach ( (array) $dirlist as $filename => $fileinfo ) {
  1234 		if ( in_array( $filename, $skip_list ) )
  1281 		if ( in_array( $filename, $skip_list ) ) {
  1235 			continue;
  1282 			continue;
       
  1283 		}
  1236 
  1284 
  1237 		if ( 'f' == $fileinfo['type'] ) {
  1285 		if ( 'f' == $fileinfo['type'] ) {
  1238 			if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) ) {
  1286 			if ( ! $wp_filesystem->copy( $from . $filename, $to . $filename, true, FS_CHMOD_FILE ) ) {
  1239 				// If copy failed, chmod file to 0644 and try again.
  1287 				// If copy failed, chmod file to 0644 and try again.
  1240 				$wp_filesystem->chmod( $to . $filename, FS_CHMOD_FILE );
  1288 				$wp_filesystem->chmod( $to . $filename, FS_CHMOD_FILE );
  1241 				if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) )
  1289 				if ( ! $wp_filesystem->copy( $from . $filename, $to . $filename, true, FS_CHMOD_FILE ) ) {
  1242 					return new WP_Error( 'copy_failed__copy_dir', __( 'Could not copy file.' ), $to . $filename );
  1290 					return new WP_Error( 'copy_failed__copy_dir', __( 'Could not copy file.' ), $to . $filename );
       
  1291 				}
  1243 			}
  1292 			}
  1244 		} elseif ( 'd' == $fileinfo['type'] ) {
  1293 		} elseif ( 'd' == $fileinfo['type'] ) {
  1245 			if ( !$wp_filesystem->is_dir($to . $filename) ) {
  1294 			if ( ! $wp_filesystem->is_dir( $to . $filename ) ) {
  1246 				if ( !$wp_filesystem->mkdir($to . $filename, FS_CHMOD_DIR) )
  1295 				if ( ! $wp_filesystem->mkdir( $to . $filename, FS_CHMOD_DIR ) ) {
  1247 					return new WP_Error( 'mkdir_failed__copy_dir', __( 'Could not create directory.' ), $to . $filename );
  1296 					return new WP_Error( 'mkdir_failed__copy_dir', __( 'Could not create directory.' ), $to . $filename );
       
  1297 				}
  1248 			}
  1298 			}
  1249 
  1299 
  1250 			/*
  1300 			/*
  1251 			 * Generate the $sub_skip_list for the subdirectory as a sub-set
  1301 			 * Generate the $sub_skip_list for the subdirectory as a sub-set
  1252 			 * of the existing $skip_list.
  1302 			 * of the existing $skip_list.
  1253 			 */
  1303 			 */
  1254 			$sub_skip_list = array();
  1304 			$sub_skip_list = array();
  1255 			foreach ( $skip_list as $skip_item ) {
  1305 			foreach ( $skip_list as $skip_item ) {
  1256 				if ( 0 === strpos( $skip_item, $filename . '/' ) )
  1306 				if ( 0 === strpos( $skip_item, $filename . '/' ) ) {
  1257 					$sub_skip_list[] = preg_replace( '!^' . preg_quote( $filename, '!' ) . '/!i', '', $skip_item );
  1307 					$sub_skip_list[] = preg_replace( '!^' . preg_quote( $filename, '!' ) . '/!i', '', $skip_item );
  1258 			}
  1308 				}
  1259 
  1309 			}
  1260 			$result = _copy_dir($from . $filename, $to . $filename, $sub_skip_list);
  1310 
  1261 			if ( is_wp_error($result) )
  1311 			$result = _copy_dir( $from . $filename, $to . $filename, $sub_skip_list );
       
  1312 			if ( is_wp_error( $result ) ) {
  1262 				return $result;
  1313 				return $result;
       
  1314 			}
  1263 		}
  1315 		}
  1264 	}
  1316 	}
  1265 	return true;
  1317 	return true;
  1266 }
  1318 }
  1267 
  1319 
  1279  * @param string $new_version
  1331  * @param string $new_version
  1280  */
  1332  */
  1281 function _redirect_to_about_wordpress( $new_version ) {
  1333 function _redirect_to_about_wordpress( $new_version ) {
  1282 	global $wp_version, $pagenow, $action;
  1334 	global $wp_version, $pagenow, $action;
  1283 
  1335 
  1284 	if ( version_compare( $wp_version, '3.4-RC1', '>=' ) )
  1336 	if ( version_compare( $wp_version, '3.4-RC1', '>=' ) ) {
  1285 		return;
  1337 		return;
       
  1338 	}
  1286 
  1339 
  1287 	// Ensure we only run this on the update-core.php page. The Core_Upgrader may be used in other contexts.
  1340 	// Ensure we only run this on the update-core.php page. The Core_Upgrader may be used in other contexts.
  1288 	if ( 'update-core.php' != $pagenow )
  1341 	if ( 'update-core.php' != $pagenow ) {
  1289 		return;
  1342 		return;
  1290 
  1343 	}
  1291  	if ( 'do-core-upgrade' != $action && 'do-core-reinstall' != $action )
  1344 
  1292  		return;
  1345 	if ( 'do-core-upgrade' != $action && 'do-core-reinstall' != $action ) {
       
  1346 		return;
       
  1347 	}
  1293 
  1348 
  1294 	// Load the updated default text localization domain for new strings.
  1349 	// Load the updated default text localization domain for new strings.
  1295 	load_default_textdomain();
  1350 	load_default_textdomain();
  1296 
  1351 
  1297 	// See do_core_upgrade()
  1352 	// See do_core_upgrade()
  1298 	show_message( __('WordPress updated successfully') );
  1353 	show_message( __( 'WordPress updated successfully' ) );
  1299 
  1354 
  1300 	// self_admin_url() won't exist when upgrading from <= 3.0, so relative URLs are intentional.
  1355 	// self_admin_url() won't exist when upgrading from <= 3.0, so relative URLs are intentional.
  1301 	show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%2$s">here</a>.' ), $new_version, 'about.php?updated' ) . '</span>' );
  1356 	show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%2$s">here</a>.' ), $new_version, 'about.php?updated' ) . '</span>' );
  1302 	show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $new_version, 'about.php?updated' ) . '</span>' );
  1357 	show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $new_version, 'about.php?updated' ) . '</span>' );
  1303 	echo '</div>';
  1358 	echo '</div>';
  1306 window.location = 'about.php?updated';
  1361 window.location = 'about.php?updated';
  1307 </script>
  1362 </script>
  1308 	<?php
  1363 	<?php
  1309 
  1364 
  1310 	// Include admin-footer.php and exit.
  1365 	// Include admin-footer.php and exit.
  1311 	include(ABSPATH . 'wp-admin/admin-footer.php');
  1366 	include( ABSPATH . 'wp-admin/admin-footer.php' );
  1312 	exit();
  1367 	exit();
  1313 }
  1368 }
  1314 
  1369 
  1315 /**
  1370 /**
  1316  * Cleans up Genericons example files.
  1371  * Cleans up Genericons example files.