Commit Graph

183 Commits

Author SHA1 Message Date
Sergey Biryukov
66674fbfd9 Code Modernization: Replace usage of substr() with str_starts_with() and str_ends_with().
`str_starts_with()` and `str_ends_with()` were introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) begins or ends with the given substring (needle).

WordPress core includes a polyfill for these functions on PHP < 8.0 as of WordPress 5.9.

This commit uses `str_starts_with()` and `str_ends_with()` in core files where appropriate:
* `$needle === substr( $string, 0, $length )`, where `$length` is the length of `$needle`, is replaced with `str_starts_with( $haystack, $needle )`.
* `$needle === substr( $string, $offset )`, where `$offset` is negative and the absolute value of `$offset` is the length of `$needle`, is replaced with `str_ends_with( $haystack, $needle )`.

This aims to make the code more readable and consistent, as well as better aligned with modern development practices.

Follow-up to [52039], [52040], [52326], [55703], [55710], [55987], [55988].

Props Soean, spacedmonkey, Clorith, ocean90, azaozz, sabernhardt, SergeyBiryukov.
Fixes #58220.

git-svn-id: https://develop.svn.wordpress.org/trunk@55990 602fd350-edb4-49c9-b593-d223f7449a82
2023-06-22 14:55:47 +00:00
Sergey Biryukov
9e9887d8b8 Code Modernization: Replace usage of strpos() with str_contains().
`str_contains()` was introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) contains the given substring (needle).

WordPress core includes a polyfill for `str_contains()` on PHP < 8.0 as of WordPress 5.9.

This commit replaces `false !== strpos( ... )` with `str_contains()` in core files, making the code more readable and consistent, as well as better aligned with modern development practices.

Follow-up to [52039], [52040], [52326], [55703], [55710], [55987].

Props Soean, spacedmonkey, costdev, dingo_d, azaozz, mikeschroder, flixos90, peterwilsoncc, SergeyBiryukov.
Fixes #58206.

git-svn-id: https://develop.svn.wordpress.org/trunk@55988 602fd350-edb4-49c9-b593-d223f7449a82
2023-06-22 14:34:56 +00:00
Sergey Biryukov
a10e2bcf05 Docs: Fix a few more typos in inline comments.
Follow-up to [9117], [11005], [12097], [18632], [26192], [55823].

Props Presskopp.
See #58334, #57840.

git-svn-id: https://develop.svn.wordpress.org/trunk@55824 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-18 12:34:22 +00:00
Sergey Biryukov
4cb3e1582a Code Modernization: Replace usage of strpos() with str_starts_with().
`str_starts_with()` was introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) begins with the given substring (needle).

WordPress core includes a polyfill for `str_starts_with()` on PHP < 8.0 as of WordPress 5.9.

This commit replaces `0 === strpos( ... )` with `str_starts_with()` in core files, making the code more readable and consistent, as well as improving performance.

While `strpos()` is slightly faster than the polyfill on PHP < 8.0, `str_starts_with()` is noticeably faster on PHP 8.0+, as it is optimized to avoid unnecessarily searching along the whole haystack if it does not find the needle.

Follow-up to [52039], [52040], [52326].

Props spacedmonkey, costdev, sabernhardt, mukesh27, desrosj, jorbin, TobiasBg, ayeshrajans, lgadzhev, SergeyBiryukov.
Fixes #58012.

git-svn-id: https://develop.svn.wordpress.org/trunk@55703 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-02 15:43:03 +00:00
Sergey Biryukov
e9c12f21e2 Upgrade/Install: Include the removed Windows Live Writer manifest in $_old_files.
This ensures that the file and a few related images are also removed from existing installations on update.

Follow-up to [55620].

Props ocean90.
Fixes #41404.

git-svn-id: https://develop.svn.wordpress.org/trunk@55621 602fd350-edb4-49c9-b593-d223f7449a82
2023-04-04 17:35:52 +00:00
Tonya Mork
868e43d471 Upgrade/Install: Skip preloading Requests for WordPress versions before 4.6.
Skip preloading Requests files in `_preload_old_requests_classes_and_interfaces()` when updating from a WordPress version older than 4.6.

Why?

