Commit Graph

22304 Commits

Author SHA1 Message Date
joedolson 0f4010bd49 Administration: Use `wp_admin_notice()` in `/wp-admin/`.
Add usages of `wp_admin_notice()` and `wp_get_admin_notice()` on `.notice-[type]` in the root level of `/wp-admin/`. Ongoing task to implement new function across core.

Props costdev, joedolson.
See #57791.
Built from https://develop.svn.wordpress.org/trunk@56570


git-svn-id: http://core.svn.wordpress.org/trunk@56082 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-14 00:54:19 +00:00
Weston Ruter 178e6722fe Bundled Themes: Ensure Twenty Twenty's main script loads in `head` for WP<6.3.
Amends [56556].
Props westonruter, flixos90, peterwilsoncc.
Fixes #59316.

Built from https://develop.svn.wordpress.org/trunk@56569


git-svn-id: http://core.svn.wordpress.org/trunk@56081 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 22:16:25 +00:00
Felix Arntz ca8a033079 General: Update `wp_register_script()` calls in core to use new function signature.
Since most core scripts are registered using `WP_Scripts::add()`, which is not affected by the signature change, only calls to `wp_register_script()` using the old signature need to be updated. There is only a single instance left, which is updated in this changeset.

Props incursadesigns.
Fixes #58634.

Built from https://develop.svn.wordpress.org/trunk@56568


git-svn-id: http://core.svn.wordpress.org/trunk@56080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 20:52:22 +00:00
Tammie Lister d6c86f944f Twenty-Twenty One: Fixes quotation mark being outside with background.
The quotation marks were outside when the background color was applied.

Props nidhidhandhukiya, sabernhardt, shailu25, harshgajipara, poena, huzaifaalmesbah.
Fixes #57377. 

Built from https://develop.svn.wordpress.org/trunk@56567


git-svn-id: http://core.svn.wordpress.org/trunk@56079 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 15:40:20 +00:00
spacedmonkey 7d1e95ec7f REST API: Avoid unnecessarily preparing item links REST API index.
Building upon the changes introduced in [53760], this commit refines the behavior of the REST API index. Specifically, it addresses performance concerns related to the unnecessary preparation of item links, such as site icon and logo links.

Prior to this update, the index controller was invoking the prepare_links method regardless of whether the _links or _embedded fields were requested in the response. This led to unnecessary database lookups and decreased overall performance.

In this commit, we implement a more efficient approach. Now, the prepare_links method will only be called when the _links or _embedded fields are explicitly requested in the response. This optimization ensures that we prepare links only when they are intended for inclusion in the API response, reducing unnecessary overhead.

By implementing this improvement, we enhance the overall efficiency and performance of the WordPress core REST API index controller.

Props spacedmonkey, niravsherasiya7707, dlh, mukesh27, costdev, swissspidy.
Fixes #57902.
Built from https://develop.svn.wordpress.org/trunk@56566


git-svn-id: http://core.svn.wordpress.org/trunk@56078 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 14:34:20 +00:00
Bernhard Reiter 15c3f036fd HTML API: Update documentation and rename internal variable on HTML Processor
This patch updates documentation and an internal variable name within the
HTML Processor class so that they are more helpful and complete to a reader.

There should be no functional or visual changes in this patch.

Props dmsnell, mukesh27.
Fixes #59267.
Built from https://develop.svn.wordpress.org/trunk@56565


git-svn-id: http://core.svn.wordpress.org/trunk@56077 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 13:02:17 +00:00
Bernhard Reiter deaa431a90 HTML API: Skip over contents of RAWTEXT elements such as STYLE.
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.
Fixes #59292.
Built from https://develop.svn.wordpress.org/trunk@56563


git-svn-id: http://core.svn.wordpress.org/trunk@56075 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 12:49:16 +00:00
Bernhard Reiter 51e2cb9e33 Themes: Add test for `theme` atttibute in file-based block template.
While we already have unit test coverage for `_inject_theme_attribute_in_block_template_content`, those tests only verify that ''that'' function does what is supposed to do; there's however no guarantee that `_build_block_template_result_from_file` uses that function (or whatever other technique) to actually inject the theme attribute.

This patch adds test coverage to verify that the theme attribute is correctly injected by `_build_block_template_result_from_file`.

Props costdev, gziolo, mukesh27, spacedmonkey.
Fixes #59325. See #59313.
Built from https://develop.svn.wordpress.org/trunk@56562


