Commit Graph

37694 Commits

Author SHA1 Message Date
Sergey Biryukov
87e7f72397 Docs: Add missing single quote in WP_User_Query::prepare_query() DocBlock.
Follow-up to [38715], [52226].

Props kkmuffme, mukesh27.
Fixes #62714.
Built from https://develop.svn.wordpress.org/trunk@59542


git-svn-id: http://core.svn.wordpress.org/trunk@58928 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-19 10:24:23 +00:00
Sergey Biryukov
4210bfdbb2 Privacy: Replace hardcoded MD5 references in wp_credits_section_list().
The Credits API has been updated to return SHA-256 email hashes.

Follow-up to [59532], [meta14307].

Props haozi.
Fixes #62706, #60638.
Built from https://develop.svn.wordpress.org/trunk@59541


git-svn-id: http://core.svn.wordpress.org/trunk@58927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-19 03:44:24 +00:00
Peter Wilson
447e58166c External Libraries: Append .1 to react/react-dom versions.
Replaces the `-umd` appendage for the `react` and `react-dom` script versions with `.1`. This it to prevent issues with third party code expecting the version number in the form `/^[\d\.]+$/`.

Updates the version to tests in `Tests_Dependencies_Scripts::test_vendor_script_versions_registered_manually` to include the modified version used for cache busting.

Follow up to [59536], [58775].

Props azaozz, desrosj, peterwilsoncc.
Fixes #62422.



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


git-svn-id: http://core.svn.wordpress.org/trunk@58926 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-19 03:09:23 +00:00
desrosj
5cb9ffc5ca External Libraries: Append a string to react/react-dom versions.
In 6.7, [58775] changed the way `react` and `react-dom` are bundled in Core. This commit resulted in some changes to the built files that are distributed in WordPress even though the actual version of the libraries remained the same.

The result can be a blank white screen when trying to edit a post when those two script files are heavily cached. This adds `-umd` to the end of the version number to properly purge caches until the next update to these libraries occurs.

Props levskipg, get_dave, smerriman, jdnd, juanwp22, seanlanglands, robertstaddon.
Fixes 62422.
Built from https://develop.svn.wordpress.org/trunk@59536


git-svn-id: http://core.svn.wordpress.org/trunk@58922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-18 18:51:25 +00:00
John Blackbourn
dfd4b20ea2 Build/Test Tools: Remove an unnecessary call to svn in a debugging step.
None of the steps in any of the workflows use svn, so this debugging step is unnecessary, and svn has been removed in the ubuntu-24.04 runner which will be rolling out to GitHub Actions imminently.

See #62221

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


git-svn-id: http://core.svn.wordpress.org/trunk@58920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-18 11:31:25 +00:00
Sergey Biryukov
f176b759f8 Coding Standards: Fix WPCS issues in get_avatar_data().
Follow-up to [59532].

See #60638.
Built from https://develop.svn.wordpress.org/trunk@59533


git-svn-id: http://core.svn.wordpress.org/trunk@58919 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-18 00:25:29 +00:00
Sergey Biryukov
d427228024 Privacy: Use SHA-256 hashing algorithm for Gravatar.
This aims to improve privacy by switching to a more secure algorithm, as an MD5 string can be reversed.

Follow-up to [6748], [31107].

Props henry.wright, jucaduca, haozi, desrosj, dd32, SergeyBiryukov.
See #60638.
Built from https://develop.svn.wordpress.org/trunk@59532


git-svn-id: http://core.svn.wordpress.org/trunk@58918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 23:58:26 +00:00
desrosj
469695a82b Build/Test Tools: Document every matrix exclusion.
There should be inline documentation anytime a strategy matrix has an `exclude` combination configured so that contributors have proper context as to why it’s there.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59531


git-svn-id: http://core.svn.wordpress.org/trunk@58917 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 17:22:21 +00:00
desrosj
f9c3f86d5f Build/Test Tools: Update Default Theme devDependencies.
The `devDependencies` for all default themes with `package.json` files (Twenty Nineteen, Twenty Twenty, and Twenty Twenty-One) are now updated to their latest versions with a few exceptions in Twenty Twenty-One:

- Upgrading `stylelint`/`@wordpress/stylelint-config` requires some work to address rule deprecations.
- `@wordpress/eslint-plugin` does not yet support `eslint` 9.x.

Additionally, `npm audit fix` has been run for each theme.
See #62220.
Built from https://develop.svn.wordpress.org/trunk@59530


git-svn-id: http://core.svn.wordpress.org/trunk@58916 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 17:00:22 +00:00
desrosj
c647b6061a Build/Test Tools: Allow more control when testing older branches.
This adds an input to the Test Old Branches workflow that allows a specific branch to be specified or `all` to run all old branches.

The default behavior is to only test the currently supported version of WordPress as defined in the `CURRENTLY_SUPPORTED_BRANCH` environment variable.

Follow up to [59520].

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59529


git-svn-id: http://core.svn.wordpress.org/trunk@58915 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 16:51:21 +00:00
desrosj
7b6d85e4ac Build/Test Tools: Regularly run the html-api-html5lib-tests.
In [58010], the external test suite from `html5lib` was imported to validate the tree-construction steps in the HTML Processor to ensure that they are behaving according to the HTML specification.

The test group was excluded by default because there are a high number of skipped tests. The number of skipped tests has come down, but the group does not need to be run on every job.