Requests library was first introduced into WordPress 4.6 via #33055 / [37428]. If a user is upgrading from a version older than 4.6, this changeset prevents the Requests preloading to prevent a fatal error of attempting to load files that do not exist in their current WordPress version.

Follow-up to [54997], [37428].

Props afragen, costdev, ironprogrammer, antonvlasenko.
Fixes #57662.

git-svn-id: https://develop.svn.wordpress.org/trunk@55296 602fd350-edb4-49c9-b593-d223f7449a82
2023-02-08 15:01:32 +00:00
Sergey Biryukov
b60ccbdb26 General: Check that set_time_limit() function is available before using it in core.
This avoids a fatal error if the function is disabled on certain environments.

Props theode, jokerrs, johnbillion, hellofromTonya, costdev, jrf, azaozz, SergeyBiryukov.
Fixes #55711.

git-svn-id: https://develop.svn.wordpress.org/trunk@55258 602fd350-edb4-49c9-b593-d223f7449a82
2023-02-07 13:26:46 +00:00
Sergey Biryukov
ec83fd83fb Upgrade/Install: Silence Requests deprecations before preloading.
Intentional preloading of Requests 2.x classes and interfaces using their old (Requests 1.x) names should not produce deprecation notices.

This commit defines `REQUESTS_SILENCE_PSR0_DEPRECATIONS` as `true` in `_preload_old_requests_classes_and_interfaces()`.

Follow-up to [54997], [55007], [55046].

Props costdev, afragen, jrf.
Fixes #54504.

git-svn-id: https://develop.svn.wordpress.org/trunk@55225 602fd350-edb4-49c9-b593-d223f7449a82
2023-02-05 00:18:35 +00:00
Tonya Mork
d7dd42d72f External Libraries: Update Requests library to version 2.0.0.
This is a major release and contains breaking changes.