git-svn-id: http://core.svn.wordpress.org/trunk@56074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 12:05:15 +00:00
Sergey Biryukov 7630eab57f Docs: Fix typo in a comment in `wp_trim_excerpt()`.
Includes removing redundant `@covers` tags. There is already an existing annotation for the whole test class, following the [https://docs.phpunit.de/en/9.6/annotations.html#covers PHPUnit recommendation]:
> This annotation can be added to the docblock of the test class or the individual test methods. The recommended way is to add the annotation to the docblock of the test class, not to the docblock of the test methods.

Follow-up to [56560].

See #58682.
Built from https://develop.svn.wordpress.org/trunk@56561


git-svn-id: http://core.svn.wordpress.org/trunk@56073 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-13 08:08:20 +00:00
Felix Arntz 4bfba35169 Posts, Post Types: Avoid unnecessarily parsing blocks twice in `wp_trim_excerpt()`.
All blocks relevant for the excerpt are already being parsed in `excerpt_remove_blocks()`. Therefore running `do_blocks()` on the post content only to create the excerpt is unnecessary and wasteful from a performance perspective.

Props thekt12, spacedmonkey, mukesh27, joemcgill.
Fixes #58682.

Built from https://develop.svn.wordpress.org/trunk@56560


git-svn-id: http://core.svn.wordpress.org/trunk@56072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-12 19:20:21 +00:00
Sergey Biryukov e5490118af Coding Standards: Include one space after `function` keyword for closures.
Note: This is enforced by WPCS 3.0.0.

Reference: [https://github.com/WordPress/WordPress-Coding-Standards/pull/2328 WPCS: PR #2328 Core: properly check formatting of function declaration statements].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56559


git-svn-id: http://core.svn.wordpress.org/trunk@56071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-12 15:23:18 +00:00
Bernhard Reiter 251a9c7653 HTML API: Store current token reference in HTML Processor state.
The `$current_token` reference has been stored in the HTML Processor itself, but I suggested to move it into the externalized state so that it can be stored and replaced.

In this patch the reference is moved to that state variable and it should become more possible to save and load state, to resume execution after pausing.

Props dmsnell.
Fixes #59268.
Built from https://develop.svn.wordpress.org/trunk@56558


git-svn-id: http://core.svn.wordpress.org/trunk@56070 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-12 15:12:17 +00:00
Bernhard Reiter b847b9c484 General: Add optional callback argument to serialize_block(s).
Allow passing a function callback to serialize_block(s) that is invoked on each node in the tree of parsed blocks as it is traversed for serialization.

A function argument was chosen for passing the callback function as it reflects a pattern familiar from other algorithms that apply a given callback function while traversing a data structure -- most notably PHP's own `array_map()`.

Introducing a filter was considered as an alternative but ultimately dismissed. For a fairly low-level and general-purpose function such as `serialize_block()`, using a filter to pass the callback seemed risky, as it also requires ''removing'' that filter after usage in order to prevent the callback from being accidentally applied when `serialize_block()` is called in an entirely different context.

Introducing a separate function for applying a given operation during tree traversal (i.e. independently of serialization) was also considered but dismissed, as it would unnecessarily duplicate tree traversal.

Props dlh, gziolo.
Fixes #59327. See #59313.
Built from https://develop.svn.wordpress.org/trunk@56557


git-svn-id: http://core.svn.wordpress.org/trunk@56069 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-12 13:02:19 +00:00
Weston Ruter ceb151029c Bundled Themes: Use `defer` loading strategy for theme scripts.
* Add `defer` loading strategy for all frontend end-user theme scripts (excluding Customizer preview).
* Move scripts to the `head` which relate to the initial page viewport to ensure they start loading earlier and execute sooner while still not blocking rendering.
* Update Twenty Twenty's script loader (`TwentyTwenty_Script_Loader`) to support core's built-in script loading strategies (#12009), while also retaining backwards-compatibility for child themes that may set `async` and `defer` script data.
* Update the main script loading strategy in Twenty Twenty from `async` to `defer` for better performance on repeat page views, since when an `async` script is cached it will block rendering.

Props westonruter, flixos90, sabernhardt.
Fixes #59316.

Built from https://develop.svn.wordpress.org/trunk@56556


git-svn-id: http://core.svn.wordpress.org/trunk@56068 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-12 00:06:19 +00:00
spacedmonkey de170c0c2e Taxonomy: Cache term objects in WP_Term_Query if query is filtered.
When utilizing the `terms_clauses` or `get_terms_fields` filters within `WP_Term_Query` and the selected fields are modified, the entire term object is now cached. This adjustment is necessary because filters can broaden the selected fields beyond just the term ID. Fields linked to the term object, such as the count or parent, may undergo modifications when queried. Caching the complete object ensures the accurate storage of these modified fields within the cache.

Props spacedmonkey, tnolte, peterwilsoncc.
Fixes #58116.
Built from https://develop.svn.wordpress.org/trunk@56555


git-svn-id: http://core.svn.wordpress.org/trunk@56067 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-11 11:37:19 +00:00
costdev 4920adb477 External Libraries: Update the Requests library to version 2.0.8.
This is a maintenance release with minor changes:
- Only force close cURL connection when needed (cURL < 7.22).

References:
- [https://github.com/WordPress/Requests/releases/tag/v2.0.8 Requests 2.0.8 release notes]
- [https://github.com/WordPress/Requests/compare/v2.0.6...v2.0.8 Full list of changes in Requests 2.0.8]

Follow-up to [54997], [55007], [55046], [55225], [55296], [55629].

Props jrf, mukesh27, spacedmonkey, costdev.
Fixes #59322.
Built from https://develop.svn.wordpress.org/trunk@56554


git-svn-id: http://core.svn.wordpress.org/trunk@56066 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-11 10:33:19 +00:00
Peter Wilson e41f176a63 Cron: Cast `doing_cron` transient to a float.
Cast the `doing_cron` transient value to a float to prevent type errors if the transient is not set (in which case it returns `false`) or another unexpected type.

Props fzhantw, ankitmaru.
Fixes #58471.


Built from https://develop.svn.wordpress.org/trunk@56553


git-svn-id: http://core.svn.wordpress.org/trunk@56065 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-11 05:27:22 +00:00
Sergey Biryukov c41829ea95 Code Modernization: Use `dirname()` with the `$levels` parameter.
PHP 7.0 introduced the `$levels` parameter to the `dirname()` function, which means nested calls to `dirname()` are no longer needed.

Note: This is enforced by WPCS 3.0.0.

Reference: [https://www.php.net/manual/en/function.dirname.php PHP Manual: dirname()].

Follow-up to [56141].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56552


git-svn-id: http://core.svn.wordpress.org/trunk@56064 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-11 04:53:22 +00:00
Sergey Biryukov d399e57a1f Coding Standards: Correct spacing for spread operators.
No space allowed between the operator and the variable it applies to.

Note: This is enforced by WPCS 3.0.0.

Follow-up to [46133].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56551


git-svn-id: http://core.svn.wordpress.org/trunk@56063 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-10 09:04:18 +00:00
costdev c170fd62f4 Upgrade/Install: Fix broken `sprintf()` call when deleting a backup.
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.
Fixes #59320.
Built from https://develop.svn.wordpress.org/trunk@56550


git-svn-id: http://core.svn.wordpress.org/trunk@56062 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-10 07:33:22 +00:00
Sergey Biryukov b80ce60f70 Coding Standards: Use pre-increment/decrement for stand-alone statements.
Note: This is enforced by WPCS 3.0.0:

1. There should be no space between an increment/decrement operator and the variable it applies to.
2. Pre-increment/decrement should be favoured over post-increment/decrement for stand-alone statements. “Pre” will in/decrement and then return, “post” will return and then in/decrement. Using the “pre” version is slightly more performant and can prevent future bugs when code gets moved around.

References:
* [https://developer.wordpress.org/coding-standards/wordpress-coding-standards/php/#increment-decrement-operators WordPress PHP Coding Standards: Increment/decrement operators]
* [https://github.com/WordPress/WordPress-Coding-Standards/pull/2130 WPCS: PR #2130 Core: add sniffs to check formatting of increment/decrement operators]

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56549


git-svn-id: http://core.svn.wordpress.org/trunk@56061 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-09 09:28:26 +00:00
Sergey Biryukov d8936a9fe7 Coding Standards: Remove superfluous blank lines at the end of various functions.
Note: This is enforced by WPCS 3.0.0.

Follow-up to [56536], [56547].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56548


git-svn-id: http://core.svn.wordpress.org/trunk@56060 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-08 10:03:21 +00:00
Sergey Biryukov 9a49b70239 Coding Standards: Remove superfluous blank lines at the end of various classes.
Note: This is enforced by WPCS 3.0.0.

Follow-up to [56536].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56547


git-svn-id: http://core.svn.wordpress.org/trunk@56059 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-08 09:32:23 +00:00
isabel_brison b7439d5712 Editor: tweak root padding styles.
Removes root padding from children of flex and grid layout blocks when root padding aware alignments are set.

Props andrewserong, ramonopoly.
Fixes #59295.

Built from https://develop.svn.wordpress.org/trunk@56546


git-svn-id: http://core.svn.wordpress.org/trunk@56058 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-08 00:51:18 +00:00
isabel_brison 43a50913d6 Editor: performance enhancements to `class-wp-theme-json`.
Removes unnecessary sanitisation of hardcoded strings and avoids looping over style presets without classes or variables.

Props flixos90.
Fixes #59304.

Built from https://develop.svn.wordpress.org/trunk@56545


git-svn-id: http://core.svn.wordpress.org/trunk@56057 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-08 00:26:21 +00:00
hellofromTonya f379cb7fdb Code Modernization: Use wp_trigger_error() in WP_Text_Diff_Renderer_Table magic methods.
Replaces `trigger_error()` with `wp_trigger_error()` in each of the `WP_Text_Diff_Renderer_Table` magic methods.

[56354] added the dynamic properties deprecation messages to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods. Since that commit, `wp_trigger_error()` was introduced (see [56530]) as a wrapper for `trigger_error()`.

Follow-up to [56354], [56530].

See #58898, #57686.
Built from https://develop.svn.wordpress.org/trunk@56544


git-svn-id: http://core.svn.wordpress.org/trunk@56056 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 20:48:12 +00:00
hellofromTonya 6b0b3eb6a1 Code Modernization: Use wp_trigger_error() in WP_User_Query magic methods.
Replaces `trigger_error()` with `wp_trigger_error()` in each of the `WP_User_Query` magic methods.

[56353] added the dynamic properties deprecation messages to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods. Since that commit, `wp_trigger_error()` was introduced (see [56530]) as a wrapper for `trigger_error()`.

Follow-up to [56353], [56530].

See #58897, #57686.
Built from https://develop.svn.wordpress.org/trunk@56543


git-svn-id: http://core.svn.wordpress.org/trunk@56055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 20:45:16 +00:00
hellofromTonya 3356628935 Code Modernization: Use wp_trigger_error() in WP_List_Table magic methods.
Replaces `trigger_error()` with `wp_trigger_error()` in each of the `WP_List_Table` magic methods.

[56349] added the dynamic properties deprecation messages to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods. Since that commit, `wp_trigger_error()` was introduced (see [56530]) as a wrapper for `trigger_error()`.

Follow-up to [56349], [56356], [56530].

See #58896, #57686.
Built from https://develop.svn.wordpress.org/trunk@56542


git-svn-id: http://core.svn.wordpress.org/trunk@56054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 20:41:11 +00:00
joedolson eb635e4796 Plugins: Respect `prefers-reduced-motion` on plugin thumbnails.
Pause animated plugin thumbnails when a user has reduced motion preferences configured in their device or operating system.

Props Travel_girl, audrasjb, bordoni, stevejonesdev, joedolson.
Fixes #55723.
Built from https://develop.svn.wordpress.org/trunk@56541


git-svn-id: http://core.svn.wordpress.org/trunk@56053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 20:37:15 +00:00
hellofromTonya aaec843875 Fonts: Removes static instance in wp_print_font_faces().
The static instance of `WP_Font_Face` is not needed. It was an unnecessary carryover from the experimental Fonts API (which was not introduced into Core).

Whereas the Fonts API needed to persist its data (i.e. to maintain the registered and enqueued fonts throughout the web request), Font Face does not have data to persist.

Font Face processes the fonts it receives when `WP_Font_Face::generate_and_print( $fonts )` is invoked. Thus, a singleton is not needed.

Removing the static reduces the amount of the code in the function and eliminates running its tests in separate processes to ensure a different instance is always used.

References:
* [https://github.com/WordPress/gutenberg/pull/54228 Gutenberg PR 54228].

Follow-up to [56500].

Props hellofromTonya, costdev.
Fixes #59165.
Built from https://develop.svn.wordpress.org/trunk@56540


git-svn-id: http://core.svn.wordpress.org/trunk@56052 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 17:30:17 +00:00
desrosj dedb9c6d5a Build/Test Tools: Update a few more 3rd-party GitHub Action occurrences.
Follow up to [56537].

See #58867.
Built from https://develop.svn.wordpress.org/trunk@56538


git-svn-id: http://core.svn.wordpress.org/trunk@56050 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 16:56:21 +00:00
desrosj 0bd85f3b77 Build/Test Tools: Update 3rd-party GitHub Actions.
This updates all 3rd-party GitHub actions to their latest versions. The following actions were updated:
- `actions/cache`
- `actions/checkout`
- `actions/setup-node`
- `codecov/codecov-action`
- `shivammathur/setup-php`
- `slackapi/slack-github-action`

In the latest version of `actions/checkout` (`4.0.0`), a new input was introduced to control the output of command progress. This change uses this new `show-progress` input to turn off displaying progress by default. Progress will be shown when a workflow is run with debug mode enabled, just in case it contains helpful information.

Props johnbillion, desrosj.
See #58867.
Built from https://develop.svn.wordpress.org/trunk@56537


git-svn-id: http://core.svn.wordpress.org/trunk@56049 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 16:51:16 +00:00
Sergey Biryukov 2484b193b4 Coding Standards: Remove superfluous blank lines at the end of various files.
Note: This is enforced by WPCS 3.0.0.

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56536


git-svn-id: http://core.svn.wordpress.org/trunk@56048 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 14:59:21 +00:00
isabel_brison 337a910076 Editor: add configurable viewport sizes for fluid typography.
Adds options to configure min and max viewport sizes for fluid typography in theme.json settings.

Props ramonopoly.
Fixes #59048.

Built from https://develop.svn.wordpress.org/trunk@56535


git-svn-id: http://core.svn.wordpress.org/trunk@56047 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 04:30:21 +00:00
isabel_brison 4b87f197f4 Editor: allow disabling layout controls.
Adds the ability to disable layout controls on a per-block level from theme.json.

Props mukesh27.
Fixes #59294.

Built from https://develop.svn.wordpress.org/trunk@56534


git-svn-id: http://core.svn.wordpress.org/trunk@56046 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 01:05:19 +00:00
desrosj 1037cc24d7 Bundled Themes: Update npm dependencies for Twenty Nineteen and Twenty Twenty.
This updates the npm dependencies for Twenty Nineteen and Twenty Twenty to their latest versions. This also includes the results of running `npm audit fix`.

There are no changes in any built files as a result.

See #58863.
Built from https://develop.svn.wordpress.org/trunk@56533


git-svn-id: http://core.svn.wordpress.org/trunk@56045 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 00:59:18 +00:00
desrosj d812270755 Bundled Themes: Set `legacy-peer-deps` to `true`.
While `npm install` was working without issue after [56531], `npm ci` was not. The latter expects dependencies in the `package-lock.json` to match those in `package.json` exactly.

Follow up to [56378], [56387], [56442], [56531[.

Fixes #59187. See #56658.
Built from https://develop.svn.wordpress.org/trunk@56532


git-svn-id: http://core.svn.wordpress.org/trunk@56044 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-07 00:09:18 +00:00
desrosj 9fae0aac37 Bundled Themes: Use Node.js 16.x in themes with a build process.
This results in a new `package-lock.json` file being generated that uses `lockfileVersion` 2.x.

There are no changes to built files as a result of this update.

Follow up to [56378], [56387], [56442].

Props mikestraw, whyisjake, jivygraphics.
Fixes #59187. See #56658.
Built from https://develop.svn.wordpress.org/trunk@56531


git-svn-id: http://core.svn.wordpress.org/trunk@56043 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 23:44:20 +00:00
hellofromTonya 2653e93e09 General: Introduce wp_trigger_error().
Introduces `wp_trigger_error()` as a wrapper around PHP's native `trigger_error()`. As a wrapper, it's lean and not opinionated about the message. It accepts an E_USER family error level, meaning it is not limited to only notices.

Where `_doing_it_wrong()` intends to loudly alert developers "Hey you're doing it wrong - fix it", `wp_trigger_error()` is not opinionated and does not add wording. Rather, it passes the given message to `trigger_error()`.

`wp_trigger_error()` is meant for every `trigger_error()` instance. It can be used:
* in `_doing_it_wrong()` and each `_deprecated_*()` function.
* for PHP 8.x deprecations.
* for PHP error parity.
* for less severe "doing it wrong" instance that do not require bailing out.
* when a component or extension is not available on the server
* for instances where it's not clear if a plugin's or theme's code is the root cause.
* and more.

Technical details:

* Does not trigger the error if `WP_DEBUG` is not `true`.

* Includes `wp_trigger_error_run` action to allow hooking in for backtracing and deeper debug.

* Accepts an E_USER error level, but defaults to `E_USER_NOTICE`.

* Requires a function name, though can be an empty string. As the output message generated by `trigger_error()` references the file and line number where it was invoked, passing the function's name provides more information where the error/warning/notice/deprecation happened. It's intended to help with debug.

* A WordPress version number is not included.

* As messages can appear in the browser, the message is escaped using `esc_html()`. As noted in [https://www.php.net/manual/en/function.trigger-error.php the PHP manual]: "HTML entities in message are not escaped. Use htmlentities() on the message if the error is to be displayed in a browser."

References:
* [https://www.php.net/manual/en/function.trigger-error.php PHP manual for `trigger_error()`].
* [https://www.php.net/manual/en/errorfunc.constants.php E_USER constants (error level) in the PHP manual].

Props azaozz, hellofromTonya, flixos90, costdev, peterwilsoncc, oglekler, mukesh27.
See #57686.
Built from https://develop.svn.wordpress.org/trunk@56530


git-svn-id: http://core.svn.wordpress.org/trunk@56042 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 22:08:18 +00:00
Andrew Ozz 91167c488d Editor: Prevent possibility of a fatal error when previewing block themes.
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, okat.
Fixes: #59000.
Built from https://develop.svn.wordpress.org/trunk@56529


git-svn-id: http://core.svn.wordpress.org/trunk@56041 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 21:48:17 +00:00
Andrew Ozz a5a870cb4c Editor: Fix loading of assets in blocks in child themes where the directory name starts with the parent theme's directory name. Example: `twentyseventeen` and `twentyseventeen-child`.
Props: lgladdy, masteradhoc, audrasjb, rajinsharwar, azaozz.
Fixes: #59018.


Built from https://develop.svn.wordpress.org/trunk@56527


git-svn-id: http://core.svn.wordpress.org/trunk@56039 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 21:25:15 +00:00
Felix Arntz 615996176a Bundled Theme: Update default themes to use new script function signature.
In WordPress 6.3, the last parameter of `wp_register_script()` and `wp_enqueue_script()` was changed to an array rather than a boolean. While a boolean is still supported for backward compatibility, it makes sense to update the codebase to use the new signature.

The updates are fully backward compatible:
* In places where `true` was provided, `array( 'in_footer' => true )` will still be interpreted as a boolean true in WordPress versions prior to 6.3.
* In places where `false` was provided, the parameter is omitted which will work correctly throughout all WordPress versions given that is and has been the default value anyway.

Props mrinal013, huzaifaalmesbah, niravsherasiya7707, joemcgill.
Fixes #59302.
See #58634.

Built from https://develop.svn.wordpress.org/trunk@56526


git-svn-id: http://core.svn.wordpress.org/trunk@56038 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 21:23:20 +00:00
costdev 9ebcbfae5c Upgrade/Install: Check plugin compatibility during bulk upgrades.
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.
Fixes #59198.
Built from https://develop.svn.wordpress.org/trunk@56525


git-svn-id: http://core.svn.wordpress.org/trunk@56037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 18:30:19 +00:00
Joe McGill be1b61326b Themes: Avoid stale caches for core block styles.
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.
Fixes #59111.


Built from https://develop.svn.wordpress.org/trunk@56524


git-svn-id: http://core.svn.wordpress.org/trunk@56036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 18:08:17 +00:00
spacedmonkey 80245f0791 Themes: Remove unnecessary check if file exists in the theme functions.
Previously, several functions and methods in themes api were designed to check for the existence of files in a child theme before falling back to the parent theme. However, these checks did not consider whether the current theme was a child theme or not, resulting in unnecessary file existence checks for non-child themes. Check to see if stylesheet directory matches the template directory before doing the file exists. This optimization helps reduce unnecessary file system access, as file existence checks can be resource-intensive in PHP. 

The following functions and methods have been updated as part of this enhancement: 
- `WP_Theme::get_file_path`
- `get_theme_file_path`
- `get_theme_file_uri`

Props spacedmonkey, flixos90, sabernhardt, 10upsimon, mukesh27.
Fixes #59279.
Built from https://develop.svn.wordpress.org/trunk@56523


git-svn-id: http://core.svn.wordpress.org/trunk@56035 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 13:00:22 +00:00
spacedmonkey eb7094465d Database: Add expiration for `dirsize_cache` to transient to improve performance.
The transient `dirsize_cache` stores an array of directory sizes. This transient can grow very large, if the plugin directory has lots of sub directories in it. For example, a site with 30 plugins, the transient was around 2MB. For sites without a persistent object cache, transients without an expiration, are stored in autoloaded options. This means this option would load on every page request. Loading this option on every page request when it is not used it wasteful. Adding a expiration to this transient means it will not autoload. To ensure there is no degradation in performance, the expiration was set to a generous 10-year timeframe, making it highly unlikely to expire before it's refreshed.

Props nicomollet, spacedmonkey, flixos90, wpgurudev.
Fixes #54221.
Built from https://develop.svn.wordpress.org/trunk@56522


git-svn-id: http://core.svn.wordpress.org/trunk@56034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 10:03:20 +00:00
Sergey Biryukov 541fdbceb2 Coding Standards: Correct equals sign alignment in various files.
This resolves a few WPCS warnings:
{{{
Equals sign not aligned with surrounding statements
}}}
so that the output of `composer format` is clean.

Follow-up to [56276], [56302].

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56521


git-svn-id: http://core.svn.wordpress.org/trunk@56033 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 09:33:21 +00:00
isabel_brison aac1b7c487 Editor: update packages with bug fixes for 6.3.2
Updates editor npm packages to latest patch versions for the 6.3.x branch.

Props ramonopoly.
See #59293.

Built from https://develop.svn.wordpress.org/trunk@56520


git-svn-id: http://core.svn.wordpress.org/trunk@56032 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 03:19:44 +00:00
Sergey Biryukov f69316e8a5 Docs: Add a `@since` note for `add_new` labels change in `get_post_type_labels()`.
Includes removing an obsolete recommendation to use a gettext context matching the post type for disambiguation, which would be redundant with the new labels, as they already include the type of content.

Follow-up [14571], [56515].

See #47125.
Built from https://develop.svn.wordpress.org/trunk@56519


git-svn-id: http://core.svn.wordpress.org/trunk@56031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-06 00:46:24 +00:00
joedolson 1141b9fee2 Administration: Use admin notice functions in nav menu admin.
Use `wp_get_admin_notice` and `wp_admin_notice` to handle settings notices on the nav menu admin screens.

Props joedolson.
See #57791.
Built from https://develop.svn.wordpress.org/trunk@56518


git-svn-id: http://core.svn.wordpress.org/trunk@56030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-05 20:50:24 +00:00
joedolson 0aa0c763e2 Administration: Add improved context for `add new` links.
Consistently expand `Add New` links to include the type of content to add. Improve consistency of text casing to use initial caps throughout.

Props afercia, gonzomir, alexstine, swissspidy, joedolson.
Fixes #47125.
Built from https://develop.svn.wordpress.org/trunk@56515


git-svn-id: http://core.svn.wordpress.org/trunk@56027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-05 19:26:26 +00:00
Sergey Biryukov 70d853b9cd Code Modernization: Rename parameters that use reserved keywords in `wp-includes/functions.php`.
While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names.

This commit renames the `$class` parameter to `$class_name` in `_deprecated_class()`.

Follow-up to [54929], [56467].

Props jrf.
See #59161.
Built from https://develop.svn.wordpress.org/trunk@56514


git-svn-id: http://core.svn.wordpress.org/trunk@56026 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-05 12:25:13 +00:00
spacedmonkey ed6e84c280 Query: Use split queries in WP_Query if persistent object caching is enabled.
Prior to this commit, the `WP_Query` class split the query for posts into two database queries. First, it initiated an ID-based query to retrieve post IDs, followed by a call to _prime_post_caches to fetch post objects if they weren't already in memory. This splitting of queries was limited to cases where fewer than 500 posts were being requested, to prevent a potentially large database query within the IN statement in _prime_post_caches.

However, this limitation becomes unnecessary when a persistent object cache is enabled, as the post objects can be efficiently retrieved from the fast object cache. This commit transfers the responsibility of fetching posts to the object cache, which not only speeds up the process but also reduces the strain on the database server.

Props peterwilsoncc, spacedmonkey, SergeyBiryukov.
Fixes #57296.
Built from https://develop.svn.wordpress.org/trunk@56513


git-svn-id: http://core.svn.wordpress.org/trunk@56025 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-05 12:23:21 +00:00
spacedmonkey 5e21330e7d Widgets: Improve performance of has_content method in WP_Widget_Media_Gallery class.
In the method `WP_Widget_Media_Gallery::has_content` call `_prime_post_caches` before the foreach loop. This ensures that the post objects are primed in memory before trying to access the post object in `get_post_type`.

Props niravsherasiya7707, spacedmonkey, mukesh27.
Fixes #58757.
Built from https://develop.svn.wordpress.org/trunk@56512


git-svn-id: http://core.svn.wordpress.org/trunk@56024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-04 16:33:17 +00:00
Sergey Biryukov d2a504e6cb Coding Standards: Use strict comparison in `wp-includes/class-wp-hook.php`.
Follow-up to [4955], [38571].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56511


git-svn-id: http://core.svn.wordpress.org/trunk@56023 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-04 11:40:22 +00:00
Sergey Biryukov dc9517a3e0 Upload: Correct duplicate MIME type for `.xlsx` files generated by Google Docs.
This expands the code block previously added for `.docx` files to include `.xlsx` files as well, which are known to have the same issue with `finfo_file()`.

Includes a unit test case for `wp_check_filetype_and_ext()`.

Reference: [https://bugs.php.net/bug.php?id=77784 PHP Bug #77784: mime_content_type() result gets doubled for .xlsx].

Follow-up to [56497].

See #57898.
Built from https://develop.svn.wordpress.org/trunk@56510


git-svn-id: http://core.svn.wordpress.org/trunk@56022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-03 12:51:20 +00:00
Sergey Biryukov c5a0103fb5 Site Health: Show correct debug value for file uploads.
Follow-up to [48535].

Props Michi91, Presskopp.
Fixes #58737.
Built from https://develop.svn.wordpress.org/trunk@56509


git-svn-id: http://core.svn.wordpress.org/trunk@56021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-02 18:36:24 +00:00
Felix Arntz b58ed80f20 Options, Meta APIs: Introduce `wp_set_option_autoload_values()`.
This function accepts an associative array of option names and their autoload values to set, and it will update those values in the database in bulk, only for those options where the autoload field is not already set to the given value.

Two wrapper functions for ease of use accompany the new main function:
* `wp_set_options_autoload( $options, $autoload )` can be used to set multiple options to the same autoload value.
* `wp_set_option_autoload( $option, $autoload )` can be used to set the autoload value for a single option.

All of these functions allow changing the autoload value of an option, which previously has only been possible in combination with updating the value. This limitation prevented some relevant use-cases: For example, a plugin deactivation hook could set all of its options to not autoload, as a cleanup routine, while not actually deleting any data. The plugin's activation hook could then implement the reverse, resetting those options' autoload values to the originally intended ones for when using the plugin.

Props boonebgorges, joemcgill, costdev, mukesh27, SergeyBiryukov, tabrisrp, flixos90.
Fixes #58964.

Built from https://develop.svn.wordpress.org/trunk@56508


git-svn-id: http://core.svn.wordpress.org/trunk@56020 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 19:57:20 +00:00
Felix Arntz 5b6555a384 Editor: Ensure main query loop is entered for singular content in block themes.
Block themes currently lack the means to trigger the main query loop for singular content, since they cannot reasonably use the `core/query` and `core/post-template` blocks which are intended only for displaying a list of posts. So far, the missing main query loop on singular block templates has been worked around by enforcing the loop in certain `core/post-*` blocks, which however causes other bugs.

This changeset ensures that the main query loop is still started for singular block theme templates, by wrapping the entire template into the loop, which will by definition only have a single cycle as it only encompasses a single post. This is currently the most reliable solution, since even if there were blocks to properly trigger the main query loop on singular content, it would be unrealistic to expect all existing block themes to update their templates accordingly. It may be revisited in the future.

Props gziolo, youknowriad, joemcgill, costdev, mukesh27, flixos90.
Fixes #58154.
See #59225, #58027.

Built from https://develop.svn.wordpress.org/trunk@56507


git-svn-id: http://core.svn.wordpress.org/trunk@56019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 17:32:16 +00:00
Pascal Birchler 371b940439 Build/Test Tools: Compare results in performance measurement workflow.
This extends the performance test workflow added in [55459] to also run tests against the target branch (if running on a pull request) or the previous commit (if running on trunk).

Those results are then compared with the ones from the current commit, and the difference is displayed as a GitHub Actions workflow summary for convenience.

Props mukesh27, flixos90, desrosj, joemcgill, swissspidy.
Fixes #58358, #58359.
See #56150.
Built from https://develop.svn.wordpress.org/trunk@56506


git-svn-id: http://core.svn.wordpress.org/trunk@56018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 17:26:16 +00:00
Sergey Biryukov 023f4f860b Upgrade/Install: Remove unused globals in `core_upgrade_preamble()`.
Follow-up to [49638].

Props upadalavipul.
See #59254.
Built from https://develop.svn.wordpress.org/trunk@56505


git-svn-id: http://core.svn.wordpress.org/trunk@56017 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 11:07:13 +00:00
Sergey Biryukov e7475d16ba Media: Remove unused `$is_IE` and `$is_opera` globals in `media_upload_form()`.
Follow-up to [27316].

Props upadalavipul.
See #59254.
Built from https://develop.svn.wordpress.org/trunk@56504


git-svn-id: http://core.svn.wordpress.org/trunk@56016 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 11:03:23 +00:00
isabel_brison e770b922c7 Editor: Don't use fluid layout value in typography.
Changes fluid typography calculation to use fallback value if layout wide size is a fluid value.

Props ramonopoly, mukesh27, jastos, aurooba.
See #58754.

Built from https://develop.svn.wordpress.org/trunk@56503


git-svn-id: http://core.svn.wordpress.org/trunk@56015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 04:03:21 +00:00
isabel_brison 5db3477859 Editor: Preserve block style variations when securing theme.
Adds the ability to process block style variations to the `remove_insecure_properties` function of theme json class.

Props dsas, ramonopoly.
Fixes #59108.

Built from https://develop.svn.wordpress.org/trunk@56502


git-svn-id: http://core.svn.wordpress.org/trunk@56014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-01 02:53:19 +00:00
hellofromTonya f9f0b6246b Tests: Remove webfonts tests.
Removes the test file and `webfonts` directory for the stopgap code that was deprecated by [56500].

Follow-up to [56500], [53282].

Fixes #59165.
Built from https://develop.svn.wordpress.org/trunk@56501


git-svn-id: http://core.svn.wordpress.org/trunk@56013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-31 22:18:21 +00:00
hellofromTonya 8c4c35311b Introduce font-face styles generator and printer.
Introducing Font Face, a server-side `@font-face` styles generator and printer. 

tl;dr:
* Introduces Font Face.
* Deprecates `_wp_theme_json_webfonts_handler()`.

**Introduce Font Face**

From an array of fonts (i.e. each font-family and its font variations to be processed), it:

1. Validates each `font-face` declaration, i.e. the CSS property and value pairing. If validation fails, processing stops with no font-face styles printed.
3. Generates the `@font-face` CSS for each font-family.
4. Prints the CSS within a `<style id="wp-fonts-local">` element.

The entry point into Font Face is through a new global function called `wp_print_font_faces()`, which is automatically called:

* when the `'wp_head'` hook runs (for the front-end).
* when the `'admin_print_styles'` hook runs (for the back-end).
* when `_wp_get_iframed_editor_assets()` runs to inject the `@font-face` styles into the iframed editor.

Once called, it gets the fonts from Theme_JSON merged data layer, which includes theme defined fonts and user activated fonts (once the Font Library #59166 is introduced into Core).

For classic sites, themes and plugins can directly call `wp_print_font_faces()` and pass their fonts array to it for processing.

**Deprecates `_wp_theme_json_webfonts_handler()`.**

As Font Face is a direct replacement, the stopgap code in `_wp_theme_json_webfonts_handler()` (introduced in 6.0.0 via [53282]) is deprecated and unused in Core.

**Props note:**
There's a long multiple year history baked into Font Face, which dates back to the early versions of a web font API (see #46370 and [https://github.com/WordPress/gutenberg/issues/41479 roadmap]. The props list includes those who contributed from those early versions up to this commit.

**References:**
* #46370 original (Web)Fonts API proposal for registering and enqueuing web fonts.
* [https://github.com/WordPress/gutenberg/issues/41479 Gutenberg tracking issue] which includes the evolution from Webfonts API to Fonts API to Font Face.
* [53282] / #55567 Added the stopgap code `_wp_theme_json_webfonts_handler()` in 6.0.
* [https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face @font-face on mdn web docs]
* #59166 Font Library: Font manager for WordPress

Follow-up to [53282].

Props aristath, jonoaldersonwp, hellofromTonya, andraganescu, annezazu, antonvlasenko, arena, askdesign, azaozz, bph, bradley2083, colorful-tones, costdev, davidbaumwald, desrosj, dingo_d, djcowan, domainsupport, dryanpress, elmastudio, flixos90, francina, garrett-eclipse, gigitux, grantmkin, grapplerulrich, gziolo, ironprogrammer, jb510, jeffpaul, jeremyyip, jffng, joostdevalk, jorgefilipecosta, juanmaguitar, mamaduka, matveb, mburridge, mitogh, ndiego, ntsekouras, oandregal, ocean90, oglekler, paaljoachim, pagelab, peterwilsoncc, poena, priethor, scruffian, SergeyBiryukov, shiloey, simison, skorasaurus, soean, westonruter, wildworks, zaguiini.
Fixes #59165.
Built from https://develop.svn.wordpress.org/trunk@56500


git-svn-id: http://core.svn.wordpress.org/trunk@56012 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-31 21:49:20 +00:00
audrasjb 92dcec465a Coding Standards: Remove unused global variables in various `/wp-admin/includes/` files.
Props upadalavipul.
Fixes #59254.




Built from https://develop.svn.wordpress.org/trunk@56499


git-svn-id: http://core.svn.wordpress.org/trunk@56011 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-31 14:45:20 +00:00
Sergey Biryukov 21011a6ebb Build/Test Tools: Enable running the tests on PHP 8.3.
PHP 8.3 is expected to be released at the end of November 2023.

Enabling the tests to run in CI on PHP 8.3 allows WordPress core to start getting ready.

Note: Xdebug-related tests will not be run on PHP 8.3 at this time as the Docker image for PHP 8.3 does not contain Xdebug yet. Once a stable release of Xdebug 3.3.0 is available, it can be added to the Docker image and the test step can then be enabled for PHP 8.3.

Follow-up to [53922], [56492], [56495].

Props jrf, costdev.
See #59231.
Built from https://develop.svn.wordpress.org/trunk@56498


git-svn-id: http://core.svn.wordpress.org/trunk@56010 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-31 10:17:22 +00:00
audrasjb f6bd4ab08e Upload: Add a MIME type exception for `.docx` generated by Google Docs.
This changeset adds an exception to prevent permission issues on `.docx` generated by Google Docs. This is a temporary fix for an upstream bug on the `finfo_file()` 
PHP function which returns a redundant MIME type for these documents.

Props winterstreet, jakariaistauk, mujuonly, mi5t4n, annashopina, audrasjb, azaozz, mikeschroder, oglekler.
Fixes #57898.




Built from https://develop.svn.wordpress.org/trunk@56497


git-svn-id: http://core.svn.wordpress.org/trunk@56009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 22:32:19 +00:00
audrasjb 6687c0ec8f Editor: Add relative time strings for the `wp-date` inline script output.
This changeset updates `wp_default_packages_inline_scripts()` to add relative time strings to the `wp-date` inline script, so the JS version of `human_time_diff` 
can output translated strings.

Props ramonopoly, oandregal, swissspidy, manzoorwanijk, adrianduffell, Presskopp.
Fixes #59219, #47373.




Built from https://develop.svn.wordpress.org/trunk@56496


git-svn-id: http://core.svn.wordpress.org/trunk@56008 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 22:11:12 +00:00
audrasjb 42648581c7 HTTP API: Update `WP_Http` class to avoid PHP deprecation warnings.
This changeset prevents a PHP 8.3 deprecation shown when enabling debug and calling `get_class()` without arguments.

For more info about this deprecation, see https://wiki.php.net/rfc/deprecate_functions_with_overloaded_signatures#get_class_and_get_parent_class.

Props ipajen, rajinsharwar, SergeyBiryukov, jrf.
Fixes #58876.




Built from https://develop.svn.wordpress.org/trunk@56495


git-svn-id: http://core.svn.wordpress.org/trunk@56007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 22:09:17 +00:00
costdev b5789d72c3 General: Replace two `esc_url_raw()` calls in core with `sanitize_url()`.
This aims to improve performance by calling `sanitize_url()` directly, instead of the `esc_url_raw()` wrapper. As of WordPress 6.1, `sanitize_url()` is the recommended function for sanitizing a URL for database or redirect usage.

This replaces the two remaining instances of `esc_url_raw()` with `sanitize_url()` in WordPress core.

Follow-up to [53455], [53933], [54522].

Props rajinsharwar, SergeyBiryukov.
Fixes #59247.
Built from https://develop.svn.wordpress.org/trunk@56494


git-svn-id: http://core.svn.wordpress.org/trunk@56006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 20:25:18 +00:00
Bernhard Reiter c67fe4b6e5 HTML API: Stop processing HTML when encountering unsupported markup.
It was a design goal of the HTML Processor to abort processing its input document when encountering unsupported markup. Unfortunately there was no test for this and so-far, the HTML Processor has paused, but continued processing in these situations.

In this patch a new test ensures that the HTML Processor stops and refuses to move forward after encountering any unsupported markup. It also ensures that it doesn't report any current tag names since unsupported markup could imply that the read tag name is different than the parsed tag name.

Props dmsnell.
Fixes #59167.
Built from https://develop.svn.wordpress.org/trunk@56493


git-svn-id: http://core.svn.wordpress.org/trunk@56005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 15:39:16 +00:00
Sergey Biryukov 8429956b09 Tests: Correct uses of `ReflectionProperty::setValue()` for static properties.
The single parameter signature, which was used for setting the value on a static property, is deprecated since PHP 8.3. A cross-version solution is to pass `null` as the first parameter.

This commit updates all the instances that use the deprecated signature in WordPress core.

Reference: [https://wiki.php.net/rfc/deprecate_functions_with_overloaded_signatures#reflectionpropertysetvalue PHP RFC: Deprecate functions with overloaded signatures: ReflectionProperty::setValue()].

Follow-up to [53152], [54493], [54799].

Props jrf, costdev, Tests: Correct uses of `ReflectionProperty::setValue()` for static properties.

The single parameter signature, which was used for setting the value on a static property, is deprecated since PHP 8.3. A cross-version solution is to pass `null` as the first parameter.

This commit updates all the instances that use the deprecated signature in WordPress core.

Reference: [https://wiki.php.net/rfc/deprecate_functions_with_overloaded_signatures#reflectionpropertysetvalue PHP RFC: Deprecate functions with overloaded signatures: ReflectionProperty::setValue()].

Follow-up to [53152], [54493], [54799].

Props jrf, costdev, sc0ttkclark.
See #59231.
Built from https://develop.svn.wordpress.org/trunk@56492


git-svn-id: http://core.svn.wordpress.org/trunk@56004 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-30 10:51:21 +00:00
Joe McGill 3087927a5f Posts, Post Types: Avoid redundant SQL query in get_pages().
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.
Fixes #59224.

Built from https://develop.svn.wordpress.org/trunk@56491


git-svn-id: http://core.svn.wordpress.org/trunk@56003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-29 22:13:18 +00:00
Joe McGill c15220ee49 Posts, Post Types: Reinstate missing sort_column options in get_pages().
This fixes an issue introduced in [55569] that broke sort ordering by `post_modified_gmt` or `modified_gmt`.

Props david.binda, azaozz, spacedmonkey, flixos90, joemcgill.
Fixes #59226.

Built from https://develop.svn.wordpress.org/trunk@56490


git-svn-id: http://core.svn.wordpress.org/trunk@56002 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-29 22:05:23 +00:00
Pascal Birchler a4ee712d0d Site Health: fix check name used for REST API permission checks.
Updates the calls to permission validation calls for the `directory-sizes` and `page-cache` routes to actually match the route names.

Follow-up to r54043 and r49154.

Props szepeviktor.
Fixes #59236
Built from https://develop.svn.wordpress.org/trunk@56489


git-svn-id: http://core.svn.wordpress.org/trunk@56001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-29 15:41:17 +00:00
Pascal Birchler e07e95e232 Media: Prevent warning if `[caption]` shortcode is used without attributes.
Props maltfield, aslamdoctor.
Fixes #59206.
Built from https://develop.svn.wordpress.org/trunk@56488


git-svn-id: http://core.svn.wordpress.org/trunk@56000 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-29 15:35:21 +00:00
Sergey Biryukov cf6042fa3a External Libraries: Upgrade PHPMailer to version 6.8.1.
This is a minor maintenance release.

Note: WordPress core does not include PHPMailer's DSN class, as it is not particularly relevant for WP.

References:
* [https://github.com/PHPMailer/PHPMailer/releases/tag/v6.8.1 PHPMailer 6.8.1 release notes]
* [https://github.com/PHPMailer/PHPMailer/compare/v6.8.0...v6.8.1 Full list of changes in PHPMailer 6.8.1]

Follow-up to [50628], [50799], [51169], [51634], [51635], [52252], [52749], [52811], [53500], [53535], [53917], [54427], [54937], [55557].

Props jrf, Synchro.
Fixes #59238.
Built from https://develop.svn.wordpress.org/trunk@56484


git-svn-id: http://core.svn.wordpress.org/trunk@55996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-29 13:46:23 +00:00
John Blackbourn 46fda1912c Privacy: Improve docblocks for hooks and functions related to personal data export and erasure.
See #58833

Built from https://develop.svn.wordpress.org/trunk@56482


git-svn-id: http://core.svn.wordpress.org/trunk@55994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-28 21:53:21 +00:00
Aaron Jorbin 2213e52fd8 External Libraries: Update jQuery to version 3.7.1.
This release fixes a regression from jQuery 3.6.0 that resulted in rounded dimensions for `<tr />` elements in Chrome and Safari. Also, a (mostly) internal Sizzle method, `jQuery.find.tokenize` that was on the jQuery object was accidentally removed when they removed Sizzle in jQuery 3.7.0. That method has been restored.

References:
- https://blog.jquery.com/2023/08/28/jquery-3-7-1-released-reliable-table-row-dimensions/
- https://github.com/jquery/jquery/compare/3.7.0...3.7.1

Follow-up to [49101], [50445], [50520], [54202], [55012], [55491], [55860].

Props TobiasBg, jorbin.
Fixes #59227.


Built from https://develop.svn.wordpress.org/trunk@56481


git-svn-id: http://core.svn.wordpress.org/trunk@55993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-28 17:14:23 +00:00
Sergey Biryukov 1d7eb16bc7 XML-RPC: Remove unused `wpdb` global in `wp_xmlrpc_server::mw_newMediaObject()`.
Follow-up to [2676], [4961], [5008], [24716], [34578].

Props upadalavipul.
See #59185.
Built from https://develop.svn.wordpress.org/trunk@56480


git-svn-id: http://core.svn.wordpress.org/trunk@55992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-28 14:37:20 +00:00
John Blackbourn 6a216a567c Editor: Replace some accidental double setting up of tests with proper tearing down.
See #55505, #58955

Built from https://develop.svn.wordpress.org/trunk@56479


git-svn-id: http://core.svn.wordpress.org/trunk@55991 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-27 20:34:21 +00:00
John Blackbourn 9bb4defc3e Users: Call `add_user_meta()` instead of `update_user_meta()` when adding metadata to a new user.
This improves the performance of inserting users as it removes one unnecessary `SELECT` query for every row of metadata inserted.

Props swissspidy, spacedmonkey, johnbillion

Fixes #59212

Built from https://develop.svn.wordpress.org/trunk@56478


git-svn-id: http://core.svn.wordpress.org/trunk@55990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-27 12:23:23 +00:00
Sergey Biryukov c9c4cf7b02 Users: Remove unused `wpdb` global in `check_password_reset_key()`.
Follow-up to [45716].

Props upadalavipul.
See #59185.
Built from https://develop.svn.wordpress.org/trunk@56477


git-svn-id: http://core.svn.wordpress.org/trunk@55989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-27 04:49:23 +00:00
John Blackbourn fb7c6f3df9 Database: Improve the documentation for various methods in the `wpdb` class.
See #58833

Built from https://develop.svn.wordpress.org/trunk@56476


git-svn-id: http://core.svn.wordpress.org/trunk@55988 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-26 18:11:20 +00:00
John Blackbourn 75a487bf43 Database: Remove support for the `mysql` extension.
The `mysql` extension is no longer used in PHP 7 or above. There's a good amount of conditional code in `wpdb` and the health checks that can be removed now that only the `mysqli` functions are used.

Fixes #59118

Built from https://develop.svn.wordpress.org/trunk@56475


git-svn-id: http://core.svn.wordpress.org/trunk@55987 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-26 13:03:24 +00:00
Sergey Biryukov b79e69ba3b Docs: Fix typo in a translator comment in `_deprecated_class()`.
Includes a few other formatting adjustments for consistency.

Follow-up to [48327], [56467], [56471].

See #58833.
Built from https://develop.svn.wordpress.org/trunk@56474


git-svn-id: http://core.svn.wordpress.org/trunk@55986 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-26 04:49:21 +00:00
audrasjb 108b9f8ddb Upgrade/Install: Add missing escaping function for `get_option( 'home' )` in `upgrade.php`.
Props dilipbheda.
Fixes #59199.



Built from https://develop.svn.wordpress.org/trunk@56473


git-svn-id: http://core.svn.wordpress.org/trunk@55985 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 05:44:16 +00:00
audrasjb 1b245d9568 Docs: Improve PHPCS comments general consistency.
Props nekojonez.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56472


git-svn-id: http://core.svn.wordpress.org/trunk@55984 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 05:11:17 +00:00
audrasjb 510c3e9628 Docs: Docblock improvements in `_deprecated_class()` function, as per docblocks standards.
Follow-up to [56467].

See #58833.



Built from https://develop.svn.wordpress.org/trunk@56471


git-svn-id: http://core.svn.wordpress.org/trunk@55983 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 05:04:19 +00:00
Drew Jaynes 24ac6595a6 Fix coding standards for `Tests_Admin_wpUserSearch`
See #41125.

Built from https://develop.svn.wordpress.org/trunk@56470


git-svn-id: http://core.svn.wordpress.org/trunk@55982 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 03:44:19 +00:00
Drew Jaynes d2b2957bcb Properly deprecate both constructors in `WP_User_Search`.
- `__construct()` gets the new `_deprecated_class()` function
- `WP_User_Search` PHP4 style constructor is changed from `_deprecated_function()` to `_deprecated_constructor()`

Adds a test to confirm `WP_User_Search` class is testable as deprecated.

Props jrf, DrewAPicture.
Fixes #41125.

Built from https://develop.svn.wordpress.org/trunk@56469


git-svn-id: http://core.svn.wordpress.org/trunk@55981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 03:37:12 +00:00
Drew Jaynes 55d1c71d56 Fix coding standards for translatable `_deprecated_class()` message strings
See #41125

Built from https://develop.svn.wordpress.org/trunk@56468


git-svn-id: http://core.svn.wordpress.org/trunk@55980 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 03:35:17 +00:00
Drew Jaynes 668dceb31c Introduce a `_deprecated_class()` function.
Similar to other function in the `_deprecated_*` series, `_deprecated_class()` comes with two new hooks: `deprecated_class_run` and `deprecated_class_trigger_error`.

Support has also been added for setting class deprecation expectations in tests.

Props jrf, wvega, ohryan.
See #41125.

Built from https://develop.svn.wordpress.org/trunk@56467


git-svn-id: http://core.svn.wordpress.org/trunk@55979 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 03:25:21 +00:00
Sergey Biryukov 320d5873f7 Coding Standards: Use strict comparison in `wp-includes/class-wp-widget.php`.
Follow-up to [10764], [10912], [11427].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56466


git-svn-id: http://core.svn.wordpress.org/trunk@55978 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-25 01:28:16 +00:00
desrosj 39c6a67c0a Build/Test Tools: Ensure database containers are prepared for commands.
By default, Docker waits for a container to be started before considering it “ready”. But this does not necessarily mean that it’s ready to receive commands.

This adds a check that ensures the database container is ready to receive commands before proceeding with running commands.

Follow up to [56439], [56440], [56443].

Props rmccue, desrosj.
See #30462, #58867.
Built from https://develop.svn.wordpress.org/trunk@56464


git-svn-id: http://core.svn.wordpress.org/trunk@55976 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 21:04:14 +00:00
Peter Wilson e227b5e758 Block Editor: Update SVN props to ignore new asset files.
Update svn props to ignore additional CSS files added to WordPress 6.3.

Fixes #59197.


Built from https://develop.svn.wordpress.org/trunk@56463


git-svn-id: http://core.svn.wordpress.org/trunk@55975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 21:02:18 +00:00
Adam Silverstein 553f886d61 Customizer: use the correct `X-Robots-Tag` header.
Fix an issue where the `X-Robots` header was used instead of the `X-Robots-Tag` header.  Using `X-Robots-Tag` yields the correct behavior that the original code intended to add. `X-Robots` is left in place for backward compatibility.

Props michelleblanchette, dhruvishah2203, rajinsharwar, jorbin, hztyfoon, elrae. 

Fixes #58865.


Built from https://develop.svn.wordpress.org/trunk@56462


git-svn-id: http://core.svn.wordpress.org/trunk@55974 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 20:50:17 +00:00
Weston Ruter ee4230d5f8 Build Tools: Avoid doing `copy:dynamic` when running `grunt watch` when using `--dev` option.
This prevents erroneously copying a file from source onto itself in source.

Props westonruter, jorbin.
Fixes #59196.

Built from https://develop.svn.wordpress.org/trunk@56461


git-svn-id: http://core.svn.wordpress.org/trunk@55973 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 20:42:18 +00:00
joedolson 1791f613f4 Help/About: Match icon and text in Help for bulk edit button.
Change the 'x' in the Help message that instructs a user how to remove an item from a group of bulk edit items to use the dashicon and text equivalent that matches the visual and accessible control name.

Props Presskopp, costdev, sabernhardt, matthewfarlymn, bvreeman22.
Fixes #58785.
Built from https://develop.svn.wordpress.org/trunk@56460


git-svn-id: http://core.svn.wordpress.org/trunk@55972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 20:27:12 +00:00
K. Adam White 96cd4c4224 REST API: Remove misleading comment in WP_REST_Blocks_Controller->get_item_schema.
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.

Fixes #59193. See #58657.

Built from https://develop.svn.wordpress.org/trunk@56459


git-svn-id: http://core.svn.wordpress.org/trunk@55971 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 20:23:16 +00:00
TimothyBlynJacobs 9af3c92a4e General: Use regular core button styles for page header actions.
Props emailjoey, melchoyce, afercia, michaelarestad, danieltj, helen.
Fixes #41986.

Built from https://develop.svn.wordpress.org/trunk@56458


git-svn-id: http://core.svn.wordpress.org/trunk@55970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 20:16:18 +00:00
davidbaumwald 8bd5d74be2 Editor: Optimize `wp_get_block_css_selector` to remove `array_merge` calls for better performance.
Some block themes like TT3 use `wp_get_block_css_selector` to determine a CSS selector based on block type and other parameters.  However, recent performance profiling indicated a bottleneck in `wp_get_block_css_selector`, particularly sections that utilize `array_merge`.  By slightly refactoring these sections, `array_merge` calls can be avoided which increases performance.

Props mukesh27, joemcgill, daxelrod, tabrisrp.
Fixes #59178.
Built from https://develop.svn.wordpress.org/trunk@56457


git-svn-id: http://core.svn.wordpress.org/trunk@55969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 19:59:17 +00:00
Peter Wilson 099ec7eec8 Administration: Escape post type output as field attribute.
Props viralsampat.
Fixes #59190.


Built from https://develop.svn.wordpress.org/trunk@56456


git-svn-id: http://core.svn.wordpress.org/trunk@55968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 19:43:12 +00:00
antpb b6368060a5 Performance: Add fallback for `$script_uri` to prevent firing `plugins_url()` unnecessarily.
Previously, in `register_block_script_handle()` the `$script_uri` variable initialized with a `plugins_url()` call that was reported to invoke four times. In this patch the var is initialized as a blank string with a fallback to use the `plugins_url()` if the other intended conditions are not met.

Props mukesh27, daxelrod, adamsilverstein, davidbaumwald.
Fixes #59181.

Built from https://develop.svn.wordpress.org/trunk@56455


git-svn-id: http://core.svn.wordpress.org/trunk@55967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 19:38:19 +00:00
Aaron Jorbin c8aa89e42d Login and Registration: Improve test coverage for sign on related functions
Adds new tests to ensure that `wp_authenticate_email_password`, `wp_authenticate_username_password`, and `wp_authenticate_cookie` are better tested. This also unsets cookies properly between tests.

Props JordanPak, johnregan3.
Fixes #36476.

Built from https://develop.svn.wordpress.org/trunk@56454


git-svn-id: http://core.svn.wordpress.org/trunk@55966 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 19:14:21 +00:00
joedolson 30ffb247b7 Build/Test: Revert unintentional .env change in [56449].
Also committed a change to .env. Sigh.

Unprops joedolson.
See #56594.
Built from https://develop.svn.wordpress.org/trunk@56453


git-svn-id: http://core.svn.wordpress.org/trunk@55965 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 17:35:17 +00:00
John Blackbourn aa8ba65a34 Media: Add a filter to the `get_available_post_mime_types()` function to allow overriding its database query.
This introduces the `get_available_post_mime_types` filter so this query can be skipped or cached by plugins.

Props maciejmackowiak, archon810, rcorrales

Fixes #52759

Built from https://develop.svn.wordpress.org/trunk@56452


git-svn-id: http://core.svn.wordpress.org/trunk@55964 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 16:55:18 +00:00
whyisjake 7a497b9c2f Bundled Themes: Ensure that pull quotes are able to use the correct font
size.

Pull quote bodies weren't inheriting the correct styling from the block 
editor. This ensure that will happen. 

Props nidhidhandhukiya, poena, varjodesigns, jivygraphics, whyisjake.
Fixes #57854.


Built from https://develop.svn.wordpress.org/trunk@56451


git-svn-id: http://core.svn.wordpress.org/trunk@55963 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 16:16:12 +00:00
joedolson 0bce794a37 Menus: Revert unintentional changes in [56449].
Accidentally committed two simultaneous patches; reverting unintended list table changes.

Unprops joedolson.
See #56594.
Built from https://develop.svn.wordpress.org/trunk@56450


git-svn-id: http://core.svn.wordpress.org/trunk@55962 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 16:14:18 +00:00
joedolson ad66de2933 Menus: Fix proximity of controls to Save and Delete menus.
Move the position of the Save and Delete buttons in menu editing so they are immediate neighbors, improving the proximity of related controls. 

Props 90lines, sabernhardt, costdev.
See #56594.
Built from https://develop.svn.wordpress.org/trunk@56449


git-svn-id: http://core.svn.wordpress.org/trunk@55961 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 15:59:12 +00:00
Joe McGill 64e114f233 Rewrite Rules: Prevent stampedes when flush_rewrite_rules() is called
This ensures that the `rewrite_rules` option is not emptied until the new value has been recalculated and the option is updated. The logic for refreshing the option value is moved to a new private method named `WP_Rewrite::refresh_rewrite_rules` which is used by both the `flush_rules` and `refresh_rewrite_rules` methods.

Props iCaleb, joemcgill, flixos90, mukesh27.
Fixes #58998.

Built from https://develop.svn.wordpress.org/trunk@56448


git-svn-id: http://core.svn.wordpress.org/trunk@55960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 15:57:17 +00:00
Peter Wilson 1840a5550a Bundled Theme: Twenty Nineteen: Improve social media icon dimension attributes.
Set the default width and height attributes of the SVG social icons to match the dimensions used within the CSS. This increases the attributes to 32px x 32 px.

Props crunnells, mukesh27, laurelfulford, tahmidulkarim, jordanpak.
Fixes #45950.


Built from https://develop.svn.wordpress.org/trunk@56447


git-svn-id: http://core.svn.wordpress.org/trunk@55959 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 15:34:17 +00:00
Pascal Birchler 4a763f90ac Plugins: Correctly display spaces in new plugins search results.
Ensures the encoded search term in the input field is correctly decoded again.

Follow-up to [53844] and [54904].

Props adhun, nithi22, huzaifaalmesbah, deepakvijayan, zunaid321, iammehedi1.
Fixes #59143.
Built from https://develop.svn.wordpress.org/trunk@56446


git-svn-id: http://core.svn.wordpress.org/trunk@55958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 15:27:16 +00:00
Felix Arntz cba2612b9e Options, Meta APIs: Introduce `prime_options()` to load multiple options with a single database request.
WordPress's `get_option()` function generally relies on making individual database requests for each option, however with the majority of options (in most cases) being autoloaded, i.e. fetched once with a single database request and then stored in (memory) cache.

As part of a greater effort to reduce the amount of options that are unnecessarily autoloaded, this changeset introduces an alternative way to retrieve multiple options in a performant manner, with a single database request. This provides a reasonable alternative for e.g. plugins that use several options which only need to be loaded in a few specific screens.

Specifically, this changeset introduces the following functions:
* `prime_options( $options )` is the foundation to load multiple specific options with a single database request. Only options that aren't already cached (in `alloptions` or an individual cache) are retrieved from the database.
* `prime_options_by_group( $option_group )` is a convenience wrapper function for the above which allows to prime all options of a specific option group (as configured via `register_setting()`).
* `get_options( $options )` is another wrapper function which first primes the requested options and then returns them in an associative array, calling `get_option()` for each of them.

Props mukesh27, joemcgill, costdev, olliejones.
Fixes #58962.

Built from https://develop.svn.wordpress.org/trunk@56445


git-svn-id: http://core.svn.wordpress.org/trunk@55957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 14:42:17 +00:00
Aaron Jorbin 6296d14857 Build/Tests: Tests_Formatting_MakeClickable should use data providors
Removes the foreach loops from the tests by moving the in-test data sets into data providers and combines the URL data sets into one data provider to test with one test method. By using a data providor, all the tests run rather than stopping at the first failure in this group.

Fixes #57660.
Props hellofromTonya.

Built from https://develop.svn.wordpress.org/trunk@56444


git-svn-id: http://core.svn.wordpress.org/trunk@55956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 14:35:16 +00:00
desrosj f4ee013cc2 Build/Test Tools: Implicitly pass secrets to the called workflow.
This ensures the Hosting Test results API key is present for reporting results.

Follow up to [56439] and [56440].

See #30462.
Built from https://develop.svn.wordpress.org/trunk@56443


git-svn-id: http://core.svn.wordpress.org/trunk@55955 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 14:23:16 +00:00
desrosj bf18785366 Build/Test Tools: Change the version of Node.js in the Codespaces container.
Follow up to [56378] and [56387].

Props jeffpaul.
See #56658.
Built from https://develop.svn.wordpress.org/trunk@56442


git-svn-id: http://core.svn.wordpress.org/trunk@55954 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 14:09:18 +00:00
audrasjb 86323b7f59 Docs: Correct default post type in `page_template_dropdown()` docblock.
The default post type used by `page_template_dropdown()` is `page`, not `post`.

Props maxinacube.
Fixes #58972.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56441


git-svn-id: http://core.svn.wordpress.org/trunk@55953 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 13:41:23 +00:00
desrosj 5342e7defe Build/Test Tools: Merge pre-commit changes missed in [56439].
Props l1nuxjedi.
See #30462.
Built from https://develop.svn.wordpress.org/trunk@56440


git-svn-id: http://core.svn.wordpress.org/trunk@55952 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 13:30:16 +00:00
desrosj 67b7960b06 Build/Test Tools: Expand database testing to account for all supported versions and types.
This modifies the PHPUnit workflow to add MySQL version 8.0 to the strategy matrix. It also adds an additional strategy matrix to expand testing to include several supported MariaDB versions.

To prevent repeating code, the business logic of the PHPUnit testing has been moved to a new, callable workflow.

Because callable workflows target a specific branch, branches created in the future will continue to benefit from improvements made to the workflow in `trunk` without requiring backports. If a breaking change is required, older branches will need to be updated to target the commit SHA representing the final commit of the previous state.

Props johnbillion, pento, boonebgorges, netweb, nacin, desrosj.
Fixes #30462.
Built from https://develop.svn.wordpress.org/trunk@56439


git-svn-id: http://core.svn.wordpress.org/trunk@55951 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 13:10:15 +00:00
Sergey Biryukov 71ed5a6b53 Coding Standards: Use strict comparison in `wp-includes/ms-site.php`.
Follow-up to [12603], [43548], [43654], [44472].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56438


git-svn-id: http://core.svn.wordpress.org/trunk@55950 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 11:19:16 +00:00
audrasjb 42c9882b46 Revisions: Add missing escaping function for `$post_edit_link` in `wp-admin/revision.php`.
Props nidhidhandhukiya, Presskopp, mukesh27, rajinsharwar, costdev.
Fixes #59141.



Built from https://develop.svn.wordpress.org/trunk@56437


git-svn-id: http://core.svn.wordpress.org/trunk@55949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 09:32:21 +00:00
audrasjb 0b772b84ca Docs: Clarify `post_date_column_time` filter description.
Props crstauf, mukesh27.
Fixes #59029.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56436


git-svn-id: http://core.svn.wordpress.org/trunk@55948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 09:12:12 +00:00
audrasjb f10d37dfe9 Docs: Use third-person singular verbs in various function descriptions, as per docblocks standards.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56435


git-svn-id: http://core.svn.wordpress.org/trunk@55947 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 09:08:15 +00:00
audrasjb f668df3cec Docs: Wrap inline `@see` tags in curly braces.
Props costdev, mukesh27.
Fixes #58858.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56434


git-svn-id: http://core.svn.wordpress.org/trunk@55946 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 09:01:16 +00:00
audrasjb ac9381b7c2 Docs: Add missing @param description in `WP_Comment` class.
Props armondal, hztyfoon, SergeyBiryukov.
Fixes #58890.
See #58833.



Built from https://develop.svn.wordpress.org/trunk@56433


git-svn-id: http://core.svn.wordpress.org/trunk@55945 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-24 08:44:24 +00:00
Sergey Biryukov a278aa2ac0 Coding Standards: Use strict comparison in `wp-includes/ms-files.php`.
Follow-up to [12603], [12936], [56395].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56430


git-svn-id: http://core.svn.wordpress.org/trunk@55942 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-23 15:53:24 +00:00
Sergey Biryukov 106404bcbd Posts, Post Types: Remove redundant function calls in `get_body_class()`.
As part of a previous change to add support for post type templates, the `$wp_query->get_queried_object_id()` method ended up being called twice, in both the `is_singular()` and `is_page()` conditional branches.

The `get_post()` function call was also unnecessary, as `$wp_query->get_queried_object()` is already called in the `is_singular()` branch above, which includes the `is_page()` branch too.

This commit removes the redundant calls. The first `$wp_query->get_queried_object_id()` call is removed as well, since the post ID is already available via `$wp_query->get_queried_object()`.

Follow-up to [10485], [10877], [12877], [13032], [21597], [38951].

Props mattkeys, spacedmonkey, oglekler.
Fixes #43661.
Built from https://develop.svn.wordpress.org/trunk@56424


git-svn-id: http://core.svn.wordpress.org/trunk@55936 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-22 12:30:29 +00:00
hellofromTonya 87aa505a94 Editor: Fix error handling of converting classic to block menus.
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.
Fixes #58823.
Built from https://develop.svn.wordpress.org/trunk@56422


git-svn-id: http://core.svn.wordpress.org/trunk@55934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-21 17:51:19 +00:00
Sergey Biryukov 7ac58a13b4 Build/Test Tools: Update PHPUnit Polyfills to version 1.1.0.
[https://github.com/sebastianbergmann/phpunit/blob/9.6/ChangeLog-9.6.md#961---2023-02-03 PHPUnit 9.6.1] deprecated the `assertObjectHasAttribute()` and `assertObjectNotHasAttribute()` methods, leading to deprecation notices in a number of tests.

[https://github.com/sebastianbergmann/phpunit/blob/10.1.3/ChangeLog-10.1.md#1010---2023-04-14 PHPUnit 10.1.0] brought the methods back by popular request, though renamed as `assertObjectHasProperty()` and `assertObjectNotHasProperty()`, to prevent confusion with PHP 8.0 attributes.

This meant that users which cannot (yet) upgrade to PHPUnit 10.1+ would always have deprecation notices for these methods without recourse. So, after much discussion, the new methods have been backported to [https://github.com/sebastianbergmann/phpunit/blob/9.6/ChangeLog-9.6.md#9611---2023-08-19 PHPUnit 9.6.11], leaving just the 10.0.x series with a deprecation notice and no recourse.

What does this mean for WordPress?

WordPress uses the [https://github.com/Yoast/PHPUnit-Polyfills PHPUnit Polyfills] to be able to write tests for the most recent versions of PHPUnit, with the Polyfills taking care of polyfilling any new PHPUnit methods on older PHPUnit versions.

* The PHPUnit Polyfills 1.x series supports PHPUnit 4.x to 9.x.
* The PHPUnit Polyfills 2.x series supports PHPUnit 5.x to 10.x.

WordPress currently runs against PHPUnit 6.x to 9.x with PHPUnit Polyfills 1.x, while the new methods were previously only included in PHPUnit Polyfills 2.0.0+, as they were introduced in PHPUnit 10.x.

Since the `assertObjectHasProperty()` and `assertObjectNotHasProperty()` methods have been backported to PHPUnit 9.x, the PHPUnit Polyfills will now include these methods in the 1.x series as well.

By upgrading to the latest [https://github.com/Yoast/PHPUnit-Polyfills/releases/tag/1.1.0 PHPUnit Polyfills 1.1.0] release, we can get rid of the deprecation notices related to the use of the `assertObjectHasAttribute()` and `assertObjectNotHasAttribute()` methods.

This could have implications for plugins or themes running integration tests with WordPress if they have set their PHPUnit Polyfills dependency to a fixed version or have a too strict version constraint (limiting the PHPUnit Polyfills to the 1.0.x series). The solution for those plugins or themes is to update their version constraints for the PHPUnit Polyfills to allow for the 1.1.x series.

Follow-up to [51559], [51598].

Props jrf, ayeshrajans.
Fixes #59150.
Built from https://develop.svn.wordpress.org/trunk@56421


git-svn-id: http://core.svn.wordpress.org/trunk@55933 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-21 15:55:20 +00:00
Sergey Biryukov 3280c340cd Coding Standards: Use strict comparison in `wp-admin/includes/meta-boxes.php`.
Follow-up to [38], [647], [2890], [3570], [11815], [11816], [31550], [52620].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56420


git-svn-id: http://core.svn.wordpress.org/trunk@55932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-20 00:10:22 +00:00
isabel_brison 69e0187d65 Editor: update npm packages with critical bug fixes for 6.3.1.
Includes fixes for footnotes and editor styles related crashes, as well as a cut and paste-related crash.

Props ramonopoly.
See #59151.

Built from https://develop.svn.wordpress.org/trunk@56419


git-svn-id: http://core.svn.wordpress.org/trunk@55931 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-19 23:22:38 +00:00
Sergey Biryukov efdebb621b Docs: Correct punctuation in some instances of the `$crop` parameter description.
Follow-up to [56416].

See #58833.
Built from https://develop.svn.wordpress.org/trunk@56418


git-svn-id: http://core.svn.wordpress.org/trunk@55930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-19 00:10:23 +00:00
Andrew Ozz 7715c78c85 Revert the last use of `str_starts_with()` in `update-core.php`.
Fixes updating WordPress from 5.7 and earlier versions. When doing the update this file runs first in the old version where the polifills may not be available.

Porps: frankit.
Fixes: #59145.
Built from https://develop.svn.wordpress.org/trunk@56417


git-svn-id: http://core.svn.wordpress.org/trunk@55929 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 23:25:24 +00:00
John Blackbourn b5e754ee35 Media: Standardise documentation of the `$crop` parameter for various media functions and methods.
See #58833

Built from https://develop.svn.wordpress.org/trunk@56416


git-svn-id: http://core.svn.wordpress.org/trunk@55928 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 17:56:17 +00:00
John Blackbourn 3d796edc68 REST API: Correct the docblocks for various permission related methods.
See #58833

Built from https://develop.svn.wordpress.org/trunk@56415


git-svn-id: http://core.svn.wordpress.org/trunk@55927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 17:46:18 +00:00
John Blackbourn 4667b9323f Docs: Miscellaneous docblock corrections and improvements.
See #58833

Built from https://develop.svn.wordpress.org/trunk@56414


git-svn-id: http://core.svn.wordpress.org/trunk@55926 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 17:29:20 +00:00
oandregal 66e0592185 Themes: add `wp_get_theme_data_custom_templates` function.
Adds a new public function, `wp_get_theme_data_custom_templates` that returns the `customTemplates` defined by the active theme from `theme.json`. It also substitutes the usage of private APIs by this new 
API.

Props johnbillion, audrasjb.
Fixes #59137


Built from https://develop.svn.wordpress.org/trunk@56413


git-svn-id: http://core.svn.wordpress.org/trunk@55925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 13:22:13 +00:00
oandregal 6f42888d5e Add missing `@` to the return tag in the `wp_get_theme_data_template_parts` function.
Props audrasjb, johnbillion.
Fixes #59003


Built from https://develop.svn.wordpress.org/trunk@56412


git-svn-id: http://core.svn.wordpress.org/trunk@55924 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 13:18:17 +00:00
Sergey Biryukov 3fa176f4fe Coding Standards: Improve variable names in `wp_save_image()`.
This resolves a few WPCS warnings:
{{{
Variable "$sX" is not in valid snake_case format, try "$s_x"
Variable "$sY" is not in valid snake_case format, try "$s_y"
}}}

The `$sX` and `$sY` variables are renamed to `$original_width` and `$original_height`, respectively.

Additionally, the `$fwidth` and `$fheight` variables are renamed to `$full_width` and `$full_height`, for clarity.

Follow-up to [11965], [22094], [56400].

See #58831.
Built from https://develop.svn.wordpress.org/trunk@56411


git-svn-id: http://core.svn.wordpress.org/trunk@55923 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-18 10:09:23 +00:00
joedolson 3e1db7f59d Administration: Invalid argument passed in additional_classes.
Fix `additional_classes` argument passed as a string instead of an array. Follow up to [56409].

Props joedolson.
See #57791.
Built from https://develop.svn.wordpress.org/trunk@56410


git-svn-id: http://core.svn.wordpress.org/trunk@55922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 21:36:21 +00:00
joedolson 82417a694f Administration: Apply admin notice functions in multisite.
Use `wp_get_admin_notice` and `wp_admin_notice` to handle multisite settings notices.

Props costdev.
See #57791.
Built from https://develop.svn.wordpress.org/trunk@56409


git-svn-id: http://core.svn.wordpress.org/trunk@55921 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 21:03:19 +00:00
joedolson d5f3b7feab Administration: Add function to standardize admin notices.
Add functions `wp_get_admin_notice()` and `wp_admin_notice()` to create and output admin notices & tests for usage. New functions accept a message and array of optional arguments. This commit does not implement the functions. Include new filters: `wp_admin_notice_args`, `wp_admin_notice_markup` and action: `wp_admin_notice`. 

Props joedolson, costdev, sakibmd, dasnitesh780, sabernhardt.
Fixes #57791.
Built from https://develop.svn.wordpress.org/trunk@56408


git-svn-id: http://core.svn.wordpress.org/trunk@55920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 20:29:21 +00:00
desrosj aa9955e926 Build/Test Tools: Revert Slack messaging changes.
This reverts [56404], [56405], [56406].

More testing is needed to ensure multiple messages are not sent unintentionally.

Unprops desrosj.
See #58867.
Built from https://develop.svn.wordpress.org/trunk@56407


git-svn-id: http://core.svn.wordpress.org/trunk@55919 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 17:58:15 +00:00
desrosj 3b88a37e6e Build/Test Tools: Send a failure notice in Slack when a run fails to start.
This adds `startup_failure` to the list of conclusions that the Slack workflow looks for when determining whether to send a failure notice.

See #58867.
Built from https://develop.svn.wordpress.org/trunk@56406


git-svn-id: http://core.svn.wordpress.org/trunk@55918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 17:36:16 +00:00
desrosj 47a06aed12 Build/Test Tools: Use the correct variable for checking the previous conclusion.
Follow up to [56404].
See #58867.
Built from https://develop.svn.wordpress.org/trunk@56405


git-svn-id: http://core.svn.wordpress.org/trunk@55917 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 17:19:17 +00:00
desrosj c165f9d301 Build/Test Tools: Don’t send a Slack notice when a workflow fails once.
[53947] introduced a callable workflow that allowed a workflow run to be retried automatic. By default all workflows are retried once.

Since a run is not considered “failed” until after the automatic retry, the first Slack message is unnecessary and can cause a lot of noise when there are network hiccups.

This alters the logic to skip a failure notice in Slack until the second failure.

See #58867.
Built from https://develop.svn.wordpress.org/trunk@56404


git-svn-id: http://core.svn.wordpress.org/trunk@55916 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 17:01:18 +00:00
Weston Ruter 36d24b511a Editor: Ensure defer loading strategy is only applied to a block's viewScript.
Amends [56398].
Props gziolo, westonruter.
Fixes #59115.

Built from https://develop.svn.wordpress.org/trunk@56403


git-svn-id: http://core.svn.wordpress.org/trunk@55915 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 16:39:18 +00:00
desrosj a8ab676b36 Build/Test Tools: Simplify the required prerequisite jobs for the `failed-workflow` job.
Because `slack-notifications` job requires all preceding jobs in each workflow to complete, there’s no need to include the same jobs in the `needs` configuration for the `failed-workflow` one.

See #58867.
Built from https://develop.svn.wordpress.org/trunk@56402


git-svn-id: http://core.svn.wordpress.org/trunk@55914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 14:44:16 +00:00
Sergey Biryukov a26771b347 Site Health: Correct the check for disk space available to safely perform updates.
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.
Fixes #59116.
Built from https://develop.svn.wordpress.org/trunk@56401


git-svn-id: http://core.svn.wordpress.org/trunk@55913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-17 11:18:21 +00:00
Sergey Biryukov caddf7e3dc Coding Standards: Use strict comparison in `wp-admin/includes/image-edit.php`.
Follow-up to [11911], [11965], [11984], [12155], [12163], [22094].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56400


git-svn-id: http://core.svn.wordpress.org/trunk@55912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-16 14:05:20 +00:00
Pascal Birchler e30f7901a5 Build/Test Tools: Measure additional load time metrics in performance tests.
Three new metrics are being collected and reported as part of this change:

- Time To First Byte (TTFB) - the time between the request for a resource and when the first byte of a response begins to arrive
- Largest Contentful Paint (LCP) — the render time of the largest image or text block visible within the viewport
- The difference between the two (LCP minus TTFB)

Props joemcgill, flixos90, oandregal, mukesh27, youknowriad, swissspidy.
Fixes #58360.
Built from https://develop.svn.wordpress.org/trunk@56399


git-svn-id: http://core.svn.wordpress.org/trunk@55911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-16 08:48:23 +00:00
Weston Ruter 467c7de24d Editor: Use defer loading strategy for block view scripts.
Props westonruter, joemcgill.
Fixes #59115.

Built from https://develop.svn.wordpress.org/trunk@56398


git-svn-id: http://core.svn.wordpress.org/trunk@55910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-16 00:15:23 +00:00
Sergey Biryukov 832b4660fd Docs: Fix typo in duplicate hook references for `views_{$this->screen->id}`.
Follow-up to [29218], [29625].

Props nithins53, NekoJonez, mukesh27.
Fixes #59102. See #58833.
Built from https://develop.svn.wordpress.org/trunk@56397


git-svn-id: http://core.svn.wordpress.org/trunk@55909 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-15 10:09:24 +00:00
Sergey Biryukov 356e6cac57 Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-importer.php`.
Follow-up to [14760], [50658].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56396


git-svn-id: http://core.svn.wordpress.org/trunk@55908 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-14 09:59:20 +00:00
Sergey Biryukov 11aa9b4da5 Coding Standards: Bring more consistency to `Last-Modified` and `ETag` checks.
This updates two fragments for sending a `304 Not Modified` header to better align with each other by using consistent variable names and formatting. 

Follow-up to [1036], [1037], [1043], [2534], [2584], [2627], [12603], [12936], [56362].

See #58831.
Built from https://develop.svn.wordpress.org/trunk@56395


git-svn-id: http://core.svn.wordpress.org/trunk@55907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-13 10:31:23 +00:00
Sergey Biryukov 22f80e9382 Coding Standards: Use strict comparison in `wp-includes/cron.php`.
Includes minor code layout fixes for better readability.

Follow-up to [3634], [4189].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56394


git-svn-id: http://core.svn.wordpress.org/trunk@55906 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-12 12:02:24 +00:00
desrosj 0c05aa75e8 External Libraries: Update imagesLoaded to version `5.0.0`.
This release drops support for IE and moves to using ES6.

A full list of changes can be found on GitHub: https://github.com/desandro/imagesloaded/compare/v4.1.4...v5.0.0.

Props nazsabuz, arnedb, costdev, audrasjb, ahmedgeek , valmedia2023 , hareesh-pillai.
Fixes #56731.
Built from https://develop.svn.wordpress.org/trunk@56393


git-svn-id: http://core.svn.wordpress.org/trunk@55905 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 18:18:26 +00:00
John Blackbourn a240a161b9 Editor: Only exclude auto-generated block files from coding standards checks.
Prior to this change, all block files were excluded from coding standards checks, but there's no reason these files shouldn't adhere to core's coding standards.

Props lopo, Rahe, adamsilverstein 

Fixes #50010

Built from https://develop.svn.wordpress.org/trunk@56392


git-svn-id: http://core.svn.wordpress.org/trunk@55904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 17:03:17 +00:00
desrosj 43e676dedb External Libraries: Update Backbone.js to version `1.5.0`.
This release contains bug fixes and documentation improvements.

A full list of changes can be found on GitHub: https://github.com/jashkenas/backbone/compare/1.4.1...1.5.0.

Props rajinsharwar, hareesh-pillai.
Fixes #58930.
Built from https://develop.svn.wordpress.org/trunk@56391


git-svn-id: http://core.svn.wordpress.org/trunk@55903 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 16:12:21 +00:00
desrosj afd36de0b5 Build/Test Tools: Update all build tool related dependencies.
This updates the following dependencies to their latest versions:
- `chalk`
- `cssnano`
- `dotenv`
- `grunt-contrib-cssmin`
- `grunt-contrib-qunit`
- `grunt-webpack`
- `jest-image-snapshot`
- `postcss`
- `sass`
- `sinon`
- `webpack`

Additionally, `npm audit fix` has been run to automatically fix as many issues as possible.

See #58863.
Built from https://develop.svn.wordpress.org/trunk@56390


git-svn-id: http://core.svn.wordpress.org/trunk@55902 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 16:04:29 +00:00
desrosj dbb1d98290 External Libraries: Update the `whatwg-fetch` polyfill library.
This updates the `whatwg-fetch` library from version `3.6.2` to `3.6.17`, the latest current version.

This library is included and registered within WordPress as the `wp-polyfill-fetch` script and is no longer used by WordPress itself.

Props rajinsharwar, hareesh-pillai.
Fixes #59066.
Built from https://develop.svn.wordpress.org/trunk@56389


git-svn-id: http://core.svn.wordpress.org/trunk@55901 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 14:44:18 +00:00
desrosj c392de6215 Build/Test Tools: Update 3rd-party GitHub Actions.
This updates all 3rd-party GitHub Actions to their latest versions.

See #58867.
Built from https://develop.svn.wordpress.org/trunk@56388


git-svn-id: http://core.svn.wordpress.org/trunk@55900 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 13:05:17 +00:00
desrosj 1fca49bfda Build/Test Tools: Update the README file to reflect new Node.js/npm versions.
Follow up to [56378].

Props dantovbein, hbhalodia.
Fixes #59071. See #56658.
Built from https://develop.svn.wordpress.org/trunk@56387


git-svn-id: http://core.svn.wordpress.org/trunk@55899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 12:49:15 +00:00
Sergey Biryukov 93bf4a6d6f Docs: Correct duplicate hook reference for `wp_min_priority_img_pixels`.
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.
Fixes #59067.
Built from https://develop.svn.wordpress.org/trunk@56386


git-svn-id: http://core.svn.wordpress.org/trunk@55898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 11:35:19 +00:00
oandregal 96c6c273dd Themes: add wp_get_theme_data_template_parts function.
Adds a new public function, `wp_get_theme_data_template_parts` that returns the `templateParts` defined by the active theme from `theme.json`. It also substitutes the usage of private APIs by this new API.

Props felixarntz.
Fixes #59003

Built from https://develop.svn.wordpress.org/trunk@56385


git-svn-id: http://core.svn.wordpress.org/trunk@55897 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 11:24:11 +00:00
Sergey Biryukov 77a55d839e Tests: Correct two `@covers` annotations to use the recommended pattern.
When global functions are covered, they need to be prefixed with `::` (double colon) to distinguish them from class name.

Reference: [https://docs.phpunit.de/en/10.3/annotations.html#covers PHPUnit Manual: @covers annotation].

Follow-up to [48848], [49305], [53741], [56296].

Props ayeshrajans.
Fixes #59069.
Built from https://develop.svn.wordpress.org/trunk@56384


git-svn-id: http://core.svn.wordpress.org/trunk@55896 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-11 11:19:20 +00:00
Weston Ruter a2cdce6c82 Embeds: Modernize wp-embed script with removal of obsolete IE10/IE11 code and support for WP<4.4.
* Remove obsolete `load` event handler in `wp-embed` since IE10+ support `DOMContentLoaded`.
* Replace obsolete use of `document.createElement('a')` in favor of the newer `URL` class (supported in all browsers but obsolete IE11).
* Remove obsolete IE10/IE11 code.
* Combine conditionals.
* Use `substring()` instead of deprecated `substr()` method.
* Eliminate the stipulation that `wp-embed.js` not include ampersands, considering this was put in place for WP<4.3 which now accounts for only 1.43% of sites. This includes the elimination of the `verify:wp-embed` grunt task.

Props westonruter, swissspidy.
Fixes #58974.

Built from https://develop.svn.wordpress.org/trunk@56383


git-svn-id: http://core.svn.wordpress.org/trunk@55895 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-10 19:49:17 +00:00
Felix Arntz 268203f8aa Editor: Simplify usage of `block_has_support()` function by supporting a string.
Most block feature checks are for a single feature string, and for such cases it is not intuitive to require an array for the `$feature` parameter of the `block_has_support()` function.

This changeset brings it in line with other functions like `post_type_supports()`, allowing to pass a string for the `$feature`. An array is still supported for more complex cases where support for sub-features needs to be determined. This change furthermore includes a very minor performance tweak by avoiding calls to the `_wp_array_get()` function if a single feature string is being checked for.

Props thekt12, nihar007, mukesh27, swissspidy.
Fixes #58532.

Built from https://develop.svn.wordpress.org/trunk@56382


git-svn-id: http://core.svn.wordpress.org/trunk@55894 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-10 16:48:19 +00:00
Sergey Biryukov f106155bf8 Users: Correct the logic for `switch_to_blog()` in `WP_User_Query::generate_cache_key()`.
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.
Fixes #59011.
Built from https://develop.svn.wordpress.org/trunk@56381


git-svn-id: http://core.svn.wordpress.org/trunk@55893 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-10 10:26:19 +00:00
Bernhard Reiter 12884f0361 HTML API: Add support for BUTTON element.
This patch adds support to process the BUTTON element. This requires adding some additional semantic rules to handle situations where a BUTTON element is already in scope.

Also included is a fixup to enforce that `WP_HTML_Processor::next_tag()` never returns for a tag closer. This is useful with the Tag Processor, but not for the HTML Processor. There were tests relying on this behavior to assert that internal processes were working as they should, but those tests have been updated to use the semi-private `step()` function, which does stop on tag closers.

This patch is one in a series of changes to expand support within the HTML API, moving gradually to allow for more focused changes that are easier to review and test. The HTML Processor is a work in progress with a certain set of features slated to be ready and tested by 6.4.0, but it will only contain partial support of the HTML5 specification even after that. Whenever it cannot positively recognize and process its input it bails, and certain function stubs and logical stubs exist to structure future expansions of support.

Props dmsnell.
Fixes #58961.
Built from https://develop.svn.wordpress.org/trunk@56380


git-svn-id: http://core.svn.wordpress.org/trunk@55892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-10 08:37:20 +00:00
Sergey Biryukov 5ac6ad6e2e Docs: Remove `@see` references for SimplePie classes.
As SimplePie is an external library, these classes are not parsed for the WordPress Code Reference, so the `@see` tags were linking to non-existing pages.

Follow-up to [38112].

Props crstauf.
Fixes #59030.
Built from https://develop.svn.wordpress.org/trunk@56379


git-svn-id: http://core.svn.wordpress.org/trunk@55891 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-10 01:06:21 +00:00
desrosj c7133f4fae Build/Test Tools: Bump the required versions of Node.js and npm.
This changes the minimum required version of Node.js to 16.19.1, and npm to 8.19.3.

Node.js 14.x reached end of life on April 30, 2023. While 18.x is the currently active LTS version, it can’t yet be used due to a systems level constraint on the build server. 

Updating further will be considered once this blocker is resolved.

Gutenberg has also been updated to follow the same version requirements for consistency.

Props youknowriad, gziolo, swissspidy, kevin940726, desrosj.
Fixes #56658.
Built from https://develop.svn.wordpress.org/trunk@56378


git-svn-id: http://core.svn.wordpress.org/trunk@55890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-09 18:54:51 +00:00
Sergey Biryukov ba52c45385 Coding Standards: Use strict comparison in `wp-includes/kses.php`.
Follow-up to [649], [2896], [3418], [8386], [20540], [47219], [54933].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56377


git-svn-id: http://core.svn.wordpress.org/trunk@55889 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-09 11:01:24 +00:00
Aaron Jorbin 5341f9b212 HTML API: Fix missing * for docblock.
Follow up to [56363].

Props dmsnell.
See #58918. Fixes #59010.

Built from https://develop.svn.wordpress.org/trunk@56376


git-svn-id: http://core.svn.wordpress.org/trunk@55888 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-08 23:01:26 +00:00
Felix Arntz 65a442fbcd Options, Meta APIs: Expand `$autoload` parameter documentation.
This changeset expands documentation of the `$autoload` parameter of the `add_option()` and `update_option()` functions, in order to provide more context on what autoloading is and which considerations should go into the decision whether to autoload an option.

Excessive autoloading of options can lead to severe performance problems on some sites, and lack of documentation is a partial cause for the issue.

Props rajinsharwar.
Fixes #58963.

Built from https://develop.svn.wordpress.org/trunk@56370


git-svn-id: http://core.svn.wordpress.org/trunk@55882 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-07 19:33:32 +00:00
davidbaumwald 2ecfc4f9a0 Upgrade/Install: Update `$_old_files` for 6.3.
Props SergeyBiryukov.
Fixes #58994.
Built from https://develop.svn.wordpress.org/trunk@56365


git-svn-id: http://core.svn.wordpress.org/trunk@55877 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-07 17:21:29 +00:00
Bernhard Reiter fa83c8e1cd HTML API: Adjust code styling to Gutenberg's linter's preferences.
Adjust the code style according to the rules that the linting process in Gutenberg requires.

There are only a couple code changes that should have no effect on the runtime:
 - A missing check to verify that only `UTF-8` is supported has been added (brought up because it was identified as an undefined variable).
 - A few `return false;` statements have been added to avoid having the linter complain that functions don't return a value despite indicating they return `bool`. The functions are stubs for coming support and currently `throw`, so the `return` statements are unreachable.

Props dmsnell, costdev, davidbaumwald, peterwilsoncc, SergeyBiryukov.
Fixes #58918.
Built from https://develop.svn.wordpress.org/trunk@56363


git-svn-id: http://core.svn.wordpress.org/trunk@55875 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-07 13:50:27 +00:00
Sergey Biryukov da0f366b22 Coding Standards: Use strict comparison in `wp-includes/class-wp.php`.
Includes minor code layout fixes for better readability.

Follow-up to [1043], [2534], [2584], [2627], [2958], [3252], [3564], [21818], [37356].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56362


git-svn-id: http://core.svn.wordpress.org/trunk@55874 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-07 10:01:27 +00:00
Sergey Biryukov 52317da292 Coding Standards: Use strict comparison in `wp-includes/class-wp-image-editor.php`.
Follow-up to [22094].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56361


git-svn-id: http://core.svn.wordpress.org/trunk@55873 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-06 12:52:25 +00:00
Sergey Biryukov df89489ac6 Coding Standards: Rewrite loose comparison in `wp_list_categories()`.
A truthy check is more in line with similar checks elsewhere, including conditionals in the same exact code block.

Follow-up to [10275], [34696].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56360


git-svn-id: http://core.svn.wordpress.org/trunk@55872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-05 14:02:26 +00:00
Sergey Biryukov ba7c01a09c Coding Standards: Use strict comparison in `wp-includes/revision.php`.
Follow-up to [24414], [38118], [38433].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56359


git-svn-id: http://core.svn.wordpress.org/trunk@55871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-04 11:58:25 +00:00
Weston Ruter b26df97c16 Emoji: Suppress console errors from sessionStorage usage in sandboxed post embed iframe.
Amends [56074].

Props westonruter, flixos90.
Fixes #58978.
See #58472.

Built from https://develop.svn.wordpress.org/trunk@56358


git-svn-id: http://core.svn.wordpress.org/trunk@55870 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-04 00:23:25 +00:00
Felix Arntz 7c7f95a8b2 Themes: Avoid unnecessary check whether parent template file exists when not using a child theme.
Prior to this change, the `locate_template()` function would unconditionally check whether the relevant template file exists in the parent theme, which for sites not using a child theme is an exact duplicate of the previous check. This is wasteful and has a small impact on performance since `file_exists()` checks have a cost.

Props nihar007, thekt12, spacedmonkey, mukesh27.
Fixes #58576.

Built from https://develop.svn.wordpress.org/trunk@56357


git-svn-id: http://core.svn.wordpress.org/trunk@55869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 20:31:22 +00:00
hellofromTonya 65da089d96 Code Modernization: Use "declare" in WP_List_Table magic methods deprecation message
Changes "define" to "declare" in the deprecation message in `WP_List_Table` magic methods.

Why is "declare" better?
It aligns well to:

* the topic of and published information about dynamic properties.
* the act of explicitly listing the variable as a property on the class.

The goal of this message is guide developers to change their code. Changing the term to "declare" hopefully will aid in the understanding of what is being asked of developers when this deprecation is thrown.

Follow-up [56349].

Props hellofromTonya, antonvlasenko.
Fixes #58896.
Built from https://develop.svn.wordpress.org/trunk@56356


git-svn-id: http://core.svn.wordpress.org/trunk@55868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 19:52:22 +00:00
Weston Ruter 5ccbf34eaa Script Loader: Use defer loading strategy for wp-embed script and move to head (in block themes).
Props westonruter, flixos90, swissspidy.
Fixes #58931.

Built from https://develop.svn.wordpress.org/trunk@56355


git-svn-id: http://core.svn.wordpress.org/trunk@55867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 19:22:22 +00:00
hellofromTonya 7d0d2b0edf Code Modernization: Deprecate dynamic properties in WP_Text_Diff_Renderer_Table magic methods.
The unknown use of unknown dynamic property within the `WP_Text_Diff_Renderer_Table` property magic methods is now deprecated. A descriptive deprecation notice is provided to alert developers to declare the property on the child class extending `WP_Text_Diff_Renderer_Table`.

Changes in this commit:
* Adds a deprecation notice to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods, i.e. to alert and inform developers when attempting to get/set/isset/unset a dynamic property.
* Fixes `__get()` to explicitly returns `null` when attempting to get a dynamic property.
* Fixes `__set()` by removing the value return after setting a declared property, as (a) unnecessary and (b) `__set()` should return `void` [https://www.php.net/manual/en/language.oop5.overloading.php#object.set per the PHP handbook].
* Fixes `__isset()` to return `false` if not in the `$compat_fields`, as `isset()` and `__isset()` should always return `bool`:
   * [https://www.php.net/manual/en/language.oop5.overloading.php#object.isset `__isset()` in the PHP manual] 
   * [https://www.php.net/manual/en/function.isset.php `isset()` in the PHP manual] 
* Adds a test class with happy and unhappy paths for these changes.

For backward compatibility, no changes are made to the internal declared properties listed in `$compat_fields` and accessed through the magic methods. 

For example:
A child class uses a property named `$data` that is not declared as a property on the child class. When getting its value, e.g. `$user_query->data`, the `WP_Text_Diff_Renderer_Table::__get()` magic method is invoked, the following deprecation notice thrown, and `null` returned:

>The property `data` is not declared. Setting a dynamic property is deprecated since version 6.4.0! Instead, declare the property on the class.

=== Why not remove the magic methods, remove the `$compat_fields` property, and restore the properties `public`?

tl;dr Backward compatibility.

If a plugin adds a property to `$compat_fields` array, then sites using that plugin would experience (a) an `Undefined property` `Warning` (PHP 8) | `Notice` (PHP 7) and (b) a possible change in behavior.

=== Why not limit the deprecation for PHP versions >= 8.2?

tl;dr original design intent and inform

The magic methods and `$compat_fields` property were added for one purpose: to continue providing external access to internal properties declared on `WP_Text_Diff_Renderer_Table`. They were not intended to be used for dynamic properties.

Deprecating that unintended usage both alerts developers a change is needed in their child class and informs them what to change.

References: 
* Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2 and are expected to become a fatal error in PHP 9.0.
* A [https://www.youtube.com/live/vDZWepDQQVE?feature=share&t=10097 live open public working session] where these changes were discussed and agreed to.
* [https://wiki.php.net/rfc/deprecate_dynamic_properties PHP RFC: Deprecate dynamic properties.]

Follow-up to [28525], [31135].

Props antonvlasenko, rajinsharwar, jrf, markjaquith, hellofromTonya, SergeyBiryukov, desrosj, peterwilsoncc, audrasjb, costdev, oglekler, jeffpaul.
Fixes #58898.
See #56034.
Built from https://develop.svn.wordpress.org/trunk@56354


git-svn-id: http://core.svn.wordpress.org/trunk@55866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 18:13:24 +00:00
hellofromTonya cdc8015125 Code Modernization: Deprecate dynamic properties in WP_User_Query magic methods.
The unknown use of unknown dynamic property within the `WP_User_Query` property magic methods is now deprecated. A descriptive deprecation notice is provided to alert developers to declare the property on the child class extending `WP_User_Query`.

Changes in this commit:
* Adds a deprecation notice to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods, i.e. to alert and inform developers when attempting to get/set/isset/unset a dynamic property.
* Fixes `__get()` to explicitly returns `null` when attempting to get a dynamic property.
* Fixes `__set()` by removing the value return after setting a declared property, as (a) unnecessary and (b) `__set()` should return `void` [https://www.php.net/manual/en/language.oop5.overloading.php#object.set per the PHP handbook].
* Fixes `__isset()` to return `false` if not in the `$compat_fields`, as `isset()` and `__isset()` should always return `bool`:
   * [https://www.php.net/manual/en/language.oop5.overloading.php#object.isset `__isset()` in the PHP manual] 
   * [https://www.php.net/manual/en/function.isset.php `isset()` in the PHP manual] 
* Adds unit tests for happy and unhappy paths.

For backward compatibility, no changes are made to the internal declared properties listed in `$compat_fields` and accessed through the magic methods. 

For example:
A child class uses a property named `$data` that is not declared as a property on the child class. When getting its value, e.g. `$user_query->data`, the `WP_User_Query::__get()` magic method is invoked, the following deprecation notice thrown, and `null` returned:

>The property `data` is not declared. Setting a dynamic property is deprecated since version 6.4.0! Instead, declare the property on the class.

=== Why not remove the magic methods, remove the `$compat_fields` property, and restore the properties `public`?

tl;dr Backward compatibility.

If a plugin adds a property to `$compat_fields` array, then sites using that plugin would experience (a) an `Undefined property` `Warning` (PHP 8) | `Notice` (PHP 7) and (b) a possible change in behavior.

=== Why not limit the deprecation for PHP versions >= 8.2?

tl;dr original design intent and inform

The magic methods and `$compat_fields` property were added for one purpose: to continue providing external access to internal properties declared on `WP_User_Query`. They were not intended to be used for dynamic properties.

Deprecating that unintended usage both alerts developers a change is needed in their child class and informs them what to change.

References: 
* Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2 and are expected to become a fatal error in PHP 9.0.
* A [https://www.youtube.com/live/vDZWepDQQVE?feature=share&t=10097 live open public working session] where these changes were discussed and agreed to.
* [https://wiki.php.net/rfc/deprecate_dynamic_properties PHP RFC: Deprecate dynamic properties.]

Related to #14579, #27881, #30891.

Follow-up to [15491], [28528], [31144].

Props antonvlasenko, rajinsharwar, jrf, markjaquith, hellofromTonya, SergeyBiryukov, desrosj, peterwilsoncc, audrasjb, costdev, oglekler, jeffpaul.
Fixes #58897.
See #56034.
Built from https://develop.svn.wordpress.org/trunk@56353


git-svn-id: http://core.svn.wordpress.org/trunk@55865 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 16:27:25 +00:00
Sergey Biryukov 34dd52dea7 Coding Standards: Use `instanceof` keyword instead of the `is_a()` function.
This is a micro-optimization that removes a few unnecessary function calls.

Follow-up to [31188], [34369], [38986], [41159], [43211], [43230], [44606], [45757].

Props ayeshrajans, jrf, rajinsharwar, costdev, mukesh27, SergeyBiryukov.
Fixes #58943.
Built from https://develop.svn.wordpress.org/trunk@56352


git-svn-id: http://core.svn.wordpress.org/trunk@55864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 12:10:28 +00:00
isabel_brison 8ce9f7e74a Build/Test Tools: revert downgrade of uuid.
Reverts the accidental downgrade of uuid in [56065] by changing it back to 9.0.0.

Props Hareesh Pillai, JeffPaul, audrasjb.
Fixes #58623.

Built from https://develop.svn.wordpress.org/trunk@56350


git-svn-id: http://core.svn.wordpress.org/trunk@55862 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-03 04:59:37 +00:00
hellofromTonya 50274fbc2b Code Modernization: Deprecate dynamic properties in WP_List_Table magic methods.
The unknown use of unknown dynamic property within the `WP_List_Table` property magic methods is now deprecated. A descriptive deprecation notice is provided to alert developers to declare the property on the child class extending `WP_List_Table`.

Changes in this commit:
* Adds a deprecation notice to the `__get()`, `__set()`, `__isset()`, `__unset()` magic methods, i.e. to alert and inform developers when attempting to get/set/isset/unset a dynamic property.
* Fixes `__get()` to explicitly returns `null` when attempting to get a dynamic property.
* Removes returning the value when setting a declared property, as (a) unnecessary and (b) `__set()` should return `void` [https://www.php.net/manual/en/language.oop5.overloading.php#object.set per the PHP handbook].
* Adds unit tests for happy and unhappy paths.

For backward compatibility, no changes are made to the internal declared properties listed in `$compat_fields` and accessed through the magic methods. 

For example:
A child class uses a property named `$data` that is not declared / defined as a property on the child class. When getting its value, e.g. `$list_table->data`, the `WP_List_Table::__get()` magic method is invoked, the following deprecation notice thrown, and `null` returned:

>The property `data` is not defined. Setting a dynamic (undefined) property is deprecated since version 6.4.0! Instead, define the property on the class.

=== Why not remove the magic methods, remove the `$compat_fields` property, and restore the properties `public`?

tl;dr Backward compatibility.

Several plugins, one of which has over 5M installs, add a property to the `$compat_fields` array. Removing the property would cause an `Undefined property` `Warning` (PHP 8) | `Notice` (PHP 7) to be thrown. Removing the associated code would change the functionality.

=== Why not limit the deprecation for PHP versions >= 8.2?

tl;dr original design intent and inform

The magic methods and `$compat_fields` property were added for one purpose: to continue providing external access to internal properties declared on `WP_List_Table`. They were not intended to be used for dynamic properties.

Deprecating that unintended usage both alerts developers a change is needed in their child class and informs them what to change.

References: 
* Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2 and are expected to become a fatal error in PHP 9.0.
* A [https://www.youtube.com/live/vDZWepDQQVE?feature=share&t=10097 live open public working session] where these changes were discussed and agreed to.
* [https://wiki.php.net/rfc/deprecate_dynamic_properties PHP RFC: Deprecate dynamic properties.]

Related to #14579, #22234, #30891.

Follow-up to [15491], [28493], [28521], [28524], [31146].

Props antonvlasenko, jrf, markjaquith, hellofromTonya, SergeyBiryukov, desrosj, peterwilsoncc, audrasjb, costdev, oglekler, jeffpaul.
Fixes #58896.
See #56034.
Built from https://develop.svn.wordpress.org/trunk@56349


git-svn-id: http://core.svn.wordpress.org/trunk@55861 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-02 18:37:21 +00:00
hellofromTonya d0e63ca7d2 Tests: Fix leakage in WP_List_Table tests.
Fixes `WP_List_table` tests leaking into other tests by:

* Restores the original `$hook_suffix` global value.
Rather than modifying the global for all tests, it now restores the original value between tests. Why? To ensure each test starts at a known state.

* Uses a new instance of `WP_List_Table` for each test.
A test may modify the `$list_table` object. If it does, it could impact tests yet to run. By instantiating a new instance in the `set_up()` test fixture, each test is isolated from the others.

Follow-up to [53868], [54215].

Props hellofromTonya, antonvlasenko.
See #58955, #58896.
Built from https://develop.svn.wordpress.org/trunk@56348


git-svn-id: http://core.svn.wordpress.org/trunk@55860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-02 18:00:22 +00:00
Felix Arntz 6cd7404aa3 Media: Simplify logic in `wp_get_loading_optimization_attributes()`.
While the `wp_get_loading_optimization_attributes()` function was only recently introduced in 6.3, its code was mostly ported over from the now deprecated `wp_get_loading_attr_default()` function introduced in 5.5.

That function started out in a simple way, but over time was expanded with more and more conditionals on when to avoid lazy-loading, which ended up making the logic extremely complex and hard to follow.

This changeset refactors the logic to simplify it, in a way that allows to follow it more sequentially, and without making any functional changes, ensuring that the extensive existing unit test coverage still passes. This will facilitate future enhancements to the function to be less error-prone and make it more accessible to new contributors.

Props flixos90, joemcgill.
Fixes #58891.

Built from https://develop.svn.wordpress.org/trunk@56347


git-svn-id: http://core.svn.wordpress.org/trunk@55859 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-02 17:58:26 +00:00
Sergey Biryukov 9dc13e98d7 Site Health: Use `PHP_SAPI` constant instead of the `php_sapi_name()` function.
This is a micro-optimization that removes an unnecessary function call.

Follow-up to [44986], [45156].

Props ayeshrajans, jrf, mukesh27, rmccue.
Fixes #58942.
Built from https://develop.svn.wordpress.org/trunk@56346


git-svn-id: http://core.svn.wordpress.org/trunk@55858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-02 10:59:25 +00:00
Felix Arntz e80768e045 Themes: Use `isset` instead of `array_key_exists` in `WP_Theme_JSON` class.
With the minimum PHP version requirement raised to 7.0, we can now use `isset` on constants that are arrays. Since `isset` is slightly faster than `array_key_exists` (and the different handling of `null` values is irrelevant for the updates here), remaining instances of `array_key_exists` in the `WP_Theme_JSON` class are replaced in this changeset.

Props soean.
Fixes #57067.

Built from https://develop.svn.wordpress.org/trunk@56345


git-svn-id: http://core.svn.wordpress.org/trunk@55857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 20:31:25 +00:00
Sergey Biryukov 1364db92bb Upgrade/Install: Pass stored credentials to `WP_Filesystem()` where appropriate.
With the introduction of temporary backups of plugins and themes before updating, a new Site Health test was added to verify that plugin and theme temporary backup directories are writable or can be created.

When using a non-direct filesystem, the Site Health test did not include the required credentials, leading to a fatal error as the connection was not initialized properly.

This commit attemps to use the stored credentials if available, and displays a message otherwise.

Includes a similar fix in a function that performs a cleanup of the temporary backup directory.

Follow-up to [55720].

Props utsav72640, rajinsharwar, costdev, mukesh27, peterwilsoncc, audrasjb, SergeyBiryukov.
See #58940.
Built from https://develop.svn.wordpress.org/trunk@56341


git-svn-id: http://core.svn.wordpress.org/trunk@55853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 16:07:25 +00:00
ryelle 4a6971f99c Help/About: Add images to About page, match header style to images.
Props richtabor, markoserb, audrasjb, peterwilsoncc, mukesh27.
See #58067.


Built from https://develop.svn.wordpress.org/trunk@56339


git-svn-id: http://core.svn.wordpress.org/trunk@55851 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 15:04:22 +00:00
audrasjb ed408e3731 Help/About: Escape "Contribute" links, for better consistency.
Props SergeyBiryukov, peterwilsoncc.
See #23348.



Built from https://develop.svn.wordpress.org/trunk@56337


git-svn-id: http://core.svn.wordpress.org/trunk@55849 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 12:58:22 +00:00
audrasjb 41dabe68ee Help/About: Remove `target="_blank"` from the Contribute link.
Props davidbaumwald.
See #23348.



Built from https://develop.svn.wordpress.org/trunk@56335


git-svn-id: http://core.svn.wordpress.org/trunk@55847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 12:50:27 +00:00
Sergey Biryukov 7d34c9b149 Coding Standards: Use strict comparison in `wp-includes/option.php`.
Follow-up to [8784], [25109].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56333


git-svn-id: http://core.svn.wordpress.org/trunk@55845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 11:01:28 +00:00
isabel_brison 3e103142ab Editor: second update of npm packages for 6.3 RC3.
Includes bug fixes for footnotes, patterns, command palette, top toolbar and other small regressions.

Props andrewserong, spacedmonkey.
See #58926.


Built from https://develop.svn.wordpress.org/trunk@56332


git-svn-id: http://core.svn.wordpress.org/trunk@55844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 08:01:54 +00:00
Bernhard Reiter 8fa9aad5e6 HTML API: Add support for SPAN element.
In this patch we're introducing support for the SPAN element, which is the first
in the class of "any other tag" in the "in body" insertion mode.

This patch introduces the mechanisms required to handle that class of tags but
only introduces SPAN to keep the change focused. With the tests and mechanisms
in place it will be possible to follow-up and add another limited set of tags.

It's important that this not use the default catch-all in the switch handling
`step_in_body` because that would catch tags that have specific rules in previous
case statements that aren't yet added. For example, we don't want to treat the
`TABLE` element as "any other tag".

Props dmsnell.
Fixes #58907.
Built from https://develop.svn.wordpress.org/trunk@56331


git-svn-id: http://core.svn.wordpress.org/trunk@55843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 07:56:23 +00:00
isabel_brison 6359762e66 Editor: fix duplication in templates list.
Excludes parent template when a child template is defined during template retrieval.

Props oandregal, mukesh27, flixos90, bgardner.
See #57756.

Built from https://develop.svn.wordpress.org/trunk@56329


git-svn-id: http://core.svn.wordpress.org/trunk@55841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-08-01 02:12:24 +00:00
audrasjb 29d0198455 Help/About: Make Contribute links translatable.
Follow-up to [17877], [26354], [35898], [43032], [56220], [56312].

Props sereedmedia, tobifjellner, oglekler, ryelle, fierevere, davidbaumwald, audrasjb.
See #23348.



Built from https://develop.svn.wordpress.org/trunk@56327


git-svn-id: http://core.svn.wordpress.org/trunk@55839 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-31 20:23:21 +00:00
Sergey Biryukov 6035d50bab Coding Standards: Use strict comparison in `wp-includes/functions.php`.
Follow-up to [5999], [6342], [7406], [8369], [10322], [11288], [11332], [11597], [12405], [13569], [14649], [15806], [19773], [26449], [26926], [39831], [40124].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56326


git-svn-id: http://core.svn.wordpress.org/trunk@55838 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-31 13:33:24 +00:00
Sergey Biryukov 8aa8b5883a Coding Standards: Use strict comparison in `wp-includes/formatting.php`.
Follow-up to [1345], [4112], [6974], [24214], [25055], [28831], [32863].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56325


git-svn-id: http://core.svn.wordpress.org/trunk@55837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-30 08:53:25 +00:00
Sergey Biryukov 18ca91327a Coding Standards: Use strict comparison in `wp-includes/feed-atom-comments.php`.
Follow-up to [9818].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56324


git-svn-id: http://core.svn.wordpress.org/trunk@55836 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-29 00:31:35 +00:00
Weston Ruter ee1baf955c Script Loader: Delay loading comment-reply script with async loading strategy.
Props westonruter, flixos90, joemcgill, sergiomdgomes.
See #12009.
Fixes #58870.

Built from https://develop.svn.wordpress.org/trunk@56323


git-svn-id: http://core.svn.wordpress.org/trunk@55835 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-28 17:17:24 +00:00
Sergey Biryukov dcc82c39cc Coding Standards: Use strict comparison in `wp-includes/class-wp-roles.php`.
Follow-up to [25695], [41625].

Props aristath, poena, afercia, SergeyBiryukov.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56321


git-svn-id: http://core.svn.wordpress.org/trunk@55833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-28 11:37:25 +00:00
isabel_brison bae8871465 Editor: initial update of npm packages for 6.3 RC3.
Includes bug fixes for patterns, command palette and several minor regressions.

Props ramonopoly.
See #58926.

Built from https://develop.svn.wordpress.org/trunk@56320


git-svn-id: http://core.svn.wordpress.org/trunk@55832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-28 07:40:16 +00:00
Sergey Biryukov 29c16a48ec Coding Standards: Use correct case for class name in `WP_Http` tests.
Follow-up to [8516], [54968].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56319


git-svn-id: http://core.svn.wordpress.org/trunk@55831 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-27 14:47:20 +00:00
audrasjb f510e6e9f4 Editor: Revert [56316].
This reverts [56316] as it needs to be fixed by updating npm packages.

Unprops audrasjb.
Props swissspidy.
See #58920.



Built from https://develop.svn.wordpress.org/trunk@56317


git-svn-id: http://core.svn.wordpress.org/trunk@55829 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-27 10:10:24 +00:00
audrasjb 82bac32754 Editor: Prevent PHP warning when accessing icon by area.
This changeset prevents an attempt to access an array via a key that doesn't exist.
See https://github.com/WordPress/gutenberg/pull/52961.

Props aaronrobertshaw, glendaviesnz, mukesh27.
Fixes #58920.



Built from https://develop.svn.wordpress.org/trunk@56316


git-svn-id: http://core.svn.wordpress.org/trunk@55828 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-27 09:18:21 +00:00
audrasjb c54adf1d22 Bundled Themes: Bump version numbers for WordPress 6.3.
In coordination with the release of 6.3, a new version of each bundled theme will also be released. This bumps the version of each theme to the following:

- Twenty Ten: 3.9
- Twenty Eleven: 4.4
- Twenty Twelve: 4.0
- Twenty Thirteen: 3.9
- Twenty Fourteen: 3.7
- Twenty Fifteen: 3.5
- Twenty Sixteen: 3.0
- Twenty Seventeen: 3.3
- Twenty Nineteen: 2.6
- Twenty Twenty: 2.3
- Twenty Twenty-One: 1.9
- Twenty Twenty-Two: 1.5
- Twenty Twenty-Three: 1.2

Props mukesh27, hareesh-pillai, audrasjb, jakariaistauk, kafleg, sabernhardt, spacedmonkey.
Fixes #57857.



Built from https://develop.svn.wordpress.org/trunk@56315


git-svn-id: http://core.svn.wordpress.org/trunk@55827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-26 22:09:22 +00:00
Joe McGill 55a90c82d5 Script Loader: Add support for `font-display: optional`.
This adds `optional` to the list of valid `font-display` values that can be used when validating webfonts.

Props merel1988, asafm7, mukesh27.
Fixes #58454.

Built from https://develop.svn.wordpress.org/trunk@56314


git-svn-id: http://core.svn.wordpress.org/trunk@55826 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-26 19:23:21 +00:00
Joe McGill 859cf639a6 Build/Test Tools: Run performance tests using production env vars.
This sets the following environment variables when running automated performance tests to avoid side effects that can skew performance data when the default development environment variables are used:

* `SAVEQUERIES`: `false`
* `SCRIPT_DEBUG`: `false`
* `WP_DEBUG`: `false`
* `WP_DEVELOPMENT_MODE`: `''`

Props rajinsharwar, desrosj, mukesh27, joemcgill.
Fixes #58825.

Built from https://develop.svn.wordpress.org/trunk@56313


git-svn-id: http://core.svn.wordpress.org/trunk@55825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-26 19:13:23 +00:00
Sergey Biryukov d50b1048f3 Help/About: Update “Get involved in WordPress” link on the Credits tab.
This commit updates the link URL to send contributors to an orientation tool for a short survey on what team they may be interested in joining. This coincides with the Get Involved tab.

Follow-up to [17877], [26354], [35898], [43032], [56220].

Props courane01, audrasjb.
See #23348.
Built from https://develop.svn.wordpress.org/trunk@56311


git-svn-id: http://core.svn.wordpress.org/trunk@55823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-26 11:51:25 +00:00
audrasjb 99366f31d2 Help/About: Fix the Get Involved tab on Network Admin.
This changeset adds a `wp-admin/network/contribute.php` file to allow the Get Involved tab to work on Network Admin.

Props courane01, ryelle, audrasjb.
See #23348.



Built from https://develop.svn.wordpress.org/trunk@56309


git-svn-id: http://core.svn.wordpress.org/trunk@55821 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 21:34:27 +00:00
desrosj 1afe1d9f5e Build/Test Tools: Restore automatically retrying failed E2E tests once.
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].
See #58779.
Built from https://develop.svn.wordpress.org/trunk@56308


git-svn-id: http://core.svn.wordpress.org/trunk@55820 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 18:19:31 +00:00
audrasjb 888e60a012 Editor: Fix conditionals in Template Editing Mode.
Previously, Site Editor client-side routing started using only the path query argument for loading non-editor views. The router removed the `postType` query 
argument, which caused an error message to be displayed when the template parts list page was reloaded.

This changeset fixes the issue as it was affecting hybrid themes.

Props Mamaduka, isabel_brison, ramonopoly.
Fixes #58889.



Built from https://develop.svn.wordpress.org/trunk@56302


git-svn-id: http://core.svn.wordpress.org/trunk@55814 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 14:33:23 +00:00
Sergey Biryukov 80e5ebb0cc Coding Standards: Always declare visibility for class methods.
This adds a missing `public` keyword for `WP_HTML_Tag_Processor::get_attribute_names_with_prefix()`.

Follow-up to [55203].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56301


git-svn-id: http://core.svn.wordpress.org/trunk@55813 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 13:16:21 +00:00
audrasjb 577b07285e Twenty Twenty-One: Enable Dark Mode in the block editor iframe.
This changeset replaces `add_action( 'enqueue_block_editor_assets' )`, with `add_action( 'enqueue_block_assets' )`, in class `Twenty_Twenty_One_Dark_Mode` and class 
`Twenty_Twenty_One_Custom_Colors`. This fixes an issue when activating dark mode in Twenty Twenty-One, where dark mode was not enabled in the block editor.

Props poena, mikinc860, huzaifaalmesbah, hasanuzzamanshamim, Ankit-K-Gupta.
Fixes #58835.



Built from https://develop.svn.wordpress.org/trunk@56300


git-svn-id: http://core.svn.wordpress.org/trunk@55812 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 12:31:21 +00:00
Bernhard Reiter 1612d711dd HTML API: Change `wp` infix in test classes to `Wp`.
In order to comply with the test class naming scheme set forth in #56846, rename the test classes covering the HTML API by changing the `wp` infix to `Wp`.

Props dmsnell, costdev.
Fixes #58899. See #56846.
Built from https://develop.svn.wordpress.org/trunk@56299


git-svn-id: http://core.svn.wordpress.org/trunk@55811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 12:19:27 +00:00
isabel_brison baf1c9d87a Editor: update npm packages with bug fixes for 6.3 RC2.
Includes miscellaneous bug fixes for 6.3 RC12.

Props ramonopoly, audrasjb, swissspidy, peterwilsoncc, joemcgill.
Fixes #58804.

Built from https://develop.svn.wordpress.org/trunk@56298


git-svn-id: http://core.svn.wordpress.org/trunk@55810 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 08:40:23 +00:00
isabel_brison 119459806f Editor: load title on navigation fallback.
Adds raw title property when loading the navigation fallback with an embed context.

Props ramonopoly, get_dave, scruffian, mukesh27, audrasjb.
Fixes #58557.


Built from https://develop.svn.wordpress.org/trunk@56296


git-svn-id: http://core.svn.wordpress.org/trunk@55808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-25 06:30:20 +00:00
ryelle b88762dd6e Help/About: Updates to About page.
Update the headers, icons, and avatar style to match the designs. Fix the version strings on embedded images. Remove the tagline on main About page. Update "ctrl" to the correct capitalization, "Ctrl".

Follow-up to [56263].
Props richtabor, markoserb, audrasjb, nekojonez.
See #58067.


Built from https://develop.svn.wordpress.org/trunk@56292


git-svn-id: http://core.svn.wordpress.org/trunk@55804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 23:39:22 +00:00
ryelle f5730be053 Administration: Update dashboard welcome panel for 6.3.
Update the background image and styles for the Welcome Panel. This iteration does not use different colors on the admin color schemes, so the CSS for that has been removed. This also adds back in a working "Edit styles" link, which was removed in 6.2 because the link was broken.

Props richtabor, markoserb.
Fixes #58545.


Built from https://develop.svn.wordpress.org/trunk@56291


git-svn-id: http://core.svn.wordpress.org/trunk@55803 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 23:15:23 +00:00
ryelle 0d4890d568 Help/About: Add illustrations to the Get Involved tab
Follow-up to [56220], [56227], [56233], [56234], [56259].
Props richtabor, markoserb.
Fixes #23348.


Built from https://develop.svn.wordpress.org/trunk@56290


git-svn-id: http://core.svn.wordpress.org/trunk@55802 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 22:52:21 +00:00
audrasjb 96d3c045bc Editor: Fix abbreviations of "Example" in `block-template-utils.php`.
This changeset improves the consistency of the use of "e.g." in template descriptions.

Props jordesign, audrasjb, joedolson.
Fixes #58879.



Built from https://develop.svn.wordpress.org/trunk@56287


git-svn-id: http://core.svn.wordpress.org/trunk@55799 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 20:54:24 +00:00
Sergey Biryukov 2eb4c43a4d Coding Standards: Remove trailing tabs in `wp-admin/about.php`.
This resolves a WPCS warning:
{{{
Found precision alignment of 2 spaces.
}}}

Follow-up to [56263].

Props jrf.
See #58831, #58067.
Built from https://develop.svn.wordpress.org/trunk@56285


git-svn-id: http://core.svn.wordpress.org/trunk@55797 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 13:05:26 +00:00
isabel_brison d6fac66a83 Editor: fix popover positioning.
Pins the floating-ui package versions to avoid breaking changes when they update.

Props ramonopoly, spacedmonkey, bhrugesh12, huzaifaalmesbah, audrasjb, azaozz.
See #58847.

Built from https://develop.svn.wordpress.org/trunk@56284


git-svn-id: http://core.svn.wordpress.org/trunk@55796 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-24 00:52:23 +00:00
Sergey Biryukov ffa1d288f3 Coding Standards: Correct alignment in `wp-includes/media.php`.
This resolves a WPCS warning:
{{{
Found precision alignment of 1 space.
}}}

Follow-up to [55988].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56283


git-svn-id: http://core.svn.wordpress.org/trunk@55795 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-23 16:00:26 +00:00
joedolson a194e4b762 Media: Fix Image rotation button overflow in translations.
Fix CSS to cover the image rotation button action text being longer than the Image Rotation menu toggle. Prevent the button text from overflowing the button. Follow-up to [56239].

Props kebbet.
Fixes #58877.
Built from https://develop.svn.wordpress.org/trunk@56282


git-svn-id: http://core.svn.wordpress.org/trunk@55794 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-22 19:23:25 +00:00
Sergey Biryukov 88ae6ae84f Coding Standards: Always use parentheses for class instantiation.
This addresses a `new stdClass()` instance in `_get_non_cached_ids()` tests.

Follow-up to [55543].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56281


git-svn-id: http://core.svn.wordpress.org/trunk@55793 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-22 12:37:24 +00:00
desrosj bc4dbee940 General: Commit changes after running `precommit:css`.
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.

See #57856, #58869.
Props desrosj, joemcgill, isabel_brison.
Built from https://develop.svn.wordpress.org/trunk@56279


git-svn-id: http://core.svn.wordpress.org/trunk@55791 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-21 18:06:28 +00:00
joedolson c619a3d450 Media: Fix height max value in image scaling.
Set the `max` attribute in the height input for image scaling to reference the image height, instead of the width. Follow up to [55919].

Props costdev, joedolson, joemcgill.
Fixes #50523.
Built from https://develop.svn.wordpress.org/trunk@56277


git-svn-id: http://core.svn.wordpress.org/trunk@55789 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-21 14:33:22 +00:00
Sergey Biryukov 55ab72cf12 I18N: Add missing translator comment in `WP_Upgrader::generic_strings()`.
This resolves a WPCS warning:
> A gettext call containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.

Includes moving `wp-content` out of the translatable string in a similar message in `_wp_delete_all_temp_backups()`.

Follow-up to [55720], [56117].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56276


git-svn-id: http://core.svn.wordpress.org/trunk@55788 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-21 13:33:27 +00:00
Bernhard Reiter 44629e6286 HTML-API: Introduce minimal HTML Processor.
This patch introduces the //first// of //many// iterations on the evolution of the HTML API, the HTML Processor, which is built in order to understand HTML structure including nesting, misnesting, and complicated semantic rules.

In the first iteration, the HTML Processor is arbitrarily limited to a minimal subset of functionality so that we can review it, ship it, test it, and collect feedback before moving forward. This means that this patch is more or less an extension to the Tag Processor query language, providing the ability not only to scan for a tag of a given name, but also to find an HTML element in a specific nesting path.

The HTML Processor also aborts any time it encounters:
 - a tag that isn't a `P`, `DIV`, `FIGURE`, `FIGCAPTION`, `IMG`, `STRONG`, `B`, `EM`, `I`, `A`, `BIG`, `CODE`, `FONT`, `SMALL`, `STRIKE`, `TT`, or `U` tag. this limit exists because many HTML elements require specific rules and we are trying to limit the number of rules introduced at once. this work is targeted at existing work in places like the image block.
 - certain misnesting constructs that evoke complicated resolution inside the HTML spec. where possible and where simple to do reliably, certain parse errors are handled. in most cases the HTML Processor aborts.

The structure of the HTML Processor is established in this patch. Further spec-compliance comes through filling out //more of the same// kind and nature of code as is found in this patch. Certain critical HTML algorithms are partially supported, and where support requires more than is present, the HTML Processor acknowledges this and refuses to operate.

In this patch are explorations for how to verify that new HTML support is fully added (instead of allowing for partial updates that leave some code paths non-compliant). Performance is hard to measure since support is so limited at the current time, but it should generally follow the performance of the Tag Processor somewhat close as the overhead is minimized as much as practical.

Props dmsnell, zieladam, costdev.
Fixes #58517.
Built from https://develop.svn.wordpress.org/trunk@56274


git-svn-id: http://core.svn.wordpress.org/trunk@55786 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-20 13:43:25 +00:00
Sergey Biryukov 3a065bfb2c Coding Standards: Correct equals sign alignment in various files.
This resolves a few WPCS warnings:
{{{
Equals sign not aligned with surrounding statements
}}}
so that the output of `composer format` is clean.

Follow-up to [55971], [56033], [56056], [56143], [56214].

Props jrf.
See #58831.
Built from https://develop.svn.wordpress.org/trunk@56273


git-svn-id: http://core.svn.wordpress.org/trunk@55785 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-20 00:06:21 +00:00
audrasjb e992dabb1a Docs: Fix indentation issue in `WP_REST_Global_Styles_Revisions_Controller` class.
Follow-up to [56082].

See #57840, #58524.



Built from https://develop.svn.wordpress.org/trunk@56272


git-svn-id: http://core.svn.wordpress.org/trunk@55784 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-19 22:53:23 +00:00
antpb cc3652efe9 Media: Adjust PDF upload handling to remove non-opaque alpha channels from previews.
Previously, Imagick uploads of PDF files with non-opaque alpha channels would result in a black background replacing alpha in the generated thumbnail. This patch adds a `remove_pdf_alpha_channel()` function in the Imagick classes to use a white background instead.

Props gitlost, joemcgill, joedolson, launchinteractive, emirpprime, mwtsn, ceer, maysi, madejackson, 6adminit, costdev, oglekler.
Fixes #39216.

Built from https://develop.svn.wordpress.org/trunk@56271


git-svn-id: http://core.svn.wordpress.org/trunk@55783 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-19 22:35:27 +00:00
Sergey Biryukov c0f28e113c Docs: Add a missing word in `maybe_create_table()` description.
Follow-up to [31246].

Props crstauf, james0r.
Fixes #58841.
Built from https://develop.svn.wordpress.org/trunk@56270


git-svn-id: http://core.svn.wordpress.org/trunk@55782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-19 11:33:26 +00:00
audrasjb b5ec731578 REST API: Update Global styles revisions private methods to protected.
This changeset updates the private vars and methods in the Global styles revisions rest API controller to be protected, so class entities that inherit 
from the base can use them, and to allow iterating on 6.3 features without having to copy over private methods to new classes.

Props ramonopoly.
Fixes #58846.



Built from https://develop.svn.wordpress.org/trunk@56268


git-svn-id: http://core.svn.wordpress.org/trunk@55780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-19 07:49:24 +00:00
Mike Schroder 20004c5f36 Trunk is now 6.4 alpha.
Built from https://develop.svn.wordpress.org/trunk@56267


git-svn-id: http://core.svn.wordpress.org/trunk@55779 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-19 05:54:26 +00:00
davidbaumwald b8438bdcbb Post WordPress 6.3 RC1 version bump.
Built from https://develop.svn.wordpress.org/trunk@56265


git-svn-id: http://core.svn.wordpress.org/trunk@55777 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 17:04:21 +00:00
davidbaumwald f1007f6846 WordPress 6.3 RC1.
Built from https://develop.svn.wordpress.org/trunk@56264


git-svn-id: http://core.svn.wordpress.org/trunk@55776 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 16:46:24 +00:00
ryelle 5402a24ad0 Help/About: Update the About page for 6.3.
This is the start of the WordPress 6.3 about page, introducing new content and a first pass of the new style.

Props jpantani, dansoschin, annezazu, priethor, marybaum, eidolonnight, clarkeemily, flixos90, cbringmann, meher, richtabor, markoserb, joen, saxonafletcher, jameskoster, davidbaumwald, peterwilsoncc, ryelle.
See #58067.


Built from https://develop.svn.wordpress.org/trunk@56263


git-svn-id: http://core.svn.wordpress.org/trunk@55775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 16:20:22 +00:00
Bernhard Reiter 2380861f72 Editor: Add test for context setting in Comment Template block.
Test that `commentId` context is correctly set and made available by the Comment Template block to the `render_block_context` filter (at priority 2 and higher), and to the `render_block` filter (important when programmatically inserting child blocks into the Comment Template block).

Furthermore, test that child blocks inserted via the `render_block_data` filter are retained and thus present at `render_block` filter stage.

Props andrewserong, ramonopoly, peterwilsoncc, costdev, mukesh27, flixos90.
Fixes #58839.
Built from https://develop.svn.wordpress.org/trunk@56262


git-svn-id: http://core.svn.wordpress.org/trunk@55774 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 16:09:22 +00:00
Sergey Biryukov 45cf0edf28 Administration: Add a missing closing `</span>` tag for column sorting indicators.
Includes wrapping a few other long markup lines for better readability.

Follow-up to [55971], [56004], [56260].

See #32170, #57839.
Built from https://develop.svn.wordpress.org/trunk@56261


git-svn-id: http://core.svn.wordpress.org/trunk@55773 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 14:09:21 +00:00
Sergey Biryukov c0adc40452 Coding Standards: Use strict comparison for static strings in `wp-admin/includes/class-wp-list-table.php`.
Follow-up to [55971], [56004].

See #32170, #57839.
Built from https://develop.svn.wordpress.org/trunk@56260


git-svn-id: http://core.svn.wordpress.org/trunk@55772 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 14:05:29 +00:00
audrasjb 944c46e091 Help/About: String changes in the Contribute screen.
Follow-up to [56220], [56227], [56233], [56234].

Props costdev.
See #23348.



Built from https://develop.svn.wordpress.org/trunk@56259


git-svn-id: http://core.svn.wordpress.org/trunk@55771 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 10:47:28 +00:00
spacedmonkey e0eaffdd3c Upgrade/Install: Add correct parameters to add_option in upgrade_630
Introduced in [55854], `upgrade_630` function was introduced to update `can_compress_scripts` option to autoload. However the function `add_option` was invoked incorrectly, passing 3 parameters and not 4. The third parameter, which is deprecated, triggers a  deprecated argument warning. In this change, pass 4 parameters instead of 3. 

Props gudmdharalds, spacedmonkey, costdev, mukesh27.
Fixes #58821.
Built from https://develop.svn.wordpress.org/trunk@56258


git-svn-id: http://core.svn.wordpress.org/trunk@55770 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 10:09:29 +00:00
audrasjb 26395d827e Docs: Various docblocks corrections.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56257


git-svn-id: http://core.svn.wordpress.org/trunk@55769 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 07:37:21 +00:00
audrasjb 114ab18d18 Docs: Fix various incorrect `@since` mentions.
Props costdev, mukesh27.
Fixes #58834.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56256


git-svn-id: http://core.svn.wordpress.org/trunk@55768 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 07:30:23 +00:00
isabel_brison 780ddef241 Editor: update npm packages with second round of bug fixes for 6.3 RC1.
Includes miscellaneous bug fixes for 6.3 RC1.

Props ramonopoly, mukesh27.
Fixes #58804.

Built from https://develop.svn.wordpress.org/trunk@56255


git-svn-id: http://core.svn.wordpress.org/trunk@55767 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 07:20:48 +00:00
Felix Arntz 75f25fd334 Editor: Fix bug where it was not possible to style custom block elements in `theme.json`.
This changeset resolves a bug where WordPress would only allow HTML elements within core's own blocks to be styled in `theme.json`. Prior to this change, any `theme.json` rules applying to elements in custom blocks were ignored. With this fix it is now possible to style third-party block elements in `theme.json`.

Props flixos90, azaozz, costdev, glendaviesnz, spacedmonkey, oandregal.
Fixes #57868.

Built from https://develop.svn.wordpress.org/trunk@56254


git-svn-id: http://core.svn.wordpress.org/trunk@55766 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-18 00:02:22 +00:00
audrasjb dce6425913 Twenty Twenty-Three: Revert [55898].
This changeset reverts [55898] which removed redundant `px` units in a few inline styles, because 1) The values in the block comment and the style 
attribute needs to match ; 2) The block control does not accept unitless values.

Follow-up to [54312], [54629], [55898].

Props TobiasBg, poena, oglekler.
See #58485.



Built from https://develop.svn.wordpress.org/trunk@56253


git-svn-id: http://core.svn.wordpress.org/trunk@55765 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 22:26:22 +00:00
audrasjb 5b3bd2c704 External Libraries: Update deprecated jQuery code in Farbtastic lib.
This changeset updates some deprecated jQuery code in the Farbtastic external library. As this vendor script is not maintained anymore, this changeset 
also adds a docblock to specify that the library has been "adopted" by WP Core.

Props Malae, sabernhardt, SergeyBiryukov, Presskopp, mrinal013, peterwilsoncc, oglekler, jorbin.
Fixes #57946.



Built from https://develop.svn.wordpress.org/trunk@56252


git-svn-id: http://core.svn.wordpress.org/trunk@55764 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 22:03:26 +00:00
Andrew Ozz b48154ae63 Twenty Twenty-Three: Remove the `perPage` attribute where the query inherits from the global query. The global attribute should be used instead.
Props: mikachan, onemaggie.
Fixes: #58581.
Built from https://develop.svn.wordpress.org/trunk@56251


git-svn-id: http://core.svn.wordpress.org/trunk@55763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 21:34:25 +00:00
Andrew Ozz 427f0159cc Media: Stop using and deprecate `set_imagick_time_limit()`. Seems it causes more problems than it solves.
Follow-up to #52569 and [55404].

Props: dsar, antpb, audrasjb, SergeyBiryukov, hberberoglu, mtxz, densityapps, ekazda, matt_fw, soulseekah, mikeschroder, azaozz.

Fixes: #58202.
Built from https://develop.svn.wordpress.org/trunk@56250


git-svn-id: http://core.svn.wordpress.org/trunk@55762 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 20:04:24 +00:00
Joe McGill 018821ff9a General: Rename `wp_in_development_mode()` to `wp_is_development_mode()`.
This changes the function name for the helper function to check whether the current environment is running with the `WP_DEVELOPMENT_MODE` constant set to be more consistent with similar functions in core, like `wp_is_maintenance_mode()` and `wp_is_recover_mode()`.

Props flixos90, swissspidy, costdev, peterwilson, robinwpdeveloper, SergeyBiryukov, joemcgill.
See 57487.

Built from https://develop.svn.wordpress.org/trunk@56249


git-svn-id: http://core.svn.wordpress.org/trunk@55761 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 14:50:21 +00:00
audrasjb 6ba79df9c4 Editor: Fix a PHP notice appearing when adding a new template part.
This changeset fixes a PHP notice appearing when a template part is created in the site editor. It also adds a unit test case to cover 
`WP_REST_Templates_Controller::prepare_item_for_database`.

Props wildworks, dunhakdis, Rahmohn, oglekler, audrasjb, mukesh27, costdev, dunhakdis.
Fixes #57851.



Built from https://develop.svn.wordpress.org/trunk@56248


git-svn-id: http://core.svn.wordpress.org/trunk@55760 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 14:22:24 +00:00
K. Adam White 6443800aa6 Build Tools: Remove outmoded jsvalidate task from Gruntfile.
grunt-jsvalidate was added to catch situations where minification introduced parsing errors in Internet Explorer.
IE is no longer supported by WordPress, and the grunt task itself has not been maintained for a decade.
Removing this task simplifies the build and avoids false-positive warnings where the outdated tool flags modern JS syntax incorrectly.

Props westonruter, joemcgill, jorbin, youknowriad, desrosj, swissspidy.
Fixes #58645. See #26615.

Built from https://develop.svn.wordpress.org/trunk@56247


git-svn-id: http://core.svn.wordpress.org/trunk@55759 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 14:07:33 +00:00
Joe McGill e1b050cb9b Script Loader: Improve test coverage for `wp_print_scripts()`.
This is a follow-up to [56092], which further improves PHPUnit test coverage and inline docs for ensuring `async` and `defer` attributes are being properly handled for scripts that are printed without being enqueued.

Props peterwilsoncc, azaozz, westonruter, joemcgill.
See #58648.

Built from https://develop.svn.wordpress.org/trunk@56246


git-svn-id: http://core.svn.wordpress.org/trunk@55758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 14:05:29 +00:00
Sergey Biryukov 59f1c9c205 Code Modernization: Use `str_contains()` in a few more places.
`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 [55988], [55990], [56014], [56021], [56031], [56032], [56065], [56241].

See #58206.
Built from https://develop.svn.wordpress.org/trunk@56245


git-svn-id: http://core.svn.wordpress.org/trunk@55757 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 13:18:27 +00:00
isabel_brison 54f218ae18 Editor: trim footnote anchors from post excerpts.
Adds the `excerpt_remove_footnotes` function to trim footnote anchors from post excerpts.

Props: ramonopoly, costdev, mukesh27, mcsf, azaozz.
Fixes #58805.

Built from https://develop.svn.wordpress.org/trunk@56244


git-svn-id: http://core.svn.wordpress.org/trunk@55756 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-17 01:47:26 +00:00
joedolson aa7c98232f Help/About: Fix closing contextual help when scrolled.
Change from `scrollIntoView` to `scrollIntoViewIfNeeded` so scrolling will only fire when it is required. `scrollIntoViewIfNeeded` is a proprietary method that is not standardized and not currently on a track towards standards. However, testing has it working well, including in Firefox, which supposedly does not support it.

Props mikecho, studionashvegas, mai21, piotrek, Heiko_Mamerow, costdev, joedolson.
Fixes #55342.
Built from https://develop.svn.wordpress.org/trunk@56243


git-svn-id: http://core.svn.wordpress.org/trunk@55755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-16 16:45:22 +00:00
joedolson 7a703a1b0f Media: Fix admin image editor layout at intermediary widths.
Follow up to [56189], which resolved the initial problem but created new problems with control proximity on wide monitors. Change admin image editor panels to use flex so panels only occupy the space needed.

Props joedolson, sabernhardt, mikinc860.
Fixes #58692.
Built from https://develop.svn.wordpress.org/trunk@56242


git-svn-id: http://core.svn.wordpress.org/trunk@55754 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-16 15:59:22 +00:00
Sergey Biryukov ff5ec02b0c Bootstrap/Load: Require `wp-includes/compat.php` in `src/index.php`.
This allows for using polyfill functions if `src/index.php` is the entry point (this file exists as a reminder to build the assets, and is different from the actual `index.php` file that gets built and boots WordPress).

Includes:
* Moving the check for the required PHP and MySQL versions earlier.
* Making the load order consistent between `src/index.php`, `wp-load.php`, and `wp-settings.php`.

Follow-up to [46183], [56006], [56007].

Props westonruter, Presskopp, joemcgill, SergeyBiryukov.
See #58206.
Built from https://develop.svn.wordpress.org/trunk@56241


git-svn-id: http://core.svn.wordpress.org/trunk@55753 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-16 12:16:24 +00:00
joedolson 85b1f84c22 Revert package-lock.json changes committed by mistake in [56239]
Props joedolson.
See #58756.
Built from https://develop.svn.wordpress.org/trunk@56240


git-svn-id: http://core.svn.wordpress.org/trunk@55752 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-15 21:52:23 +00:00
joedolson 05ed63a728 Media: Improve layout of image rotation options panel.
Add visual affordance to expanded/collapsed states and move panel under the control rather than placing it next to the toggle, to prevent overflow with the save menu.

Props nithi22, deepakvijayan, antpb, joedolson.
Fixes #58756.
Built from https://develop.svn.wordpress.org/trunk@56239


git-svn-id: http://core.svn.wordpress.org/trunk@55751 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-15 21:42:26 +00:00
Sergey Biryukov e21be237f1 Coding Standards: Use strict comparison in `wp-includes/load.php`.
Includes minor code layout fixes for better readability.

Follow-up to [6058], [6208], [10217], [12732], [37677].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56238


git-svn-id: http://core.svn.wordpress.org/trunk@55750 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-15 09:04:27 +00:00
Andrew Ozz 337cabcd32 Help/About: Fix typo in [56171]: support forum "topic", not "ticket".
Props: tobifjellner.
Fixes: #58199.
Built from https://develop.svn.wordpress.org/trunk@56237


git-svn-id: http://core.svn.wordpress.org/trunk@55749 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 22:11:22 +00:00
Andrew Ozz fe0920e0a3 Menus: Fix critical errors when the `page_on_front` and/or `page_for_posts` options contain references to non-existing posts.
props: hbhalodia, wplindavantol, josklever, audrasjb.
Fixes: #58345.
Built from https://develop.svn.wordpress.org/trunk@56236


git-svn-id: http://core.svn.wordpress.org/trunk@55748 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 21:47:22 +00:00
Andrew Ozz 94b1479a49 Editir: Fix open_basedir warnings on the classic Edit Post screen when additional TinyMCE plugins are used.
Props: rembem, MadtownLems, njsamsatli, sabernhardt, azaozz.
Fixes: #54354.
Built from https://develop.svn.wordpress.org/trunk@56235


git-svn-id: http://core.svn.wordpress.org/trunk@55747 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 20:59:26 +00:00
Sergey Biryukov c66ed1c6e9 Help/About: Adjust horizontal padding on the tabs under 960 pixels width.
This ensures that the About / Credits / Freedoms / Privacy / Get Involved tabs menu does not expand beyond the container when the side admin menu is expanded.

Follow-up to [56220], [56227], [56233].

Props costdev, mukesh27.
See #23348.
Built from https://develop.svn.wordpress.org/trunk@56234


git-svn-id: http://core.svn.wordpress.org/trunk@55746 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 15:42:27 +00:00
Sergey Biryukov 51af5fc4a5 Help/About: Update “Get Involved” tab content with the latest edits.
Follow-up to [56220], [56227].

Props oglekler, richtabor, SeReedMedia, eidolonnight, davidbaumwald, ibrahimmonir, ugyensupport, alexstine, suzettefranck.
See #23348.
Built from https://develop.svn.wordpress.org/trunk@56233


git-svn-id: http://core.svn.wordpress.org/trunk@55745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 15:34:25 +00:00
Sergey Biryukov 4ae5fb0bae Docs: Use consistent wording for development mode.
Follow-up to [56042], [56223], [56231].

See #57487, #57840.
Built from https://develop.svn.wordpress.org/trunk@56232


git-svn-id: http://core.svn.wordpress.org/trunk@55744 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 14:15:23 +00:00
Sergey Biryukov f82f8a7a98 Docs: Clarify where the `wp_get_development_mode()` value is retrieved from.
Includes:
* Adding a mention of the `WP_DEVELOPMENT_MODE` constant.
* Minor DocBlock formatting adjustments.

Follow-up to [56042], [56223].

See #57487, #57840.
Built from https://develop.svn.wordpress.org/trunk@56231


git-svn-id: http://core.svn.wordpress.org/trunk@55743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 14:10:26 +00:00
isabel_brison fc6f16bd57 Editor: fix typos in templates info.
Fixes two small typos in `wp-includes/block-template-utils.php`.

Props SergeyBiryukov.
Fixes #58713.


Built from https://develop.svn.wordpress.org/trunk@56230


git-svn-id: http://core.svn.wordpress.org/trunk@55742 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 05:18:22 +00:00
isabel_brison f29e4144fa Editor: update npm packages with first round of bug fixes for 6.3 RC1.
Includes miscellaneous bug fixes for 6.3 RC1.

Props ramonopoly.
See #58804.

Built from https://develop.svn.wordpress.org/trunk@56229


git-svn-id: http://core.svn.wordpress.org/trunk@55741 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-14 04:33:18 +00:00
joedolson 61c7af563a Media: Set default state for image rotation button.
Adds `aria-expanded="false"` as default state for image rotation toggle in admin image editor. See #50523.

Props joedolson.
Fixes #58800.
Built from https://develop.svn.wordpress.org/trunk@56228


git-svn-id: http://core.svn.wordpress.org/trunk@55740 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 16:42:27 +00:00
Sergey Biryukov 039053d08a Tests: Add tests to ensure the `contribute` Toolbar node is added when appropriate.
Follow-up to [56220].

Props costdev.
See #23348.
Built from https://develop.svn.wordpress.org/trunk@56227


git-svn-id: http://core.svn.wordpress.org/trunk@55739 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 12:41:24 +00:00
spacedmonkey 748bb7d73a Editor: Lazily load Duotone settings only when needed.
Introduced in [56101] the `WP_Duotone` class, hooks into the `wp_loaded` action to load duotone style data from global styles. Hooking in early in the bootstrap process caused a number of problems. This hook, triggered an error on installing, as this lookup for global styles, would result in a global post trying to be created, even before the table existed. Additionally, this implementation caused a severe performance regression, as duotone styling data was loaded unnecessarily for requests that did not require such data, such as REST API calls or actions within the wp-admin interface.

In this change, refactor the `WP_Duotone` to lazily load the global styles and theme.json data, only when a block that supports duotone is encountered. The method `render_duotone_support` was change to take a third parameter to reuse the existing `WP_Block_Type` object passed to the filter, to save it being looked up again. The code has also got improved type checking and the use of the util function  `block_has_support`. Furthermore, the code's readability has been improved, along with enhancements to the documentation blocks.

Props Chouby, spacedmonkey, SergeyBiryukov, swissspidy, costdev, joemcgill, flixos90, mukesh27, nazmul111, ajlende, isabel_brison.
Fixes #58673.
Built from https://develop.svn.wordpress.org/trunk@56226


git-svn-id: http://core.svn.wordpress.org/trunk@55738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 11:34:28 +00:00
isabel_brison 059ce00442 Editor: fix duotone filters in classic themes.
Makes sure duotone block styles are output in the front end on classic themes.

Props ajlende, jeryj, spacedmonkey, vivekawsm, sabernhardt, costdev, mrinal013.
Fixes #58734.

Built from https://develop.svn.wordpress.org/trunk@56225


git-svn-id: http://core.svn.wordpress.org/trunk@55737 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 04:16:26 +00:00
Peter Wilson 1211214fd8 General: Update Opera browser sniff follow UA string changes.
Since switching to the Blink engine, Opera browsers contain both the strings `Chrome` and `OPR\`. This change relocates the Opera test to take place before the Chrome test to ensure the correct browser is detected.

Props brasofilo, desrosj, costdev, mukesh27, swissspidy.
Fixes #46132.

Built from https://develop.svn.wordpress.org/trunk@56224


git-svn-id: http://core.svn.wordpress.org/trunk@55736 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 00:58:25 +00:00
Peter Wilson 94f92497ce General: Introduce `all` development mode.
Introduce the development mode `all` as a a cover-all mode for the existing `theme`, `plugin` and `core` development modes. Developers can use the `all` mode if they are developing both themes and plugins, for example.

Introduce the utility function `wp_in_development_mode()` allowing developers to detect the mode via a parameter. If the development mode is set to `all` this function will always return `true`. If the development mode is specific then only the chosen mode will return `true`.

Follow up to [56079,56042].

Props flixos90.
Fixes #57487.


Built from https://develop.svn.wordpress.org/trunk@56223


git-svn-id: http://core.svn.wordpress.org/trunk@55735 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-13 00:29:26 +00:00
Sergey Biryukov 724d2c9950 Coding Standards: Use single quotes for a string in `Tests_Comment`.
This resolves a WPCS error:
{{{
Error: String "1" does not require double quotes; use single quotes instead.
}}}

Includes updating a few related comments for clarity.

Follow-up to [56221].

See #57855.
Built from https://develop.svn.wordpress.org/trunk@56222


git-svn-id: http://core.svn.wordpress.org/trunk@55734 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 21:01:28 +00:00
Aaron Jorbin 1c2ddd6b52 Tests: Use assertSame() in Tests_Comment
See #57855.

Built from https://develop.svn.wordpress.org/trunk@56221


git-svn-id: http://core.svn.wordpress.org/trunk@55733 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 20:06:25 +00:00
Sergey Biryukov 300e0cd38f Help/About: Add a “Get Involved” tab to the About page.
This aims to make all the various ways of contributing to open-source WordPress project more discoverable, as well as make it easier to find an area that aligns with new contributor’s skills and interests.

Props oglekler, jpantani, SeReedMedia, ryelle, marybaum, karmatosed, eidolonnight, mt_suzette, Shelob9, desrosj, cathibosco1, jenmylo, nacin, helen, joostdevalk, hugobaeta, TacoVerdo, swissspidy, markoheijnen, lukecavanagh, boemedia, bridgetwillard, jeffmora, davidmusnik, mehdi01, johnbillion, fierevere, tobifjellner, richtabor, meher, courane01, webcommsat, audrasjb, mukesh27, davidbaumwald, costdev, joedolson, robinwpdeveloper, estelaris, mohiuddinomran, SergeyBiryukov.
See #23348.
Built from https://develop.svn.wordpress.org/trunk@56220


git-svn-id: http://core.svn.wordpress.org/trunk@55732 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 12:54:24 +00:00
Sergey Biryukov 05f19b1ed7 Coding Standards: Use strict comparison in `wp-includes/class-wp-network.php`.
Follow-up to [41380], [41861], [45910].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56219


git-svn-id: http://core.svn.wordpress.org/trunk@55731 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 09:46:25 +00:00
Peter Wilson fd1dfbc113 General: Escape nonce used for block theme activation.
Add `wp_json_encode()` as an escaping function when setting the `WP_BLOCK_THEME_ACTIVATE_NONCE` global on the block theme preview screen.

This account for custom nonce implementations making use of special characters that require escaping in JavaScript strings.

Props antonvlasenko, ramonopoly.
Fixes #58712.


Built from https://develop.svn.wordpress.org/trunk@56218


git-svn-id: http://core.svn.wordpress.org/trunk@55730 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 05:21:23 +00:00
isabel_brison 4e70f57a0b Editor: fix since annotation in rest blocks controller class.
Changes `6.3` to `6.3.0` in the since annotation for the `filter_response_by_context` function.

Props swissspidy, peterwilsoncc, mukesh27.
Fixes #58677.

Built from https://develop.svn.wordpress.org/trunk@56217


git-svn-id: http://core.svn.wordpress.org/trunk@55729 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-12 04:27:27 +00:00
Sergey Biryukov d097367dbb Post WordPress 6.3 Beta 4 version bump.
Built from https://develop.svn.wordpress.org/trunk@56216


git-svn-id: http://core.svn.wordpress.org/trunk@55728 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 16:38:23 +00:00
Sergey Biryukov 19470b5702 WordPress 6.3 Beta 4.
Built from https://develop.svn.wordpress.org/trunk@56215


git-svn-id: http://core.svn.wordpress.org/trunk@55727 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 16:13:26 +00:00
Joe McGill 725f39d73f Media: Optimize images created in shortcodes.
This fixes an issue where images dynamically created during shortcode rendering (e.g., shortcode image galleries), were not getting image optimizations like `loading="lazy"` or `fetchpriority="hight"` applied. Note that even after this commit, shortcodes are processed after the main content images, which can affect the order in which optimizations are applied in content areas.

Follow-up to [56037].

Props spacedmonkey, flixos90, thekt12, swissspidy, joemcgill.
Fixes #58681.

Built from https://develop.svn.wordpress.org/trunk@56214


git-svn-id: http://core.svn.wordpress.org/trunk@55726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 13:58:21 +00:00
Joe McGill 80b6b290b4 Revert package-lock.json changes committed by mistake in [56212].
Props spacedmonkey, swissspidy.
See #58775.

Built from https://develop.svn.wordpress.org/trunk@56213


git-svn-id: http://core.svn.wordpress.org/trunk@55725 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 13:56:23 +00:00
Joe McGill 019e35a670 Build/Test Tools: Reset main query object after each test.
This resets the main query variable, `$wp_the_query` during the `WP_UnitTestCase_Base::tear_down` method that runs after each PHPUnit test. This ensures any changes to the main query object is reset after each test to avoid cross contamination between tests, similar to how other globals are reset.

Props flixos90, spacedmonkey, joemcgill.
Fixes #58776.

Built from https://develop.svn.wordpress.org/trunk@56212


git-svn-id: http://core.svn.wordpress.org/trunk@55724 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 13:33:22 +00:00
audrasjb 897d9c221e I18n: Improve the use of `dashicons-external` icon for external links.
This changeset modifies how the `dashicons-external` icon is used in external links by editing its styles and adding a space between the text and the icon 
for better accessibility.

Props SergeyBiryukov, afercia, isabel_brison, mukesh27, sabernhardt, oglekler, audrasjb.
Fixes #47303.



Built from https://develop.svn.wordpress.org/trunk@56211


git-svn-id: http://core.svn.wordpress.org/trunk@55723 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 12:59:25 +00:00
Sergey Biryukov 3eec0065e3 Coding Standards: Use strict comparison in `wp-includes/class-wp-rewrite.php`.
Follow-up to [3638], [13689], [19743].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56210


git-svn-id: http://core.svn.wordpress.org/trunk@55722 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 11:35:23 +00:00
Mike Schroder 6fc3060a4e Toolbar: Make the 'Edit site' link open the editor with the current template.
Adds a global, `$_wp_current_template_id`, to allow the 'Edit site' link in the admin bar to be aware of the current template and pass it to the Site Editor, so it can load the appropriate one directly.

See https://github.com/WordPress/gutenberg/issues/37850 for further discussion.

Props Mamaduka, poena, abitofmind, audrasjb, mikinc860, alexstine, annezazu, beckej, jameskoster, bacoords, clubkert, paaljoachim, get_dave, priethor, skorasaurus.
Fixes #58746.
Built from https://develop.svn.wordpress.org/trunk@56209


git-svn-id: http://core.svn.wordpress.org/trunk@55721 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 11:33:27 +00:00
Sergey Biryukov 59a793ac9d Coding Standards: Use strict comparison in `wp-includes/rewrite.php`.
Follow-up to [6614], [13689], [19743].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56208


git-svn-id: http://core.svn.wordpress.org/trunk@55720 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 11:15:27 +00:00
isabel_brison 6af968ab6d Bundled Theme: fix height of featured images in Twenty Twenty Three.
Fixes max height of the featured images in the Archive, Home, Index, and Search templates to prevent expanding iframe bug.

Props mikachan, ramonopoly.
Fixes #58766.

Built from https://develop.svn.wordpress.org/trunk@56207


git-svn-id: http://core.svn.wordpress.org/trunk@55719 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 07:24:21 +00:00
isabel_brison 0153375f40 Editor: remove one preloaded navigation endpoint.
Removes one of the preloaded navigation endpoints from the site editor as it is not in use anymore.

Props scruffian.
Fixes #58749.

Built from https://develop.svn.wordpress.org/trunk@56206


git-svn-id: http://core.svn.wordpress.org/trunk@55718 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 07:17:23 +00:00
isabel_brison 9f33966e4e Editor: update npm packages with bug fixes and blessed tasks.
Includes miscellaneous bug fixes and enhancements to the Library task (#58579).

Props andrewserong, ramonopoly.
Fixes #58745.

Built from https://develop.svn.wordpress.org/trunk@56205


git-svn-id: http://core.svn.wordpress.org/trunk@55717 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 06:59:09 +00:00
audrasjb e30391f2bd Docs: Fix incorrect type for `$crop` param is various `WP_Image_Editor` classes and methods.
This changeset updates the `$crop` docblock type in various `WP_Image_Editor`, `WP_Image_Editor_GD` and `WP_Image_Editor_Imagick` functions, to match the 
type documented in `image_resize_dimensions()`.

Props thunderdw.
Fixes #58271.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56204


git-svn-id: http://core.svn.wordpress.org/trunk@55716 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 06:31:22 +00:00
audrasjb 36669b4f85 I18n: Move translator comments inside `sprintf` for tagline field description.
Props costdev.
Fixes #57675.



Built from https://develop.svn.wordpress.org/trunk@56203


git-svn-id: http://core.svn.wordpress.org/trunk@55715 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 05:55:20 +00:00
isabel_brison b9dadf31a1 Editor: opt out of Navigation fallback.
Allows developers to opt out of the auto-creation of the Navigation fallback through a filter.

Props get_dave, spacedmonkey, ramonopoly.
Fixes #58750.

Built from https://develop.svn.wordpress.org/trunk@56202


git-svn-id: http://core.svn.wordpress.org/trunk@55714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 05:41:23 +00:00
isabel_brison bf41190659 General: fix botched file move in r56199.
Moves `src/wp-admin/includes/theme-previews.php` to `src/wp-includes/theme-previews.php`.

Props peterwilsoncc.
See #58712.

Built from https://develop.svn.wordpress.org/trunk@56201


git-svn-id: http://core.svn.wordpress.org/trunk@55713 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 05:19:23 +00:00
isabel_brison 2997b17eb7 Editor: update string incorrectly marked for translation in Chrome.
Update the Pattern post type `edit_item` label to be `Edit Block Pattern` instead of `Edit Pattern` so Chrome doesn’t open the translation modal.

Props andrewserong,, ramonopoly, eric.7186, audrasjb, wildworks, Toro_Unit.
Fixes #58716.

Built from https://develop.svn.wordpress.org/trunk@56200


git-svn-id: http://core.svn.wordpress.org/trunk@55712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 05:10:23 +00:00
isabel_brison 1ee477dbe4 General: add nonce for block theme preview activation.
Adds a nonce so that activation works for block theme previews. Temporary fix until there is a REST API endpoint for activating themes.

Props scruffian, peterwilsoncc, nithins53, nithi22, jomonthomaslobo1, poena, syamraj24, vivekawsm, mrinal013.
Fixes #58712.

Built from https://develop.svn.wordpress.org/trunk@56199


git-svn-id: http://core.svn.wordpress.org/trunk@55711 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 05:03:23 +00:00
Peter Wilson 304154d8fd Build/Test Tools: Suppress E2E test suite Slack notifications.
Remove Slack notifications of E2E test suite failures while the tests are flakey to improve the signal-to-noise ratio.

Fixes #58779.


Built from https://develop.svn.wordpress.org/trunk@56198


git-svn-id: http://core.svn.wordpress.org/trunk@55710 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 04:10:23 +00:00
Peter Wilson 2f8c204584 Build/Test Tools: Prevent 404 errors in the E2E tests.
Modifies the cache control headers tests to prevent 404 errors for each of the tests.

Props costdev.
Fixes #58777.

Built from https://develop.svn.wordpress.org/trunk@56197


git-svn-id: http://core.svn.wordpress.org/trunk@55709 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-11 03:41:27 +00:00
audrasjb 8c6e54b2f7 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180], [56191], [56192], [56193], [56194], [56195].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56196


git-svn-id: http://core.svn.wordpress.org/trunk@55708 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 23:21:22 +00:00
audrasjb 58ebfc61f1 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180], [56191], [56192], [56193], [56194].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56195


git-svn-id: http://core.svn.wordpress.org/trunk@55707 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 23:19:23 +00:00
audrasjb b89f155a10 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180], [56191], [56192], [56193].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56194


git-svn-id: http://core.svn.wordpress.org/trunk@55706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 23:11:22 +00:00
audrasjb 55b31a92be Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180], [56191], [56192].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56193


git-svn-id: http://core.svn.wordpress.org/trunk@55705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 23:00:22 +00:00
audrasjb 6263f22b10 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180], [56191].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56192


git-svn-id: http://core.svn.wordpress.org/trunk@55704 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 22:48:22 +00:00
audrasjb 321158f726 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179], [56180].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56191


git-svn-id: http://core.svn.wordpress.org/trunk@55703 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 22:38:25 +00:00
audrasjb cc24b1f950 Twenty Twenty-Three: Add a border to Quote block.
This changeset adds a border to the Quote block on front-end, in order to be consistent with the Editor styles.

Props nidhidhandhukiya, poena, akrocks, sabernhardt, nithins53, zoonini.
Fixes #57506.



Built from https://develop.svn.wordpress.org/trunk@56190


git-svn-id: http://core.svn.wordpress.org/trunk@55702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 22:20:22 +00:00
joedolson 3648049e48 Media: Fix responsive views in image editor
Adjust breakpoints for mid-range responsive views to prevent the save panel from overflowing other sections.

Props wildworks, mikinc860, mukesh27, sabernhardt, dhrumilk.
Fixes #58692.
Built from https://develop.svn.wordpress.org/trunk@56189


git-svn-id: http://core.svn.wordpress.org/trunk@55701 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 22:11:24 +00:00
audrasjb 9240a9350d Twenty Seventeen: Use `wp_register_script()` to register HTML5 Shiv script.
This replaces `wp_register_style()` with `wp_register_script()`.

Props sabernhardt.
Fixes #56699.



Built from https://develop.svn.wordpress.org/trunk@56188


git-svn-id: http://core.svn.wordpress.org/trunk@55700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 22:04:24 +00:00
joedolson 402ce56400 Editor: Fix layout of no-js state in site editor.
Remove padding and adjust classes to match current state of editor.

Props afercia, andraganescu, poena.
Fixes #56228.
Built from https://develop.svn.wordpress.org/trunk@56187


git-svn-id: http://core.svn.wordpress.org/trunk@55699 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 21:22:21 +00:00
Andrew Ozz c319239bc3 Filesystem API: Ensure `wp_tempnam()` does not produce file names longer than 255 characters as this is the limit on most filesystems.
Props: costdev, doems, mikeschroder, oglekler, mrinal013.
Fixes: #35755.
Built from https://develop.svn.wordpress.org/trunk@56186


git-svn-id: http://core.svn.wordpress.org/trunk@55698 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 20:33:23 +00:00
spacedmonkey 7174e4e871 Themes: Improved caching in `wp_theme_has_theme_json()`.
Improve logic in `wp_theme_has_theme_json()` to improve caching soo it takes into account that a theme can be switched. Before this function would overly cache if the current theme has a theme.json file. Now it use the value of `get_stylesheet()` as a key to an array. This way, if the value of stylesheet is changed, by either a filter or in a unit test, a new check to see if the file exists is run. For this reason, the workaround to check if unit tests are running by checking if  `WP_RUN_CORE_TESTS` constant exists can be removed.

Props westonruter, spacedmonkey, flixos90.
Fixes #58758.
Built from https://develop.svn.wordpress.org/trunk@56185


git-svn-id: http://core.svn.wordpress.org/trunk@55697 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 19:17:22 +00:00
Sergey Biryukov fe75c1b12f Coding Standards: Use strict comparison in `wp-includes/class-wp-user.php`.
Follow-up to [15919], [21866], [41624].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56184


git-svn-id: http://core.svn.wordpress.org/trunk@55696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 12:53:26 +00:00
audrasjb 34dddd1665 Editor: Ensure blocks registered within parent theme are available when child theme is activated.
This changeset fixes both `register_block_script_handle()` and `register_block_style_handle()` functions, allowing for child themes to access and utilise 
blocks defined in parent themes.

Previously these functions could not handle blocks registered in Parent themes. This changeset fixes the issue by determining whether the given asset path 
belongs to either of the template or stylesheet directories (Parent and Child themes respectively) as opposed to just checking using 
`get_theme_file_path('')`.

Props jacknotman, Levdbas, audrasjb, guillaumeturpin, leprincenoir, whaze, isabel_brison.
Fixes #57566.

 --Cette ligne, et les suivantes ci-dessous, seront ignorées--

M    trunk/src/wp-includes/blocks.php

Built from https://develop.svn.wordpress.org/trunk@56183


git-svn-id: http://core.svn.wordpress.org/trunk@55695 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-10 06:36:29 +00:00
audrasjb 1e83d7d9e9 Editor: Typo correction in Author block template description.
Follow-up to [56145].

Props kebbet.



Built from https://develop.svn.wordpress.org/trunk@56182


git-svn-id: http://core.svn.wordpress.org/trunk@55694 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 22:26:21 +00:00
audrasjb 17f0e47798 General: Fix an error introduced in [56179].
Follow-up to [56179].

Unprops audrasjb.



Built from https://develop.svn.wordpress.org/trunk@56181


git-svn-id: http://core.svn.wordpress.org/trunk@55693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 22:17:22 +00:00
audrasjb 8c76c6d58c Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178], [56179].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56180


git-svn-id: http://core.svn.wordpress.org/trunk@55692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 21:48:22 +00:00
audrasjb 90dadb1457 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177], [56178].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56179


git-svn-id: http://core.svn.wordpress.org/trunk@55691 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 21:40:23 +00:00
audrasjb b696756a61 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176], [56177].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56178


git-svn-id: http://core.svn.wordpress.org/trunk@55690 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 21:25:23 +00:00
audrasjb 2697e5bf6e Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175], [56176].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56177


git-svn-id: http://core.svn.wordpress.org/trunk@55689 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 20:17:29 +00:00
audrasjb 145060e3c0 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174], [56175].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56176


git-svn-id: http://core.svn.wordpress.org/trunk@55688 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 20:07:22 +00:00
audrasjb c4b57cbbe3 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Follow-up to [56174].

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56175


git-svn-id: http://core.svn.wordpress.org/trunk@55687 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 19:56:23 +00:00
audrasjb 7b853d4b69 Docs: Replace multiple single line comments with multi-line comments.
This changeset updates various comments as per WordPress PHP Inline Documentation Standards.
See https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/#5-inline-comments.

Props costdev, audrasjb.
See #58459.



Built from https://develop.svn.wordpress.org/trunk@56174


git-svn-id: http://core.svn.wordpress.org/trunk@55686 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 19:52:24 +00:00
audrasjb 2654ea50e8 Twenty Twenty-Three: Fix Separator Block default styling.
This changeset sets default width to `100px` for the Separator block, and sets the Separator block located in the Call to Action block pattern to `wide`.

Props haritpanchal, audrasjb, sakibmd, poena, Rahmohn, mikachan.
Fixes #57667.



Built from https://develop.svn.wordpress.org/trunk@56173


git-svn-id: http://core.svn.wordpress.org/trunk@55685 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 17:23:27 +00:00
audrasjb 1765de0770 Twenty Twenty-One: Add `b` and `strong` elements to editor styles.
Sets `font-weight: 700` for these elements in the editor, in order to match the front end styles. It overrides the default admin `font-weight` of `600` for 
these HTML elements.

Props nkeller15, audrasjb, sabernhardt, pavanpatil1, iamfarhan09, poena.
Fixes #58383.



Built from https://develop.svn.wordpress.org/trunk@56172


git-svn-id: http://core.svn.wordpress.org/trunk@55684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 15:49:23 +00:00
audrasjb f22f958bb5 Help/About: Add Help text for Rollback feature.
This changeset adds a new Help text for Rollback feature in the WordPress Updates screen. Also adds a link to the "Common Errors" HelpHub documentation page.

Follow-up to [51857].

Props costdev, afragen, audrasjb, kebbet, marybaum.
Fixes #58199.



Built from https://develop.svn.wordpress.org/trunk@56171


git-svn-id: http://core.svn.wordpress.org/trunk@55683 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 14:49:22 +00:00
audrasjb cf58af5167 Twenty Twenty-One: Replace the experimental link color theme support.
This replaces `add_theme_support( 'experimental-link-color' )` with `add_theme_support( 'link-color' )`, to provide the feature to Twenty Twenty-One users, but 
also to avoid throwing a "doing it wrong" message when Gutenberg version 16.2 is active.

Follow-up to [58597].

Props poena.
Fixes #58702.



Built from https://develop.svn.wordpress.org/trunk@56170


git-svn-id: http://core.svn.wordpress.org/trunk@55682 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 14:31:24 +00:00
Sergey Biryukov b868da5619 Coding Standards: Use strict comparison in `wp-includes/class-wp-user-query.php`.
Follow-up to [31669], [47808].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56169


git-svn-id: http://core.svn.wordpress.org/trunk@55681 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-09 09:59:24 +00:00
audrasjb 92ab411bb5 Docs: Docblock correction in `WP_REST_Attachments_Controller::upload_from_data()`.
The `$data` parameter in `WP_REST_Attachments_Controller::upload_from_data()` is passed and treated only as `string`, not `array`.

Props costdev.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56168


git-svn-id: http://core.svn.wordpress.org/trunk@55680 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-08 21:59:23 +00:00
audrasjb 7d8fc9c519 Docs: Update link to MovableType docs (on Internet Archive).
Follow-up to [56165].

Props SergeyBiryukov.
Fixes #58760.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56167


git-svn-id: http://core.svn.wordpress.org/trunk@55679 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-08 13:21:23 +00:00
Sergey Biryukov 3cd78aef84 Coding Standards: Use strict comparison in `wp-includes/class-wp-tax-query.php`.
Follow-up to [16413], [16849].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56166


git-svn-id: http://core.svn.wordpress.org/trunk@55678 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-08 10:48:24 +00:00
audrasjb d116ced568 Docs: Update link to MovableType documentation.
Props mujuonly.
Fixes #58760.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56165


git-svn-id: http://core.svn.wordpress.org/trunk@55677 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-08 07:43:27 +00:00
Felix Arntz bb8ad05161 Media: Avoid programmatically created images within post content from incorrectly receiving `fetchpriority="high"`.
Follow-up to [56037], as that changeset accidentally did not consider the changes made in [55825]: Images that are programmatically injected into post content (e.g. through a block, or shortcode, or any hook calling a function like `wp_get_attachment_image()`) must be treated as part of the whole post content blob since otherwise the heuristics for applying `fetchpriority="high"` and `loading="lazy"` are skewed by parsing certain images before others rather than sequentially parsing the entire post content. [55825] addressed that for lazy-loading, but when [56037] introduced `fetchpriority` support, the related refactor missed making the same consideration for that attribute.

Props flixos90, spacedmonkey, thekt12, mukesh27.
Fixes #58235.
See #58089.

Built from https://develop.svn.wordpress.org/trunk@56164


git-svn-id: http://core.svn.wordpress.org/trunk@55676 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 18:08:24 +00:00
Adam Silverstein ea399e28a9 Revisions: return existing autosave after saving with unchanged data.
Correctly return the existing autosave when an unchanged autosave is saved, instead of returning an error.

Fix regressions after r55154 where an error and not the original autosave was returned when saving with unchanged data (for example, clicking the preview button repeatedly). Returning the autosave (ID) is the expected behavior for the endpoint.

Follow up to [55154]

Props Mamaduka, jeroenrotty, mrfoxtalbot.
Fixes #58739.


Built from https://develop.svn.wordpress.org/trunk@56163


git-svn-id: http://core.svn.wordpress.org/trunk@55675 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 17:53:23 +00:00
Felix Arntz c7a4311ba0 Build/Test: Fix incorrect hook being used to separate Server-Timing metrics in performance tests.
The `wp-before-template` and `wp-template` metric intend to separate WordPress core's own bootstrap process from any logic that is part of the eventual template loaded. The appropriate hook for that is the `template_include` filter as that occurs right before the template file is included.

Props mukesh27, joemcgill.
Fixes #58674.

Built from https://develop.svn.wordpress.org/trunk@56162


git-svn-id: http://core.svn.wordpress.org/trunk@55674 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 17:41:27 +00:00
spacedmonkey 00a1a85ba3 Build/Test: Fix dynamic property deprecation warning in object cache drop-in.
Fix deprecation warning for dynamic property in object cache drop-in used in core unit tests. 

Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2 and are expected to become a fatal error in PHP 9.0.

Props spacedmonkey, johnbillion.
Fixes #58736. 
See #56034.
Built from https://develop.svn.wordpress.org/trunk@56161


git-svn-id: http://core.svn.wordpress.org/trunk@55673 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 11:32:23 +00:00
isabel_brison ab8c2bd924 Editor: rename sync_status and move it to top level.
Renames sync_status to wp_pattern_sync_status and moves it to top level field of wp_block post type.

Props glendaviesnz, aaronrobertshaw, mukesh27, peterwilsoncc.
Fixes 58677.

Built from https://develop.svn.wordpress.org/trunk@56160


git-svn-id: http://core.svn.wordpress.org/trunk@55672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 07:29:23 +00:00
isabel_brison 2405b7fbf7 Editor: update npm packages with bug fixes and blessed tasks.
Includes miscellaneous bug fixes and enhancements to the Library task (#58579) and to the Command Palette task (#58643).

See #58745.

Built from https://develop.svn.wordpress.org/trunk@56159


git-svn-id: http://core.svn.wordpress.org/trunk@55671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 07:21:17 +00:00
Sergey Biryukov d6e978dba3 Coding Standards: Use strict comparison in `wp-includes/class-wp-simplepie-file.php`.
Follow-up to [10687].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56158


git-svn-id: http://core.svn.wordpress.org/trunk@55670 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 06:42:25 +00:00
John Blackbourn 974d2e18ec Docs: Correct the formatting of various filter documentation.
See #57840

Built from https://develop.svn.wordpress.org/trunk@56157


git-svn-id: http://core.svn.wordpress.org/trunk@55669 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-07 00:36:22 +00:00
John Blackbourn bf9257de5f REST API: Correct some filter docblocks.
See #57752

Built from https://develop.svn.wordpress.org/trunk@56156


git-svn-id: http://core.svn.wordpress.org/trunk@55668 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 23:23:22 +00:00
audrasjb 1ae044c7b0 Twenty Twenty: Fix left margin in Latest Posts & Latest Comments blocks.
This fixes a bug where the `margin-left: auto` property was being overwritten to `margin-left: 0` causing an inconsistency in the alignment of these blocks.

Follow-up to [56034], [56039], [56040].

Props sabernhardt. 
Fixes #58396.



Built from https://develop.svn.wordpress.org/trunk@56155


git-svn-id: http://core.svn.wordpress.org/trunk@55667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 22:02:30 +00:00
Felix Arntz 5b91824af0 Media: Ensure that the image widget supports loading optimization attributes.
This changeset adds support for loading optimization attributes such as `loading="lazy"` and `fetchpriority="high"` to the image widget. A new context `widget_media_image` is introduced for that purpose.

Props spacedmonkey, thekt12, mukesh27, westonruter.
Fixes #58704.
See #58235.

Built from https://develop.svn.wordpress.org/trunk@56154


git-svn-id: http://core.svn.wordpress.org/trunk@55666 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 16:33:27 +00:00
audrasjb 6625b149d9 Docs: Use third-person singular verbs in various function descriptions of `load.php`, as per docblocks standards.
See #57840.


Built from https://develop.svn.wordpress.org/trunk@56153


git-svn-id: http://core.svn.wordpress.org/trunk@55665 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 14:16:20 +00:00
audrasjb b5a05e6558 Boostrap/Load: Incorrect condition in `wp_check_php_mysql_versions()`.
This changeset adds a check for the existence of `db.php` at the default path `ABSPATH . 'wp-content/db.php'`, even if `WP_CONTENT_DIR` is defined and `db.php` 
is placed in `WP_CONTENT_DIR`.

Follow-up to [49161].

Props mikeyzm, SergeyBiryukov, hztyfoon, 
Fixes #58201.



Built from https://develop.svn.wordpress.org/trunk@56152


git-svn-id: http://core.svn.wordpress.org/trunk@55664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 13:54:23 +00:00
audrasjb 29791cad8c Coding Standards: Add missing newline at the end of `wp-admin/user.php`.
Follow-up to [56150].

See #58194.



Built from https://develop.svn.wordpress.org/trunk@56151


git-svn-id: http://core.svn.wordpress.org/trunk@55663 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 12:54:22 +00:00
audrasjb e952b31145 Users: Remove password reset links when the feature is not allowed for a specific user.
This also introduces `wp_is_password_reset_allowed_for_user()` which returns `false` when password reset is not allowed for a specific user. This can be 
filtered by developers using the existing `allow_password_reset` hook.

Props ocean90, cshark, robinwpdeveloper, tahmina1du, kraftbj.
Fixes #58194.



Built from https://develop.svn.wordpress.org/trunk@56150


git-svn-id: http://core.svn.wordpress.org/trunk@55662 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 12:47:23 +00:00
audrasjb 1729b7f6fc Twenty Seventeen: Reintroduce HTML5 Shiv.
This reintroduces HTML5 Shiv script that was removed in [55980], to ensure backward compatibility for websites that opted-in to IE support. Also reintroduces 
HTML5 credits.

Follow-up to [55980].

Props sabernhardt.
See #56699.



Built from https://develop.svn.wordpress.org/trunk@56149


git-svn-id: http://core.svn.wordpress.org/trunk@55661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 08:34:21 +00:00
audrasjb e90e66aac5 Twenty Thirteen: Reintroduce HTML5 Shiv.
This reintroduces HTML5 Shiv script that was removed in [55982], to ensure backward compatibility for websites that opted-in to IE support.

Follow-up to [55982].

Props sabernhardt.
See #56699.



Built from https://develop.svn.wordpress.org/trunk@56148


git-svn-id: http://core.svn.wordpress.org/trunk@55660 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 08:29:22 +00:00
audrasjb b1bd1e8225 Twenty Fifteen: Reintroduce HTML5 Shiv.
This reintroduces HTML5 Shiv script that was removed in [55981], to ensure backward compatibility for websites that opted-in to IE support.

Follow-up to [55981]

Props audrasjb, sabernhardt.
See #56699.



Built from https://develop.svn.wordpress.org/trunk@56147


git-svn-id: http://core.svn.wordpress.org/trunk@55659 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 08:18:24 +00:00
isabel_brison 6ec98b81d7 Editor: fix comment indentation.
Fixes multiline comment indentation in `wp-includes/block-supports/settings.php`. Also fixes typo in the comment.

Props mukesh27.
See #58586.

Built from https://develop.svn.wordpress.org/trunk@56146


git-svn-id: http://core.svn.wordpress.org/trunk@55658 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 04:41:23 +00:00
isabel_brison b6bada11c9 Editor: update template titles in browse mode.
Adds more meaningful titles to templates in the browse mode template list.

Props ntsekouras, audrasjb.
Fixes #58713.

Built from https://develop.svn.wordpress.org/trunk@56145


git-svn-id: http://core.svn.wordpress.org/trunk@55657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 03:04:23 +00:00
Sergey Biryukov 8695849124 Docs: Document the return value of `wp_check_php_version()` using hash notation.
Follow-up to [42832].

See #57840.
Built from https://develop.svn.wordpress.org/trunk@56144


git-svn-id: http://core.svn.wordpress.org/trunk@55656 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-06 00:16:23 +00:00
Felix Arntz fb9013c9b4 Media: Ensure that large images before the main query loop are counted towards lazy-loading threshold.
Following [55318], [55847], and [56142], certain images in the header of the page have received support for potentially receiving `fetchpriority="high"` and having the `loading="lazy"` attribute omitted. However, these images being present did not affect the "content media count" which counts the images towards a certain threshold so that the first ones are not lazy-loaded.

This changeset also increases that count for such header images if they are larger than a certain threshold. The threshold is used to avoid e.g. a header with lots of small images such as icon graphics to skew the lazy-loading behavior.

Props thekt12, spacedmonkey, flixos90.
Fixes #58635.

Built from https://develop.svn.wordpress.org/trunk@56143


git-svn-id: http://core.svn.wordpress.org/trunk@55655 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 21:38:24 +00:00
Felix Arntz 9ecfdd8e5a Media: Ensure custom header image tag supports loading optimization attributes.
This changeset is a follow up to [56037] and ensures that the `get_header_image_tag()` function receives the benefits of `wp_get_loading_optimization_attributes()` as well. Prior to `fetchpriority` support, this was not needed since the header image should never be lazy-loaded, but the image certainly is a `fetchpriority` candidate, so therefore it is crucial to have it supported.

Props felipeelia, spacedmonkey, mukesh27, westonruter, flixos90.
Fixes #58680.

Built from https://develop.svn.wordpress.org/trunk@56142


git-svn-id: http://core.svn.wordpress.org/trunk@55654 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 19:30:25 +00:00
John Blackbourn 0c324b983f General: Increase the minimum supported version of PHP to 7.0.0.
This also removes the random compat library which is no longer necessary, and adjusts unit tests and CI workflows that no longer need to take PHP 5.6 into account.

Thank you for your service, PHP 5. Onwards!

Props SergeyBiryukov, mukesh27, dingo_d, audrasjb, jrf, costdev, azaozz, JavierCasares, hellofromTonya, samiamnot, spacedmonkey, masteradhoc, knutsp, garyjones, chanthaboune

Fixes #57345

Built from https://develop.svn.wordpress.org/trunk@56141


git-svn-id: http://core.svn.wordpress.org/trunk@55653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 17:41:22 +00:00
davidbaumwald fec46200bb Default Filters: Correct hook type for `wp_print_scripts` and `customize_controls_print_styles`.
Props Cybr, bhi3315.
Fixes #58665.
Built from https://develop.svn.wordpress.org/trunk@56140


git-svn-id: http://core.svn.wordpress.org/trunk@55652 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 16:21:27 +00:00
audrasjb 025e70df46 Editor: Fix font paths in iframed editor.
By making font asset files URLs absolute instead of relative, this ensures each font asset file does properly relate to the actual location of the files.

See https://github.com/WordPress/gutenberg/pull/50875.

Props ironprogrammer, antonvlasenko, ndiego, shuvo247, robinwpdeveloper.
Fixes #58672.



Built from https://develop.svn.wordpress.org/trunk@56139


git-svn-id: http://core.svn.wordpress.org/trunk@55651 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 12:34:21 +00:00
Sergey Biryukov 84e1f03b1f General: Revert strict comparison in `WP_List_Util` for now.
Casting the values to a string causes `Array to string conversion` PHP warnings, so using loose comparison restores the previous behavior for code relying on type juggling when using the `wp_list_filter()` function, e.g. comparing a numeric string to an integer.

The unit test case added for this scenario in the previous commit remains. 

Follow-up to [55908], [56137].

See #57839.
Built from https://develop.svn.wordpress.org/trunk@56138


git-svn-id: http://core.svn.wordpress.org/trunk@55650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 11:15:22 +00:00
Sergey Biryukov 7497b1099f General: Compare values as strings in `WP_List_Util::filter()` and `::sort_callback()`.
This aims to preserve backward compatibility for code relying on type juggling when using the `wp_list_filter()` function, e.g. comparing a numeric string to an integer.

Follow-up to [55908].

Props azaozz, jeremyfelt, david.binda.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@56137


git-svn-id: http://core.svn.wordpress.org/trunk@55649 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 10:46:26 +00:00
audrasjb 900a79dc53 Editor: Normalize paths in `register_core_block_style_handles()`.
Previously, this function did not normalize paths before using `glob()` or registering styles. This led to a mixture of forward-slashes and back-slashes in 
Windows environments.

This change uses `wp_normalize_path()` to ensure Windows compatibility.

Props wildworks, costdev, kafleg, mukesh27.
Fixes #58711.



Built from https://develop.svn.wordpress.org/trunk@56136


git-svn-id: http://core.svn.wordpress.org/trunk@55648 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 07:16:21 +00:00
audrasjb a295a53218 Administration: CSS selector correction for list table checkboxes.
This replaces `.check-column .label-covers-full-cell input` selector with `.check-column .label-covers-full-cell + input`.

Follow-up to [55954].

Props sabernhardt.
Fixes #21516.



Built from https://develop.svn.wordpress.org/trunk@56135


git-svn-id: http://core.svn.wordpress.org/trunk@55647 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-05 07:08:25 +00:00
John Blackbourn e0750558b9 Administration: Adjust the "No private directive present in cache control when user not logged in" test so the assertions won't fail if the headers don't contain a `cache-control` key at all.
Props joemcgill

Fixes #21938

Built from https://develop.svn.wordpress.org/trunk@56134


git-svn-id: http://core.svn.wordpress.org/trunk@55646 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-04 23:32:24 +00:00
Andrew Ozz 817c701f29 HTML API: Fix a fatal error when processing malformed document with unclosed attribute.
Props: dlh, costdev, dmsnell.
Fixes: #58637.
Built from https://develop.svn.wordpress.org/trunk@56133


git-svn-id: http://core.svn.wordpress.org/trunk@55645 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-04 20:45:23 +00:00
Sergey Biryukov 67863b9fb7 Options, Meta APIs: Check if the `gmt_offset` value is numeric in `sanitize_option()`.
When saving the settings via the admin UI, the default value for any options not passed in the current `$_POST` request is set to `null` in `wp-admin/options.php`. Some options, e.g. `blog_public`, then rely on `null` being passed to `update_option()` to determine whether the value was changed or not.

This commit resolves a PHP 8.1 deprecation notice when saving the `gmt_offset` option without any changes:
{{{
Deprecated: preg_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated
}}}

Includes a similar fix for the `blog_charset` option.

Follow-up to [4112], [4329], [5541], [21849].

Props adi3890, dhrupo, hrdelwar, hasanmisbah, oglekler, mukesh27, SergeyBiryukov.
Fixes #57728.
Built from https://develop.svn.wordpress.org/trunk@56132


git-svn-id: http://core.svn.wordpress.org/trunk@55644 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-04 13:42:24 +00:00
audrasjb 33133ad818 Twenty Twenty-Three: Allow changing Site Title font size in Marigold and Whisper styles.
This changeset moves font styling from link element to site title (or post title) block in Marigold and Whisper style variations, which allows to change Site 
Title block font size.

Props ryelle, shuvoaftab, sabernhardt, alvitazwar052, shailu25, poena, audrasjb.
Fixes #57971.



Built from https://develop.svn.wordpress.org/trunk@56131


git-svn-id: http://core.svn.wordpress.org/trunk@55643 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-04 13:40:29 +00:00
davidbaumwald bbfe308f33 Post WordPress 6.3 Beta 3 version bump.
Built from https://develop.svn.wordpress.org/trunk@56130


git-svn-id: http://core.svn.wordpress.org/trunk@55642 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 17:07:25 +00:00
davidbaumwald 850552b490 WordPress 6.3 Beta 3.
Built from https://develop.svn.wordpress.org/trunk@56129


git-svn-id: http://core.svn.wordpress.org/trunk@55641 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 16:41:27 +00:00
Sergey Biryukov c7381d46b5 HTTP API: Declare a few default parameters in `WP_Http_Curl` and `WP_Http_Streams`.
This resolves `Undefined array key` PHP warnings when trying to access any of these values in `WP_Http_Curl::request()` or `WP_Http_Streams::request()`:

* `$parsed_args['decompress']`
* `$parsed_args['stream']`
* `$parsed_args['filename']`

Follow-up to [10410], [11236], [13274], [17555], [37428], [42766], [44346].

Props sjoerdlinders, hellofromTonya, jrf, oglekler, Clorith, SergeyBiryukov.
Fixes #52622.
Built from https://develop.svn.wordpress.org/trunk@56128


git-svn-id: http://core.svn.wordpress.org/trunk@55640 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 14:03:29 +00:00
isabel_brison 919ea56557 Editor: update npm packages with bug fixes and blessed tasks.
Includes miscellaneous bug fixes and enhancements to the Library task (#58579) and to the site vs content editing task (#58641)

Fixes #58701.

Built from https://develop.svn.wordpress.org/trunk@56127


git-svn-id: http://core.svn.wordpress.org/trunk@55639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 09:14:26 +00:00
isabel_brison 4a7e3080c3 Editor: adds deprecation for deleted `block_core_navigation_submenu_build_css_colors` function.
Adds the `block_core_navigation_submenu_build_css_colors` function to `wp-includes/deprecated.php`. Follow-up to #58623.

Props ramonopoly, peterwilsoncc.
See #58623.

Built from https://develop.svn.wordpress.org/trunk@56126


git-svn-id: http://core.svn.wordpress.org/trunk@55638 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 06:57:23 +00:00
isabel_brison c17c4ec2cb Editor: Enqueue commands package styles.
Enqueues the stylesheet from the commands package which holds the CSS for the Command Palette feature.

Props wildworks.
Fixes #58667.

Built from https://develop.svn.wordpress.org/trunk@56125


git-svn-id: http://core.svn.wordpress.org/trunk@55637 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-03 06:50:25 +00:00
Sergey Biryukov 3ff68df981 Upgrade/Install: Initialize the local `$checkout` variable in `WP_Automatic_Updater::is_vcs_checkout()`.
This avoids an `Undefined variable $checkout` PHP warning if all of the directories checked for access are disallowed due to the PHP `open_basedir` restrictions.

Follow-up to [55425].

Props jqz, costdev, audrasjb.
Fixes #58563.
Built from https://develop.svn.wordpress.org/trunk@56124


git-svn-id: http://core.svn.wordpress.org/trunk@55636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-02 10:35:23 +00:00
audrasjb 9e1170351e Quick/Bulk Edit: Ensure scheduled posts are published when using Bulk Edit.
This changeset ensures scheduled posts are actually published when changing their status to "Published" using bulk edit. Also adds related unit tests.

Props siobhan, Clorith, webcommsat, cadic, oglekler, audrasjb, pavanpatil1.
Fixes #31635.



Built from https://develop.svn.wordpress.org/trunk@56123


git-svn-id: http://core.svn.wordpress.org/trunk@55635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-02 08:04:21 +00:00
audrasjb 5933075eae Docs: Fix `image_get_intermediate_size()` docblock.
The description of returned values in array was incorrect for `image_get_intermediate_size()`:
- `$file` returns the filename of image, no path information
- `$path` returns path relative to the uploads directory, not absolute

Props crstauf, sccr410.
Fixes #58686.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56122


git-svn-id: http://core.svn.wordpress.org/trunk@55634 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-01 23:10:22 +00:00
audrasjb 4e24d5d690 Twenty Seventeen: Various docblock fixes.
Props sabernhardt, audrasjb.
Fixes #58695.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56121


git-svn-id: http://core.svn.wordpress.org/trunk@55633 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-01 17:04:24 +00:00
Sergey Biryukov afa826e356 Docs: Correct `@return` description for `wp_count_posts()`.
Add a note that `wp_count_posts()` returns an empty object if the post type passed to the function does not exist.

Follow-up to [6730], [6808], [8081], [24826], [29093], [51885].

Props crstauf, Ov3rfly.
Fixes #58685.
Built from https://develop.svn.wordpress.org/trunk@56120


git-svn-id: http://core.svn.wordpress.org/trunk@55632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-07-01 10:04:26 +00:00
Weston Ruter d87c35b008 Emoji: Give name to web worker in emoji loader and terminate when finished.
See #58472.
Follow-up to [56074], [56095].
Props westonruter, joemcgill.
Fixes #58691.

Built from https://develop.svn.wordpress.org/trunk@56119


git-svn-id: http://core.svn.wordpress.org/trunk@55631 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-30 20:51:28 +00:00
audrasjb 4a75dae77a Twenty Twenty-One: Improve various globals documentation, as per docblock standards.
This changeset adds globals documentation, and also a couple Docblock standards improvements.

Props upadalavipul, audrasjb.
Fixes #58684.
See #57840.



Built from https://develop.svn.wordpress.org/trunk@56118


git-svn-id: http://core.svn.wordpress.org/trunk@55630 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-30 12:54:27 +00:00
Sergey Biryukov 7992c49b5f Site Health: Correct the label for `wp-content` directory check.
This removes HTML tags from the label, which were not displayed as expected due to escaping. Including the directory name in the label is also redundant, as it is already mentioned in the check result description directly below.

Includes:
* Adjusting a few other labels for consistency.
* Moving `wp-content` out of the translatable string in a similar message in `WP_Upgrader::generic_strings()`.

Follow-up to [55720].

Props dlh, mukesh27, audrasjb, SergeyBiryukov.
See #58678.
Built from https://develop.svn.wordpress.org/trunk@56117


git-svn-id: http://core.svn.wordpress.org/trunk@55629 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-30 11:13:27 +00:00
audrasjb c625b46d60 Twenty Fourteen: Fix text color issue on Button block hover.
This fixes a text color issue when hovering Button blocks located on sidebars or widgets.

Props shailu25, sabernhardt, mukesh27.
Fixes #58509.



Built from https://develop.svn.wordpress.org/trunk@56116


git-svn-id: http://core.svn.wordpress.org/trunk@55628 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-30 08:56:27 +00:00
John Blackbourn 6a33072f68 General: Ignore invalid types for the '_wp_http_referer' URL query variable.
It's expected that this query variable contains a string when it's set, but it's possible for its type to be something else such as an array. Ignoring non-string values prevents cascading errors when its value is passed through functions that expect a string.

Props xknown, costdev, jrf, azaozz

Fixes #57670

Built from https://develop.svn.wordpress.org/trunk@56115


git-svn-id: http://core.svn.wordpress.org/trunk@55627 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 23:27:23 +00:00
John Blackbourn 168857d0f9 Build/Test Tools: Improve the name of the e2e test jobs on GitHub Actions.
Fixes #58661

Built from https://develop.svn.wordpress.org/trunk@56114


git-svn-id: http://core.svn.wordpress.org/trunk@55626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 23:11:21 +00:00
John Blackbourn ade622ffa4 Build/Test Tools: Run E2E tests with and without `SCRIPT_DEBUG` enabled.
This adds a matrix to the e2e test runs on GitHub Actions so the tests run both with and without `SCRIPT_DEBUG` enabled. This allows us to catch scenarios where the minified and non-minified files may differ.

Props Clorith, joemcgill

Fixes #58661

Built from https://develop.svn.wordpress.org/trunk@56113


git-svn-id: http://core.svn.wordpress.org/trunk@55625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 23:03:22 +00:00
Felix Arntz a1fcd5eaa4 Media: Fix inconsistent docs for existing `wp_img_tag_add_loading_attr` filter and remove duplicate.
Follow-up to [56037].

Props thekt12.
See #58235.

Built from https://develop.svn.wordpress.org/trunk@56112


git-svn-id: http://core.svn.wordpress.org/trunk@55624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 17:34:23 +00:00
Sergey Biryukov 86d28672fe Filesystem API: Define password as `null` if not set when using SSH2 with public/private keys.
This resolves an `Undefined array key "password"` PHP warning in `WP_Filesystem_SSH2::connect()` when using public/private key authentication, in which case providing a password is optional.

Follow-up to [8865].

Props J-Dill, costdev, ehsanakhgari, dd32.
Fixes #33196.
Built from https://develop.svn.wordpress.org/trunk@56111


git-svn-id: http://core.svn.wordpress.org/trunk@55623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 17:05:30 +00:00
Felix Arntz 03f194d679 General: Add missing parentheses to functions referenced in `_deprecated_function()` calls added in 6.3.
See #58235, #58301, #58555.

Built from https://develop.svn.wordpress.org/trunk@56110


git-svn-id: http://core.svn.wordpress.org/trunk@55622 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 15:33:25 +00:00
audrasjb ed23ac2a04 Editor: Allow Query Block to show posts from multiple selected authors.
This changeset adds handler for multiple cases where author data can be passed to the Query Block:
- array: array of author ids
- string: comma separated author ids
- integer: single author id

Props adi3890, costdev, mayur8991, oglekler.
Fixes #58426.



Built from https://develop.svn.wordpress.org/trunk@56109


git-svn-id: http://core.svn.wordpress.org/trunk@55621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 13:30:33 +00:00
audrasjb bf2569ae1d Twenty Twenty-Two: Adjust selector to apply bottom margin to top-level comments.
This adds spacing between top-level comments, which improves the layout of the comment section.

Props pitamdey, sabernhardt, mukesh27.
Fixes #58653.



Built from https://develop.svn.wordpress.org/trunk@56108


git-svn-id: http://core.svn.wordpress.org/trunk@55620 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 07:55:22 +00:00
audrasjb c9421f4401 Upgrade/Install: Only show errors if there is nothing to update.
Previously, when the `do-plugin-upgrade` or `do-theme-upgrade` actions were accessed directly on `update-core.php`, an error message stating "Select one or 
more (plugins|themes) to update" would be shown even if there was nothing to update.

This ensures that the error message only appears when there is something to update.

Props Presskopp, sabernhardt, pbiron, afragen, zunaid321, shuvoaftab, ugyensupport, costdev.
Fixes #57999.



Built from https://develop.svn.wordpress.org/trunk@56107


git-svn-id: http://core.svn.wordpress.org/trunk@55619 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 07:21:22 +00:00
audrasjb b89f4fe4aa Twenty Twenty: Fix Button block text color when located in footer widgets.
This changeset ensures the Button block text color is consistent when this block is used in a footer widget.

Props mayur8991, itpathsolutions, nithins53, sabernhardt, arafatjamil01, thakordarshil, pooja1210, mukesh27, shailu25, shwetabathani2312.
Fixes #57087.



Built from https://develop.svn.wordpress.org/trunk@56106


git-svn-id: http://core.svn.wordpress.org/trunk@55618 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:59:23 +00:00
isabel_brison 3d5263c642 REST API: updates test annotations for global styles revisions
Adds `@covers` annotations to tests and fixes incorrect spacing.

Props ramonopoly, mukesh27.
See #58524.

Built from https://develop.svn.wordpress.org/trunk@56105


git-svn-id: http://core.svn.wordpress.org/trunk@55617 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:50:20 +00:00
audrasjb f7a1d86d17 Themes: Fix layout issue on the Themes page background overlay.
This changeset replaces the `780px` media query `max-width` value with `782px` for better consistency and to fix a responsive layout issue.

Props zodiac1978, ironprogrammer, orestissam, audrasjb, monzuralam.
Fixes #58164.



Built from https://develop.svn.wordpress.org/trunk@56104


git-svn-id: http://core.svn.wordpress.org/trunk@55616 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:48:24 +00:00
isabel_brison 9fa202a4f9 Editor: delete test file from update duotone support.
Deleting the test file that should have been removed in [56101].

See #58555.

Built from https://develop.svn.wordpress.org/trunk@56103


git-svn-id: http://core.svn.wordpress.org/trunk@55615 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:36:24 +00:00
audrasjb 09bc0eb840 Twenty Sixteen: Replace deprecated `unbind` method with `off`.
This fixes a `Deprecated jQuery.fn.unbind()` notice.

Props Malae, dilipbheda, sabernhardt, audrasjb.
Fixes #58225.



Built from https://develop.svn.wordpress.org/trunk@56102


git-svn-id: http://core.svn.wordpress.org/trunk@55614 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:30:26 +00:00
isabel_brison 3de83926d6 Editor: update duotone support.
Updates duotone support after stabilisation of selectors API and adds a few small code quality and UI improvements.

Props onemaggie, peterwilsoncc, ajlende, audrasjb, mikeschroder, ramonopoly.
Fixes #58555.

Built from https://develop.svn.wordpress.org/trunk@56101


git-svn-id: http://core.svn.wordpress.org/trunk@55613 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-29 06:21:28 +00:00
davidbaumwald 97f1622d07 Post WordPress 6.3 Beta 2 version bump.
Built from https://develop.svn.wordpress.org/trunk@56100


git-svn-id: http://core.svn.wordpress.org/trunk@55612 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 23:28:24 +00:00
davidbaumwald fffd7a5b20 WordPress 6.3 Beta 2.
Built from https://develop.svn.wordpress.org/trunk@56099


git-svn-id: http://core.svn.wordpress.org/trunk@55611 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 23:01:28 +00:00
Bernhard Reiter c922d4cf06 Editor: Update npm packages to fix gutenberg_ prefix
Update `@wordpress/*` packages to the latest patch versions in
order to replace calls to `gutenberg_apply_colors_support` with
`wp_apply_colors_support` in order to avoid a fatal error.

Props joemcgill, spacedmonkey, flixos90, ironprogrammer, sabernhardt.
Fixes #58651.
Built from https://develop.svn.wordpress.org/trunk@56098


git-svn-id: http://core.svn.wordpress.org/trunk@55610 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 22:38:52 +00:00
Joe McGill ca421dd3c0 Build/Test Tools: Update terser-webpack-plugin.
This bumps the `terser-webpack-plugin` dependency to version `5.3.9`, which fixes an error during the minification process of the `@wordpress/block-library` package during builds.

Props clorith, azaozz, desrosj.
Fixes #58660, See #57657.

Built from https://develop.svn.wordpress.org/trunk@56097


git-svn-id: http://core.svn.wordpress.org/trunk@55609 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 20:08:46 +00:00
K. Adam White f028b4e781 REST API: Expose current $request object to cors_header filters in WP_REST_SERVER->serve_request().
Allows headers to be more easily set on a per-response basis when more or less security is needed on a specific route.

Props bor0, rachelbaker, spacedmonkey, chaion07, oglekler, SergeyBiryukov.
Fixes #57752.


Built from https://develop.svn.wordpress.org/trunk@56096


git-svn-id: http://core.svn.wordpress.org/trunk@55608 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 17:39:29 +00:00
Weston Ruter 10c6e2e0e8 Emoji: Pass functions as arguments in loader to account for minification and worker script.
Amends [56074].
Fixes #58472.
Props joemcgill, westonruter, azaozz.

Built from https://develop.svn.wordpress.org/trunk@56095


git-svn-id: http://core.svn.wordpress.org/trunk@55607 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 17:26:26 +00:00
spacedmonkey e9004a5b48 Themes: Use improved support for child themes in `wp_theme_has_theme_json()`.
Improve logic in `wp_theme_has_theme_json()`, to only check to see if theme.json exists in child theme, if the current theme is a child theme. Without this change, `file_exists` would be called twice on every request, which is wasteful. 

Follow up to [56085]. 

Props spacedmonkey, SergeyBiryukov.
Fixes #57629.
Built from https://develop.svn.wordpress.org/trunk@56094


git-svn-id: http://core.svn.wordpress.org/trunk@55606 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 17:14:27 +00:00
K. Adam White d72667d737 REST API: Cache schema in block pattern and menu item endpoints.
Performance improvement to add schema caching to pattern and menu item REST endpoints, so identical schema object are not needlessly regenerated.

Props spacedmonkey.
Fixes #58657. See [45811].


Built from https://develop.svn.wordpress.org/trunk@56093


git-svn-id: http://core.svn.wordpress.org/trunk@55605 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 15:53:26 +00:00
Andrew Ozz 88a4cf17a6 Script Loader: Fix unintended adding of `async` to scripts that are printed directly with `wp_print_scripts()` without enqueueing them beforehand.
Props: joemcgill, westonruter, felixarntz, peterwilsoncc.
See: #58648.
Built from https://develop.svn.wordpress.org/trunk@56092


git-svn-id: http://core.svn.wordpress.org/trunk@55604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 14:16:27 +00:00
Sergey Biryukov d33f37603e Quick/Bulk Edit: Add an action hook to `bulk_edit_posts()` function.
This changeset introduces the `bulk_edit_posts` action hook, triggered after processing the post data for bulk edit and before the function returns its results. For example, it allows developers to save additional data without having to perform any `.ajax()` calls.

Follow-up to [8973].

Props helgatheviking, helen, Mte90, afercia, mrasharirfan, desrosj, itowhid06, pento, mensmaximus, audrasjb, costdev, webcommsat, marybaum, oglekler, mukesh27, SergeyBiryukov.
Fixes #28112.
Built from https://develop.svn.wordpress.org/trunk@56091


git-svn-id: http://core.svn.wordpress.org/trunk@55603 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 13:19:31 +00:00
Clorith b789345798 Build/Test Tools: Switch frame container when testing block editor output.
The initial commit added the frame lookup within the wrong test, this follow-up restores the previous test runner, and adds the container lookup to the correct test.

Follow-up to [56089].

See #58592.
Built from https://develop.svn.wordpress.org/trunk@56090


git-svn-id: http://core.svn.wordpress.org/trunk@55602 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 10:59:25 +00:00
Clorith a65333f3bb Build/Test Tools: Switch frame container when testing block editor output.
When the block editor is rendered, the editor content is wrapped inside an iframe tag; The tool used to run End to End (E2E) tests, Puppeteer, puts all such frames into separate containers, but the initial test was checking if the parent page had a given selector, which was leading to timeout failures. By actively switching the container to the iframe wrapper,and setting it as the active context, it helps ensure the expected selectors can be found, and its content can be verrified.

See #58592.
Props joemcgill, SergeyBiryukov, talldanwp, oglekler, Clorith.
Built from https://develop.svn.wordpress.org/trunk@56089


git-svn-id: http://core.svn.wordpress.org/trunk@55601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 10:47:26 +00:00
Andrew Ozz 0a265883b9 Revert use of `str_starts_with()` and `str_contains()` in `update-core.php`.
Fixes updating WordPress from 5.7 and earlier versions. When updating this file runs first in the old version where the polifills may not be available.

Props: ironprogrammer, SergeyBiryukov, dd32, azaozz.
See: #58206.
Built from https://develop.svn.wordpress.org/trunk@56088


git-svn-id: http://core.svn.wordpress.org/trunk@55600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 10:09:29 +00:00
audrasjb f6ab80b48c Twenty Sixteen: Twenty Ten: Reflect Quote block text color on the entire block.
This changeset fixes an issue where the selected text color for the Quote block was not reflected on all the elements of the block.

Props nidhidhandhukiya, sabernhardt, audrasjb, shailu25, anilvaza.
Fixes #57204.



Built from https://develop.svn.wordpress.org/trunk@56087


git-svn-id: http://core.svn.wordpress.org/trunk@55599 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 08:00:26 +00:00
isabel_brison 9dcce378a0 Editor: update npm packages to latest patch versions.
Updates the `@wordpress` npm packages to their latest patch versions, including generated PHP files.

Props ramonopoly.
Fixes #58654.

Built from https://develop.svn.wordpress.org/trunk@56086


git-svn-id: http://core.svn.wordpress.org/trunk@55598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 07:04:13 +00:00
Peter Wilson b72be00111 Script Loader: Prevent fatal error in `load-styles.php`.
Duplicates the code of `get_theme_file_path()` within `wp_theme_has_theme_json()`. This is to account for the `load-styles.php` context in which the former function is unavailable.

Follow up to [56073].

Props SergeyBiryukov, oglekler, spacedmonkey, joemcgill, dd32.
Fixes #57629.


Built from https://develop.svn.wordpress.org/trunk@56085


git-svn-id: http://core.svn.wordpress.org/trunk@55597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 05:57:28 +00:00
isabel_brison 4182e51552 Editor: update function name in test comment.
Renames `gutenberg_apply_typography_support` to `wp_apply_typography_support` in typography test comment.

Props kebbet, oglekler, ramonopoly.
See #58522.

Built from https://develop.svn.wordpress.org/trunk@56084


git-svn-id: http://core.svn.wordpress.org/trunk@55596 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 03:58:26 +00:00
isabel_brison c4cb9b82ad Editor: add Post Template fallback styles.
Adds fallback styles necessary for classic themes to display the correct Post Template layout.

Props mikeschroder, ramonopoly.
Fixes #58570.

Built from https://develop.svn.wordpress.org/trunk@56083


git-svn-id: http://core.svn.wordpress.org/trunk@55595 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 03:49:27 +00:00
isabel_brison 1c1f68fbab REST API: add revisions endpoint for global styles.
Adds an endpoint that returns revisions to the global styles custom post.

Props ramonopoly, peterwilsoncc, spacedmonkey, mukesh27, timothyblynjacobs.
Fixes #58524.

Built from https://develop.svn.wordpress.org/trunk@56082


git-svn-id: http://core.svn.wordpress.org/trunk@55594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-28 03:35:25 +00:00
audrasjb 2257cecdbf Twenty Ten: Prevent Block Inserter icon color override.
This changeset prevents the likes of `body * { color: #000; }` in custom styles to override the Block Inserter icon styles.

Props umesh84, kajalgohel, sabernhardt, pooja1210, amin7.
Fixes #57414.



Built from https://develop.svn.wordpress.org/trunk@56081


git-svn-id: http://core.svn.wordpress.org/trunk@55593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 23:33:26 +00:00
audrasjb 9395b8dc16 Twenty Ten: Reflect Heading block text color on front-end.
This changeset fixes an issue where the selected text color of the Heading block was not reflected on front-end.

Props umesh84, sabernhardt, audrasjb, pooja1210, darshitrajyaguru97.
Fixes #56603.



Built from https://develop.svn.wordpress.org/trunk@56080


git-svn-id: http://core.svn.wordpress.org/trunk@55592 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 22:42:26 +00:00
Felix Arntz 905cff1733 Site Health: Include new `WP_DEVELOPMENT_MODE` in the list of constants.
Follow-up to [56042].

Props kebbet.
Fixes #58646.
See #57487.

Built from https://develop.svn.wordpress.org/trunk@56079


git-svn-id: http://core.svn.wordpress.org/trunk@55591 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 22:03:29 +00:00
davidbaumwald 26a104cee8 Reverting trunk back to alpha status while issues prevented a final 6.3 Beta 1 release.
Built from https://develop.svn.wordpress.org/trunk@56078


git-svn-id: http://core.svn.wordpress.org/trunk@55590 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 20:34:25 +00:00
davidbaumwald b7427b977c WordPress 6.3 Beta 1.
Built from https://develop.svn.wordpress.org/trunk@56077


git-svn-id: http://core.svn.wordpress.org/trunk@55589 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 19:58:27 +00:00
Bernhard Reiter a6a1ebcc11 Editor: Update npm WordPress npm packages.
This fixes a fatal error in the Navigation block, which was due to a reference
to `WP_Navigation_Fallback_Gutenberg` that isn’t present in Core under that name.

Follow-up to [56065].
Props ramonjd, isabel_brison, dmsnell.
Fixes #58623.
Built from https://develop.svn.wordpress.org/trunk@56076


git-svn-id: http://core.svn.wordpress.org/trunk@55588 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 18:27:50 +00:00
K. Adam White 0d9723a44e REST API: Check post meta update authorization only when value is changed.
Resolves a bug where a post save will be reported as failed if the post includes any meta keys the current user does not have authorization to update, even when those meta values are unchanged.
Write authorization is now checked for a meta key only when the value of that key has changed, so that passing a REST response back unchanged will not cause failures.
Authorization is only needed when data will be updated.

Props ckoerner, TimothyBlynJacobs, spacedmonkey


Built from https://develop.svn.wordpress.org/trunk@56075


git-svn-id: http://core.svn.wordpress.org/trunk@55587 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 17:26:27 +00:00
Weston Ruter 80abb55903 Emoji: Optimize emoji loader with `sessionStorage`, `willReadFrequently`, and `OffscreenCanvas`.
* Use `sessionStorage` to remember the previous results of calls to `browserSupportsEmoji()` for 1 week.
* Optimize reading from canvas by supplying the `willReadFrequently` option for the 2D context.
* When `OffscreenCanvas` is available, offload `browserSupportsEmoji()` to a web worker to prevent blocking the main thread. This is of primary benefit to Safari which does not yet support `willReadFrequently`.
* Remove obsolete support for IE11 since promises are now utilized. Nevertheless, ES3 syntax is maintained and IE11 will simply short-circuit.

Props westonruter, dmsnell, peterwilsoncc, valterlorran, flixos90, spacedmonkey, joemcgill.
Fixes #58472.

Built from https://develop.svn.wordpress.org/trunk@56074


git-svn-id: http://core.svn.wordpress.org/trunk@55586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 17:24:25 +00:00
spacedmonkey 1afbc5b8a7 Themes: Use `get_theme_file_path()` in `wp_theme_has_theme_json()`.
Ensure that all places where `theme.json` is included, use `get_theme_file_path` or `WP_Theme->get_file_path`, so that the path is run through `theme_file_path` filter. This change also means that the method `get_file_path_from_theme` can be deprecated, as it is no longer used in core. 

Props flixos90, spacedmonkey, costdev, johnbillion, oglekler, hellofromtonya, mukesh27, audrasjb, oandregal.
Fixes #57629.
Built from https://develop.svn.wordpress.org/trunk@56073


git-svn-id: http://core.svn.wordpress.org/trunk@55585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 17:12:26 +00:00
Sergey Biryukov 26a0bf0049 Media: Only show “Copy” and “Download” actions when an attachment URL is available.
Includes unit tests to verify the logic for displaying row actions in the Media Library in certain scenarios, e.g. with and without the “Trash” or “Unattached” filter.

Follow-up to [55949].

Props costdev, kebbet, mukesh27, oglekler.
Fixes #57893.
Built from https://develop.svn.wordpress.org/trunk@56072


git-svn-id: http://core.svn.wordpress.org/trunk@55584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 16:29:28 +00:00
audrasjb 955720d678 Users: Introduce the `wp_update_user` action.
This changeset introduces the `wp_update_user` action hook, which fires after the user has been updated and emails have been sent.

Props tanner-m, desrosj, lphoumpakka, oglekler, audrasjb, azzaoz.
Fixes #57843.



Built from https://develop.svn.wordpress.org/trunk@56071


git-svn-id: http://core.svn.wordpress.org/trunk@55583 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 16:27:29 +00:00
audrasjb 6f5741c348 Coding Standards: Fix a PHPCS issue found in `wpPluginsListTable.php`.
This fixes a previously existing issue, discovered after [56068].



Built from https://develop.svn.wordpress.org/trunk@56070


git-svn-id: http://core.svn.wordpress.org/trunk@55582 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 16:11:26 +00:00
Mike Schroder 58fd744433 Filesystem API: Allow optional inclusion of hidden files in `list_files()`.
Adds a new optional `$include_hidden` parameter to allow the inclusion of hidden (`.` prefixed) files.
Defaults to false for backward compatibility.

Props yani.iliev, sabernhardt, costdev, rutviksavsani, zunaid321, azaozz.
Fixes #53659.
Built from https://develop.svn.wordpress.org/trunk@56069


git-svn-id: http://core.svn.wordpress.org/trunk@55581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 16:08:27 +00:00
audrasjb c11e87fbb8 Plugins: Introduce the `plugins_list` filter.
This changeset adds the `plugins_list` hook, which can be use to filter the list of plugin displayed on WP Admin Plugins screen.

Props nateallen, fischfood, mukesh27, peterwilsoncc, SergeyBiryukov, audrasjb, costdev, ecorica, zunaid321.
Fixes #57278.



Built from https://develop.svn.wordpress.org/trunk@56068


git-svn-id: http://core.svn.wordpress.org/trunk@55580 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 16:01:27 +00:00
audrasjb b459be6a15 Menus: Allow themes and plugins to pass HTML attributes to various Nav Walker outputs.
This introduces a new set of hooks that can be used to filter various HTML elements of the Nav Walker, in order to output the desired HTML attributes:

- List items: `nav_menu_item_attributes`
- Submenu `<ul>` element: `nav_menu_submenu_attributes`

Props davidwebca, danyk4, costdev, peterwilsoncc, audrasjb, oglekler.
Fixes #57140.



Built from https://develop.svn.wordpress.org/trunk@56067


git-svn-id: http://core.svn.wordpress.org/trunk@55579 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 15:26:27 +00:00
spacedmonkey b80a8763c7 Database: Move the if statement outside of the loop.
In the foreach loop of last results, move the if statement outside of the loop. There is no need to check every element in the array for the output type. Do this once outside of the loop. For large database queries with lots of rows returned, this should improve PHP performance. 

Props spacedmonkey, Cybr, johnbillion, costdev, joemcgill.
Fixes #56541.
Built from https://develop.svn.wordpress.org/trunk@56066


git-svn-id: http://core.svn.wordpress.org/trunk@55578 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 14:35:29 +00:00
Bernhard Reiter 00401e16b3 Editor: update Wordpress npm packages.
Updates the wordpress npm packages and their dependencies to the latest versions, as well as auto-updates to relevant core PHP files.

Props youknowriad, joemcgill, spacedmonkey, ramonopoly, peterwilsoncc, bernhard-reiter, tyxla, dmsnell.
Fixes #58623.
Built from https://develop.svn.wordpress.org/trunk@56065


git-svn-id: http://core.svn.wordpress.org/trunk@55577 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 14:24:19 +00:00
spacedmonkey c009f9d719 Script Loader: Fix performance issues in `wp_common_block_scripts_and_styles`.
In [52069] the function `wp_common_block_scripts_and_styles` was changed load individual theme stylesheets, if the current theme supports block styles and loading separate core block assets. To do this, the function calls many expensive file operation functions, such as `glob`, `file_exists` and `file_get_contents`. This is wasteful, as these functions are loaded on every page request, even request that do not include blocks, like REST API calls. In [56044] all core block styles are registered in a single place. In `register_core_block_style_handles` calls `glob` to get all css styles in block directories. While registering style and editor styles, also register block theme styles, under a new style handle. Example `wp-block-avatar-theme`. If the current theme supports block styles, also request the block to enqueue the theme style on the front end. As these new stylesheets have a path attribute set, the function `wp_maybe_inline_styles` will automatically inline the styles for you. 

Props spacedmonkey, flixos90, oandregal, costdev, audrasjb, mukesh27.
Fixes #58560.
Built from https://develop.svn.wordpress.org/trunk@56064


git-svn-id: http://core.svn.wordpress.org/trunk@55576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 11:28:28 +00:00
isabel_brison d7bda1a6be Editor: allow filtering block patterns by source.
Extends the REST API endpoint for block patterns to provide a source attribute that can be used to filter patterns.

Props aaronrobertshaw, mukesh27, talldanwp, ramonopoly.
Fixes 58622.

Built from https://develop.svn.wordpress.org/trunk@56063


git-svn-id: http://core.svn.wordpress.org/trunk@55575 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 11:13:27 +00:00
audrasjb 033bca66f8 Twenty Nineteen: Always set background color and foreground color together.
On the `<body>` element, as a best practice background color and text color should always be set together. This makes it easier to quickly understand the 
underlying color scheme.

Follow-up to [55960], [55964].

Props sabernhardt, audrasjb, kebbet.
Fixes #45916.



Built from https://develop.svn.wordpress.org/trunk@56062


git-svn-id: http://core.svn.wordpress.org/trunk@55574 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-27 10:45:30 +00:00