This is a follow-up to [56528], which normalizes the `BLOCKS_PATH` for Windows prior to making paths relative for caches during the registration process. Prior to
this change, incorrect file paths would lead to broken styles for core blocks on Windows.
Props wildworks, pbiron, flixos90, joemcgill.
Merges [56785] to the 6.3 branch.
Fixes#59489. See #59111.
Built from https://develop.svn.wordpress.org/branches/6.3@56789
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56301 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Previously, bulk upgrades did not verify that a plugin package was compatible with the site's WordPress version or the server's PHP version. This could lead to
incompatible updates being installed, causing various compatibility issues and errors.
This change implements the following checks:
- If available, the API response's `requires` and `requires_php` values are checked for compatibility. This saves time, diskspace, memory and file operations by
failing the upgrade before the package is downloaded and unpacked.
- If the API check passes, the downloaded and unpacked package is verified using `Plugin_Upgrader::check_package()` to ensure a plugin file is present, and the
plugin's "RequiresWP" and "RequiresPHP" headers are compatible, if present. This ensures that a mismatch between the API response and the plugin file's headers does
not cause an incompatible plugin to be installed.
Props salcode, afragen, mukesh27, iammehedi1, zunaid321, johnbillion, SergeyBiryukov, costdev, nicolefurlan, audrasjb, nicolefurlan.
Merges [56525] to the 6.3 branch.
Fixes#59198.
--
_M 6.3
M 6.3/src/wp-admin/includes/class-plugin-upgrader.php
Built from https://develop.svn.wordpress.org/branches/6.3@56787
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56299 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Updates editor npm packages to latest patch versions for the 6.3.x branch.
This changeset is specifically for the 6.3 release branch. It pulls the changes from [56520] and rebuilds them with 6.3's older node version.
Props ramonopoly, isabel_brison.
Merges [56520] to the 6.3 branch.
Fixes#59293.
Built from https://develop.svn.wordpress.org/branches/6.3@56786
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This changeset:
- Replaces `body` with `html` for the first CSS selector that makes text white against a dark background
- Moves `twentytwenty_block_editor_styles()` from the `enqueue_block_editor_assets` action to `enqueue_block_assets` for WordPress 6.3 and later
- Removes the obsolete `twentytwenty-block-editor-script` from the styles function to avoid an error in the iframe
Props floydwilde, poena, huzaifaalmesbah, greenshady, sabernhardt, audrasjb, pooja1210, shailu25, joemcgill.
Merges [56783] to the 6.3 branch.
Fixes#59086.
Built from https://develop.svn.wordpress.org/branches/6.3@56784
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
In r56093 schema caching was added above a comment instructing developers not to cache that controller's schema. However, there is no obvious penalty for re-caching
schema that is partially derived from a parent.
Caching schema in the same way in every controller is beneficial consistency, and discussion at WCUS2023 contributor day concluded we could remove this comment.
Props ahardyjpl, davidbinda, johnjamesjacoby, TimothyBlynJacobs, kadamwhite.
Fixes#59193.
See #58657.
Built from https://develop.svn.wordpress.org/branches/6.3@56781
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Ensures that preview callbacks attached to the `stylesheet` and `template` filters do not run before `pluggable.php` has been included. These callbacks need functionality from `pluggable.php`.
Props scruffian, johnbillion, SergeyBiryukov, okat, azaozz.
Merges [56529] and [56757] to the 6.3 branch.
Fixes#59000.
Built from https://develop.svn.wordpress.org/branches/6.3@56758
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56270 1a063a9b-81f0-0310-95a4-ce76da25c4cd
When encountering an HTML tag with duplicate copies of an attribute the tag processor ignores the duplicate values, according to the specification. However, when removing an attribute it must remove all copies of that attribute lest one of the duplicates becomes the primary and it appears as if no attributes were removed.
In this patch we're adding tests that will be used to ensure that all attribute copies are removed from a tag when one is request to be removed.
**Before**
{{{#!php
<?php
$p = new WP_HTML_Tag_Processor( '<br id=one id="two" id='three' id>' );
$p->next_tag();
$p->remove_attribute( 'id' );
$p->get_updated_html();
// <br id="two" id='three' id>
}}}
**After**
{{{#!php
<?php
$p = new WP_HTML_Tag_Processor( '<br id=one id="two" id='three' id>' );
$p->next_tag();
$p->remove_attribute( 'id' );
$p->get_updated_html();
// <br>
}}}
Previously we have been overlooking duplicate attributes since they don't have an impact on what parses into the DOM. However, as one unit test affirmed (asserting the presence of the bug in the tag processor) when removing an attribute where duplicates exist this meant we ended up changing the value of an attribute instead of removing it.
In this patch we're tracking the text spans of the parsed duplicate attributes so that ''if'' we attempt to remove them then we'll have the appropriate information necessary to do so. When an attribute isn't removed we'll simply forget about the tracked duplicates. This involves some overhead for normal operation ''when'' in fact there are duplicate attributes on a tag, but that overhead is minimal in the form of integer pairs of indices for each duplicated attribute.
Props dmsnell, zieladam.
Merges [56684] to the 6.3 branch.
Fixes#58119.
Built from https://develop.svn.wordpress.org/branches/6.3@56685
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56197 1a063a9b-81f0-0310-95a4-ce76da25c4cd
In PHPUnit 10.3.5, 9.6.13 and 8.5.34, the child processes used for process isolation now use temporary files to communicate their result to the parent process.
This caused a failure in some tests that set the `open_basedir` PHP directive to a value that did not include `sys_get_temp_dir()`.
This adds `sys_get_temp_dir()` to the `open_basedir` value set by the tests to ensure that permission is still granted for the temporary directory.
PHPUnit uses `sys_get_temp_dir()`. To ensure the result is the same, Core's `get_temp_dir()` function is not used.
References:
- https://github.com/sebastianbergmann/phpunit/issues/5356
Props desrosj, mukesh27, SergeyBiryukov, costdev.
Merges [56622] to the 6.3 branch.
See #59394.
Built from https://develop.svn.wordpress.org/branches/6.3@56624
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56136 1a063a9b-81f0-0310-95a4-ce76da25c4cd
In `WP_Upgrader::delete_temp_backup()`, a malformed `sprintf()` call did not pass the value, triggering a Warning in PHP 7 and a Fatal Error in PHP 8.
This fixes the malformed `sprintf()` call by correctly passing the value.
Follow-up to [55720].
Props akihiroharai, afragen.
Merges [56550] to the 6.3 branch.
Fixes#59320.
Built from https://develop.svn.wordpress.org/branches/6.3@56582
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56094 1a063a9b-81f0-0310-95a4-ce76da25c4cd
When encountering elements that imply switching into the RAWTEXT parsing state,
the Tag Processor should skip processing until exiting the RAWTEXT state.
In this patch the Tag Processor does just that, except for the case of the
deprecated XMP element which implies further and more complicated rules.
There's an implicit assumption that the SCRIPT ENABLED flag in HTML parsing
is enabled so that the contents of NOSCRIPT can be skipped. Otherwise, it would
be required to parse the contents of that tag.
Props dmsnell.
Merges [56563] to the 6.3 branch.
Fixes#59292.
Built from https://develop.svn.wordpress.org/branches/6.3@56564
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56076 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This restores the GitHub Actions job responsible for automatically retrying a failed workflow once within the E2E testing workflow.
[56198] disabled Slack notifications for this workflow because of the increased number of timeout errors occurring after recent changes until they could be further investigated. Even though the signal-to-noise ration was way too high, there’s still benefit in retrying the workflow once to see if the timeout can be resolved without human intervention. The one retry attempt will not result in any Slack notifications.
Follow up to [56198].
Merges [56308] to the 6.3 branch.
See #58779.
Built from https://develop.svn.wordpress.org/branches/6.3@56539
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56051 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This fixes an issue introduced in [56044] in which the path to core block styles are cached to avoid expensive file operations on every page load. The original caching strategy is now modified so that only the path relative to the blocks location are stored, rather than the full path, since the path to the `wp-includes`` folder can change after the value is generated. The new cached value also includes the current WordPress version value to ensure it is rebuilt when the version changes.
Props lhe2012, coreyw, colorful tones, petitphp, mukesh27, spacedmonkey, joemcgill, flixos90, kimannwall, desmith.
Merges [56524] to the 6.3 branch.
Fixes#59111.
Built from https://develop.svn.wordpress.org/branches/6.3@56528
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56040 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This avoids an additional query by passing the query args directly to the `WP_Query::query()` method, rather than to the constructor and calling get_posts(), following [55569].
Props david.binda, azaozz, spacedmonkey, mukesh27, flixos90, SergeyBiryukov, joemcgill.
Merges [56491] to the 6.3 branch.
Fixes#59224.
Built from https://develop.svn.wordpress.org/branches/6.3@56516
git-svn-id: http://core.svn.wordpress.org/branches/6.3@56028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
The original filter location is `wp_maybe_add_fetchpriority_high_attr()` in `wp-includes/media.php`.
This commit updates the instance in `wp_get_loading_optimization_attributes()` to point to the correct file.
Follow-up to [56037], [56143], [56347].
Props tmatsuur, rajinsharwar, khokansardar.
Reviewed by azaozz, audrasjb.
Merges [56386] to the 6.3 branch.
Fixes#59067.
Built from https://develop.svn.wordpress.org/branches/6.3@56429
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55941 1a063a9b-81f0-0310-95a4-ce76da25c4cd
If the available disk space exceeds the `PHP_INT_MAX` value, i.e. a 32-bit PHP version is in use with more than 2 GB free, the type casting to `(int)` could cause
an overflow, and the Site Health test would then erroneously report that there is not enough free space.
This commit removes the unnecessary type casting and uses the result from `disk_free_space()` directly.
Includes optimizing the logic to skip further checks if the available disk space could not be determined.
Follow-up to [55720].
Props mathsgrinds, Presskopp, rajinsharwar, SergeyBiryukov.
Reviewed by azaozz, audrasjb.
Merges [56401] to the 6.3 branch.
Fixes#59116.
Built from https://develop.svn.wordpress.org/branches/6.3@56428
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55940 1a063a9b-81f0-0310-95a4-ce76da25c4cd
If `$blog_id` equals `0`, it should be treated as the current site ID, and there is no need to switch to a different site.
This commit prevents an unnecessary call to `switch_to_blog()` on single site to avoid a fatal error when using `'orderby' => 'post_count'` and the deprecated
`'who' => 'authors'` parameter:
`Uncaught Error: Call to undefined function switch_to_blog() in wp-includes/class-wp-user-query.php:1077`
Follow-up to [55657].
Props dd32, austinginder, RavanH, mukesh27.
Reviewed by azaozz, audrasjb.
Merges [56381] to the 6.3 branch.
Fixes#59011.
Built from https://develop.svn.wordpress.org/branches/6.3@56427
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Fixes the error handling for when `WP_Classic_To_Block_Menu_Converter::convert()` returns an instance of `WP_Error`.
`WP_Navigation_Fallback::create_classic_menu_fallback()` now checks for `is_wp_error()` and if `true`, returns the error. And the `@return` type is updated to
`string|WP_Error`.
Also includes a fix in the return type in `WP_Classic_To_Block_Menu_Converter::convert()` to return an empty string instead of an array instead, i.e. when bailing
out for no menu items returned by `wp_get_nav_menu_items()`. The return type is clearly documented as a string.
Follow-up to [56052].
Props dlh, get_dave, antonvlasenko, hellofromTonya.
Reviewed by azaozz, audrasjb.
Merges [56422] to the 6.3 branch.
Fixes#58823.
--Cette ligne, et les suivantes ci-dessous, seront
ignorées--
_M .
M src/wp-includes/class-wp-classic-to-block-menu-converter.php
M src/wp-includes/class-wp-navigation-fallback.php
M tests/phpunit/tests/editor/classic-to-block-menu-converter.php
Built from https://develop.svn.wordpress.org/branches/6.3@56426
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55938 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Includes fixes for footnotes and editor styles related crashes, as well as a cut and paste-related crash.
This changeset partially merges [56419] to the 6.3 branch as the package-lock had to be rebuilt due to the release branch still using node 14.x.x, and some manual
editing was necessary due to the unresolved floating-ui dependency issue.
Props ramonopoly, isabel_brison.
Reviewed by azaozz, audrasjb.
Merges [56419] to the 6.3 branch.
See #59151.
Built from https://develop.svn.wordpress.org/branches/6.3@56423
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
The `{min|max}-device-pixel-ratio` syntax as a a non-standard CSS media feature that was used as an alternative to the now standard `resolution`. Prior to Safari 16.0, `-webkit-{min|max}-device-pixel-ratio` was needed to correctly support it.
This change is a result of the `caniuse-lite` update that was applied recently in [56065]. Though there were no changes to target browsers as a result of this update, it seems an upstream change identified these as unnecessary.
Props desrosj, joemcgill, isabel_brison, SergeyBiryukov, azaozz.
Reviewed by SergeyBiryukov, azaozz.
Backports [56279] to the 6.3 branch.
Fixes#57856.
Built from https://develop.svn.wordpress.org/branches/6.3@56367
git-svn-id: http://core.svn.wordpress.org/branches/6.3@55879 1a063a9b-81f0-0310-95a4-ce76da25c4cd