Most important changes to be aware of for this release:
* All code is now namespaced. Though there is a full backward compatibility layer available and the old class names are still supported, using them will generate a deprecation notice (which can be silenced by plugins if they'd need to support multiple WP versions). See the [https://requests.ryanmccue.info/docs/upgrading.html upgrade guide] for more details.
* A lot of classes have been marked `final`. This should generally not affect userland code as care has been taken to not apply the `final` keyword to classes which are known to be extended in userland code.
* Extensive input validation has been added to Requests. When Requests is used as documented though, this will be unnoticable.
* A new `WpOrg\Requests\Requests::has_capabilities()` method has been introduced which can be used to address #37708.
* A new `WpOrg\Requests\Response::decode_body()` method has been introduced which may be usable to simplify some of the WP native wrapper code.
* Remaining PHP 8.0 compatibility fixed (support for named parameters).
* PHP 8.1 compatibility.

Release notes: https://github.com/WordPress/Requests/releases/tag/v2.0.0

For a full list of changes in this update, see the Requests GitHub:
https://github.com/WordPress/Requests/compare/v1.8.1...v2.0.0

This commit also resolves 2 blocking issues which previously caused the revert of [52244]:

* New Requests files are loaded into `wp-includes/Requests/src/`, matching the location of the library. In doing so, filesystems that are case-insensitive are not impacted (see #54582).
* Preload: During a Core update, the old Requests files are preloaded into memory before the update deletes the files. Preloading avoids fatal errors noted in #54562. 

Follow-up to [50842], [51078], [52244], [52315], [52327], [52328].

Props jrf, schlessera, datagutten, wojsmol, dustinrue, soulseekah, szepeviktor. costdev, sergeybiryukov, peterwilsoncc, ironprogrammer, antonvlasenko, hellofromTonya, swissspidy, dd32, azaozz, TobiasBg, audrasjb.
Fixes #54504.
See #54582, #54562.

git-svn-id: https://develop.svn.wordpress.org/trunk@54997 602fd350-edb4-49c9-b593-d223f7449a82
2022-12-15 21:30:26 +00:00
Sergey Biryukov
e50c65caf4 Coding Standards: Always use parentheses when instantiating an object.
Note: This will be enforced by WPCS 3.0.0.

Props jrf.
See #56791.

git-svn-id: https://develop.svn.wordpress.org/trunk@54891 602fd350-edb4-49c9-b593-d223f7449a82
2022-11-29 15:49:49 +00:00
Jonathan Desrosiers
3016d486fc Upgrade/Install: Remove bundled theme files from $_old_files.
Because themes are updated independently of Core updates, any deleted files from bundled themes should not be included in the `$_old_files` list.

Any file included in this list is deleted on update, which could cause problems for sites with a given theme active if the removed files were required in earlier versions of that theme and that theme is not updated at the same time.

Props desrosj, costdev, SergeyBiryukov.
Fixes #56936.

git-svn-id: https://develop.svn.wordpress.org/trunk@54849 602fd350-edb4-49c9-b593-d223f7449a82
2022-11-16 15:41:03 +00:00
Jonathan Desrosiers
caba697a0e Upgrade/Install: Delete the comments-query-loop folder in wp-includes/blocks.
This properly deletes the now empty `src/wp-includes/blocks/comments-query-loop` directory and adds that directory to the `$_old_files` array.

The files in this directory were removed in [54257], but the directory was not marked as deleted in SVN.

Props azaozz, jorbin, SergeyBiryukov.
Fixes #57080.

git-svn-id: https://develop.svn.wordpress.org/trunk@54836 602fd350-edb4-49c9-b593-d223f7449a82
2022-11-14 18:22:41 +00:00
Tonya Mork
551c3d6619 Update/Install: Deactivate Gutenberg plugin version older than 14.1.
Resolves a fatal error due to `get_template_hierarchy()` due to incompatible older Gutenberg versions.

[54269] introduced this new function for 6.1. The function was introduced in Gutenberg 13.9.0. However, it was not guarded to protect the plugin from when the function was loaded in Core. Gutenberg 14.1.0 added the `function_exists()` guard to protect the plugin from the fatal error.

Minimum compatible version:
This commit changes the Gutenberg minimum compatible version number to 14.1. For versions older than 14.1, the plugin will deactivate when upgrading Core to 6.1 or newer.

Function rename:
Past commits renamed the upgrade function by changing Core's version number. This commit renames the function to be generic, i.e. `_upgrade_core_deactivate_incompatible_plugins()` and adopts the `@since [reason]` strategy to track historical changes to the function. 

Follow-up to [54269], [52199], [52166], [52165], [51180].

Props namithjawahar, hellofromTonya, azaozz, desrosj, ironprogrammer.
Fixes #56985.

git-svn-id: https://develop.svn.wordpress.org/trunk@54789 602fd350-edb4-49c9-b593-d223f7449a82
2022-11-10 12:20:48 +00:00
David Baumwald
2b638bea23 Upgrade/Install: Update $_old_files for 6.1.
Props davidbaumwald, SergeyBiryukov.
Fixes #56934.

git-svn-id: https://develop.svn.wordpress.org/trunk@54730 602fd350-edb4-49c9-b593-d223f7449a82
2022-10-31 15:16:38 +00:00
Jb Audras
3adb24ff8c Docs: Align spelling with American English.
This changeset replaces "behaviour" with "behavior" in various docblocks.

Props kebbet, jrf.
See #56811, #56792.


git-svn-id: https://develop.svn.wordpress.org/trunk@54663 602fd350-edb4-49c9-b593-d223f7449a82
2022-10-21 21:10:29 +00:00
Jonathan Desrosiers
39e5879e99 Themes: Import Twenty Twenty-Three is now the default theme.
Follow up to [54235].

See #56383.

git-svn-id: https://develop.svn.wordpress.org/trunk@54236 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-20 01:34:49 +00:00
Jb Audras
d489b16bfd Text Changes: Remove self-reference ("we") in WordPress Admin.
This changes some admin-area, user-facing text, to better match the guidelines and recommendations set forth in the make/core handbook, specifically:

> the word “we” should be avoided (...) unless its made very clear which group is speaking

Follow-up to [51979], [53131], [53132], [53148], [53156].

Props kebbet, costdev, SergeyBiryukov.
Fixes #55758.
See #46057.


git-svn-id: https://develop.svn.wordpress.org/trunk@54200 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-19 08:57:08 +00:00
Sergey Biryukov
d8b262968a Upgrade/Install: Remove _copy_dir() function as originally intended.
WordPress 3.2 introduced several enhancements to the `copy_dir()` function:
* No more re-installing Akismet upon upgrade.
* Respect custom `WP_CONTENT_DIR` for bundled plugins/theme installation.
* Respect custom `WP_CONTENT_DIR`/`WP_LANG_DIR` for language files when upgrading.
* Add an exclusion list to `copy_dir()` as well as `WP_Filesystem_Base::wp_lang_dir()`.
* Standardize `WP_Filesystem` path method returns.

However, the version of `copy_dir()` that runs during the upgrade process is the one from the older install, not the newer, which means that these enhancements would only be available after upgrading to WordPress 3.2 first, e.g. in a subsequent upgrade to WordPress 3.3.

In order to make these enhancements immediately available in WordPress 3.2, specifically to take advantage of skip lists and avoid re-installing Akismet if it was previously deleted, a temporary copy of the function was utilized, with the intention to remove it in WordPress 3.3 or a later release.

With further enhancements made to the Upgrade API to support partial and no-content builds, this temporary copy is no longer relevant and can be safely removed.

Follow-up to [17576], [17580], [17581], [18225].

Props afragen, costdev, dd32, peterwilsoncc, SergeyBiryukov.
Fixes #55712. See #17173.

git-svn-id: https://develop.svn.wordpress.org/trunk@54143 602fd350-edb4-49c9-b593-d223f7449a82
2022-09-13 16:56:00 +00:00
Sergey Biryukov
e09ff2cf7d Upgrade/Install: Update $_old_files for 6.0.
Props hellofromTonya, JeffPaul, SergeyBiryukov.
Fixes #55794.

git-svn-id: https://develop.svn.wordpress.org/trunk@53439 602fd350-edb4-49c9-b593-d223f7449a82
2022-05-23 17:00:56 +00:00
Sergey Biryukov
5a49274a92 Code Modernization: Replace phpversion() function calls with PHP_VERSION constant.
`phpversion()` return value and `PHP_VERSION` constant value are identical, but the latter is several times faster because it is a direct constant value lookup compared to a function call.

Props ayeshrajans, jrf, mukesh27, costdev, hellofromTonya, SergeyBiryukov.
Fixes #55680.

git-svn-id: https://develop.svn.wordpress.org/trunk@53426 602fd350-edb4-49c9-b593-d223f7449a82
2022-05-20 17:36:23 +00:00
Jb Audras
e592e3303a Administration: Replace "can not" with "cannot" after [53131].
Follow-up to [53131], [52979].

See #46057, #38913


git-svn-id: https://develop.svn.wordpress.org/trunk@53132 602fd350-edb4-49c9-b593-d223f7449a82
2022-04-11 11:48:58 +00:00
Jb Audras
60e372dd2e Administration: Remove self-reference ("we") in WordPress Admin.
This changes updates many strings to remove self-references to an undefined "we" collective across the WordPress Administration.

The goal of this change is to better match the guidelines and recommendations set forth in the make/core handbook, specifically:

> the word "we" should be avoided (…) unless its made very clear which group is speaking.

Props johnbillion, shital-patel, audrasjb, marybaum, SergeyBiryukov, peterwilsoncc, johnjamesjacoby, kebbet, costdev, chaion07, davidbaumwald.
Fixes #46057.


git-svn-id: https://develop.svn.wordpress.org/trunk@53131 602fd350-edb4-49c9-b593-d223f7449a82
2022-04-11 11:40:38 +00:00
Sergey Biryukov
8277055e37 Docs: Add missing description for $pagenow global in various functions.
See #54729, #55499.

git-svn-id: https://develop.svn.wordpress.org/trunk@53060 602fd350-edb4-49c9-b593-d223f7449a82
2022-04-04 18:24:18 +00:00
Sergey Biryukov
2d707c4512 Docs: Update spelling for inline comments in a few files.
Per the [https://make.wordpress.org/core/handbook/best-practices/spelling/ spelling] and [https://make.wordpress.org/docs/style-guide/language-grammar/word-choice/ word choice] documentation guidelines, American (US) spelling should be preferred.

Props mohadeseghasemi, subrataemfluence, rehanali, SergeyBiryukov.
Fixes #46837.

git-svn-id: https://develop.svn.wordpress.org/trunk@52640 602fd350-edb4-49c9-b593-d223f7449a82
2022-01-25 13:54:01 +00:00
David Baumwald
14e529a1e3 Upgrade/Install: Update $_old_files for 5.9.
Props SergeyBiryukov, davidbaumwald.
Fixes #54894.

git-svn-id: https://develop.svn.wordpress.org/trunk@52637 602fd350-edb4-49c9-b593-d223f7449a82
2022-01-24 18:23:00 +00:00
Sergey Biryukov
e57bd841f0 Upgrade/Install: Check if the disk_free_space() function exists before calling it.
In PHP 8+, `@` no longer suppresses fatal errors:
> The `@` operator will no longer silence fatal errors (`E_ERROR`, `E_CORE_ERROR`, `E_COMPILE_ERROR`, `E_USER_ERROR`, `E_RECOVERABLE_ERROR`, `E_PARSE`).

Reference: [https://www.php.net/manual/en/migration80.incompatible.php PHP 8: Backward Incompatible Changes].

`disk_free_space()` may be disabled by hosts, which will throw a fatal error on a call to undefined function.

This change prevents the fatal error, and falls back to `false` when `disk_free_space()` is unavailable.

Follow-up to [25540], [25774], [25776], [25831], [25869].

Props costdev, jrf, swb1192, SergeyBiryukov.
Fixes #54826. See #54730.

git-svn-id: https://develop.svn.wordpress.org/trunk@52585 602fd350-edb4-49c9-b593-d223f7449a82
2022-01-17 11:39:35 +00:00
Tonya Mork
902fd83cf4 Upgrade/Install: Remove 5.8 function and fix deactivate Gutenberg plugin version compare < 11.9.
Follow-up to [52165] where the `version_compare()` fails for 11.8.x versions. This commit changes the version comparison to < 11.9 for deactivating the Gutenberg plugin. 

The `_upgrade_580_force_deactivate_incompatible_plugins()` function is no longer needed in 5.9. It's redundant and unnecessary as `_upgrade_590_force_deactivate_incompatible_plugins()` deactivates those versions as well.

Removing `_upgrade_580_force_deactivate_incompatible_plugins()` and moving the deactivation logic back into the `_deactivate_gutenberg_when_incompatible_with_wp()`, thus removing the new private function `_deactivate_gutenberg_when_incompatible_with_wp()` introduced in [52165].

Follow-up [51180], [51266], [52165].

Props hellofromTonya, tobiasbg, clorith, sergeybiryukov, costdev.
Fixes #54405. 

git-svn-id: https://develop.svn.wordpress.org/trunk@52199 602fd350-edb4-49c9-b593-d223f7449a82
2021-11-17 17:43:41 +00:00
Tonya Mork
1f79818913 Upgrade/Install: Deactivate the Gutenberg plugin if its version is 11.8 or lower.
Avoid a fatal error due to `WP_Theme_JSON_Schema` and potentially other classes and/or functions redeclarations when updating to WordPress 5.9 with an incompatible version of the Gutenberg plugin.

This commit uses the same strategy from 5.8. Moves the plugin deactivation code (introduced in [51266]) to a private function for reuse in 5.8, 5.9, and future major releases.

Follow-up to [51180], [51266].

Props hellofromTonya, johnbillion, jorbin.
See #54405.

git-svn-id: https://develop.svn.wordpress.org/trunk@52165 602fd350-edb4-49c9-b593-d223f7449a82
2021-11-15 19:57:28 +00:00
Jonathan Desrosiers
be7313f8c2 Themes: Twenty Twenty-Two is now the default theme.
It's Friday night, and I feel alright. The party is here in the block theme.

See #54318.

git-svn-id: https://develop.svn.wordpress.org/trunk@52093 602fd350-edb4-49c9-b593-d223f7449a82
2021-11-10 00:39:45 +00:00
Tonya Mork
e83a341cc0 Coding Standards: Use static closures when not using $this.
When a closure does not use `$this`, it can be made `static` for improved performance.

Static closures are supported in PHP since PHP 5.4. ​

Props jrf, hellofromTonya, swissspidy, SergeyBiryukov.
See #53359.

git-svn-id: https://develop.svn.wordpress.org/trunk@51657 602fd350-edb4-49c9-b593-d223f7449a82
2021-08-26 12:57:08 +00:00
Sergey Biryukov
d373e6e0d6 Upgrade/Install: Skip any node_modules directories when removing Genericons example.html files on update.
This can significantly reduce the time required to complete the process in a development environment.

Follow-up to [32386].

Props bobbingwide, afragen, desrosj, SergeyBiryukov.
Fixes #52765.

git-svn-id: https://develop.svn.wordpress.org/trunk@51521 602fd350-edb4-49c9-b593-d223f7449a82
2021-07-31 10:31:51 +00:00
Jonathan Desrosiers
82e4df4cce Upgrade/Install: Add files for 5.8 to the $_old_files list that were missed.
Follow up to [51133], [51459].

Props WFMattR, audrasjb, ocean90, johnbillion, pbiron.
Fixes #53702.

git-svn-id: https://develop.svn.wordpress.org/trunk@51497 602fd350-edb4-49c9-b593-d223f7449a82
2021-07-27 13:56:54 +00:00
Jonathan Desrosiers
fd872e56fd Upgrade/Install: Add additional files to $_old_files for 5.8.
Follow up to [51134].

Fixes #53367.

git-svn-id: https://develop.svn.wordpress.org/trunk@51459 602fd350-edb4-49c9-b593-d223f7449a82
2021-07-19 00:58:50 +00:00
Peter Wilson
2a02de7d53 Upgrade/Install: Notify users of deactivated plugins during upgrade.
This adds a one-off notice to the dashboard in the event WordPress has automatically deactivated a plugin due to incompatibility with the new version of WordPress.

Introduces the new private function `deactivated_plugins_notice()` to display the notice in the dashboard. Introduces the new auto-loaded option `wp_force_deactivated_plugins` to store a list of automatically deactivated plugins; the option is used on both a site and network level.

Follow up to [51180].

Props desrosj, jorbin, azaozz, SergeyBiryukov, peterwilsoncc.
See #53432.



git-svn-id: https://develop.svn.wordpress.org/trunk@51266 602fd350-edb4-49c9-b593-d223f7449a82
2021-06-30 00:20:52 +00:00
Sergey Biryukov
c264ba80df Upgrade/Install: Deactivate the Gutenberg plugin if its version is 10.7 or lower.
This avoids a fatal error due to `WP_Block_Template` class redeclaration when updating to WordPress 5.8 with an older version of Gutenberg activated.

Follow-up to [35582] for the REST API plugin.

Props hellofromTonya, oglekler, azaozz, desrosj, pbiron, jorbin, youknowriad, TimothyBlynJacobs, Clorith, markparnell.
See #53432.

git-svn-id: https://develop.svn.wordpress.org/trunk@51180 602fd350-edb4-49c9-b593-d223f7449a82
2021-06-18 12:12:57 +00:00
Jonathan Desrosiers
b0eadda6e6 Upgrade/Install: Built files should not be included in the $_old_files list.
Follow up to [51133].
Unprops desrosj.
See #53367.

git-svn-id: https://develop.svn.wordpress.org/trunk@51134 602fd350-edb4-49c9-b593-d223f7449a82
2021-06-09 16:20:11 +00:00
Jonathan Desrosiers
20d1075ed0 Upgrade/Install: Update the $_old_files list for 5.8.
Follow up to [50761], [50794], [51021].
Props kapilpaul, desrosj.
See #52991, #52846, #53246.
Fixes #53367.

git-svn-id: https://develop.svn.wordpress.org/trunk@51133 602fd350-edb4-49c9-b593-d223f7449a82
2021-06-09 15:53:49 +00:00
Sergey Biryukov
edd6ec0389 Coding Standards: Use strict comparison in wp-admin/includes/update-core.php.
Includes minor code layout fixes for better readability.

See #52627.

git-svn-id: https://develop.svn.wordpress.org/trunk@50785 602fd350-edb4-49c9-b593-d223f7449a82
2021-04-23 14:49:51 +00:00
Sergey Biryukov
4cc3f127df Coding Standards: Move some translator comments to the correct place.
Follow-up to [48172].

See #52627.

git-svn-id: https://develop.svn.wordpress.org/trunk@50561 602fd350-edb4-49c9-b593-d223f7449a82
2021-03-21 13:11:11 +00:00
Jonathan Desrosiers
a6f9088a35 Update $_old_files for 5.7.
Follow up to [50066].

See #52334.

git-svn-id: https://develop.svn.wordpress.org/trunk@50510 602fd350-edb4-49c9-b593-d223f7449a82
2021-03-08 18:28:35 +00:00
Mike Schroder
ae983c3f99 Upgrade/Install: Invalidate OPcache for version.php during update.
Invalidate OPcache for `wp-content/version.php` on update individually, since it’s copied separately.

Props stodorovic, krstarica, cenay, desrosj, pbiron, sergeybiryukov, mikeschroder.
Fixes #51686, #51281.
See #36455.

git-svn-id: https://develop.svn.wordpress.org/trunk@50475 602fd350-edb4-49c9-b593-d223f7449a82
2021-03-02 17:11:35 +00:00
Sergey Biryukov
f2367e643b Docs: Clarify a comment about wp_opcache_invalidate() in _copy_dir().
Follow-up to [48160].

See #52628.

git-svn-id: https://develop.svn.wordpress.org/trunk@50460 602fd350-edb4-49c9-b593-d223f7449a82
2021-03-01 10:36:29 +00:00
Sergey Biryukov
466698d127 Upgrade/Install: Return a WP_Error from copy_dir() and _copy_dir() if the directory listing failed.
Props afragen, dd32.
Fixes #52342.

git-svn-id: https://develop.svn.wordpress.org/trunk@50149 602fd350-edb4-49c9-b593-d223f7449a82
2021-02-02 17:21:45 +00:00
Helen Hou-Sandi
83d9b86dc6 Update $_old_files for 5.6.
See #39943.


git-svn-id: https://develop.svn.wordpress.org/trunk@49774 602fd350-edb4-49c9-b593-d223f7449a82
2020-12-08 21:48:22 +00:00
Jonathan Desrosiers
029dd1bbb9 Bundled Themes: Make Twenty Twenty-One the default theme.
After being imported in [49216], Twenty Twenty-One can now be set as the default theme in WordPress.

See #48110.

git-svn-id: https://develop.svn.wordpress.org/trunk@49220 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 02:02:37 +00:00
Sergey Biryukov
1120269124 I18N: Further adjust some update/install strings for consistency.
Follow-up to [48568], [48569].

See #50708, #50714.

git-svn-id: https://develop.svn.wordpress.org/trunk@48589 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-23 21:06:26 +00:00
Jonathan Desrosiers
bf7ba4dc5b Docs: Correct instances of “auto update” with “auto-update” for consistency.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48344 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-06 19:13:26 +00:00
Sergey Biryukov
be8b93c269 Site Health: Improve the error message displayed when activating a plugin that requires a higher version of PHP or WordPress.
This adds some extra details to the message:

* The current PHP or WordPress version.
* The plugin's minimum required PHP or WordPress version.
* A link to the support documentation on how to update PHP.

Props stuffradio, johnbillion, garrett-eclipse, sabernhardt, williampatton, SergeyBiryukov.
Fixes #48245.

git-svn-id: https://develop.svn.wordpress.org/trunk@48172 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-26 00:25:15 +00:00
Mike Schroder
50a0efdda8 Upgrade/Install: Invalidate OPcache for PHP files during updates.
When files are copied into place, check whether opcode invalidation is available and attempt to invalidate to avoid unintended behavior or fatal errors from themes, plugins, or core.

Introduces `wp_opcache_invalidate()` to allow safe invalidation of PHP files from opcode cache, and a filter, `wp_opcache_invalidate_file` to override the behavior.

Replaces the existing calls to `opcache_invalidate()` in the plugin and theme editors to use the new function.

Thanks to jnylen0 for porting over a patch from ClassicPress that provided much of the approach for what is being committed.

Props nigro.simone, dd32, JasWSInc, szepe.viktor, swissspidy, JanR, asalce, Garavani, pavelevap, pputzer, GregLone, benoitchantre, jadonn, doc987, kraftbj, Krstarica, jnylen0, nextendweb, williampatton, ayeshrajans, joostdevalk, stevenkussmaul, boogah, jorbin, mikeschroder.
Fixes #36455, #50354.

git-svn-id: https://develop.svn.wordpress.org/trunk@48160 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-25 07:13:22 +00:00
Sergey Biryukov
3bdf8b7b02 Docs: Consistently include an empty line between @since tag and @see, @link, or @global, per the documentation standards.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48067 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-16 21:05:20 +00:00