This introduces a new job in the PHPUnit workflow for regularly running these tests on their own using the changes in [59251[.

Props desrosj, jonsurrell, jorbin, dmsnell, costdev, chaion07, engahmeds3ed.
Fixes #61209.
Built from https://develop.svn.wordpress.org/trunk@59528


git-svn-id: http://core.svn.wordpress.org/trunk@58914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 16:40:22 +00:00
desrosj
0e72c10e41 Build/Test Tools: Use MySQL 8.4 as the default.
MySQL 8.4 is the latest LTS.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59527


git-svn-id: http://core.svn.wordpress.org/trunk@58913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 14:45:22 +00:00
Pascal Birchler
9aa68357b0 Build/Test Tools: Fix version number when downgrading WP in performance tests.
The tagged version on GitHub requires the trailing `.0`, but `wp core update` doesn't accept a trailing zero.

Follow-up to [59525].

See #62148.
Built from https://develop.svn.wordpress.org/trunk@59526


git-svn-id: http://core.svn.wordpress.org/trunk@58912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 13:28:17 +00:00
Pascal Birchler
47a09521ea Build/Test Tools: Use correct tag name for the baseline version.
The tagged version on GitHub requires the trailing `.0`.

See #62148.
Built from https://develop.svn.wordpress.org/trunk@59525


git-svn-id: http://core.svn.wordpress.org/trunk@58911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 12:47:17 +00:00
Pascal Birchler
18a5d4b9be Build/Test Tools: Add Twenty Twenty-Five to the Performance Tests.
Updates the baseline used for the performance tests to 6.7, so that the theme is available in those test runs.

Props joemcgill, flixos90, desrosj, swissspidy.
Fixes #62148.
Built from https://develop.svn.wordpress.org/trunk@59524


git-svn-id: http://core.svn.wordpress.org/trunk@58910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 12:11:19 +00:00
Bernhard Reiter
1bf26605ca Block Hooks: Enable for post content.
Block Hooks were previously only applied to layout elements such as templates, template parts, patterns, and navigation menus -- things that are edited in the Site Editor.

This changeset enables Block Hooks in post content. The parity between frontend and editor is preserved: Blocks inserted by Block Hooks are visible both on the frontend and in the editor, and any customizations made by the user are respected on the frontend.

This is possible thanks to setting the `metadata.ignoredHookedBlocks` attribute on anchor blocks (a technique first introduced in [57594]). For first child and last child insertion into a Post Content block, the corresponding post object's `_wp_ignored_hooked_blocks` post meta is set.

Props bernhard-reiter, gziolo, jonsurrell, karolmanijak, leewillis77.
Fixes #61074.
Built from https://develop.svn.wordpress.org/trunk@59523


git-svn-id: http://core.svn.wordpress.org/trunk@58909 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-17 10:37:22 +00:00
Sergey Biryukov
072c0afc53 Editor: Check get_user_count() instead of get_users() for the locked post notice.
This aims to avoid slowing down the post editing by using a cached value instead of calling `get_users()`, which can be slow when plugins add various filters to all `get_users()` calls, especially with meta value comparisons on large `user_meta` tables.

Follow-up to [24304], [24543], [41829], [53011], [53018].

Props berislav.grgicak, bor0, costdev.
See #55958.
Built from https://develop.svn.wordpress.org/trunk@59522


git-svn-id: http://core.svn.wordpress.org/trunk@58908 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-16 23:51:25 +00:00
desrosj
2b5ee6e41c Build/Test Tools: Update the Codecov GitHub Action.
This updates the `codecov/codecov-action` to from version `4.6.0` to `5.1.1`.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59521


git-svn-id: http://core.svn.wordpress.org/trunk@58907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-16 20:06:23 +00:00
desrosj
50aeb23800 Build/Test Tools: Support manual runs for the test old branch workflow.
This is the only workflow that does not currently support manually running.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59520


git-svn-id: http://core.svn.wordpress.org/trunk@58906 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-16 19:40:27 +00:00
desrosj
4fdd73689f Build/Test Tools: Update slackapi/slack-github-action.
This makes the necessary changes to update the Slack GitHub Action to the latest version, currently `2.0.0`.

Most notably this update provides more control over how attempts re retried when rate limiting is encountered.

Reverts [59209].

See #61701, #62221.
Built from https://develop.svn.wordpress.org/trunk@59519


git-svn-id: http://core.svn.wordpress.org/trunk@58905 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-16 19:29:24 +00:00
Felix Arntz
f7d4ea3ceb Site Health: Remove use of deprecated function from wp_is_https_supported().
Follow up to [56664].

Props peter8nss, debarghyabanerjee, sebastienserre, geekofshire, swissspidy, desrosj.
Fixes #62252.
See #58494.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58903 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-16 14:08:24 +00:00
Sergey Biryukov
15f2879461 Tests: Clean up convert_smilies() tests.
Includes:
* Removing redundant `use_smilies` option switches, as it is set to 1 by default.
* Restoring the `$wpsmiliestrans` array before performing assertions, not after.
* Moving most of the `smilies_init()` calls to a `set_up()` method.

Follow-up to [409/tests], [26191], [28717].

See #62278.
Built from https://develop.svn.wordpress.org/trunk@59516


git-svn-id: http://core.svn.wordpress.org/trunk@58902 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-15 23:24:23 +00:00
Sergey Biryukov
57e024a157 Formatting: Check the result of preg_split() in convert_smilies().
This aims to avoid a fatal error from `count()` when `preg_split()` fails on large input.

Includes:
* Optimizing the regular expression used to split the input by tags to avoid unlimited backtracking for better performance.
* Adjusting the function logic for better readability.

Follow-up to [340], [4380], [26191].

Props podpirate, nathkrill, rajinsharwar, dmsnell, bjorsch, q0rban, audrasjb, rupw, Ov3rfly, jorbin, nhrrob, chaion07, mcqueen22, azaozz, narenin, roybellingan, SergeyBiryukov.
See #51019.
Built from https://develop.svn.wordpress.org/trunk@59515


git-svn-id: http://core.svn.wordpress.org/trunk@58901 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-14 23:53:24 +00:00
joedolson
cc3c3bf4e6 Comments: Avoid reverting comment reply when context menu is open.
Fix a bug where a comment reply would be discarded if `esc` was pressed to dismiss the context menu in Safari or Firefox.

Checks whether the contextmenu is open and ignores the `esc` key if it is.

Props yellowafterlife, yogeshbhutkar, joedolson.
Fixes #62346.
Built from https://develop.svn.wordpress.org/trunk@59514


git-svn-id: http://core.svn.wordpress.org/trunk@58900 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-14 01:32:18 +00:00
audrasjb
880bce2ad5 Themes: Replace "Active" wording with "Installed" in the theme install checks page.
When reinstalling a theme by uploading a ZIP file, the wording used in some strings referred to the "active" theme even though it's not the currrently active theme. This changeset replaces these strings to refer to the "installed" theme, which is more accurate.

Follow-up to [52610], [52580].

Props afercia, ankitkumarshah, abcd95, yogeshbhutkar, parthvataliya, sainathpoojary, virgar, gaellebesson, nuryko, guillaumeturpin, maximemeganck, sabrineg.
Fixes #62603.
See #54831, #54770



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


git-svn-id: http://core.svn.wordpress.org/trunk@58899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 23:53:17 +00:00
Sergey Biryukov
afde562494 Coding Standards: Use strict comparison in get_blog_id_from_url().
Follow-up to [https://mu.trac.wordpress.org/changeset/1538 mu:1538].

Props debarghyabanerjee.
See #62283.
Built from https://develop.svn.wordpress.org/trunk@59512


git-svn-id: http://core.svn.wordpress.org/trunk@58898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 23:17:17 +00:00
joedolson
e25f6d7e2f Editor: Hide 'Skip to Editor' if editor not supported.
Wrap the classic editor 'Skip to Editor' link in a conditional to prevent it from rendering on post types that do not have editor support.

Props wildworks, parthvataliya, narenin, sainathpoojary, ankitkumarshah, parthvataliya, im3dabasia1.
Fixes #62623.
Built from https://develop.svn.wordpress.org/trunk@59511


git-svn-id: http://core.svn.wordpress.org/trunk@58897 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 21:53:15 +00:00
joedolson
ac54a93332 Customize: Remove unnecessary height: 100% on accordion button.
Remove CSS that could occasionally trigger the accordion buttons to be 100% the height of the accordion container.

Props dhewercorus, im3dabasia1, sabernhardt, rvoigt, ghinamt, vishy-moghan, frankbiganski, redkite.
Fixes #62491.
Built from https://develop.svn.wordpress.org/trunk@59510


git-svn-id: http://core.svn.wordpress.org/trunk@58896 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 21:10:20 +00:00
desrosj
26335af1ac Build/Test Tools: Update devDependencies.
This updates the following `devDependencies`:

- `dotenv` from `16.4.5` to `16.4.7`
- `dotenv-expand` from `11.0.6` to `12.0.1`
- `postcss` from `8.4.47` to `8.4.49`
- `qunit` from `2.22.0` to `2.23.1`
- `sass` from `1.79.4` to `1.79.6`
- `terser-webpack-plugin` from `5.3.10` to `5.3.11`
- `uglify-js` from `3.17.4` to `3.19.3`
- `uuid` from `9.0.1` to `11.0.3`
- `webpack` from `5.90.2` to `5.97.1`

Additionally, `npm audit fix` has been run.

Follow up to [58585].

See #62220.
Built from https://develop.svn.wordpress.org/trunk@59509


git-svn-id: http://core.svn.wordpress.org/trunk@58895 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 19:06:24 +00:00
desrosj
4efa589165 Build/Test Tools: Trim down the upgrade testing matrix.
The upgrade testing workflow is currently at ~978 jobs spawned from the strategy matrix. While it's great to test all possible combinations, GitHub's UI cannot keep up with tracking that number of jobs, often taking 30-45 minutes to accurately report the outcome even though the jobs themselves all complete in under 5 minutes.

This is 2x the total number of concurrent jobs allowed for the entire organization (which creates a backlog and slows everything down even more).

This trims down the number of combinations included in the testing matrices to be a bit more thoughtful following the following methodology:

- The last two releases of WordPress are tested against all PHP and MySQL LTS version combinations and the most recent innovation release.
- The next 6 oldest versions of WordPress are tested against both the oldest and newest releases of PHP currently supported for both PHP 7 & 8 along with the oldest and newest MySQL LTS versions currently supported (no innovation releases).
- For the remaining versions of WordPress receiving security updates, they are only included if the database version was different that the previous major release.
- The oldest version of WordPress receiving security updates should always be tested against the same full list of combinations as the last two releases.

When choosing which MySQL versions to test against:

- Only the most recent innovation release should be included in testing.
- Even though MySQL >= 5.5.5 is currently supported, there are no 5.5.x Docker containers available that work on modern architectures.
- 5.6.x Docker containers are available and work, but 5.6 only accounts for ~2.3% of installs as of 12/6/2024.defaults:
- 5.7.x accounts for ~20% of installs, so this is used below instead.

With these changes, the total number of jobs is reduced by ~58%.

Props johnbillion, mukesh27.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59508


git-svn-id: http://core.svn.wordpress.org/trunk@58894 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 15:34:14 +00:00
desrosj
d3d4603b99 Build/Test Tools: Remove repository specific logic from callable workflows.
Because reusable workflows could be called from any other repository in a variety of contexts, repository specific `if` conditions should not be present.

Instead, this logic should be included in the calling workflows only.

Props johnbillion.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59507


git-svn-id: http://core.svn.wordpress.org/trunk@58893 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-13 14:59:14 +00:00
Sergey Biryukov
56f776835d Filesystem API: Check PHP_OS_FAMILY instead of php_uname() in PclZip.
The `php_uname()` function can be disabled on some hosts, in which case the call fails.

The `PHP_OS_FAMILY` constant indicates the operating system family PHP was built for, and is available as of PHP 7.2.0.

Reference: [https://www.php.net/manual/en/reserved.constants.php#constant.php-os-family PHP Manual: Predefined Constants: PHP_OS_FAMILY].

Follow-up to [6779], [57985], [58678], [58684].

Props daymobrew, costdev, desrosj.
Fixes #57711.
Built from https://develop.svn.wordpress.org/trunk@59506


git-svn-id: http://core.svn.wordpress.org/trunk@58892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-12 22:23:16 +00:00
Sergey Biryukov
caaf759d21 Docs: Correct formatting for script module data filter documentation examples.
Follow-up to [58579].

Props jonsurrell.
See #62281.
Built from https://develop.svn.wordpress.org/trunk@59505


git-svn-id: http://core.svn.wordpress.org/trunk@58891 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-11 15:20:18 +00:00
Sergey Biryukov
d1058355a5 Twenty Twenty-Two: Fix PHPCS issues in functions.php.
* Inline comments must end in full stops, exclamation marks, or question marks.
* There must be exactly one blank line after the file comment.

Follow-up to [52081].

Props pitamdey, mukesh27.
Fixes #62648.
Built from https://develop.svn.wordpress.org/trunk@59504


git-svn-id: http://core.svn.wordpress.org/trunk@58890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-10 23:22:16 +00:00
gziolo
04a6ab1c8d HTML API: Remove nullable from get_breadcrumbs return type
Follow-up [58713]
Props jonsurrell, westonruter, gziolo.
Fixes #62674.


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


git-svn-id: http://core.svn.wordpress.org/trunk@58889 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-10 11:41:16 +00:00
gziolo
70af002cdb HTML API: Prevent bookmarks from being set on virtual tokens
Fixes the issue when an HTML_Processor bookmark was set at a virtual token (a node in the resulting document that does not correspond to an HTML token present in the input string), seek behavior was unreliable.

Props jonsurrell, gziolo.
Fixes #62521.



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


git-svn-id: http://core.svn.wordpress.org/trunk@58888 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-10 09:13:20 +00:00
Sergey Biryukov
cfb0b131dc REST API: Correct description for the humanized_updated block directory property.
Follow-up to [48242], [51676].

Props mujuonly, mukesh27.
Fixes #62667.
Built from https://develop.svn.wordpress.org/trunk@59501


git-svn-id: http://core.svn.wordpress.org/trunk@58887 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-09 22:45:19 +00:00
gziolo
e8b5d1a702 HTML API: Step past closing HTML, BODY tags
The HTML specification does not close HTML or BODY tags (pop them off the stack of open elements) when their tag closers are encountered. The HTML processor correctly handled this behavior, however it incorrectly "paused" by returning true from the step functions. 

Props jonsurrell, dmsnell, gziolo.
Fixes #62583.


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


git-svn-id: http://core.svn.wordpress.org/trunk@58886 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-09 12:44:17 +00:00
isabel_brison
833417c545 Editor: Update docblocks for wp_get_global_stylesheet and WP_Theme_JSON::get_stylesheet.
Updates docblocks to account for new use of the `custom-css` string in their `$types` parameters and adds information to deprecation of `wp_get_global_styles_custom_css`.

Props justlevine, isabel_brison, ramonopoly.
Fixes #62665.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58885 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-09 02:55:18 +00:00
Sergey Biryukov
f60edf3667 Coding Standards: Use strict comparison in wp-includes/comment-template.php.
Follow-up to [162], [2685], [4494], [8878], [8961], [55660].

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


git-svn-id: http://core.svn.wordpress.org/trunk@58884 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-08 23:43:21 +00:00
Sergey Biryukov
708282ecaf Coding Standards: Use strict comparison in media_upload_form_handler().
Follow-up to [10390].

Props deepakrohilla, iflairwebtechnologies, mukesh27, dingguodong, aristath.
Fixes #62009.
Built from https://develop.svn.wordpress.org/trunk@59497


git-svn-id: http://core.svn.wordpress.org/trunk@58883 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-07 22:08:19 +00:00
Sergey Biryukov
c10dbc8434 Coding Standards: Use correct escaping function for wp_http_referer.
Follow-up to [58069].

Props yogeshbhutkar, sainathpoojary, PcTevree, knutsp, siliconforks, stromhalm, shanemuir.
Fixes #62551.
Built from https://develop.svn.wordpress.org/trunk@59496


git-svn-id: http://core.svn.wordpress.org/trunk@58882 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-06 17:07:22 +00:00
Sergey Biryukov
ebce351835 Docs: Add missing @var tag for WP_Query::$query_vars_changed.
Follow-up to [17552].

Props marian1, jigar-bhanushali, martin.krcho, parthvataliya.
Fixes #62022.
Built from https://develop.svn.wordpress.org/trunk@59495


git-svn-id: http://core.svn.wordpress.org/trunk@58881 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 22:05:20 +00:00
Pascal Birchler
03a5e578d8 I18N: Add new WP_Locale::get_month_genitive() method.
Complements existing helper methods such as `WP_Locale::get_month_abbrev()`.

Props ankitkumarshah, Tkama, SergeyBiryukov.
Fixes #58658.
Built from https://develop.svn.wordpress.org/trunk@59494


git-svn-id: http://core.svn.wordpress.org/trunk@58880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 21:37:20 +00:00
Pascal Birchler
c24a5b9062 Embeds: ensure correct thumbnail height.
Use height 0 instead of 9999 to avoid unnecessarily using the full size version.

Props colinleroy, swissspidy.
Fixes #62094.
Built from https://develop.svn.wordpress.org/trunk@59493


git-svn-id: http://core.svn.wordpress.org/trunk@58879 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 21:21:17 +00:00
desrosj
61b026c27f Build/Test Tools: Introduce workflow for testing the local Docker environment.
While the PHPUnit workflow currently relies on the local Docker environment and provides some safety checks that the environment works as expected, this may not always be true and does not test all of the available commands related to the environment.

This introduces a basic workflow for testing the related scripts for the various supported combinations of PHP and database software with the environment to confirm everything is working as expected.

Ideally this would also be run on Windows and MacOS to catch platform specific bugs. Unfortunately, Docker is not supported within the GitHub Action runner images, so not all bugs will be caught by this workflow.

Props johnbillion, Clorith.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59492


git-svn-id: http://core.svn.wordpress.org/trunk@58878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 18:34:19 +00:00
desrosj
fb36f6223b Build/Test Tools: Support trunk as a version.
`trunk` is used interchangeably with `nightly`, so should be an accepted value when determining which version of WordPress is being tested.

Follow up to [59452], [59483].

Props johnbillion.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59491


git-svn-id: http://core.svn.wordpress.org/trunk@58877 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 18:23:22 +00:00
desrosj
1784ccff5b Build/Test Tools: Use newer versions for include jobs.
The `include` part of the strategy for the PHPUnit testing workflow defines a few testing configurations outside of the matrix. The versions of PHP and MySQL used in these have not been updated for some time. This was mostly due to various incompatibilities that have since been resolved.

Props peterwilsoncc, johnbillion.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59490


git-svn-id: http://core.svn.wordpress.org/trunk@58876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 15:56:20 +00:00
desrosj
73353051af Build/Test Tools: Properly escape $ characters in Docker compose file.
This fixes an invalid interpolation format error that can be encountered in the `mysql` container’s healthcheck test command.

Follow up to [59484].

Props afercia.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59489


git-svn-id: http://core.svn.wordpress.org/trunk@58875 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 15:37:17 +00:00
Pascal Birchler
cbca77642b Plugins: Load wp-admin/includes/plugin.php earlier.
Partially reverts [59479] and [59461], which previously tried to move some functions from `wp-admin/includes/plugin.php` to `wp-includes/functions.php` so they are available early, so that `get_plugin_data()` can be used.

However, other functions from that file are often used by plugins without necessarily checking whether they are available, easily causing fatal errors. Requiring this file directly is a safer approach to avoid such errors.

Props peterwilsoncc, dd32, swissspidy, johnbillion.
Fixes #62244.
Built from https://develop.svn.wordpress.org/trunk@59488


git-svn-id: http://core.svn.wordpress.org/trunk@58874 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-05 12:13:17 +00:00
Sergey Biryukov
9c031458c8 Docs: Remove blank line at the end of wp_prepare_attachment_for_js() DocBlock.
Follow-up to [21680], [49281].

Props nareshbheda.
Fixes #62642.
Built from https://develop.svn.wordpress.org/trunk@59486


git-svn-id: http://core.svn.wordpress.org/trunk@58872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-04 23:38:17 +00:00
desrosj
6342cd3c2b Build/Test Tools: Run install tests when JSON reading workflow is changed.
Because the installation testing workflow relies on the reusable workflow that reads the JSON support files, it should be run when that file is changed to confirm there are no issues.

This is currently only configured for `pull_request` events, but should also be true for `push`.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59485


git-svn-id: http://core.svn.wordpress.org/trunk@58871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-04 15:27:15 +00:00
desrosj
14ec385f12 Build/Test Tools: Support older MariaDB versions in local Docker environment.
Older versions of MariaDB did not contain the `mariadb-admin` command. This command is configured as the `healthcheck` used by the local Docker environment to confirm that the database container has successfully started and is reporting as “healthy”. The current result is a failure when starting the environment while using one of the affected older versions.

For MariaDB versions 10.3 and earlier, the `mysqladmin` command was used instead. Since WordPress still technically supports back to MariaDB 5.5, the local environment should support running these versions. This updates the environment configuration to take this into account when performing a `healthcheck` test.

The README file is also updated to reflect that the same workaround added in [57568] for MySQL <= 5.7 is required when using MariaDB 5.5 on an Apple silicon machine.

Props johnbillion.
See #62221.
Built from https://develop.svn.wordpress.org/trunk@59484


git-svn-id: http://core.svn.wordpress.org/trunk@58870 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-04 15:18:19 +00:00
desrosj
99fb518290 Build/Test Tools: Add repository input to support JSON reading workflow.
`actions/checkout` will always checkout the current repository unless the `repository` input is specified. This updates the `reusable-support-json-reader-v1.yml` workflow to always default to reading the JSON files from `wordpress-develop`.

A `repository` has also been added to the workflow to allow a different set of JSON files to be read if desired.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59483


git-svn-id: http://core.svn.wordpress.org/trunk@58869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-04 14:43:19 +00:00
Bernhard Reiter
859a39a5f9 Block Hooks: Fix context in update_ignored_hooked_blocks_postmeta.
Ensure that the `$context` arg passed from `update_ignored_hooked_blocks_postmeta` to `apply_block_hooks_to_content` (and from there, to filters such as `hooked_block_types` and `hooked_block`) has the correct type (`WP_Post`).

Filters hooked to `hooked_block_types` etc can typically include checks that conditionally insert a hooked block depending on `$context`. Prior to this changeset, a check like `if ( $context instanceof WP_Post )` would incorrectly fail, as `$context` would be a `stdClass` instance rather than a `WP_Post`. As a consequence, a hooked block inside of a Navigation post object that was modified by the user would not be marked as ignored by `update_ignored_hooked_blocks_postmeta`, and thus be erroneosly re-inserted by the Block Hooks algorithm.

Props bernhard-reiter.
Fixes #62639.
Built from https://develop.svn.wordpress.org/trunk@59482


git-svn-id: http://core.svn.wordpress.org/trunk@58868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-04 12:07:17 +00:00
Sergey Biryukov
a319916e26 External Libraries: Upgrade PHPMailer to version 6.9.3.
This is a maintenance release, adding support for the release version of PHP 8.4, and experimental support for PHP 8.5.

References:
* [https://github.com/PHPMailer/PHPMailer/releases/tag/v6.9.3 PHPMailer 6.9.3 release notes]
* [https://github.com/PHPMailer/PHPMailer/compare/v6.9.2...v6.9.3 Full list of changes in PHPMailer 6.9.3]

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

Props desrosj, yogeshbhutkar, ayeshrajans.
Fixes #62632.
Built from https://develop.svn.wordpress.org/trunk@59481


git-svn-id: http://core.svn.wordpress.org/trunk@58867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-03 15:22:18 +00:00
Sergey Biryukov
ab2697f8bf Customize: Begin HTML markup before Customizer script hooks.
This prevents printing styles and scripts before the `<!DOCTYPE>`.

The `_wp_admin_html_begin()` function should precede Customizer script hooks, in case a plugin prints markup inside a hook such as `admin_enqueue_scripts`.

Follow-up to [19995], [27907].

Props sabernhardt.
Fixes #62629.
Built from https://develop.svn.wordpress.org/trunk@59480


git-svn-id: http://core.svn.wordpress.org/trunk@58866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-02 23:36:18 +00:00
Pascal Birchler
789d1d9c2e Plugins: Make more plugin-related functions available early on.
This is a follow-up to [59461], which moved `get_plugin_data()` from `wp-admin/includes/plugin.php` to `wp-includes/functions.php` so it's available during the plugin loading process.

Related functions like `is_plugin_active()` are often used together and should therefore be moved as well, to improve backward compatibility for plugins which load `wp-admin/includes/plugin.php` only conditionally.

Props johnbillion, dd32, swissspidy.
See #62244.
Built from https://develop.svn.wordpress.org/trunk@59479


git-svn-id: http://core.svn.wordpress.org/trunk@58865 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-02 17:10:15 +00:00
Pascal Birchler
8f08a8e2e1 I18N: Load admin translations for auto update emails.
As a follow-up to [59460], make sure that admin strings are loaded when switching locales for auto update notification emails, as those strings are in a separate translation file.

Props benniledl, swissspidy.
Fixes #62496.
Built from https://develop.svn.wordpress.org/trunk@59478


git-svn-id: http://core.svn.wordpress.org/trunk@58864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-02 17:08:20 +00:00
gziolo
369a675488 Interactivity API: Support length property on strings and arrays on the server
The Interactivity API tries to align client and server rendering so that the behavior is the same. Adds missing handling for `.length` to directives processing on the server on strings and numeric arrays which is inherently supported through JavaScript language on the client.

Props jonsurrell, gziolo, luisherranz.
Fixes #62582.


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


git-svn-id: http://core.svn.wordpress.org/trunk@58863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-02 08:10:17 +00:00
poena
8f8ffaab84 Twenty Thirteen & Twenty Sixteen: Correct the border of the latest comments block in the editor.
This change hides the top border of the first comment in the latest comments block, so that the design
in the editor and the front looks the same.

Props viralsampat, sabernhardt, aishwarryapande, parthvataliya, imranhasanraaz.
Fixes #62282.
Built from https://develop.svn.wordpress.org/trunk@59476


git-svn-id: http://core.svn.wordpress.org/trunk@58862 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-02 05:44:19 +00:00
Sergey Biryukov
e6f29b4c0e Date/Time: Add d.m.Y to date format presets on General Settings screen.
This gives users another option when selecting how dates are displayed on their site. This change is relevant for better localization, providing more date format choices for users in regions where this format is common.

The `array_unique()` call ensures that if this format was already added by a plugin or theme, it won't be duplicated.

Follow-up to [9131], [22299], [28820], [28848].

Props Daedalon, pbearne, fierevere, im3dabasia1, SergeyBiryukov.
Fixes #55685.
Built from https://develop.svn.wordpress.org/trunk@59475


git-svn-id: http://core.svn.wordpress.org/trunk@58861 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-12-01 18:39:20 +00:00
Sergey Biryukov
0749661c97 Docs: Correct DocBlock formatting for WP_Theme_JSON::FONT_FAMILY_SCHEMA.
Follow-up to [57496].

Props marian1.
Fixes #62621.
Built from https://develop.svn.wordpress.org/trunk@59474


git-svn-id: http://core.svn.wordpress.org/trunk@58860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-30 13:53:20 +00:00
Adam Silverstein
c08c2e28cc Media: improve filter to enable setting output quality by image size.
Add a new $size parameter to the  wp_editor_set_quality filter. $size is an array with 'width' and 'height' keys. Developers can use this information to set image quality based on the image size.

Props adamsilverstein, joemcgill, Mte90, codekraft, birgire, azaozz, sppramodh.
Fixes #54648.



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


git-svn-id: http://core.svn.wordpress.org/trunk@58859 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-29 23:48:15 +00:00
Sergey Biryukov
47bb776fd7 Editor: Add description for Banners block pattern category.
Follow-up to [55098].

Props parinpanjari, youknowriad, Joen, dhruvang21, apermo, mukesh27.
Fixes #62115.
Built from https://develop.svn.wordpress.org/trunk@59472


git-svn-id: http://core.svn.wordpress.org/trunk@58858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-29 22:46:21 +00:00
Sergey Biryukov
dd967e2a2e Coding Standards: Cast gmdate( 'w' ) to int before using as integer.
This addresses several instances of `gmdate( 'w' )` being used directly as an integer, when it's actually a numeric string. The issue is remediated by casting the value to `int` before use.

Affected functions:
* `get_calendar()`
* `get_weekstartend()`

Follow-up to [508], [1632].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59471


git-svn-id: http://core.svn.wordpress.org/trunk@58857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-28 22:52:17 +00:00
Tammie Lister
1806172d05 Twenty-Twenty: Fixes space between post content on front.
The post author and post date did not have space between them and the post content. This brings in 1em of top margin. Of note is that this only is if the first element is a paragraph that the issue was caused.  
  
Props abcd95, sabernhardt, desrosj, sainathpoojary, viralsampat.  
Fixes #62243.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-28 18:41:16 +00:00
Bernhard Reiter
fd9519e7b2 HTML API: Make non-body fragment creation methods private.
The current implementation of `create_fragment` (and the underlying `create_fragment_at_current_node`) allows passing in a context that might result in a tree that cannot be represented by HTML. For example, a user might use `<p>` as context, and attempt to create a fragment that also consists of a paragraph element, `<p>like this`. This would result in a paragraph node nested inside another -- something that can never result from parsing HTML.

To prevent this, this changeset makes `create_fragment_at_current_node` private and limits `create_fragment` to only `<body>` as context, while a comprehensive solution to allow other contexts is being worked on.

Follow-up to [59444], [59467].
Props jonsurrell, dmsnell, bernhard-reiter.
Fixes #62584.
Built from https://develop.svn.wordpress.org/trunk@59469


git-svn-id: http://core.svn.wordpress.org/trunk@58855 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-28 14:27:18 +00:00
Bernhard Reiter
e174cbef2e HTML API: Allow more contexts in create_fragment.
This changeset modifies `WP_HTML_Processor::create_fragment( $html, $context )` to use a full processor and `create_fragment_at_node` instead of the other way around. This makes more sense and makes the main factory methods more clear, where the state required for fragments is set up in `create_fragment_at_node` instead of in both `create_fragment` and `create_fragment_at_current_node`.

This allows for more HTML contexts to be provided to the basic `create_fragment` where the provided context HTML is appended to `<!DOCTYPE html>`, a full processor is created, the last tag opener is found, and a fragment parser is created at that node via `create_fragment_at_current_node`.

The HTML5lib tests are updated accordingly to use this new method to create fragments.

Props jonsurrell, dmsnell, bernhard-reiter.
Fixes #62584.
Built from https://develop.svn.wordpress.org/trunk@59467


git-svn-id: http://core.svn.wordpress.org/trunk@58853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-27 14:35:16 +00:00
Pascal Birchler
42bd4e9761 I18N: Do not reuse $theme variable name after loading a theme's functions.php file.
The file could declare its own `$theme` variable, which would override the one used in the `foreach` loop.

To prevent this, call `wp_get_theme()` before loading the file and store the instance in a different variable.

Props neo2k23, swissspidy.
See #62244.
Built from https://develop.svn.wordpress.org/trunk@59466


git-svn-id: http://core.svn.wordpress.org/trunk@58852 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-27 14:30:20 +00:00
Sergey Biryukov
001cc12b71 Coding Standards: Cast gmdate( 'Z' ) to an integer before addition.
This addresses two instances of the (numeric string) `gmdate( 'Z' )` being added to an `int` value.

Affected functions:
* `upgrade_110()`
* `WP_Date_Query::validate_date_values()`

Follow-up to [942], [29925], [45424].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59465


git-svn-id: http://core.svn.wordpress.org/trunk@58851 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-27 11:40:18 +00:00
cbravobernal
ee60151913 HTML API: Recognize all uppercase tag names in tag processor.
Fixes a missing "D" in the character list used by strspn to find tag openers, causing tags starting with D to be skipped by the tag processor in some circumstances.

Follow-up to [58613].

Props jonsurrell, santosguillamot, wongjn, cbravobernal.
Fixes #62522.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58850 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-27 09:57:15 +00:00
gziolo
c9d9ddb4d8 HTML API: Remove unused processor state context_node property
The HTML Processor State `context_node` is redundant and can be deprecated. The property has been superseded by `WP_HTML_Processor->context_node` since [58304].

Props jonsurrell, gziolo.
Fixes #62518.



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


git-svn-id: http://core.svn.wordpress.org/trunk@58849 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-27 09:54:17 +00:00
Sergey Biryukov
869f9b1df5 Coding Standards: Cast wp_count_terms() result to int before using in ceil().
This addresses two instances of the (numeric string) return value from `wp_count_terms()` being used directly in `ceil()`, which expects an `int|float`.

Affected methods:
* `WP_Sitemaps_Taxonomies::get_max_num_pages()`
* `wp_nav_menu_item_taxonomy_meta_box()`

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

Follow-up to [14248], [14291], [14569], [14943], [48072], [57648].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59462


git-svn-id: http://core.svn.wordpress.org/trunk@58848 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-26 21:17:25 +00:00
Pascal Birchler
117b935b89 I18N: Load translations just-in-time for custom themes and plugins.
In #34114, just-in-time (JIT) translation loading was implemented for projects hosted on WordPress.org. This is now expanded to all other plugins/themes.

Projects with a custom `Text Domain` and `Domain Path` header no longer need to call `load_plugin_textdomain()` or `load_theme_textdomain()`.

This reduces the risk of calling them too late, after some translation calls already happened, and generally makes it easier to properly internationalize a plugin or theme.

This moves the `get_plugin_data()` from `wp-admin/includes/plugin.php` to `wp-includes/functions.php` so it's available during the plugin loading process.

Props swissspidy.
Fixes #62244.
Built from https://develop.svn.wordpress.org/trunk@59461


git-svn-id: http://core.svn.wordpress.org/trunk@58847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-26 10:16:17 +00:00
Pascal Birchler
6e38205391 I18N: Switch locale to admin locale when sending auto update emails.
If sending an auto update email to the site administrator's email address, look up if a user with the same email exists and switch to that user's locale. If not, explicitly switches to the site locale.

This is a follow-up to [59128] where this was previously added for other types of emails.

Props benniledl, swissspidy.
Fixes #62496.
Built from https://develop.svn.wordpress.org/trunk@59460


git-svn-id: http://core.svn.wordpress.org/trunk@58846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-26 10:03:17 +00:00
Sergey Biryukov
6f6ddfc80f Coding Standards: Cast $expired to an integer in wp_validate_auth_cookie().
This resolves an issue where the string `$expired` value is used both in a comparison and addition with integer values.

Follow-up to [6387], [28424], [45590].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59459


git-svn-id: http://core.svn.wordpress.org/trunk@58845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-25 19:03:18 +00:00
Bernhard Reiter
f03be09041 REST API: Terms: Respect taxonomy's default query args.
It is possible to supply a set of default query `args` to `register_taxonomy()` which will be used when querying a list of terms -- for example, `orderby` in order to specify how the resulting list of terms should be sorted.

The Terms REST API controller previously respected these default query args only if the request included a post ID. This changeset makes it so that the default args will also be respected if no post ID is provided.

Props bernhard-reiter, jsnajdr.
Fixes #62500.
Built from https://develop.svn.wordpress.org/trunk@59458


git-svn-id: http://core.svn.wordpress.org/trunk@58844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-25 11:16:22 +00:00
Pascal Birchler
8f303471a4 REST API: Remove trailing slashes when preloading requests and there is a query string.
Follow-up to [51648], see #51636.

Props antonvlasenko, swissspidy, spacedmonkey.
Fixes #57048.
Built from https://develop.svn.wordpress.org/trunk@59457


git-svn-id: http://core.svn.wordpress.org/trunk@58843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-25 10:10:17 +00:00
Sergey Biryukov
c67b970348 Coding Standards: Remove extra unset() in rest_handle_options_request().
`$args` is defined in the immediately preceding code block, and only contains non-integer keys, so there is never an `$args[0]` to unset.

Follow-up to [44933].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59456


git-svn-id: http://core.svn.wordpress.org/trunk@58842 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-24 18:37:20 +00:00
Sergey Biryukov
6bf8fa1514 Coding Standards: Replace usage of deprecated wp_get_duotone_filter_svg().
This updates `WP_Theme_JSON::get_svg_filters()` to use `WP_Duotone::get_filter_svg_from_preset()` instead of the `wp_get_duotone_filter_svg()` function, deprecated in WordPress 6.3.

Follow-up to [52757], [56101].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59455


git-svn-id: http://core.svn.wordpress.org/trunk@58841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-23 22:58:21 +00:00
Andrew Ozz
683505a121 Editor: Fix selecting/deselecting multiple unwanted categories when clicking on a Category checkbox on the old Edit Post screen.
Props ffffelix, desrosj, ironprogrammer, neotrope, narenin, zaoyao, im3dabasia1, cbravobernal, azaozz.
Fixes #62504.
Built from https://develop.svn.wordpress.org/trunk@59454


git-svn-id: http://core.svn.wordpress.org/trunk@58840 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 20:10:24 +00:00
Sergey Biryukov
7a78121aa0 Coding Standards: Explicitly return null instead of coercing void.
This addresses two instances where a function that is documented as returning `{someType}|null` doesn't explicitly return `null`.

Affected functions:
* `array_key_first()`
* `WP_REST_Posts_Controller::handle_terms()`

Follow-up to [38832], [52038].

Props justlevine.
See #52217.
Built from https://develop.svn.wordpress.org/trunk@59453


git-svn-id: http://core.svn.wordpress.org/trunk@58839 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 19:19:20 +00:00
desrosj
e80371660d Build/Test Tools: Create reusable workflow for parsing .version-support-*.json files.
This extracts the logic responsible for parsing the `.version-support-*.json` files and returning a list of supported PHP and MySQL versions for a given branch of WordPress into a reusable workflow so that other workflows can make use of the functionality without repeating code.

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59452


git-svn-id: http://core.svn.wordpress.org/trunk@58838 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 17:00:21 +00:00
desrosj
b29834538e Bundled Theme: Pin schema version to rest of Twenty Twenty-Five.
All JSON files in the theme should be pinned to the appropriate schema version, not just `theme.json`.

Follow up to [59448].

Props im3dabasia1, poena.
Fixes #62455.
Built from https://develop.svn.wordpress.org/trunk@59451


git-svn-id: http://core.svn.wordpress.org/trunk@58837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 13:50:18 +00:00
cbravobernal
261373653c HTML API: Prevent fragment creation on close tag.
Prevent fragments from being created at tag closers.

Follow-up to [59444].

Props jonsurrell, bernhard-reiter.
Fixes #62357.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58836 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 12:52:19 +00:00
mikachan
e0d58b3987 Editor: Warn about empty templates on the frontend for logged in users.
Adds a new function, `wp_render_empty_block_template_warning`, that renders a warning for logged-in users when a block template is empty.

Reviewed by get_dave, richtabor.
Props vcanales, mikachan, peterwilsoncc, richtabor, get_dave, mrfoxtalbot, matveb, arielmaidana, seifradwane, annezazu.
Fixes #62053.
Built from https://develop.svn.wordpress.org/trunk@59449


git-svn-id: http://core.svn.wordpress.org/trunk@58835 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-22 10:57:19 +00:00
desrosj
04111ef54f Bundled Theme: Pin a theme.json schema version to Twenty Twenty-Five.
Each theme’s `theme.json` schema version should be pinned to the version that was valid at the time it was released.

Props im3dabasia1, poena, mukesh27.
Fixes #62455.
Built from https://develop.svn.wordpress.org/trunk@59448


git-svn-id: http://core.svn.wordpress.org/trunk@58834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-21 19:02:23 +00:00
Bernhard Reiter
ff3fde39ee HTML API: Add method to create fragment at node.
HTML Fragment parsing always happens with a context node, which may impact how a fragment of HTML is parsed. HTML Fragment Processors can be instantiated with a `BODY` context node via `WP_HTML_Processor::create_fragment( $html )`.

This changeset adds a static method called `create_fragment_at_current_node( string $html_fragment )`. It can only be called when the processor is paused at a `#tag`, with some additional constraints:

- The opening and closing tags must appear in the HTML input (no virtual tokens).
- No "self-contained" elements are allowed ( `IFRAME`, `SCRIPT`, `TITLE`, etc.).

If successful, the method will return a `WP_HTML_Processor` instance whose context is inherited from the node that the method was called from.

Props jonsurrell, bernhard-reiter, gziolo.
Fixes #62357.
Built from https://develop.svn.wordpress.org/trunk@59444


git-svn-id: http://core.svn.wordpress.org/trunk@58830 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-21 13:29:18 +00:00
John Blackbourn
8f1dc00b4d Build/Test Tools: Improve the error message shown when fetching Twemoji fails.
This allows the full error message to be shown from the connection attempt instead of a generic error message.

Fixes #62382

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


git-svn-id: http://core.svn.wordpress.org/trunk@58829 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-21 13:18:19 +00:00
Joe McGill
134e355f13 Editor: Avoid unnecessary array_merge in WP_Style_Engine::parse_block_styles().
This adds an `! empty()` check for classnames and declarations to avoid calling array_merge() with an empty value.

Props mukesh27, ramonopoly, aaronrobertshaw.
Fixes #62317.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58828 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 21:29:22 +00:00
desrosj
37c8e1ae21 Build/Test Tools: Correctly check for Dependabot.
This updates the conditions added in [59370] to skip unnecessary pull request comments when Dependabot is the opening contributor to check for the correct `github.actor` value.

Follow up to [59380].

See #62221.
Built from https://develop.svn.wordpress.org/trunk@59441


git-svn-id: http://core.svn.wordpress.org/trunk@58827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 18:10:23 +00:00
desrosj
6efab4c237 Editor: update npm packages in trunk for 6.7.1.
Syncs Editor packages for WordPress 6.7.1 RC1. Includes the following PRs:

- https://github.com/WordPress/gutenberg/pull/66945
- https://github.com/WordPress/gutenberg/pull/66889
- https://github.com/WordPress/gutenberg/pull/67139 

Reviewed by desrosj.
Merges [59437] to trunk.

Props mmaattiiaass, ramonopoly, mamaduka, get_dave, poena, ntsekouras, mcsf, jsnajdr, 0mirka00, desrosj, joemcgill, cbravobernal, azaozz, room34, mayanktripathi32, im3dabasia1, jonsurrell.
Fixes #62478, #62447. 
Built from https://develop.svn.wordpress.org/trunk@59438


git-svn-id: http://core.svn.wordpress.org/trunk@58824 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 16:20:31 +00:00
Sergey Biryukov
d37c855db1 I18N: Adjust translator comments in nav-menu.js.
Includes:
* Moving the comments directly above `wp.i18n._x()` so that they can be picked up properly.
* Simplifying the context to avoid unnecessarily translating the string twice for the same use case.
* Using the established translator comments format for consistency.

Follow-up to [59428].

See #62402.
Built from https://develop.svn.wordpress.org/trunk@59431


git-svn-id: http://core.svn.wordpress.org/trunk@58817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 11:22:19 +00:00
desrosj
c557605794 i18n: Account for load_*_textdomain() after JIT loading.
When `load_*_textdomain()` functions are called after WordPress has already attempted just-in-time loading of translations, nothing happens. 

This updates the related logic to retry translation loading when a custom path is set to ensure all translations are available.

Additionally, this also fixes cases where an `en_US.mo` file is provided with non-English strings to override the default language.

Follow up to [59157].

Props swissspidy, peterwilsoncc, desrosj, apermo, sergeybiryukov, wildworks, tigriweb, twvania, looswebstudio, stimul, audrasjb, finntown, bluantinoo, timwhitlock, albigdd.
See #62337.
Built from https://develop.svn.wordpress.org/trunk@59430


git-svn-id: http://core.svn.wordpress.org/trunk@58816 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 02:50:24 +00:00
desrosj
85928dc39a Options, Meta APIs: Ensure duplicate salts are properly flagged.
Improvements were made in 6.7 to ensure that salts stored in the database were primed more efficiently.

The logic added to accomplish this suffered from an edge case where array indexes were unexpectedly missing when `wp_salt()` was called recursively.

Follow up to [58837].

Props juliobox, ankitkumarshah, dilipbheda, johnbillion, joemcgill, desrosj.
Fixes #62424.
Built from https://develop.svn.wordpress.org/trunk@59427


git-svn-id: http://core.svn.wordpress.org/trunk@58813 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-20 01:39:19 +00:00
joedolson
41226f1164 Menus: i18n: Fix untranslatable strings in nav-menu.js.
Wrap three untranslatable strings in nav menus in JS translation functions.

Follow up to [59265].

Props juliemoynat, swissspidy, yogeshbhutkar, sergeybiryukov, desrosj, tobifjellner, audrasjb, joedolson.
Fixes #62402.
Built from https://develop.svn.wordpress.org/trunk@59426


git-svn-id: http://core.svn.wordpress.org/trunk@58812 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-19 23:25:20 +00:00
Sergey Biryukov
e8741c53c8 Toolbar: Allow the Learn WordPress link to be localized.
The Learn WordPress website is supposed to automatically redirect to the correct locale according to the browser's language settings, however that may not work as expected in some cases.

This commit brings consistency with the other WordPress.org links, which can be localized as appropriate.

Follow-up to [56720].

Props timse201, ruturajraval2305, yogeshbhutkar, ajayghaghretiya-multidots, swissspidy, sabernhardt, im3dabasia1, mukesh27.
Fixes #62459.
Built from https://develop.svn.wordpress.org/trunk@59425


git-svn-id: http://core.svn.wordpress.org/trunk@58811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-19 22:18:21 +00:00
joedolson
70842372b1 Login: Revert selector change in login heading CSS.
In [59138], the login screens were updated to change the `h1` heading from the logo to screen-reader hidden text. Along with that HTML change, we changed the CSS selectors from `.login h1` to `.login .wp-login-logo`. This unnecessary change increased specificity and broke the CSS selectors used by a wide variety of plugins to replace the login logo.

Commit reverts the change in selector back to using the `.login h1` pattern.

Props leecollings, sabernhardt, im3dabasia1, roytanck, sailpete, joedolson. 
Fixes #62410.
Built from https://develop.svn.wordpress.org/trunk@59424


git-svn-id: http://core.svn.wordpress.org/trunk@58810 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-19 21:24:22 +00:00
czapla
d54b7924ef HTML API: Use case insensitive tag_name comparison in ::next_tag.
The HTML API `::next_tag` method now performs case-insensitive matching when searching for tags by name. For example, searching for 'DIV' will match both '<div>' and '<DIV>' tags.

Props jonsurrell, dmsnell.
Fixes #62427.

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


git-svn-id: http://core.svn.wordpress.org/trunk@58808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-11-19 16:05:17 +00:00