Commit Graph

30165 Commits

Author SHA1 Message Date
Sergey Biryukov bb63c1cbd9 Upgrade/Install: Account for new `WP_AUTO_UPDATE_CORE` values in auto-updates settings form.
This updates `core_auto_updates_settings()` to account for the new `beta` and `rc` values for the `WP_AUTO_UPDATE_CORE` constant.

Additionally, recognize these new values as acceptable in Site Health tests.

Follow-up to [48804], [49245], [49254].

Fixes #51319. See #50907.
Built from https://develop.svn.wordpress.org/trunk@49292


git-svn-id: http://core.svn.wordpress.org/trunk@49054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-24 00:26:05 +00:00
TimothyBlynJacobs e992757e5b App Passwords: Include site_url in the success redirect payload.
Props georgestephanis.
Fixes #51602.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-24 00:07:08 +00:00
Sergey Biryukov ce4b1cc8ba Toolbar: Keep IE 11 scrollbar on the side instead of overlapping the toolbar.
Props sabernhardt, shital-patel, y_kolev.
Fixes #48545.
Built from https://develop.svn.wordpress.org/trunk@49290


git-svn-id: http://core.svn.wordpress.org/trunk@49052 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 19:49:08 +00:00
Sergey Biryukov ee3dac88f0 Privacy: Use more appropriate verbiage when downloading personal data export file from a row action.
Props garrett-eclipse, bridgetwillard.
Fixes #49319.
Built from https://develop.svn.wordpress.org/trunk@49289


git-svn-id: http://core.svn.wordpress.org/trunk@49051 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 19:33:07 +00:00
Sergey Biryukov d9838eed62 Posts, Post Types: Set better default title for custom post types without title support.
The default title is now set to "(no title supported)" instead of "Auto Draft".

Props garrett-eclipse, rajanit2000, bridgetwillard, donmhico, nrqsnchz.
Fixes #45516.
Built from https://develop.svn.wordpress.org/trunk@49288


git-svn-id: http://core.svn.wordpress.org/trunk@49050 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 19:09:10 +00:00
Sergey Biryukov 36d58abc8e Help/About: Clarify that discouraging search engines does not prevent them from crawling the site.
Props carike, garrett-eclipse, hellofromTonya.
Fixes #51274.
Built from https://develop.svn.wordpress.org/trunk@49287


git-svn-id: http://core.svn.wordpress.org/trunk@49049 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 18:07:13 +00:00
Sergey Biryukov f83aa63730 Coding Standards: Split long `printf()` calls for search results for better readability.
Follow-up to [49284].

See #37353.
Built from https://develop.svn.wordpress.org/trunk@49286


git-svn-id: http://core.svn.wordpress.org/trunk@49048 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 17:19:14 +00:00
Aaron Campbell 608ba462dd Upgrade/Install: Improve copy for opt-in to automatic major version updates.
Props marybaum, kebbet.
See #50907.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49047 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 16:36:14 +00:00
Helen Hou-Sandí e0c12cc818 Administration: Unify search results message on list tables.
This wraps the search string in a `<strong>` tag, which makes easier to parse visually especially when your search string also contains double quotes.

Props Mista-Flo, mapk, sergeybiryukov.
Fixes #37353.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49046 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 16:01:15 +00:00
Helen Hou-Sandí 4847fb4263 Administration: Better targeting for required form field highlighting.
Previously, any `input` or `select` inside of a `.form-invalid` wrapper would get the red border highlighting, including submit buttons which was not visually correct. This now only applies to form elements with a class of `.form-required` inside of the `.form-invalid` wrapper. It also continues to apply the border to elements with both classes (`.form-invalid.form-required`) as that is how some of the admin markup is structured.

Plugin authors may need to do the same sort of class application seen in this commit, i.e. add `.form-required` to certain form elements.

Props sabernhardt, dilipbheda, helen.
Fixes #50686.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49045 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 15:05:09 +00:00
Sergey Biryukov 298cd04a63 Coding Standards: Update some alignment in `wp-admin/authorize-application.php` for consistency.
Save blogs count to a variable for reusing.

Follow-up to [49270].

See #51489.
Built from https://develop.svn.wordpress.org/trunk@49282


git-svn-id: http://core.svn.wordpress.org/trunk@49042 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 01:19:06 +00:00
Sergey Biryukov 0a70f9b004 Docs: Document the return value of `wp_prepare_attachment_for_js()` using hash notation.
Props stevenlinx, Mista-Flo, johnbillion.
Fixes #50835.
Built from https://develop.svn.wordpress.org/trunk@49281


git-svn-id: http://core.svn.wordpress.org/trunk@49041 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-23 00:43:07 +00:00
desrosj 57ae91be78 Build/Test Tools: Remove debug text included in [49267].
See #50401.
Built from https://develop.svn.wordpress.org/trunk@49280


git-svn-id: http://core.svn.wordpress.org/trunk@49040 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 18:12:01 +00:00
TimothyBlynJacobs ce34d0ab00 App Passwords: Support an app_id to uniquely identify instances of an app.
Apps may now optionally include an `app_id` parameter when directing the user to the Authorize Application screen. This allows for instances of an application to be identified and potentially revoked or blocked.

Props TimothyBlynJacobs, georgestephanis.
Fixes #51583.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49038 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 15:06:09 +00:00
Sergey Biryukov 83c900e8b3 Upgrade/Install: Add missing `</form>` tag in auto-updates settings form.
Props imath, ahortin, dd32, afragen.
Fixes #51598. See #50907.
Built from https://develop.svn.wordpress.org/trunk@49274


git-svn-id: http://core.svn.wordpress.org/trunk@49036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 03:38:10 +00:00
TimothyBlynJacobs fe8bb3ea58 App Passwords: Fix success=false not being appended to fallback reject url.
Props TimothyBlynJacobs, georgestephanis.
Fixes #51581.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 02:44:05 +00:00
Peter Wilson 9dc6d6147a XML-RPC: Fix length validation of anonymous commenter's email address.
Fix the first step of validating an anonymous commenters in which the length is checked prior to running regular expressions.

Follow up to [47808].
Fixes #51595.


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


git-svn-id: http://core.svn.wordpress.org/trunk@49033 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 02:42:06 +00:00
TimothyBlynJacobs 85c49351af App Passwords: Explain that apps can access to all sites in a network.
Props georgestephanis, spacedmonkey, johnjamesjacoby, SergeyBiryukov, marybaum.
Fixes #51489.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49032 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 02:36:11 +00:00
Sergey Biryukov cd04c0d68b Build/Test Tools: Only define `WP_PLUGIN_DIR` in when running core tests.
This takes into account non-core plugins that rely on `WP_PLUGIN_DIR` being set to the expected plugin's directory in `WP_CONTENT_DIR`, or already have the constant defined.

Follow-up to [49236].

Props pierlo.
Fixes #51594.
Built from https://develop.svn.wordpress.org/trunk@49269


git-svn-id: http://core.svn.wordpress.org/trunk@49031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 00:44:05 +00:00
Peter Wilson f8e9df7a95 Tests: Use shared fixtures in XML-RPC new comment unit tests.
See #51344.


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


git-svn-id: http://core.svn.wordpress.org/trunk@49030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-22 00:19:08 +00:00
desrosj a8abe177a4 Build/Test Tools: Pass GitHub Action related environment variables to the Docker container.
This ensures that `WP_UnitTestCase::skipOnAutomatedBranches()` has access to these variables so that time sensitive tests can be skipped when appropriate.

This also updates that logic to be more clear.

Follow up to [49264].

Props ocean90, johnbillion.
See #50401, #49050, #47767.
Built from https://develop.svn.wordpress.org/trunk@49267


git-svn-id: http://core.svn.wordpress.org/trunk@49029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-21 19:57:10 +00:00
Sergey Biryukov ecf8e59918 Docs: Add a `@since` note about `async_direct_test` key to the `site_status_tests` filter.
Follow-up to [49232].

See #51547.
Built from https://develop.svn.wordpress.org/trunk@49266


git-svn-id: http://core.svn.wordpress.org/trunk@49028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-21 14:55:09 +00:00
Sergey Biryukov bbfc20ee44 Coding Standards: Rename a variable in `wp-login.php` for consistency with other instances.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@49265


git-svn-id: http://core.svn.wordpress.org/trunk@49027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-21 14:46:05 +00:00
desrosj f9902dc742 Build/Test Tools: Skip some tests when not in the primary branch.
This skips time sensitive tests when GitHub Actions workflows are not being run on `master` branch.

See #50401, #39486.
Built from https://develop.svn.wordpress.org/trunk@49264


git-svn-id: http://core.svn.wordpress.org/trunk@49026 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-21 14:07:09 +00:00
desrosj a7d6e929c9 Administration: Fix an invalid property in the Dashicons CSS file.
Props komagain.
Fixes #51587.
Built from https://develop.svn.wordpress.org/trunk@49263


git-svn-id: http://core.svn.wordpress.org/trunk@49025 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-21 13:16:07 +00:00
Helen Hou-Sandí 990875a7ae Post-post WordPress 5.6 beta 1 version bump.
Built from https://develop.svn.wordpress.org/trunk@49262


git-svn-id: http://core.svn.wordpress.org/trunk@49024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 22:23:05 +00:00
Helen Hou-Sandí a0f350b597 Post-WordPress 5.6 Beta 1 version bump.
Built from https://develop.svn.wordpress.org/trunk@49261


git-svn-id: http://core.svn.wordpress.org/trunk@49023 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 22:19:06 +00:00
Helen Hou-Sandí 7e29e531bd WordPress 5.6 Beta 1.
Built from https://develop.svn.wordpress.org/trunk@49260


git-svn-id: http://core.svn.wordpress.org/trunk@49022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 21:47:06 +00:00
Sergey Biryukov fcc04a6a37 Coding Standards: Fix WPCS issues in [49258].
See #46619.
Built from https://develop.svn.wordpress.org/trunk@49259


git-svn-id: http://core.svn.wordpress.org/trunk@49021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 21:20:07 +00:00
Helen Hou-Sandí e1e6e949ff Privacy: Add "Mark as completed" action.
Props garrett-eclipse, ocean90, joostdevalk, mista-flo, helen.
Fixes #46619.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49020 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 21:07:07 +00:00
TimothyBlynJacobs 7fe78e2f18 REST API: Make sure all supported JSON Schema keywords are output in the index.
Previously, only a small subset of keywords were exposed which limited the utility of `OPTIONS` requests.

Props raubvogel, TimothyBlynJacobs.
Fixes #51020.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 20:19:09 +00:00
Sergey Biryukov fbd8078d4e Comments: Add a filter for top level comments query arguments in `comments_template()`.
Props hellofromTonya, Howdy_McGee, garrett-eclipse, davidbaumwald, thomaslhotta.
Fixes #38074.
Built from https://develop.svn.wordpress.org/trunk@49256


git-svn-id: http://core.svn.wordpress.org/trunk@49018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 20:11:06 +00:00
Helen Hou-Sandí 5b4d643d60 Privacy: Add requester IP to password reset emails.
Props garrett-eclipse, bridgetwillard, isharis, ocean90.
Fixes #43856.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49017 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 20:03:08 +00:00
Helen Hou-Sandí 9ab2f1ae3e Upgrade/Install: Add UI for opting in to core auto-updates for major versions.
Props audrasjb, karmatosed, aaroncampbell, paaljoachim, davidbaumwald.
Fixes #50907.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49016 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 19:35:06 +00:00
Helen Hou-Sandí 874b812ce3 Upgrade/Install: Don't show theme update prompts on subsites.
If you are using `wp_prepare_themes_for_js()` and relying on `updates`/`no_updates` in multisite, you will need to filter that data back in using the `wp_prepare_themes_for_js` hook.

Props pbiron, afragen.
Fixes #49831.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 19:14:09 +00:00
TimothyBlynJacobs 499e4e9053 REST API: Introduce support for batching API requests.
A new route is introduced, `batch/v1`, that accepts a list of API requests to run. Each request runs in sequence, and the responses are returned in the order they've been received.

Optionally, the `require-all-validate` validation mode can be used to first validate each request's parameters and only proceed with processing if each request validates successfully.

By default, the batch size is limited to 25 requests. This can be controlled using the `rest_get_max_batch_size` filter. Clients are strongly encouraged to discover the maximum batch size supported by the server by making an OPTIONS request to the `batch/v1` endpoint and inspecting the described arguments.

Additionally, the two new methods, `match_request_to_handler` and `respond_to_request` introduced in [48947] now have a `protected` visibility as we don't want to expose the inner workings of the `WP_REST_Server::dispatch` API.

Batching is not currently supported for GET requests.

Fixes #50244.
Props andraganescu, zieladam, TimothyBlynJacobs.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 19:10:08 +00:00
Adam Silverstein b789b4ae11 Coding Standards: Fix WPCS issues in [49248].
See #42852.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 19:07:10 +00:00
desrosj b4853c1dd9 Twenty Twenty: Use `jshint` exclude statements instead of `eslint`.
Also, exclude the `node_modules` folder within `twentytwentyone`.

See #51526.
Built from https://develop.svn.wordpress.org/trunk@49250


git-svn-id: http://core.svn.wordpress.org/trunk@49012 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 18:34:06 +00:00
Sergey Biryukov 806cfea146 Coding Standards: Fix WPCS issues in [49242].
See #50774.
Built from https://develop.svn.wordpress.org/trunk@49249


git-svn-id: http://core.svn.wordpress.org/trunk@49011 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 18:31:07 +00:00
Adam Silverstein daa977c495 Users: improve password generation feature.
On the user edit screen improve handling and clarify language: rename the "Generate Password" and "Show password" buttons to "Set New Password". Clicking it always generates a password. Also: improve inline code comments and descriptions.

Props afercia, bookdude13, michaelarestad, pento.
Fixes #42852.


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


git-svn-id: http://core.svn.wordpress.org/trunk@49010 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 18:27:13 +00:00
desrosj 0e85b07bc8 Twenty Twenty: Import the latest changes from GitHub
For a full list of changes since [49216], see dfe141276c...trunk/.

Props poena, melchoyce, luminuu, aristath, jffng, ryelle, kishanjasani, rolfsiebers, sresok, desrosj.
See #51526.
Built from https://develop.svn.wordpress.org/trunk@49247


git-svn-id: http://core.svn.wordpress.org/trunk@49009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 18:26:06 +00:00
TimothyBlynJacobs c9f737619a REST API: Add support for the oneOf and anyOf keywords.
This allows for REST API routes to define more complex validation requirements as JSON Schema instead of procedural validation.

The error code returned from `rest_validate_value_from_schema` for invalid parameter types has been changed from the generic `rest_invalid_param` to the more specific `rest_invalid_type`.

Props yakimun, johnbillion, TimothyBlynJacobs.
Fixes #51025.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49008 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 18:24:09 +00:00
Sergey Biryukov 6e71523ead Upgrade/Install: Allow WordPress sites to opt-in to beta & RC releases.
The `WP_AUTO_UPDATE_CORE` constant now supports `beta` and `rc` values.

This makes it possible for sites to opt-in to updating to RC (or beta) releases without having to install a plugin, or run on a development version.

Props dd32, knutsp.
Fixes #51319.
Built from https://develop.svn.wordpress.org/trunk@49245


git-svn-id: http://core.svn.wordpress.org/trunk@49007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:56:06 +00:00
desrosj 69fea120db Build/Test Tools: Cancel previous active workflow runs for pull requests.
Because workflow results are reported for each commit, it’s important to let all runs against main and version branches to complete so that the checks are reported accurately.

When considering and reviewing pull requests, the only workflow run that matters is the most recent.

Props ocean90, helen.
See #50401.
Built from https://develop.svn.wordpress.org/trunk@49244


git-svn-id: http://core.svn.wordpress.org/trunk@49006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:46:05 +00:00
Sergey Biryukov 94b088339c Upgrade/Install: Restore casting `$filter_payload` to an object in `WP_MS_Themes_List_Table::prepare_items()`.
Follow-up to [48750], [49241].

See #50875.
Built from https://develop.svn.wordpress.org/trunk@49243


git-svn-id: http://core.svn.wordpress.org/trunk@49005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:44:06 +00:00
Helen Hou-Sandí c8fbc04276 Upgrade/Install: Include "from" version for plugins/themes in email.
This can help with chasing down any issues that may arise and rolling back if necessary. We hope it's not, but it might be.

Props dkotter, garrett-eclipse, pbiron, audrasjb.
Fixes #50774.

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


git-svn-id: http://core.svn.wordpress.org/trunk@49004 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:41:07 +00:00
Sergey Biryukov e38c5ca7d4 Upgrade/Install: Introduce a wrapper for the `auto_update_{$type}` filter checks.
This allows for cleaner checks whether auto-updates are forced for a plugin or theme.

Follow-up to [48750].

Props rebasaurus, garrett-eclipse, SergeyBiryukov.
Fixes #50875.
Built from https://develop.svn.wordpress.org/trunk@49241


git-svn-id: http://core.svn.wordpress.org/trunk@49003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:39:07 +00:00
desrosj 19a4b4fee4 Twenty Thirteen: Prevent incorrect link color within the Social Icon block.
Props amolv, shital-patel, poena, davidbaumwald.
Fixes #50809.
Built from https://develop.svn.wordpress.org/trunk@49240


git-svn-id: http://core.svn.wordpress.org/trunk@49002 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:35:06 +00:00
desrosj 8f7975cbea Emoji: Update Twemoji to version 13.0.1.
This release fixes minor issues with 8 different Emoji and revises the person/woman/man kneeling Emoji to be in a more obvious kneeling position.

🧎

These updates were pushed to a new, `13.0.1` folder on the CDN in [dotorg:16573].

For a full list of changes in this update, see https://github.com/twitter/twemoji/compare/v13.0.0...v13.0.1.

Props hareesh-pillai, otto42, desrosj.
Fixes #51356.
Built from https://develop.svn.wordpress.org/trunk@49239


git-svn-id: http://core.svn.wordpress.org/trunk@49001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 16:55:23 +00:00
Sergey Biryukov be5fb561ad Quick/Bulk Edit: Introduce `quick_edit_dropdown_authors_args` filter.
This allows for customizing the arguments used to generate the Quick Edit authors drop-down.

Additionally, pass the `$bulk` argument to the `quick_edit_dropdown_pages_args` filter, for consistency.

Props Mista-Flo, garrett-eclipse, hellofromTonya.
Fixes #47685.
Built from https://develop.svn.wordpress.org/trunk@49238


git-svn-id: http://core.svn.wordpress.org/trunk@49000 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 16:40:05 +00:00
Sergey Biryukov 35681b0e9a Site Health: Introduce the `WP_Site_Health::is_development_environment()` method.
This allows Site Health tests to check if the current environment type is set to `development` or `local`.

Use the new method:
* In HTTPS tests, instead of a hardcoded check for `localhost`.
* In `WP_DEBUG` and `WP_DEBUG_DISPLAY` tests, to set the status to `recommended` instead of `critical`.

Props dkotter, Clorith, DavidAnderson, joyously, knutsp, afragen, SergeyBiryukov.
Fixes #47058.
Built from https://develop.svn.wordpress.org/trunk@49237


git-svn-id: http://core.svn.wordpress.org/trunk@48999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 16:23:07 +00:00
Dominik Schilling 173b9aa122 I18N: Introduce `WP_Textdomain_Registry` to store text domains and their language directory paths.
Previously, when using `switch_to_locale()` all current loaded text domains were unloaded and added to the `$l10n_unloaded` global. This prevented the just-in-time loading for text domains after a switch. The just-in-time loading was also only possible if the translations were stored in `WP_LANG_DIR`. Both issues have been fixed.

* Adds `WP_Textdomain_Registry` to keep track of the language directory paths for all plugins and themes.
* Updates all `load_*_textdomain()`  functions to store the path in `WP_Textdomain_Registry`.
* Adds `$reloadable` parameter to `unload_textdomain()` to define whether a text domain can be loaded just-in-time again. This is used by `WP_Locale_Switcher::load_translations()`.
* Extends `_load_textdomain_just_in_time()` to also support text domains of plugins and themes with custom language directories.
* Fixes the incorrect `test_plugin_translation_after_switching_locale_twice()` test which should have catch this issue earlier.
* Adds a new test plugin/theme to test the loading of translations with a custom language directory.
* Deprecates the now unused and private `_get_path_to_translation()` and `_get_path_to_translation_from_lang_dir()` functions.

Props yoavf, swissspidy, dd32, ocean90.
See #26511.
Fixes #39210.
Built from https://develop.svn.wordpress.org/trunk@49236


git-svn-id: http://core.svn.wordpress.org/trunk@48998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 16:05:07 +00:00
Sergey Biryukov e2e3c8ec47 General: Add `$options` parameter to JSON response functions:
* `wp_send_json()`
* `wp_send_json_success()`
* `wp_send_json_error()`

This allows for customizing the options passed to `json_encode()`.

Props eroraghav, hareesh-pillai, garrett-eclipse.
Fixes #51293.
Built from https://develop.svn.wordpress.org/trunk@49235


git-svn-id: http://core.svn.wordpress.org/trunk@48997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 15:56:08 +00:00
Sergey Biryukov e856a91321 Media: Introduce a filter for `wp_get_attachment_image()` HTML output.
Props prionkor, antpb, donmhico, audrasjb, Mista-Flo, hellofromTonya.
Fixes #50801.
Built from https://develop.svn.wordpress.org/trunk@49234


git-svn-id: http://core.svn.wordpress.org/trunk@48996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 15:31:06 +00:00
Sergey Biryukov ffe497bceb Docs: Use 3-digit, x.x.x style semantic versioning for `@since 5.6.0` entries in `WP_Image_Editor_Imagick`.
See #50768.
Built from https://develop.svn.wordpress.org/trunk@49233


git-svn-id: http://core.svn.wordpress.org/trunk@48995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:54:04 +00:00
desrosj 8778aa8922 Site Health: Improve the reliability of asynchronous tests.
This change adds additional logic to catch HTTP failures that do not return a `WP_Error` object (for example, a wp-json REST API error error).

This also fixes instances where REST API callbacks performed from cron do not work due to a lack of authentication by introducing a direct callback route that asynchronous tests can register.

Props dd32, clorith, timothyblynjacobs.
Fixes #51547.
Built from https://develop.svn.wordpress.org/trunk@49232


git-svn-id: http://core.svn.wordpress.org/trunk@48994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:50:06 +00:00
Sergey Biryukov 0287a48764 Docs: Update the `@since` note for `_media_states()`.
Follow-up to [49223].

Props mukesh27.
Fixes #42063.
Built from https://develop.svn.wordpress.org/trunk@49231


git-svn-id: http://core.svn.wordpress.org/trunk@48993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:41:05 +00:00
Mike Schroder a8d8f22f4e Media: Support Stream Wrappers In `WP_Image_Editor_Imagick`
Since `WP_Image_Editor`'s introduction, stream wrappers have functioned in `WP_Image_Editor_GD`, but haven't been properly supported in `WP_Image_Editor_Imagick`.

- Detects stream wrappers and uses `file_put_contents()` along with `Imagick::read/getImageBlob()` for handling when necessary.
- Introduces private method, `WP_Image_Editor_Imagick::write_image` to handle detection and proper saving.
- Introduces `WP_Test_Stream` class for testing stream wrappers, along with new tests for Imagick's stream handling and a stream filename test.

Adds requirement for `Imagick::readImageBlob()`, available in Imagick >= 2.0.0, which aligns with the current requirement of Imagick >= 2.2.0.

Props p00ya, calin, joemcgill, pputzer, jimyaghi, mikeschroder.
Fixes #42663.
Built from https://develop.svn.wordpress.org/trunk@49230


git-svn-id: http://core.svn.wordpress.org/trunk@48992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:37:05 +00:00
desrosj b2622d5d8c Site Health: Use consistent padding around header tags.
Props vinita29, clorith.
Fixes #50638.
Built from https://develop.svn.wordpress.org/trunk@49229


git-svn-id: http://core.svn.wordpress.org/trunk@48991 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:18:08 +00:00
desrosj 8e852e099f Build/Test Tools: Download Chromium for JS tests.
Partial revert of [49227].

See #50401.
Built from https://develop.svn.wordpress.org/trunk@49228


git-svn-id: http://core.svn.wordpress.org/trunk@48990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 14:11:07 +00:00
desrosj 6cd09c0f64 Build/Test Tools: Download Chromium for E2E tests only.
This prevents Chromium from being downloaded in workflows where it is not required.

See #49621, #50649, #50401.
Built from https://develop.svn.wordpress.org/trunk@49227


git-svn-id: http://core.svn.wordpress.org/trunk@48989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 13:54:08 +00:00
youknowriad d6cff7965a Block Editor: Update the WordPress Packages to the latest version.
This includes the packages that match the Gutenberg 9.2 Release.
It is going to be the last block-editor features update for WordPress 5.6.
It also updates the block-supports code base to the latest APIs.

Props isabel_brison, noisysocks, desrosj.
Fixes #51570.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48988 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 13:36:16 +00:00
desrosj d40c365a30 Coding Standards: Correct some minor coding standards issues.
Introduced in [49154], [49212], [49223], and [49224].
Built from https://develop.svn.wordpress.org/trunk@49225


git-svn-id: http://core.svn.wordpress.org/trunk@48987 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 13:29:08 +00:00
youknowriad 8fbbd54c40 Block Editor: Expose api_version in the block type and the REST endpoint.
The new block editor included in 5.6 introduces an api_version property
that indicates which block API version the block is using. 
This commits makes this property available on the block type and the endpoint.

Props TimothyBlynJacobs, gziolo.
Fixes #51529.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48986 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 07:54:10 +00:00
Helen Hou-Sandí edb64a3d8e Media: Indicate if item is or was used as a site option in the details modal.
Props Mista-Flo, melchoyce.
Fixes #42063.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48985 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 03:14:06 +00:00
antpb 6b90568840 Media: Allow hiding of ‘View attachment page’ link in media modal.
If an empty string is supplied to the `attachment_link` filter the ‘View attachment page’ link will be hidden in the media modal.
Props limera1n, garrett-eclipse, joemcgill, Mista-Flo, hellofromTonya.
Fixes #48325.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48984 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 02:29:06 +00:00
Sergey Biryukov f7c520c1d5 Sitemaps: Center the container for sitemap content.
Props ramiy, swissspidy.
Fixes #50658.
Built from https://develop.svn.wordpress.org/trunk@49221


git-svn-id: http://core.svn.wordpress.org/trunk@48983 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 02:22:07 +00:00
desrosj d2fb6101c4 Bundled Themes: Make Twenty Twenty-One the default theme.
After being imported in [49216], Twenty Twenty-One can now be set as the default theme in WordPress.

See #48110.
Built from https://develop.svn.wordpress.org/trunk@49220


git-svn-id: http://core.svn.wordpress.org/trunk@48982 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 02:04:07 +00:00
Sergey Biryukov 9c82dfada2 Help/About: Serve the image on the Freedoms page locally.
Serving the files locally is beneficial for reasons of privacy and speed.

Props garrett-eclipse, pputzer, hellofromTonya.
Fixes #46363.
Built from https://develop.svn.wordpress.org/trunk@49219


git-svn-id: http://core.svn.wordpress.org/trunk@48981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 02:02:06 +00:00
Sergey Biryukov 5cbad34501 Help/About: Update Privacy page to include illustration.
This brings some consistency with the Freedoms page.

Follow-up to [43938].

Props melchoyce, garrett-eclipse, hareesh-pillai, ryelle.
Fixes #45395.
Built from https://develop.svn.wordpress.org/trunk@49218


git-svn-id: http://core.svn.wordpress.org/trunk@48980 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 01:47:06 +00:00
desrosj a4edd896b4 Bundled Themes: Add the theme screenshot for Twenty Twenty-One
Follow up to [49216].

See #51526.
Built from https://develop.svn.wordpress.org/trunk@49217


git-svn-id: http://core.svn.wordpress.org/trunk@48979 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 01:29:03 +00:00
desrosj 3ea8930f37 Bundled Themes: Import Twenty Twenty-One, the new default theme for WordPress 5.6.
Welcome to the bundled themes family!

Twenty Twenty-One is a blank canvas for your ideas, making the block editor your best brush.

Theme development to this point has taken place on GitHub. See: https://github.com/WordPress/twentytwentyone/.

Props poena, melchoyce, luminuu, elmastudio, bethsoderberg, williampatton, aristath, jffng, kjellr, jeffikus, audrasjb, fabiankaegy, mukesh27, dingo_d, kellylawrence, acosmin, whyisjake, metodiew, ryelle, nielslange, littlebigthing, mahesh901122, zebulan, kishanjasani, lukecavanagh, scruffian, abhijitrakas, utz119, sudoshreyansh, kau-boy, justinahinon, joostdevalk, bduclos, hareesh-pillai, mager19, rolfsiebers, webmigrates, sresok, guidooffermans, francina, marybaum, hareshlive, navanathbhosale, afercia, richtabor, joyously, sarahricker, nrqsnchz, glauberglauber, sabernhardt, kraftbj, ItsJonQ, joen, CTMartin0, decrecementofeliz, bhautikvirani.
See #51526.
Built from https://develop.svn.wordpress.org/trunk@49216


git-svn-id: http://core.svn.wordpress.org/trunk@48978 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 01:14:10 +00:00
Sergey Biryukov 651f426b3a General: Remove `noreferrer` from `wp_targeted_link_rel()` and other uses.
When `noopener noreferrer` was originally added in #37941 and related tickets, the `noreferrer` bit was specifically included due to Firefox not supporting `noopener` at the time.

Since `noopener` has been supported by all major browsers for a while, it should now be safe to remove the `noreferrer` attribute from core.

Props Mista-Flo, audrasjb, joostdevalk, jonoaldersonwp, peterwilsoncc, elgameel.
Fixes #49558.
Built from https://develop.svn.wordpress.org/trunk@49215


git-svn-id: http://core.svn.wordpress.org/trunk@48977 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 23:39:04 +00:00
Sergey Biryukov caa75a04a8 Themes: Add a return value to `set_theme_mod()` to allow for error handling.
Props latifi, hareesh-pillai.
Fixes #51296.
Built from https://develop.svn.wordpress.org/trunk@49214


git-svn-id: http://core.svn.wordpress.org/trunk@48976 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 22:45:03 +00:00
Sergey Biryukov 80be8c138d Administration: Remove obsolete `.ac_results` class references.
Core does not use the jQuery.suggest plugin since [38797].

Props afercia, hareesh-pillai, garrett-eclipse.
Fixes #40260.
Built from https://develop.svn.wordpress.org/trunk@49213


git-svn-id: http://core.svn.wordpress.org/trunk@48975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 22:33:08 +00:00
Helen Hou-Sandí bdfd1a954f Multisite: More specific caching for `get_dirsize`.
Instead of one cache entry for all upload folders for a site on multisite, this now caches for each folder and invalidates that cache based on context. In multisite, this should speed up `get_dirsize` calls since older directories that are much less likely to change will no longer have the size recalculated.

Props janthiel, A5hleyRich, batmoo.
Fixes #19879.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48974 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 21:51:06 +00:00
Sergey Biryukov 1c1aadbe54 Pings/Trackbacks: Split `do_all_pings()` into several functions:
* `do_all_pingbacks()`
* `do_all_enclosures()`
* `do_all_trackbacks()`

This allows for the specific removal/replacement of one of more services.

Props dshanske, garrett-eclipse, Mista-Flo, azaozz, hellofromTonya.
Fixes #36576.
Built from https://develop.svn.wordpress.org/trunk@49211


git-svn-id: http://core.svn.wordpress.org/trunk@48973 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 21:16:02 +00:00
Sergey Biryukov 18d3866ab2 Editor: Expose the `embed` core block on the server.
Props ntsekouras, gziolo.
Fixes #51531.
Built from https://develop.svn.wordpress.org/trunk@49210


git-svn-id: http://core.svn.wordpress.org/trunk@48972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 20:57:07 +00:00
Sergey Biryukov e209e00734 Coding Standards: Fix WPCS issues in [49207].
See #46866.
Built from https://develop.svn.wordpress.org/trunk@49209


git-svn-id: http://core.svn.wordpress.org/trunk@48971 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 20:45:06 +00:00
Sergey Biryukov 3d02b5b585 Bundled Themes: Declare support for the `html5` feature `navigation-widgets`.
Widgets that output a list of links are now wrapped within `<nav>` elements to improve semantics and accessibility.

The `<nav>` elements are native landmark regions, which helps assistive technology users to navigate through them.

Follow-up to [48349], [49177].

Props hareesh-pillai, justinahinon, afercia, williampatton.
Fixes #51445.
Built from https://develop.svn.wordpress.org/trunk@49208


git-svn-id: http://core.svn.wordpress.org/trunk@48970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 20:32:05 +00:00
antpb 9556c08b35 Media: Add 'Uploaded to' for individual media items in the media editor.
Adds a link in the media editor showing which post a media item was uploaded to.
Props karmatosed, garrett-eclipse, Mista-Flo, SergeyBiryukov, joemcgill, hellofromTonya.
Fixes #46866.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 20:29:05 +00:00
Sergey Biryukov fbc1622741 Coding Standards: Use more specific checks for `$wpdb->get_row()` results.
If `$wpdb->get_row()` is successful and the `$output` parameter has not been set, the output will be an instance of `stdClass`, so test to confirm that instead of testing against "not null".

This affects:
* `wpmu_validate_user_signup()`
* `wpmu_validate_blog_signup()`

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


git-svn-id: http://core.svn.wordpress.org/trunk@48968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 20:20:04 +00:00
antpb 9d13ae60e4 Media: Indicate if media is header video in media library.
This introduces a label to indicate if a piece of media is being used as a video header in the media library.
Props desrosj, Mista-Flo, mikeschroder.
Fixes #42929.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 18:32:07 +00:00
desrosj 570a4e8872 Build/Test Tools: Improve the clarity for PHPUnit workflow strategy.
This change makes better use of the job strategy matrix for workflows. By using `include`, the memcached and test reporting job can be configured more clearly.

Props ocean90.
See #50401.
Built from https://develop.svn.wordpress.org/trunk@49204


git-svn-id: http://core.svn.wordpress.org/trunk@48966 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 18:24:10 +00:00
Sergey Biryukov 19545d255c Widgets: Introduce `before_sidebar` and `after_sidebar` arguments for `register_sidebar()`.
Props deepaklalwani, flixos90, christophherr, dgwyer, markoheijnen, morganestes, audrasjb.
Fixes #19709.
Built from https://develop.svn.wordpress.org/trunk@49203


git-svn-id: http://core.svn.wordpress.org/trunk@48965 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 15:40:09 +00:00
Sergey Biryukov 272df00b17 Embeds: Only catch clicks from the primary mouse button in the click handler, without any modifier keys.
This ensures that Ctrl/Cmd + click to open a link in the embed iframe in a new tab works as expected.

Props timhavinga, garrett-eclipse, smerriman, swissspidy, johnbillion, Mte90, iandunn, azaozz, afercia, audrasjb, SergeyBiryukov.
Fixes #39097.
Built from https://develop.svn.wordpress.org/trunk@49202


git-svn-id: http://core.svn.wordpress.org/trunk@48964 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 13:36:08 +00:00
Sergey Biryukov 13b1b4bed3 Docs: Add a `@deprecated` note to `WP_Community_Events::format_event_data_time()`.
Follow-up to [49146].

See #51130.
Built from https://develop.svn.wordpress.org/trunk@49201


git-svn-id: http://core.svn.wordpress.org/trunk@48963 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-19 13:22:07 +00:00
Peter Wilson a08fd6ff6f Canonical: Support multiple post types in `redirect_guess_404_permalink()`.
Prevent `redirect_guess_404_permalink()` from throwing a notice when multiple post types are included in the `post_type` query.

Props junaidbhura.
Fixes #43056.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48962 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 23:23:05 +00:00
Sergey Biryukov 2716cc8048 Networks and Sites: Introduce `network_site_info_form` action.
The action fires at the end of the site info form in network admin, and complements the existing `network_site_new_form` action.

Props virgodesign.
Fixes #50704.
Built from https://develop.svn.wordpress.org/trunk@49199


git-svn-id: http://core.svn.wordpress.org/trunk@48961 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 21:17:05 +00:00
John Blackbourn 1bcda42567 Media: Add an `image_sideload_extensions` filter to the list of allowed file extensions when sideloading an image from a URL.
Props paulschreiber, hellofromTonya

Fixes #50695

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


git-svn-id: http://core.svn.wordpress.org/trunk@48960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 21:06:05 +00:00
John Blackbourn 727922c8eb Docs: Further corrections and promotions for docblocks relating to `object` types.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48959 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 20:53:08 +00:00
John Blackbourn b2515abd45 Docs: Improve the docs for the globals that are used in the actions and filters API.
See #50531, #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 19:19:06 +00:00
John Blackbourn afbfe981fc Media: Add an audio and video player to the media manager modal.
This introduces a means of playing existing audio and video files while browsing them prior to selecting them for use.

Props antpb, Mista-Flo, garrett-eclipse, mapk

Fixes #43640

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


git-svn-id: http://core.svn.wordpress.org/trunk@48957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 17:39:07 +00:00
Sergey Biryukov 1faa241fb6 Code Modernization: Use `instanceof` instead of a comparison with `get_class()`.
Includes adjusting external libraries which are no longer maintained externally.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 17:33:07 +00:00
Sergey Biryukov 0e3147c40e Coding Standards: Replace alias PHP functions with the canonical names.
Using the canonical function name for PHP functions is strongly recommended, as aliases may be deprecated or removed without (much) warning.

This replaces all uses of the following:
* `join()` with `implode()`
* `sizeof()` with `count()`
* `is_writeable()` with `is_writable()`
* `doubleval()` with a `(float)` cast

In part, this is a follow-up to #47746.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48955 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 17:27:06 +00:00
Sergey Biryukov b6f0882ddd Coding Standards: Use `self` when appropriate.
* `WP_List_Table::get_default_primary_column_name()` is a protected method, so calling it statically with the class name is bad practice.
* Similarly, this applies when calling a private constructor in `WP_Screen::get()`.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48954 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 17:18:07 +00:00
John Blackbourn a01f94cad8 Administration: Allow `WP_List_Table::get_bulk_items()` to receive a nested array in order to output optgroups.
The allowed format for bulk actions is now an associative array where each element represents either a top level option value and label, or an array representing an optgroup and its options.

For a standard option, the array element key is the field value and the array element value is the field label.

For an optgroup, the array element key is the label and the array element value is an associative array of options as above.

Props goldenapples, mattkeys, valentinbora, davidbaumwald

Fixes #19278

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


git-svn-id: http://core.svn.wordpress.org/trunk@48952 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 16:22:10 +00:00
Drew Jaynes 68cff74f62 Docs: Clarify documentation for what the 'count' orderby argument represents in `WP_Term_Query`.
Props jeremyescott.
Fixes #44443.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48951 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 08:23:06 +00:00
Sergey Biryukov 120291367a Formatting: Deprecate `wp_slash_strings_only()` in favor of `wp_slash()`.
The reason for introducing `wp_slash_strings_only()` in [46454] was to keep non-string values untouched.

Later, `wp_slash()` itself was updated in [48433] to prevent changing non-string values.

To avoid confusion, `wp_slash_strings_only()` is now deprecated.

Props ayeshrajans, ocean90.
Fixes #50635.
Built from https://develop.svn.wordpress.org/trunk@49188


git-svn-id: http://core.svn.wordpress.org/trunk@48950 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 06:57:04 +00:00
Sergey Biryukov 2f5aa85065 Comments: Hide the link to the initial parent comment in the reply heading when replying to another comment.
This ensures that the reply heading is updated correctly on single post URLs with the `?replytocom` query argument.

Follow-up to [47506], [48876], [48904].

Props mailnew2ster, wpamitkumar, audrasjb, desrosj, SergeyBiryukov.
Fixes #51175.
Built from https://develop.svn.wordpress.org/trunk@49187


git-svn-id: http://core.svn.wordpress.org/trunk@48949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 06:41:04 +00:00
Sergey Biryukov 5892cd545e Code Modernization: Remove unnecessary reference sign from `PO::export_entry()` definition.
This fixes a PHP 8 "argument must be passed by reference, value given" error when using `array_map()` in `PO::export_entries()`.

Object variables in PHP 5+ contain a reference to the object, and it's the reference that's passed around.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-18 06:29:05 +00:00
Sergey Biryukov e2d191f710 Revisions: Explicitly declare the `Text_Diff::_getTempDir()` method as `static`.
This fixes a "Non-static method cannot be called statically" fatal error on PHP 8.

Props jrf.
Fixes #51559.
Built from https://develop.svn.wordpress.org/trunk@49185


git-svn-id: http://core.svn.wordpress.org/trunk@48947 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 16:36:07 +00:00
Sergey Biryukov 30d9432760 Code Modernization: Use explicit visibility for class property declarations.
Using `var` or only `static` to declare a class property is PHP 4 code.

This updates the codebase to use explicit visibility modifiers introduced in PHP 5.

Props jrf.
Fixes #51557. See #22234.
Built from https://develop.svn.wordpress.org/trunk@49184


git-svn-id: http://core.svn.wordpress.org/trunk@48946 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 16:26:09 +00:00
John Blackbourn c16ae60deb Docs: Fix and upgrade various `object` docblock notations.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48945 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 16:05:09 +00:00
Sergey Biryukov 9d6a2d1c33 Feeds: Fix "Only variables should be passed by reference" PHP notice in `atomlib.php`.
Props jrf.
Fixes #51558.
Built from https://develop.svn.wordpress.org/trunk@49182


git-svn-id: http://core.svn.wordpress.org/trunk@48944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 15:45:06 +00:00
John Blackbourn 5a573f28f2 Docs: Miscellaneous docblock fixes.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48943 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 14:54:05 +00:00
John Blackbourn ee96f93558 Administration: Fix a coding standards issue after [49179].
See #50699

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


git-svn-id: http://core.svn.wordpress.org/trunk@48942 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 12:34:08 +00:00
Andrew Ozz 59c45c41e4 Fix and improve arranging of postboxes/metaboxes:
- Enable arranging only when the Screen Options tab is open.
- Prevent accidental/unintended dragging. Seen it happen mostly on laptops when using the mousepad/trackpad.
- Improve discoverability and usefulness by always showing the "drop zones" outline when postboxes are draggable/arrangeable.
- Add some (brief) explanation to the Screen Options tab helping the user understand what options are available and how to change them. This is especially helpful for screen reader users to give an idea how to use the screen options and what to expect.
- Fix/enhance some of the code in `postbox.js` and make it coding standards compliant.

See #50699.
Built from https://develop.svn.wordpress.org/trunk@49179


git-svn-id: http://core.svn.wordpress.org/trunk@48941 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 10:00:06 +00:00
Sergey Biryukov c5f1d21020 Administration: Wrap the list table items count to a new line on small screens.
This avoids overlapping with action buttons and brings some consistency to bottom paddings across various screens.

Props passoniate, afercia, anuj2, rolfsiebers, uxkai, ireneyoast, thijsvanloef, hellofromTonya, audrasjb, helen, SergeyBiryukov.
Fixes #49246.
Built from https://develop.svn.wordpress.org/trunk@49178


git-svn-id: http://core.svn.wordpress.org/trunk@48940 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-17 01:13:06 +00:00
Sergey Biryukov 6dba11fb82 Accessibility: Widgets: Conditionally wrap the tag cloud widget in a `<nav>` element.
If the theme declares support for the `html5` feature `navigation-widgets`, the tag cloud widget is now wrapped in a `<nav>` element to improve semantics and accessibility.

The `<nav>` elements are native landmark regions, which helps assistive technology users to navigate through them.

Follow-up to [48349] for other widgets.

Props audrasjb, justinahinon, ravipatel.
Fixes #51455. See #48170.
Built from https://develop.svn.wordpress.org/trunk@49177


git-svn-id: http://core.svn.wordpress.org/trunk@48939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 18:32:06 +00:00
desrosj fd1c2cb401 External Libraries: Update the SimplePie library to version 1.5.6.
This version fixes a handful of PHP 8 compatibility issues.

A full list of changes included in this update can be found on GitHub: https://github.com/simplepie/simplepie/compare/1.5.5...1.5.6.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48938 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 17:20:07 +00:00
desrosj c72bd8c75c Build/Test Tools: Specify the full working directory for PHPCS
Props ocean90.
See #50401.
Built from https://develop.svn.wordpress.org/trunk@49175


git-svn-id: http://core.svn.wordpress.org/trunk@48937 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 17:14:06 +00:00
Mike Schroder 9cdd649768 Media: Work around `use-cropbox` bug in Ghostscript 8.70
Wraps `Imagick::readImage()` for PDFs with exception handling, trying again without `use-cropbox` if this fails.

Introduces `WP_Image_Editor_Imagick::pdf_load_source()`.

Works around a known issue in Ghostscript 8.70 (fixed in 8.71) that results in a stack underflow.
While it only affects this version, it remains a common version found on hosts, and prevented some PDF thumbnails from being generated.

See this Ghostscript bug for more details: https://bugs.ghostscript.com/show_bug.cgi?id=690676

Props azaozz, joseaneto, cranewest, dantahoua, n5hzr, mikeschroder.
Fixes #48853.
Built from https://develop.svn.wordpress.org/trunk@49174


git-svn-id: http://core.svn.wordpress.org/trunk@48936 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 10:48:07 +00:00
Sergey Biryukov 6c13cdd533 Docs: Add `@since` tags for the `fire_after_hooks` parameter of `wp_insert_post()`, `wp_update_post()`, and `wp_insert_attachment()`.
Document the parameter as optional.

Follow-up to [49172].

See #45114.
Built from https://develop.svn.wordpress.org/trunk@49173


git-svn-id: http://core.svn.wordpress.org/trunk@48935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 09:40:10 +00:00
Peter Wilson 32d193f96f REST API, Posts: Add a hook to fire once a post, its terms and meta update.
Introduces the action `wp_after_insert_post` inside a wrapper function of the same name. This hook allows plugin developers to access a posts full data (including its terms and meta data) regardless of the workflow used to save it.

A new parameter is introduced to `wp_insert_post()` to indicate whether the hook should be fired within the function call or will be fired afterward.

Props aristath, Collizo4sky, danielbachhuber, joyously, kadamwhite, kraftbj, markparnell, mikeschroder, noisysocks, peterwilsoncc, SergeyBiryukov, talldanwp, thewebprincess, TimothyBlynJacobs.
Fixes #45114.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 03:34:08 +00:00
Peter Wilson cd8b13842f Taxonomy: Fix warnings thrown by custom term count callbacks.
Add a `use` to a closure to avoid an undefined variable throwing a warning. Adds unit tests to ensure the custom callbacks run as expected when defined.

Follow up to [49141].
Props ocean90, dd32.
Fixes #40351.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48933 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 02:43:06 +00:00
Sergey Biryukov 81ce3c1335 Privacy: Denote removed suggested privacy policy text in a more noticeable way.
Props garrett-eclipse, sabernhardt, audrasjb.
Fixes #51435.
Built from https://develop.svn.wordpress.org/trunk@49170


git-svn-id: http://core.svn.wordpress.org/trunk@48932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 01:29:09 +00:00
desrosj 00725c7015 Build/Test Tools: Change the event that triggers the “Welcome” workflow.
When a contributor opens their first pull request to `wordpress-develop`, the “Welcome” workflow runs and leaves a comment with guidance, helpful information, and resources.

However, because a workflow run triggered by the `pull_request` event runs against the workflow and code from the merge commit, the needed context and permissions to comment on the pull request are missing. By changing the trigger event to `pull_request_target`, the workflow runs against the workflow and code in the base of the pull request and is able to comment on when appropriate.

See #50401.
Built from https://develop.svn.wordpress.org/trunk@49169


git-svn-id: http://core.svn.wordpress.org/trunk@48931 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 00:39:08 +00:00
desrosj 4aa3f160e7 Build/Test Tools: Do not cancel previous workflow runs.
When a workflow is cancelled, it’s marked as a failure. This is not ideal because the commit attached to the workflow run will appear as though it introduced a problem, but this may not be true.

Because GitHub Actions work a bit differently than Travis builds, it’s unlikely that the same bottleneck will be encountered in workflows.

This change removes all workflow job steps that cancel previous workflows.

See #50401.
Built from https://develop.svn.wordpress.org/trunk@49168


git-svn-id: http://core.svn.wordpress.org/trunk@48930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-16 00:27:05 +00:00
Sergey Biryukov df51aa9b6f Upgrade/Install: Check if plugin or theme update results are available before applying the notification filters.
This avoids a PHP notice for an undefined index of either `plugin` or `theme` in the `auto_{plugin|theme}_update_send_email` filter hook.

Props afragen, audrasjb.
Fixes #51400.
Built from https://develop.svn.wordpress.org/trunk@49166


git-svn-id: http://core.svn.wordpress.org/trunk@48928 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 23:27:03 +00:00
desrosj 3c1961faa1 External Libraries: Update React, ReactDOM and Lodash.
This updates:
- `react` and `react-dom` from `16.9.0` to `16.13.1`.
- `lodash from `4.17.15` to `4.17.19`.

Props isabel_brison.
Fixes #51505.
Built from https://develop.svn.wordpress.org/trunk@49165


git-svn-id: http://core.svn.wordpress.org/trunk@48927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 23:08:26 +00:00
Sergey Biryukov 82e4f7ed8f Bootstrap/Load: Don't assume `WP_CONTENT_DIR` is defined.
When the `mysql` extention isn't loaded and a custom db dropin is not in place, we give folks a nice error. However, we can't assume that the `WP_CONTENT_DIR` constant is set yet since this runs before we define default constants.

This fixes a PHP 8 error.

Props jorbin.
Merges [49161] to trunk.
See #50913.
Built from https://develop.svn.wordpress.org/trunk@49163


git-svn-id: http://core.svn.wordpress.org/trunk@48925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 21:16:10 +00:00
desrosj 91d8b30824 Build/Test Tools: Introduce GitHub Action workflows.
This change introduces 6 different workflows accounting for all of the testing and analysis currently performed in Travis CI & Appveyor:

- Checking PHP & JS coding standards are followed
- Running the end-to-end test suite.
- Running QUnit tests on JavaScript files.
- Scanning for PHP compatibility issues with supported version.
- Running the PHPUnit test suite.
- Verifying NPM related tasks do not cause errors on Windows.

Additionally, a seventh workflow is included that will leave a "welcome" comment when a contributor opens their first pull request to the `wordpress-develop` mirror.

These workflows are currently in an experimental phase. For that reason, Travis CI and Appveyor will continue to run until all of the bugs can be worked out.

Props ayeshrajans, helen, ocean90, desrosj.
See #50401.
Built from https://develop.svn.wordpress.org/trunk@49162


git-svn-id: http://core.svn.wordpress.org/trunk@48924 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 19:42:09 +00:00
Sergey Biryukov f0ac0275e8 Comments: Further remove unnecessary context switch in `Walker_Comment`.
Follow-up to [49157].

See #51533.
Built from https://develop.svn.wordpress.org/trunk@49160


git-svn-id: http://core.svn.wordpress.org/trunk@48922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 15:26:05 +00:00
Sergey Biryukov 3b7a8a7eca Twenty Nineteen: Remove extra space from the comment link in `TwentyNineteen_Walker_Comment`.
Fixes #51533.
Built from https://develop.svn.wordpress.org/trunk@49159


git-svn-id: http://core.svn.wordpress.org/trunk@48921 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 15:24:08 +00:00
Sergey Biryukov 2d6ec60e04 Twenty Twenty: Remove extra space from the comment link in `TwentyTwenty_Walker_Comment`.
See #51533.
Built from https://develop.svn.wordpress.org/trunk@49158


git-svn-id: http://core.svn.wordpress.org/trunk@48920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 15:13:07 +00:00
Sergey Biryukov c7d43b7f57 Comments: Remove extra space from the comment link in `Walker_Comment`.
Props poena, mukesh27, SergeyBiryukov.
See #51533.
Built from https://develop.svn.wordpress.org/trunk@49157


git-svn-id: http://core.svn.wordpress.org/trunk@48919 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 15:07:09 +00:00
TimothyBlynJacobs a91cc19c1c REST API: Exclude custom site health capability check on multisite.
Super admins will always pass capability checks.

Follow up to [49154], [49155].
See #48105.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 02:28:05 +00:00
TimothyBlynJacobs 1ec225ee3f REST API: Grant super admin to site health test user.
The current user needs to be a super admin to access Site Health on multisite.

Follow up to [49154].
See #48105.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48917 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 02:13:04 +00:00
TimothyBlynJacobs 039ce3f16f Site Health, REST API: Move async tests to REST API endpoints.
This provides more flexibility when writing tests and benefits from running in a front-end context which is necessary for some tests like checking that updates are supported. Additionally, this provides a more robust interface for developers who want to integrate with Site Health tests.

Because the `wp/v2` endpoint is reserved for modeling core entities, site health is registered in its own `wp-site-health/v1` namespace.

The existing ajax actions have been maintained for backward compatibility.

Props Clorith, chrisvanpatten, afragen, pokhriyal, TimothyBlynJacobs.
Fixes #48105.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48916 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 02:00:08 +00:00
Sergey Biryukov 22c86907c4 Docs: Improve description of the `$email` parameter in `email_exists()`.
Follow-up to [49148].

Props garrett-eclipse.
See #51379.
Built from https://develop.svn.wordpress.org/trunk@49153


git-svn-id: http://core.svn.wordpress.org/trunk@48915 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-15 00:16:08 +00:00
iandunn 8d2beacd45 Community Events: Update timezone-related `@since` tags to `5.5.2`.
r49145 and r49146 were originally planned for 5.6 when they were committed, but are now planned for 5.5.2.

See #51130.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 21:35:05 +00:00
Dominik Schilling c6f7e0f155 I18N: Use `wp.i18n` for translatable strings in `wp-admin/js/dashboard.js`.
* Deprecate the `l10n` property on `communityEventsData`.
* Introduce `version` parameter for `deprecateL10nObject` and backfill the version for deprecated objects in 5.5.0.
* Add a noop version of `deprecateL10nObject` for QUnit testing.

Fixes #51498.
Built from https://develop.svn.wordpress.org/trunk@49151


git-svn-id: http://core.svn.wordpress.org/trunk@48913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 21:13:08 +00:00
Helen Hou-Sandí 8ce5e19a65 Updates: Reduce secondary buttons for less visual complexity.
Props audrasjb, karmatosed.
Fixes #51523.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 20:27:09 +00:00
Helen Hou-Sandí 0e4d84b105 Admin Menu: Better wrapping for long menu item names.
Props munyagu, jagirbaheshwp, harshbarach, pratikkry, hareesh-pillai, naveenkharwar, mukesh27, chetan200891, dushanthi, worldweb, audrasjb, afercia, amolv, iqbalbary, davidbaumwald, sabernhardt, johnjamesjacoby, garrett-eclipse, garrett-eclipse.
Fixes #42201.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 19:53:08 +00:00
Sergey Biryukov 118b9aea4d Users: Introduce `email_exists` filter, to complement `username_exists`.
Props garrett-eclipse, apermo, mukesh27, Mista-Flo, sebastian.pisula, mikelopez.
Fixes #51379. See #35509.
Built from https://develop.svn.wordpress.org/trunk@49148


git-svn-id: http://core.svn.wordpress.org/trunk@48910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 19:04:08 +00:00
iandunn bb67dde689 Community Events: Apply coding standards.
The previous commits intentionally didn't include these, because it would have added an unreasonable amount of diff noise.

See #51130

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


git-svn-id: http://core.svn.wordpress.org/trunk@48909 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 18:23:04 +00:00
iandunn 5bf0005827 Community Events: Display dates and times in the user's time zone.
Fixes #51130
Props sippis, hlashbrooke, audrasjb, Rarst, iandunn

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


git-svn-id: http://core.svn.wordpress.org/trunk@48908 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 18:21:06 +00:00
iandunn 5d42748c18 Community Events: Trim events by Unix timestamp for accuracy.
The `date` and `end_date` fields are ''WP'' timestamps representing the venue's local time. As of meta:changeset:10270 (#meta4480), new `start_unix_timestamp` and `end_unix_timestamp` values are available, providing a proper ''Unix'' timestamp in the  UTC timezone. Using those is more precise, and removes the time window where the event has expired but still appears in the Events Widget.

To simplify the function, it now only accepts and returns the events themselves, rather than the entire response body.

See #51130
See #meta4480
Related: https://make.wordpress.org/core/2019/09/23/date-time-improvements-wp-5-3/

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


git-svn-id: http://core.svn.wordpress.org/trunk@48907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 18:19:10 +00:00
Sergey Biryukov 542d13830b General: Move `wp_array_get()` next to `wp_array_slice_assoc()`, for a bit more consistent placement.
Follow-up to [49135], [49143].

See #51461.
Built from https://develop.svn.wordpress.org/trunk@49144


git-svn-id: http://core.svn.wordpress.org/trunk@48906 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 02:16:08 +00:00
Sergey Biryukov 620c069fe8 General: Move `wp_array_get()` from a separate file to `wp-includes/functions.php`, for consistency.
Add missing `@since` tag, adjust the DocBlock per the documentation standards.

Follow-up to [49135].

Props isabel_brison, ocean90.
Fixes #51461.
Built from https://develop.svn.wordpress.org/trunk@49143


git-svn-id: http://core.svn.wordpress.org/trunk@48905 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 02:10:04 +00:00
Sergey Biryukov a706c4505e Administration: Make sure list table row actions in Extended view stay visible when a single row gets focus.
Follow-up to [48398], [48423], [48424], [48450], [48670].

Props ryelle.
Fixes #51516. See #49715.
Built from https://develop.svn.wordpress.org/trunk@49142


git-svn-id: http://core.svn.wordpress.org/trunk@48904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 02:02:06 +00:00
Peter Wilson fa5a6c8622 Taxonomy: Improve performance of term recounting database queries.
When modifying terms assigned to an object, replace full term recounts with incrementing/decrementing the count as appropriate. This provides a significant performance boost on sites with a high number of term/object relationships and/or posts.

Introduces the functions `wp_increment_term_count()`, `wp_decrement_term_count()`, `wp_modify_term_count_by()` and `wp_modify_term_count_by_now()` for updating the term count.

Introduces the function `_wp_prevent_term_counting()` for preventing double counting on posts that are about to transition.

Adds the parameter `update_count_by_callback` to `register_taxonomy()` to allow developers to use a custom callback for incrementing or decrementing a term count.

Props boonebgorges, davidbaumwald, hellofromTonya, johnbillion, lcyh78, mattoperry, peterwilsoncc, rebasaurus, whyisjake.
Fixes #40351.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48903 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 00:51:06 +00:00
Sergey Biryukov 8859aea3e2 Tests: Correct the message in a sitemaps test for getting a URL list for a custom taxonomy that is not publicly queryable.
Follow-up to [48474].

See #51344, #50607.
Built from https://develop.svn.wordpress.org/trunk@49140


git-svn-id: http://core.svn.wordpress.org/trunk@48902 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-14 00:27:07 +00:00
Dominik Schilling 4dfe5ecfe1 Users: Enable Application Passwords for local development environments, even if HTTPS is not available.
This will make testing the new feature easier since the local development environment is only accessible via HTTP by default.
Also update docs to link to the relevant filters.

See #42790.
Fixes #51503.
Built from https://develop.svn.wordpress.org/trunk@49139


git-svn-id: http://core.svn.wordpress.org/trunk@48901 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 20:10:04 +00:00
Dominik Schilling 7137daec42 Administration: Restore alternative admin menu position for menu items with the same position value as an existing menu item.
Reverts parts of [49108].

Props johnjamesjacoby.
Fixes #42918.
Built from https://develop.svn.wordpress.org/trunk@49138


git-svn-id: http://core.svn.wordpress.org/trunk@48900 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 19:59:08 +00:00
Sergey Biryukov 6fe59c4bdc Sitemaps: Check the result of `get_term_link()` when collecting the URLs in `WP_Sitemaps_Taxonomies::get_url_list()`.
This avoids a PHP warning during sitemap generation if `get_term_link()` returns an error, e.g. due to term ID being shared between multiple taxonomies.

Additionally, pass the `$taxonomy` argument to `get_term_link()` to properly disambiguate the call.

Props dd32.
Fixes #51416.
Built from https://develop.svn.wordpress.org/trunk@49137


git-svn-id: http://core.svn.wordpress.org/trunk@48899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 15:04:07 +00:00
Sergey Biryukov 1ef20f8638 External Libraries: Upgrade PHPMailer to version 6.1.8.
For a full list of changes in this update, see the PHPMailer GitHub:
https://github.com/PHPMailer/PHPMailer/compare/v6.1.7...v6.1.8

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


git-svn-id: http://core.svn.wordpress.org/trunk@48898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 14:00:10 +00:00
jorgefilipecosta b667105f60 Editor: update packages; Port block supports to WordPress core.
The following package versions were changed:
@wordpress/a11y: 2.11.0 -> 2.13.0
@wordpress/annotations: 1.20.4 -> 1.22.0
@wordpress/api-fetch: 3.18.0 -> 3.20.0
@wordpress/autop: 2.9.0 -> 2.10.0
@wordpress/blob: 2.9.0 -> 2.10.0
@wordpress/block-directory: 1.13.7 -> 1.16.0
@wordpress/block-editor: 4.3.7 -> 5.0.0
@wordpress/block-library: 2.22.7 -> 2.25.0
@wordpress/block-serialization-default-parser: 3.7.0 -> 3.8.0
@wordpress/blocks: 6.20.3 -> 6.23.0
@wordpress/components: 10.0.6 -> 11.0.0
@wordpress/compose: 3.19.3 -> 3.21.0
@wordpress/core-data: 2.20.3 -> 2.23.0
@wordpress/data: 4.22.3 -> 4.24.0
@wordpress/data-controls: 1.16.3 -> 1.18.0
@wordpress/date: 3.10.0 -> 3.12.0
@wordpress/deprecated: 2.9.0 -> 2.10.0
@wordpress/dom: 2.13.1 -> 2.15.0
@wordpress/dom-ready: 2.10.0 -> 2.11.0
@wordpress/e2e-test-utils: 4.11.2 -> 4.14.0
@wordpress/edit-post: 3.21.7 -> 3.24.0
@wordpress/editor: 9.20.7 -> 9.23.0
@wordpress/element: 2.16.0 -> 2.18.0
@wordpress/escape-html: 1.9.0 -> 1.10.0
@wordpress/format-library: 1.22.7 -> 1.24.0
@wordpress/hooks: 2.9.0 -> 2.10.0
@wordpress/html-entities: 2.8.0 -> 2.9.0
@wordpress/i18n: 3.14.0 -> 3.16.0
@wordpress/icons: 2.4.0 -> 2.7.0
@wordpress/is-shallow-equal: 2.1.0 -> 2.3.0
@wordpress/keyboard-shortcuts: 1.9.3 -> 1.11.0
@wordpress/keycodes: 2.14.0 -> 2.16.0
@wordpress/library-export-default-webpack-plugin: 1.7.0 -> 1.9.0
@wordpress/list-reusable-blocks: 1.21.6 -> 1.23.0
@wordpress/media-utils: 1.15.0 -> 1.17.0
@wordpress/notices: 2.8.3 -> 2.10.0
@wordpress/nux: 3.20.6 -> 3.22.0
@wordpress/plugins: 2.20.3 -> 2.22.0
@wordpress/primitives: 1.7.0 -> 1.9.0
@wordpress/priority-queue: 1.7.0 -> 1.9.0
@wordpress/redux-routine: 3.10.0 -> 3.12.0
@wordpress/rich-text: 3.20.4 -> 3.22.0
@wordpress/scripts: 12.1.1 -> 12.3.0
@wordpress/server-side-render: 1.16.6 -> 1.18.0
@wordpress/shortcode: 2.9.0 -> 2.11.0
@wordpress/token-list: 1.11.0 -> 1.13.0
@wordpress/url: 2.17.0 -> 2.19.0
@wordpress/viewport: 2.21.3 -> 2.23.0
@wordpress/warning: 1.2.0 -> 1.3.0
@wordpress/wordcount: 2.10.0 -> 2.12.0

Props isabel_brison, youknowriad, mcsf.
Fixes #51461.
Built from https://develop.svn.wordpress.org/trunk@49135


git-svn-id: http://core.svn.wordpress.org/trunk@48897 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 13:10:30 +00:00
Andrew Ozz 2c5953e876 Add `svn:eol-style native` to new files.
See #50564.
Built from https://develop.svn.wordpress.org/trunk@49134


git-svn-id: http://core.svn.wordpress.org/trunk@48896 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-13 09:20:06 +00:00
TimothyBlynJacobs ba5b09af09 REST API: Add HTTP/1.0 emulation to wp.apiRequest().
This allows for making REST API calls with the PUT and DELETE HTTP methods that may be blocked or unsupported by some server configurations.

Props yakimun.
Fixes #43605.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48895 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-12 20:11:06 +00:00
TimothyBlynJacobs 49a399db05 REST API: Introduce search post format handler.
This allows for clients to search the used post formats via the /wp/v2/search endpoint by using a type=post-format query parameter.
Fixes #51459.
Props andraganescu, zieladam, noisysocks, TimothyBlynJacobs.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48894 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-12 19:54:05 +00:00
Sergey Biryukov e36a4a7db9 Rewrite Rules: Add missing newline to the `HTTP_AUTHORIZATION` rewrite rule.
Follow-up to [49109].

Props nendeb55, georgestephanis, johnbillion.
Fixes #51495. See #42790.
Built from https://develop.svn.wordpress.org/trunk@49131


git-svn-id: http://core.svn.wordpress.org/trunk@48893 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-12 19:10:07 +00:00
Sergey Biryukov 69217eb85b Docs: Correct comments in `wpmu_new_site_admin_notification()` per the documentation standards.
See #42134.
Built from https://develop.svn.wordpress.org/trunk@49130


git-svn-id: http://core.svn.wordpress.org/trunk@48892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-12 15:47:11 +00:00
jorgefilipecosta 1c7ebdab9f Add wp-packages-update command to update WordPress packages.
This ticket exposes the packages-update script implemented at https://github.com/WordPress/gutenberg/pull/19448 on WordPress core.
By running "npm run wp-packages-update" all the WordPress packages are updated to the latest version. The command is very useful when updating the Gutenberg editor core exposes.

Props isabel_brison.
Fixes #51491.
Built from https://develop.svn.wordpress.org/trunk@49129


git-svn-id: http://core.svn.wordpress.org/trunk@48891 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-12 12:01:09 +00:00
John Blackbourn 33070fb7d2 Media: Allow the `gallery_shortcode()` and `get_image_tag()` functions to correctly accept an array of image dimensions.
These functions did previously accept an array of image dimensions but their class attributes were not properly constructed.

Fixes #51362

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


git-svn-id: http://core.svn.wordpress.org/trunk@48890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-11 20:01:06 +00:00
John Blackbourn e11accb411 Networks and Sites: Extract into a new function the email that gets sent to the network administrator when a new site is created, and introduce filters to disable and modify its
contents.

* The `send_new_site_email` filter can be used to disable this email.
* The `new_site_email` filter can be used to modify its contents.

Props Dhruvin, Dharm1025, dharmin16, jipmoors

Fixes #42134

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


git-svn-id: http://core.svn.wordpress.org/trunk@48889 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-11 19:29:08 +00:00
Sergey Biryukov 8d945f4811 Tests: Use `assertSame()` in `test_edit_user_blank_password()`, for consistency with other assertions.
Follow-up to [49118].

See #42766, #38266.
Built from https://develop.svn.wordpress.org/trunk@49126


git-svn-id: http://core.svn.wordpress.org/trunk@48888 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-11 15:51:06 +00:00
John Blackbourn bd1fa2d998 Posts, Post Types: Switch to restoring posts to `draft` status by default when they are untrashed.
This allows for edits to be made to a restored post before it goes live again. This also prevents scheduled posts being published unexpectedly if they are untrashed after their originally scheduled date.

The old behaviour of restoring untrashed posts to their original status can be reinstated using the `wp_untrash_post_set_previous_status()` helper function.

Also fixes an issue where the incorrect post ID gets passed to hooks if no post ID is passed to the function.

Props harrym, bananastalktome, jaredcobb, chriscct7, melchoyce, johnbillion, pankajmohale

Fixes #23022

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


git-svn-id: http://core.svn.wordpress.org/trunk@48887 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-11 13:39:07 +00:00
Sergey Biryukov 9bfc867e66 Docs: Correct comments in `test_wp_add_dashboard_widget()` per the documentation standards.
See #42791.
Built from https://develop.svn.wordpress.org/trunk@49124


git-svn-id: http://core.svn.wordpress.org/trunk@48886 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-11 02:37:07 +00:00
John Blackbourn da04189357 Administration: Allow context and priority to be specified when adding dashboard widgets.
Props davidjlaietta, soulseekah, johnbillion

Fixes #42791

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


git-svn-id: http://core.svn.wordpress.org/trunk@48885 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 20:40:05 +00:00
John Blackbourn cdd8b2cbfa Site Health: Remove an unused function that was erroneously added when the site health feature was introduced.
This function was and is never used as the `is_in_debug_mode` check is a direct one.

Fixes #50282

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


git-svn-id: http://core.svn.wordpress.org/trunk@48884 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 20:24:03 +00:00
John Blackbourn a7fafb3a1b Build/Test Tools: Set the local development environment to a `local` environment type by default.
Props igorradovanov, TimothyBlynJacobs

Fixes #50903

See #33161

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


git-svn-id: http://core.svn.wordpress.org/trunk@48883 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 20:15:04 +00:00
John Blackbourn 905460bd5e Docs: Standardise the type name for booleans and integers.
This brings these docs inline with the documentation standards.

Props ravipatel, justinahinon

Fixes #51426

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


git-svn-id: http://core.svn.wordpress.org/trunk@48882 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 20:02:05 +00:00
John Blackbourn 6b7ba33d68 Docs: Fix the types for some properties and parameters that use the generic `object` type.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48881 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 19:14:04 +00:00
Adam Silverstein e3d280ffd8 Users: prevent saving empty passwords, trim space from password ends on save.
Fix an issue where users could save a password with only spaces, or spaces at the beginning or end of their password, preventing them from logging in.

Props ronakganatra, 1naveengiri, ajensen, oolleegg55, bookdude13, nrqsnchz, aristath.
Fixes #42766.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 16:51:07 +00:00
Sergey Biryukov 3e10f5a7e8 Tests: Update third-party video URLs in unit tests with more permanent videos.
This brings some consistency to the YouTube and Vimeo URLs used for tests:

* For YouTube, use the video of WordPress 5.0 release.
* For Vimeo, use one of the official test videos.

Props garrett-eclipse, dd32.
Fixes #51487. See #meta5467.
Built from https://develop.svn.wordpress.org/trunk@49117


git-svn-id: http://core.svn.wordpress.org/trunk@48879 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-10 01:39:11 +00:00
John Blackbourn c1401d7009 General: Docblock improvements for the `WP_Error` class.
Props garrett-eclipse

See #38777

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


git-svn-id: http://core.svn.wordpress.org/trunk@48878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 22:30:04 +00:00
John Blackbourn 543b14ed0a General: Introduce the ability to merge multiple `WP_Error` objects into one another, and to store more than one item of data for an error.
This allows multiple errors to be instantiated independently but collected into one without having to manually combine their properties.

Props rmccue, dlh, TimothyBlynJacobs

Fixes #38777

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


git-svn-id: http://core.svn.wordpress.org/trunk@48877 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 22:22:05 +00:00
iandunn 92dacfafaf Dashboard: Show `2` w.org news items to preserve clustered posts.
These days there are often 2 posts published close to each other, like a release announcement and a Month In WordPress post. When that happens, the earlier post is often pushed out of the widget before many people have had a chance to see it.

Ideally, the number of total items would remain at `4`, to reduce visual clutter. Implementing a conditional item would require a significant refactor, though. Increasing the total number of items to `5` is a practical compromise.

Props hlashbrooke, tellyworth.
Fixes #43441.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 16:07:07 +00:00
Sergey Biryukov c628344422 Accessibility: Widgets: Add a "Cancel" link when editing a widget in accessibility mode.
This allows the user to go back without saving any changes to the widget.

Props garrett-eclipse, audrasjb, afercia.
Fixes #49354.
Built from https://develop.svn.wordpress.org/trunk@49113


git-svn-id: http://core.svn.wordpress.org/trunk@48875 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 15:53:08 +00:00
Sergey Biryukov 7a622f6ffd Tests: Use consistent wording for the `$position` parameter in `add_submenu_page()` tests.
This replaces the instances of `$priority` with `$position`, to match the actual parameter name and avoid confusion.

Follow-up to [46197].

See #51344, #39776.
Built from https://develop.svn.wordpress.org/trunk@49112


git-svn-id: http://core.svn.wordpress.org/trunk@48874 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 13:29:06 +00:00
Sergey Biryukov 4419f9b889 Docs: Correct description for `wp_set_comment_status` hook.
The action fires immediately after transitioning a comment's status from one to another in the database and removing the comment from the object cache, but prior to all status transition hooks.

Props davidbaumwald, henry.wright.
Fixes #51481.
Built from https://develop.svn.wordpress.org/trunk@49111


git-svn-id: http://core.svn.wordpress.org/trunk@48873 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 01:28:04 +00:00
Sergey Biryukov 5affd982a0 I18N: Add missing placeholders in some translator comments.
Follow-up to [49109].

See #42790.
Built from https://develop.svn.wordpress.org/trunk@49110


git-svn-id: http://core.svn.wordpress.org/trunk@48872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-09 01:06:03 +00:00
TimothyBlynJacobs d5ebe12f11 REST API: Introduce Application Passwords for API authentication.
In WordPress 4.4 the REST API was first introduced. A few releases later in WordPress 4.7, the Content API endpoints were added, paving the way for Gutenberg and countless in-site experiences. In the intervening years, numerous plugins have built on top of the REST API. Many developers shared a common frustration, the lack of external authentication to the REST API.

This commit introduces Application Passwords to allow users to connect to external applications to their WordPress website. Users can generate individual passwords for each application, allowing for easy revocation and activity monitoring. An authorization flow is introduced to make the connection flow simple for users and application developers.

Application Passwords uses Basic Authentication, and by default is only available over an SSL connection.

Props georgestephanis, kasparsd, timothyblynjacobs, afercia, akkspro, andraganescu, arippberger, aristath, austyfrosty, ayesh, batmoo, bradyvercher, brianhenryie, helen, ipstenu, jeffmatson, jeffpaul, joostdevalk, joshlevinson, kadamwhite, kjbenk, koke, michael-arestad, Otto42, pekz0r, salzano, spacedmonkey, valendesigns.
Fixes #42790.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 22:14:06 +00:00
Sergey Biryukov 897f004a9c General: Replace older-style PHP type conversion functions with type casts.
This improves performance, readability, and consistency throughout core.

* `intval()` → `(int)`
* `strval()` → `(string)`
* `floatval()` → `(float)`

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


git-svn-id: http://core.svn.wordpress.org/trunk@48870 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 21:15:13 +00:00
Sergey Biryukov f25804699f Build/Test Tools: Add missing `<ul>` tag in `tests/qunit/index.html`.
Props ravipatel, JeffPaul.
Fixes #51473.
Built from https://develop.svn.wordpress.org/trunk@49107


git-svn-id: http://core.svn.wordpress.org/trunk@48869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 18:29:07 +00:00
Sergey Biryukov 5f2f199a75 Twenty Ten: Docs: Fix typo in `twentyten_custom_excerpt_more()` DocBlock.
Update `@return` tag for `twentyten_auto_excerpt_more()` for consistency with Twenty Eleven.

See #51477, #50768.
Built from https://develop.svn.wordpress.org/trunk@49106


git-svn-id: http://core.svn.wordpress.org/trunk@48868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 09:26:02 +00:00
Sergey Biryukov 37c3854083 Twenty Eleven: Docs: Add missing `@return` type for `twentyeleven_auto_excerpt_more()`.
Props ravipatel.
Fixes #51477.
Built from https://develop.svn.wordpress.org/trunk@49105


git-svn-id: http://core.svn.wordpress.org/trunk@48867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 09:23:07 +00:00
noisysocks 92f3ef5980 Tests: Fix dependency tests
Fixes test_block_styles_for_editing_with_theme_support and
test_block_styles_for_viewing_with_theme_support by partially reverting [49102]
and only calling wp_should_load_block_editor_scripts_and_styles() when on an
admin screen.

Props TimothyBlynJacobs.
See #51330.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 03:36:04 +00:00
TimothyBlynJacobs f5c67c386f REST API: Introduce search term handler.
This allows for clients to search the available terms via the `/wp/v2/search` endpoint by using a `type=term` query parameter.

Fixes #51458.
Props andraganescu, zieladam, noisysocks, TimothyBlynJacobs.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48865 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 01:32:05 +00:00
noisysocks 0dc073e589 Editor: Only call should_load_block_editor_scripts_and_styles on admin screens
Do not call the should_load_block_editor_scripts_and_styles filter on non-admin
screens. This makes it less likely that one will accidentally call
get_current_screen() when it doesn't exist.

Follow-up to [49080].
Props noahtallen.
See #51330.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 01:21:07 +00:00
Andrew Ozz 5cee7eced0 Update jQuery step two:
- Add jquery-migrate.js v.3.3.1 to core and load it in debug mode when `SCRIPT_DEBUG` is true.
- Add jquery.min.js, update jquery.js to 3.5.1 non-minified. This should help when debugging.
- Rebuild jQuery UI 1.12.1 and add it to core.
- Fix/adjust tests to match the above changes.

See #50564.
Built from https://develop.svn.wordpress.org/trunk@49101


git-svn-id: http://core.svn.wordpress.org/trunk@48863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-07 16:33:25 +00:00
desrosj 0c64f0c663 Build/Test Tools: Ensure arguments are passed correctly for `test:php-composer` commands.
Follow-up to [49099].

Props swissspidy.
See #51456.
Built from https://develop.svn.wordpress.org/trunk@49100


git-svn-id: http://core.svn.wordpress.org/trunk@48862 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-07 13:21:04 +00:00
desrosj 6af2d1f4a5 Build/Test Tools: Add NPM script for using the Composer installed version of PHPUnit.
The `test:php` NPM script runs the PHP test suite using the system installed version of PHPUnit. In some cases, the version of PHPUnit installed through Composer may be preferred.

Currently, this is true when running the test suite using PHP 8. In order to add support for PHP 8 while maintaining compatibility for PHP 5.6.20, PHPUnit 7.x must be used. But, some modifications are required to be compatible with PHP 8 (see [49037], [48957]).

This change introduces the `test:php-composer` NPM script, which will run the test suite using the composer installed version.

Props desrosj, SergeyBiryukov.
Fixes #51456.
Built from https://develop.svn.wordpress.org/trunk@49099


git-svn-id: http://core.svn.wordpress.org/trunk@48861 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-07 13:10:05 +00:00
Sergey Biryukov 520be16b6e Docs: Add missing `@return` tag for `wp_xmlrpc_server::_is_greater_than_one()`.
Props ankitmaru.
Fixes #51465.
Built from https://develop.svn.wordpress.org/trunk@49098


git-svn-id: http://core.svn.wordpress.org/trunk@48860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-07 11:02:03 +00:00
Sergey Biryukov a6ef541df0 Coding Standards: Add missing space in `js/_enqueues/lib/comment-reply.js`.
Props saqibameen, hareesh-pillai, imath, davidbaumwald.
Fixes #43907.
Built from https://develop.svn.wordpress.org/trunk@49097


git-svn-id: http://core.svn.wordpress.org/trunk@48859 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-07 10:38:08 +00:00
Sergey Biryukov aef2b539cd Docs: Correct `@since` version for `add_allowed_options()`.
Follow-up to [48121].

Props coffee2code.
Fixes #51450.
Built from https://develop.svn.wordpress.org/trunk@49096


git-svn-id: http://core.svn.wordpress.org/trunk@48858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-06 15:55:05 +00:00
Sergey Biryukov 2670a6ad14 Docs: Synchronize descriptions of some query functions and their counterpart methods in `WP` and `WP_Query` classes:
* `set_query_var()`
* `get_query_var()`
* `get_queried_object()`
* `get_queried_object_id()`

Switch to third-person singular verbs, per the documentation standards.

See #50768, #42783.
Built from https://develop.svn.wordpress.org/trunk@49095


git-svn-id: http://core.svn.wordpress.org/trunk@48857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-06 08:59:04 +00:00
noisysocks 088aa1e864 Docs: Improve set_query_var() inline docs.
Makes the inline docs for set_query_var() consistent with the inline docs for
get_query_var().

See #42783.
Props stevenlinx, markparnell.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-06 05:40:11 +00:00
noisysocks 274cb9718d Editor: Rename _should_load_block_editor_scripts_and_styles to wp_should_load_block_editor_scripts_and_styles
Follow-up to [49080].
Props zieladam, frank-klein.
See #51330.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48855 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-06 04:18:10 +00:00
Sergey Biryukov dc7bda9620 Docs: Add brackets to function names in some `@see` tags, for consistency.
Props ravipatel, davidbaumwald.
Fixes #51441.
Built from https://develop.svn.wordpress.org/trunk@49092


git-svn-id: http://core.svn.wordpress.org/trunk@48854 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-05 14:03:02 +00:00
Sergey Biryukov bea55db921 Docs: Add missing `@return` tag to `Language_Pack_Upgrader::check_package()`.
Synchronize documentation of the `::check_package()` method between `Plugin_Upgrader`, `Theme_Upgrader`, and `Language_Pack_Upgrader`.

Props ankitmaru, mukesh27, desrosj.
Fixes #51448.
Built from https://develop.svn.wordpress.org/trunk@49091


git-svn-id: http://core.svn.wordpress.org/trunk@48853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-05 13:44:11 +00:00
Sergey Biryukov 1651342d2b Privacy: Improve clarity of privacy error strings.
Primarily this adds "user privacy" to the strings for privacy requests, so they are more easily distinguished from other system actions within logs.

Props garrett-eclipse, carike, birgire.
Fixes #51351.
Built from https://develop.svn.wordpress.org/trunk@49090


git-svn-id: http://core.svn.wordpress.org/trunk@48852 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-04 03:23:09 +00:00
Sergey Biryukov 0f13b2c268 Docs: Add `@since` notes for the `$id` parameter of REST API search controller accepting a string.
Follow-up to [49088].

See #51131.
Built from https://develop.svn.wordpress.org/trunk@49089


git-svn-id: http://core.svn.wordpress.org/trunk@48851 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-03 01:22:11 +00:00
TimothyBlynJacobs e9b5b1a5bc REST API: Allow for string ids in the search controller.
Previously, the search controller infrastructure required that the id property was an integer. This prevents data models that use a string id from utilizing the search infrastructure.

This commit lifts the restraint that search handlers return integer ids. This will allow for the Post Formats search handler coming in 5.6 to use slugs instead of creating fake ids.

Props stoyangeorgiev.
Fixes #51131.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48850 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-02 17:47:09 +00:00
Adam Silverstein f426a1fa04 Media: clear inputs after cropping on attachment details screen.
Clear the crop selection input fields after the crop action is complete. 
Fixes unexpected re-cropping behavior if the crop button was clicked more than once.

Props davidbinda.
Fixes #30155.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48849 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-02 15:11:06 +00:00
Sergey Biryukov f880f14080 Coding Standards: Make checks for an empty post in `wp-includes/post.php` more consistent.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@49086


git-svn-id: http://core.svn.wordpress.org/trunk@48848 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-02 12:37:06 +00:00
Helen Hou-Sandí b6641140fd Tests: Fix a linting error in a test.
See #50679.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 21:44:09 +00:00
Helen Hou-Sandí b108d4db71 Media: Don't unnecessarily check for a valid attachment before getting meta.
This makes `wp_get_attachment_metadata()` run significantly faster. See ticket for benchmarking.

Props Tkama, donmhico.
Fixes #50679.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 17:55:06 +00:00
Helen Hou-Sandí e9d572f431 WP Date: Add timezone abbreviation to wp-date settings.
Props mkaz.
Fixes #50624.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 17:43:08 +00:00
TimothyBlynJacobs 69b9b23c49 REST API: Support the patternProperties JSON Schema keyword.
Props yakimun.
Fixes #51024.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 02:49:12 +00:00
Sergey Biryukov 0d52ba511c Docs: Add missing `@since` entry for `_should_load_block_editor_scripts_and_styles()`.
Follow-up to [49080].

See #51330.
Built from https://develop.svn.wordpress.org/trunk@49081


git-svn-id: http://core.svn.wordpress.org/trunk@48843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 01:14:04 +00:00
noisysocks 96f963a2b9 Editor: Add should_load_block_editor_scripts_and_styles
Adds a new should_load_block_editor_scripts_and_styles filter which can be used
by plugins including Gutenberg to more precisely customise when block editor
scripts and styles should be loaded by script-loader.php. Previously, plugins
had to fiddle with $current_screen->is_block_editor(). 

Props zieladam.
See #51330.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48842 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 00:39:04 +00:00
Sergey Biryukov ca7063fd60 Script Loader: Update versions for MediaElement.js and related files.
Follow-up to [49070].

See #51315.
Built from https://develop.svn.wordpress.org/trunk@49079


git-svn-id: http://core.svn.wordpress.org/trunk@48841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-01 00:04:05 +00:00
John Blackbourn 1079647d30 Docs: Various docblock improvements related to user and site signup functionality.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48840 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 21:54:07 +00:00
Sergey Biryukov f7ba7c931c Build/Test Tools: Remove PHP 8 from allowed failures.
With all known unit test issues now addressed, WordPress 5.6 aims to support PHP 8 as much as possible.

See #50913, #50902.
Built from https://develop.svn.wordpress.org/trunk@49077


git-svn-id: http://core.svn.wordpress.org/trunk@48839 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 16:05:06 +00:00
Sergey Biryukov 829fc28a93 Code Modernization: Ignore the `_multiwidget` property when collecting widget numbers in `WP_Customize_Manager::import_theme_starter_content()`.
PHP 8 changes the way string to number comparisons are performed: https://wiki.php.net/rfc/string_to_number_comparison

In particular, when calling `max()` on an array with numeric values and a non-numeric string, in PHP 8 the string is returned instead of a number.

For `::import_theme_starter_content()`, this resulted in retrieving the `_multiwidget` property instead of the maximum widget number for a particular type.

By explicitly ignoring the `_multiwidget` property, we make sure to retrieve the correct widget number value.

Follow-up to [48960], [49043].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49076


git-svn-id: http://core.svn.wordpress.org/trunk@48838 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 15:46:08 +00:00
Sergey Biryukov 09570be924 Docs: Fix typos in some DocBlocks in `js/_enqueues/wp/api.js`.
Additionally, rename a variable for clarity.

Props mukesh27.
Fixes #51420.
Built from https://develop.svn.wordpress.org/trunk@49075


git-svn-id: http://core.svn.wordpress.org/trunk@48837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 13:54:06 +00:00
Sergey Biryukov 36c3a480c8 Build/Test Tools: Comment out the `xdebug` group test run for PHP 8 for now.
Xdebug supports PHP 8 only from version 3.0, which is not released yet.

Once Xdebug 3.0 is released and included in the Docker image, this should be uncommented again.

Follow-up to [48957], [49037].

See #50913, #50902.
Built from https://develop.svn.wordpress.org/trunk@49074


git-svn-id: http://core.svn.wordpress.org/trunk@48836 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 13:14:04 +00:00
Sergey Biryukov bdccfa3a03 Code Modernization: Check if the file to retrieve metadata from in `get_file_data()` was successfully opened.
This avoids a fatal error on PHP 8 caused by passing a `false` value to `fread()`, instead of a file resource.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49073


git-svn-id: http://core.svn.wordpress.org/trunk@48835 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 12:20:03 +00:00
Sergey Biryukov e43ff0e991 Code Modernization: Return `false` from `wpdb::query()` if the query was filtered to an empty string using the `query` filter.
This avoids a fatal error on PHP 8 caused by passing an empty string to `mysqli_query()`, and maintains the current behaviour.

Follow-up to [48980], [48981].

See #50913, #50639.
Built from https://develop.svn.wordpress.org/trunk@49072


git-svn-id: http://core.svn.wordpress.org/trunk@48834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 12:09:08 +00:00
Sergey Biryukov b3b8942dfc Docs: Correct description for `wp_ajax_update_widget()`.
Follow-up to [28355].

Props burhandodhy, sabernhardt.
Fixes #44583.
Built from https://develop.svn.wordpress.org/trunk@49071


git-svn-id: http://core.svn.wordpress.org/trunk@48833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-30 09:44:09 +00:00
desrosj f3168fa073 External Libraries: Update MediaElementJS to version 4.2.16.
This change brings a handful of bug fixes made since the previous update in [46436]. For a full list of changes included, see https://github.com/mediaelement/mediaelement/compare/4.2.13...4.2.16.

Props mukesh27, hareesh-pillai, SergeyBiryukov.
Fixes #51315.
Built from https://develop.svn.wordpress.org/trunk@49070


git-svn-id: http://core.svn.wordpress.org/trunk@48832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-29 15:53:06 +00:00
Sergey Biryukov d660801d27 Tests: Require `imagejpeg()` function in Ajax media editing tests.
This outputs a proper message if the requirement is not met, instead of an obscure failure further in the test.

These tests rely on multiple resized copies of a test JPEG image being generated and available.

Follow-up to [49010], [49024], [49025], [49045], [49050], [49052].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49069


git-svn-id: http://core.svn.wordpress.org/trunk@48831 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-29 14:16:07 +00:00
Sergey Biryukov 12a36355e6 Code Modernization: Remove a single trailing percent sign before calling `sprintf()` on the `$default` parameter in `get_theme_mod()`.
This avoids a "Missing format specifier at end of string" fatal error on PHP 8, and maintains the current behaviour.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49068


git-svn-id: http://core.svn.wordpress.org/trunk@48830 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-29 10:03:08 +00:00
Sergey Biryukov 41681b29b0 Posts, Post Types: Avoid a PHP notice in `wp_get_shortlink()` if the post type is no longer registered.
Props apedog.
Fixes #51376.
Built from https://develop.svn.wordpress.org/trunk@49067


git-svn-id: http://core.svn.wordpress.org/trunk@48829 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-28 11:53:08 +00:00
Sergey Biryukov f1f579199b Docs: Clarify the `false` return value of `get_post_type_archive_link()` and `get_post_type_archive_feed_link()`.
See #50768.
Built from https://develop.svn.wordpress.org/trunk@49066


git-svn-id: http://core.svn.wordpress.org/trunk@48828 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-28 11:12:03 +00:00
Sergey Biryukov 249451fe08 Docs: Correct formatting for the `autosave()` function return value in `js/_enqueues/wp/autosave.js`.
Props dilipbheda, mukesh27.
Fixes #51401.
Built from https://develop.svn.wordpress.org/trunk@49065


git-svn-id: http://core.svn.wordpress.org/trunk@48827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-28 10:46:05 +00:00
Sergey Biryukov 2cbcc5d548 Media: Make the "Copy URL" button implementation more consistent with other instances in core:
* Make the "Copied!" text green.
* Make the button verbiage clear that it's copied "to clipboard".

Props garrett-eclipse, mukesh27.
Fixes #51355.
Built from https://develop.svn.wordpress.org/trunk@49064


git-svn-id: http://core.svn.wordpress.org/trunk@48826 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 20:48:05 +00:00
TimothyBlynJacobs bed5797cf6 REST API: Support the multipleOf JSON Schema keyword.
Props yakimun.
Fixes #51022.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 19:03:05 +00:00
Sergey Biryukov 6bdbb8b25c Media: Check if the item is defined before setting the `skipHistory` property in media frame router.
This avoids a JS error when refreshing the "Attachment details" modal for an item that is not currently queried.

Follow-up to [41021].

Props Mista-Flo, mukesh27.
Fixes #51395.
Built from https://develop.svn.wordpress.org/trunk@49062


git-svn-id: http://core.svn.wordpress.org/trunk@48824 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 08:50:06 +00:00
Sergey Biryukov c298458751 Docs: Add missing `@return` tags for some `WP_Automatic_Updater` methods:
* `::is_vcs_checkout()`
* `::should_update()`
* `::send_core_update_notification_email()`

Props ankitmaru, mukesh27.
Fixes #51385.
Built from https://develop.svn.wordpress.org/trunk@49061


git-svn-id: http://core.svn.wordpress.org/trunk@48823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 08:36:06 +00:00
Sergey Biryukov d36da091c4 Taxonomy: Restore documentation for the `taxonomy` parameter of `wp_list_categories()`.
The parameter's default value is different from the one in `WP_Term_Query::__construct()`, and should be documented accordingly.

This also clarifies that the `taxonomy` parameter of `wp_list_categories()` only accepts a string, not an array.

Follow-up to [40903], [41767], [45894], [45895].

Props grapplerulrich, mukesh27, TimothyBlynJacobs, SergeyBiryukov.
Fixes #51378. See #47896.
Built from https://develop.svn.wordpress.org/trunk@49060


git-svn-id: http://core.svn.wordpress.org/trunk@48822 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 08:19:04 +00:00
Sergey Biryukov 5c3a734df0 Docs: Correct description for the `taxonomy` parameter of `wp_dropdown_categories()`.
Follow-up to [40903], [41767].

Props grapplerulrich, mukesh27, TimothyBlynJacobs.
See #51378.
Built from https://develop.svn.wordpress.org/trunk@49059


git-svn-id: http://core.svn.wordpress.org/trunk@48821 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 07:49:06 +00:00
Sergey Biryukov a8b070b56b Docs: Fix typo in a comment in `js/media/routers/manage.js`.
Props mukesh27, garrett-eclipse.
Fixes #51397.
Built from https://develop.svn.wordpress.org/trunk@49058


git-svn-id: http://core.svn.wordpress.org/trunk@48820 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 07:38:05 +00:00
Sergey Biryukov bf2edf9cab External Libraries: Backport a commit from sodium_compat trunk to fix a PHP 8 error.
This addresses an "Undefined constant `MB_OVERLOAD_STRING`" fatal error in the `ParagonIE_Sodium_Core_Util::isMbStringOverride()` method.

In PHP 8, the `MB_OVERLOAD_STRING` constant has been removed, along with the `mbstring` function overloading feature.

Fixes #51399.
Built from https://develop.svn.wordpress.org/trunk@49057


git-svn-id: http://core.svn.wordpress.org/trunk@48819 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 05:17:05 +00:00
Sergey Biryukov 67752b98e0 Upgrade/Install: Update sodium_compat to v1.13.0.
This includes a few autoloader fixes and improvements.

A full list of changes in this update can be found on GitHub:
https://github.com/paragonie/sodium_compat/compare/v1.12.1...v1.13.0

See #51399.
Built from https://develop.svn.wordpress.org/trunk@49056


git-svn-id: http://core.svn.wordpress.org/trunk@48818 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-27 04:46:05 +00:00
TimothyBlynJacobs 0db3f859ea Add ircs and irc6 to the list of allowed protocols.
This adds support for the secure and ipv6 variants of the already allowed irc protocol.

Props arealnobrainer, markparnell, ctmartin.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 21:02:04 +00:00
TimothyBlynJacobs bf397c8d89 REST API: Correct @since version after [49053].
See #51023.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48816 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 18:56:04 +00:00
TimothyBlynJacobs 9951662ebb REST API: Support the minProperties and maxProperties JSON Schema keywords.
Props yakimun.
Fixes #51023.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48815 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 18:20:07 +00:00
Sergey Biryukov c9def12900 Tests: Require `imagejpeg()` function in `WP_Widget_Media_Image::render_media()` test.
This outputs a proper message if the requirement is not met, instead of an obscure failure further in the test.

This test relies on multiple resized copies of a test JPEG image being generated and available.

Follow-up to [49010], [49024], [49025], [49045], [49050].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49052


git-svn-id: http://core.svn.wordpress.org/trunk@48814 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 14:52:07 +00:00
Sergey Biryukov 2e56bb91a8 Tests: Correct assertion in `WP_Test_REST_Comments_Controller::check_comment_data()`.
`author_avatar_urls` should be present in the comment data array keys, not values.

The test only passed accidentally due to `assertContains()` not performing a strict type check.

See #38266, #50913.
Built from https://develop.svn.wordpress.org/trunk@49051


git-svn-id: http://core.svn.wordpress.org/trunk@48813 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 03:14:07 +00:00
Sergey Biryukov cd1f30e28d Tests: Require `imagejpeg()` function in one more media test.
This outputs a proper message if the requirement is not met, instead of an obscure failure further in the test.

This test relies on multiple resized copies of a test JPEG image being generated and available.

Follow-up to [49010], [49024], [49025], [49045].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49050


git-svn-id: http://core.svn.wordpress.org/trunk@48812 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 02:34:06 +00:00
Sergey Biryukov 346794bc57 Upload: Add a check in `wp_check_filetype_and_ext()` to account for CSV files having the `application/csv` MIME type.
Previously, the PHP Fileinfo extension used to detect CSV files as `text/plain`.

In PHP 8, this has changed, and CSV files are detected as `application/csv`.

Follow-up to [44438].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49049


git-svn-id: http://core.svn.wordpress.org/trunk@48811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-26 01:11:09 +00:00
John Blackbourn eaf325e386 Upgrade/Install: Introduce the `wp_installed_email` filter for filtering the contents of the email sent when WordPress is installed, without needing to override the `wp_new_blog_notification()` pluggable function.
Props Dharm1025, nikolam, johnbillion

Fixes #42133

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


git-svn-id: http://core.svn.wordpress.org/trunk@48810 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 22:33:08 +00:00
Sergey Biryukov fe9e57c1c3 Tests: Require `imagejpeg()` function in some REST API attachments controller tests.
This outputs a proper message if the requirement is not met, instead of an obscure failure further in the test.

These tests rely on multiple resized copies of a test JPEG image being generated and available.

Follow-up to [49010], [49024], [49025], [49045].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49047


git-svn-id: http://core.svn.wordpress.org/trunk@48809 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 02:23:04 +00:00
Sergey Biryukov 5d31e4368e Tests: Correct the check for image sizes in some REST API attachments controller tests.
If the sizes data could not be retrieved, the controller returns an empty object instead of an array.

This makes sure that the value is in fact an array before proceeding, and outputs a proper message in case of failure, instead of an obscure PHP error further in the test.

Follow-up to [49044].

See #50913, #51393.
Built from https://develop.svn.wordpress.org/trunk@49046


git-svn-id: http://core.svn.wordpress.org/trunk@48808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 02:11:03 +00:00
Sergey Biryukov 0485a4ad01 Tests: Require `imagejpeg()` function in some more media tests.
This outputs a proper message if the requirement is not met, instead of an obscure PHP error further in the test.

These tests rely on multiple resized copies of a test JPEG image being generated and available.

Follow-up to [49010], [49024], [49025].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49045


git-svn-id: http://core.svn.wordpress.org/trunk@48807 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 01:45:04 +00:00
Sergey Biryukov 312f42f375 Tests: Check if image sizes were successfully retrieved in some REST API attachments controller tests.
This outputs a proper message in case of failure, instead of an obscure PHP error further in the test.

Props TimothyBlynJacobs.
See #50913, #51393.
Built from https://develop.svn.wordpress.org/trunk@49044


git-svn-id: http://core.svn.wordpress.org/trunk@48806 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 01:31:04 +00:00
Sergey Biryukov 4f8f42747f Code Modernization: Correct the check for `parent` argument in `wp_insert_term()` and `wp_update_term()`.
PHP 8 changes the way string to number comparisons are performed: https://wiki.php.net/rfc/string_to_number_comparison

In particular, checking if a non-empty, non-numeric string is greater than zero in PHP 8 evaluates to `true`, not `false`.

For `wp_insert_term()`, this resulted in a "Parent term does not exist" error for a non-numeric string, instead of discarding the value.

By explicitly casting the value to `int`, we make sure to compare both values as numbers, rather than a string and a number.

Follow-up to [29196], [29830], [29867].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49043


git-svn-id: http://core.svn.wordpress.org/trunk@48805 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-25 00:04:04 +00:00
Sergey Biryukov cfe5b1c9f2 Docs: Add a `@since` note to `wp_privacy_exports_dir` and `wp_privacy_exports_url` filters about exports using relative paths since WordPress 5.5.
When changing exports location via these filters, make sure to migrate the files to the new directory, to avoid breaking any existing exports.

Follow-up to [48127], [48330].

Props garrett-eclipse.
Fixes #51361.
Built from https://develop.svn.wordpress.org/trunk@49042


git-svn-id: http://core.svn.wordpress.org/trunk@48804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-24 05:00:06 +00:00
noisysocks 8fa8aad136 Documentation: Add 'template' arg documentation
Add inline documentation for the 'template' arg accepted by
register_post_type().

Props milana_cap.
See #46261.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48803 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-24 03:12:04 +00:00
noisysocks 41b456eca9 Editor: Hide Screen Options tab from block editor
The block editor provides its own interface for managing screen options, so we
can safely hide Screen Options tab found in the top right of the page.

Props aduth.
See #46157.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48802 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-24 03:00:08 +00:00
Sergey Biryukov c10acd850e Build/Test Tools: Use trunk revision 2387243 of the WordPress Importer plugin.
This revision includes a change to only call `libxml_disable_entity_loader()` in PHP < 8, in order for unit tests in the `import` group to pass on PHP 8.

This function has been deprecated in PHP 8.0 because in libxml 2.9.0, external entity loading is disabled by default, so this function is no longer needed to protect against XXE attacks.

Follow-up to [46542], [48789].

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


git-svn-id: http://core.svn.wordpress.org/trunk@48801 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-23 18:39:07 +00:00
Sergey Biryukov 5c1889f3d8 Docs: Remove obsolete `$wpdb` global reference from `get_site_by_path()`.
Follow-up to [37628].

Props ravivaddweb, mukesh27.
Fixes #51380.
Built from https://develop.svn.wordpress.org/trunk@49038


git-svn-id: http://core.svn.wordpress.org/trunk@48800 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-23 14:11:07 +00:00
Sergey Biryukov a610519297 Tests: Backport two changes from PHPUnit 9.3:
* Replace the `Match` interface with `ParametersMatch`, to avoid parse errors due to `match` being a reserved keyword in PHP 8.
* Replace `ReflectionParameter::getClass()` usage, which is deprecated in PHP 8.

This allows tests relying on the `getMockForAbstractClass()` and `getMockBuilder()` methods to run again on PHP 8.

When the test suite is updated for compatibility with PHPUnit 9.x, these overrides can be removed.

Follow-up to [48972].

See #50913, #50902.
Built from https://develop.svn.wordpress.org/trunk@49037


git-svn-id: http://core.svn.wordpress.org/trunk@48799 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-23 13:54:07 +00:00
Sergey Biryukov d4a319c453 Users: Check if the user ID passed as `selected` to `wp_dropdown_users()` corresponds to an existing user.
This avoids a few PHP notices if the `include_selected` parameter was specified and a non-existing user ID was passed.

Props campusboy1987.
Fixes #51370.
Built from https://develop.svn.wordpress.org/trunk@49036


git-svn-id: http://core.svn.wordpress.org/trunk@48798 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-23 00:27:07 +00:00
desrosj a16faa6989 Privacy: Ensure bulk action related strings end with periods.
Props garrett-eclipse, mukesh27.
Fixes #51371.
Built from https://develop.svn.wordpress.org/trunk@49035


git-svn-id: http://core.svn.wordpress.org/trunk@48797 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-22 18:40:04 +00:00
desrosj 6ff2fbb6cd External Libraries: Upgrade PHPMailer to version 6.1.7.
For a full list of changes in this update, see the PHPMailer GitHub: https://github.com/PHPMailer/PHPMailer/compare/v6.1.6...v6.1.7.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48796 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-22 18:37:08 +00:00
Sergey Biryukov b7431cfa83 Tests: Use consistent trailing punctuation in `fail()` messages.
See #51344.
Built from https://develop.svn.wordpress.org/trunk@49033


git-svn-id: http://core.svn.wordpress.org/trunk@48795 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-22 12:34:04 +00:00
Sergey Biryukov d9346ea967 Tests: Check if image metadata for a particular size was successfully retrieved in some media tests.
This outputs a proper message in case of failure, instead of an obscure PHP error further in the test.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49032


git-svn-id: http://core.svn.wordpress.org/trunk@48794 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-22 12:32:07 +00:00
TimothyBlynJacobs 883ace38f1 REST API: Regenerate test fixtures after [48982].
Props garrett-eclipse.
Fixes #50805.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48793 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 22:54:06 +00:00
Sergey Biryukov 5d99107bf3 Tests: Fix typo in some `markTestSkipped()` messages.
See #51344.
Built from https://develop.svn.wordpress.org/trunk@49030


git-svn-id: http://core.svn.wordpress.org/trunk@48792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 20:20:07 +00:00
John Blackbourn 175c2c5b7c Users: Introduce the `invited_user_email` filter for filtering the contents of the email sent when an existing user is invited to a site on Multisite.
Props contact-banker, anand.au14, nikolam, johnbillion

Fixes #42132

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


git-svn-id: http://core.svn.wordpress.org/trunk@48791 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 17:16:07 +00:00
John Blackbourn aef504acfd Docs: Correct the indentation for some array type docs.
See #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48790 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 16:46:06 +00:00
Sergey Biryukov 790983eca4 Tests: Use consistent trailing punctuation in `markTestSkipped()` messages.
See #51344.
Built from https://develop.svn.wordpress.org/trunk@49027


git-svn-id: http://core.svn.wordpress.org/trunk@48789 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 14:07:05 +00:00
Sergey Biryukov 29c0edfbba Privacy: Check if the accumulated data in `wp_privacy_process_personal_data_export_page()` is not empty.
This avoids an error on PHP 8 caused by passing an empty string to `array_merge()`, instead of an array.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49026


git-svn-id: http://core.svn.wordpress.org/trunk@48788 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 13:51:03 +00:00
Sergey Biryukov a95e9a91da Tests: Convert a few more `function_exists()` and `extension_loaded()` checks to `@requires` annotations.
This better utilizes the PHPUnit native functionality.

Follow-up to [49024].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49025


git-svn-id: http://core.svn.wordpress.org/trunk@48787 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 13:27:02 +00:00
Sergey Biryukov 1e39e21616 Tests: Convert the checks for `imagejpeg()` function availability to use the `@requires` annotation.
This better utilizes the PHPUnit native functionality.

Props ayeshrajans, jrf, johnbillion.
Fixes #50639. See #50640.
Built from https://develop.svn.wordpress.org/trunk@49024


git-svn-id: http://core.svn.wordpress.org/trunk@48786 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 11:36:04 +00:00
Sergey Biryukov 6e5ca746e1 General: Give the `$is` variable in `is_wp_error()` a more descriptive name.
Follow-up to [49022].

See #40568.
Built from https://develop.svn.wordpress.org/trunk@49023


git-svn-id: http://core.svn.wordpress.org/trunk@48785 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-21 11:13:05 +00:00
John Blackbourn 964d0784be General: Introduce the `wp_error_added` and `wp_error_checked` actions.
These actions allow debugging tools to track `WP_Error` instances as they're created and subsequently passed between functions which check for error objects.

Props Shelob9, Mte90, TimothyBlynJacobs, johnbillion

Fixes #40568


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


git-svn-id: http://core.svn.wordpress.org/trunk@48784 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 17:44:07 +00:00
John Blackbourn aba2165aae Media: Standardise the description for image size parameters.
This brings continuity to all the image related functions and filters which accept or pass a size parameter.

Props dilipbheda, johnbillion

Fixes #47364

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


git-svn-id: http://core.svn.wordpress.org/trunk@48783 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 16:23:07 +00:00
John Blackbourn 0b2e31a7f8 Docs: Inline documentation improvements for media related functions and hooks.
See #47364, #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 15:55:10 +00:00
Sergey Biryukov 2884b7b1b7 Media: Return a `WP_Error` from `WP_Image_Editor_GD::load()` if file contents could not be retrieved.
This avoids an error on PHP 8 caused by calling `imagecreatefromstring()` on an empty result.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49019


git-svn-id: http://core.svn.wordpress.org/trunk@48781 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 14:28:05 +00:00
Sergey Biryukov 8752dbaaba Tests: Correctly unset non-supported image editor engines in some image tests.
Follow-up to [49009], [49014].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49018


git-svn-id: http://core.svn.wordpress.org/trunk@48780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 14:15:03 +00:00
John Blackbourn 43b11121de Media: Correct some types for attachment ID parameters passed to functions and filters.
See #47364, #50768 

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


git-svn-id: http://core.svn.wordpress.org/trunk@48779 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 14:05:05 +00:00
John Blackbourn e22107ce4e Media: Correct some types in docblocks for filters related to thumbnails.
Props dilipbheda

See #47364, #50768

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


git-svn-id: http://core.svn.wordpress.org/trunk@48778 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 13:40:04 +00:00
Sergey Biryukov e6fd778208 Tests: Use more specific assertions in `Tests_Image_Functions::test_load_directory()`.
This avoids an error on PHP 8 caused by calling `get_resource_type()` on a string.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49015


git-svn-id: http://core.svn.wordpress.org/trunk@48777 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 13:33:04 +00:00
Sergey Biryukov a29b071f80 Tests: Optimize some image tests to avoid checking for image editor engines availability twice.
Follow-up to [49009].

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49014


git-svn-id: http://core.svn.wordpress.org/trunk@48776 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 13:27:05 +00:00
John Blackbourn 7d61c45afc I18N: Add a language icon next to the Default Language network option.
Fixes #51359

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


git-svn-id: http://core.svn.wordpress.org/trunk@48775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 13:18:05 +00:00
John Blackbourn ecfff6fe80 Media: Correct the image thumbnail logic in media templates.
This ensures the correct data properties are checked before displaying image thumbnails.

Props chetan200891

Fixes #49655

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


git-svn-id: http://core.svn.wordpress.org/trunk@48774 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 13:15:04 +00:00
John Blackbourn 123806ff28 Themes: Remove the ability to delete themes from the single site Appearance screen on Multisite installations.
This brings theme deletion inline with plugin deletion and theme and plugin editing, which can only be performed from within Network Admin.

Props Mista-Flo, williampatton, johnbillion

Fixes #41441

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


git-svn-id: http://core.svn.wordpress.org/trunk@48773 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 12:03:05 +00:00
Sergey Biryukov e8f35359d7 Tests: Consistently require `imagejpeg()` function in `image_make_intermediate_size()` tests.
This outputs a proper message if the requirement is not met, instead of an obscure PHP error further in the test.

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49010


git-svn-id: http://core.svn.wordpress.org/trunk@48772 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 03:33:05 +00:00
Sergey Biryukov 795e4ebd31 Tests: Skip some image tests if neither GD nor Imagick image editor engines are supported on the system.
The explicit message brings some consistency with other image editor tests, specifically the ones using the `WP_Image_UnitTestCase` class.

Previously, the tests were marked as "risky" in that scenario, due to performing no assertions.

See #50639, #50640.
Built from https://develop.svn.wordpress.org/trunk@49009


git-svn-id: http://core.svn.wordpress.org/trunk@48771 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 02:47:05 +00:00
Sergey Biryukov 8791de899a Coding Standards: Fix WPCS issue in [49007].
See #50913.
Built from https://develop.svn.wordpress.org/trunk@49008


git-svn-id: http://core.svn.wordpress.org/trunk@48770 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 01:18:04 +00:00
Sergey Biryukov 9e3b5d2f12 Tests: Fix the failures in REST API `format` keyword validation tests on PHP 8.
The tests ensure that `rest_sanitize_value_from_schema()` and `rest_validate_value_from_schema()` throw an "undefined offset" notice when the required `type` schema keyword is not passed.

In PHP 8, that notice is now a warning, so the tests need to be adjusted accordingly.

Follow-up to [48300], [48993].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@49007


git-svn-id: http://core.svn.wordpress.org/trunk@48769 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-20 00:57:06 +00:00
Sergey Biryukov 4ae2bafafd Tests: Add missing `@covers` tags for files in `phpunit/tests/functions/`.
Props pbearne, jrf.
See #39265.
Built from https://develop.svn.wordpress.org/trunk@49006


git-svn-id: http://core.svn.wordpress.org/trunk@48768 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 15:54:03 +00:00
Sergey Biryukov 9bb4b76044 Tests: Speed up slashed data tests by reusing some more shared fixtures.
Follow-up to [35249], [49003].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@49005


git-svn-id: http://core.svn.wordpress.org/trunk@48767 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 11:12:04 +00:00
Sergey Biryukov b27ebaa269 Coding Standards: Give the `$id` variable in slashed data tests a more descriptive name.
See #50767, #51344.
Built from https://develop.svn.wordpress.org/trunk@49004


git-svn-id: http://core.svn.wordpress.org/trunk@48766 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 10:55:05 +00:00
Sergey Biryukov 54fe0e0698 Tests: Speed up slashed data tests by reusing shared fixtures.
Follow-up to [35249].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@49003


git-svn-id: http://core.svn.wordpress.org/trunk@48765 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 10:36:03 +00:00
Sergey Biryukov c50c266e51 Tests: Speed up tests for `wp_allow_comment()` by reusing shared fixtures.
Props frank-klein.
Fixes #51216.
Built from https://develop.svn.wordpress.org/trunk@49002


git-svn-id: http://core.svn.wordpress.org/trunk@48764 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 09:27:06 +00:00
Sergey Biryukov f2a2ffbf2c Tests: Simplify the logic in `WP_UnitTestCase_Base::setUpBeforeClass()` and `::tearDownAfterClass()`.
See #51344.
Built from https://develop.svn.wordpress.org/trunk@49001


git-svn-id: http://core.svn.wordpress.org/trunk@48763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 09:13:07 +00:00
Peter Wilson b1505c2d9c Posts, Post Types: Ensure default terms are added by `wp_publish_post()`.
Transitioning posts from `auto-draft` to `publish` via `wp_publish_post()` could result in published posts without the default category or custom taxonomy default terms.

Props frank-klein, TimothyBlynJacobs, peterwilsoncc.
Fixes #51292.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48762 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-19 01:22:08 +00:00
Sergey Biryukov 88ea2929b7 Tests: Simplify `PluralFormsTest::test_exceptions()`.
Previously, the test had to use an older pattern for catching the generic `Exception` exceptions for compatibility with PHPUnit 3.6 on PHP 5.2.

Now that WordPress supports PHPUnit 5.4 as the minimum version, the `expectException()` method can be used directly.

Follow-up to [41725], [41730].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@48999


git-svn-id: http://core.svn.wordpress.org/trunk@48761 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 14:13:03 +00:00
Sergey Biryukov 0e0c620dee Docs: Update the code example in `WP_Ajax_UnitTestCase::dieHandler()` DocBlock to use `expectException()`.
Follow-up to [48996], [48997].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@48998


git-svn-id: http://core.svn.wordpress.org/trunk@48760 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 13:55:04 +00:00
Sergey Biryukov b69db72a08 Tests: Switch Ajax tests to use the `expectException()` method directly, instead of the `WP_UnitTestCase_Base::setExpectedException()` wrapper.
This brings some consistency with other tests.

Follow-up to [48996].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@48997


git-svn-id: http://core.svn.wordpress.org/trunk@48759 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 13:50:04 +00:00
Sergey Biryukov e42779f9a0 Tests: Consistently use the `expectException()` method instead of the older `@expectedException` annotation.
See https://thephp.cc/news/2016/02/questioning-phpunit-best-practices

The method is available since PHPUnit 5.2, and WordPress currently supports PHPUnit 5.4 as the minimum version.

Follow-up to [48993].

See #51344.
Built from https://develop.svn.wordpress.org/trunk@48996


git-svn-id: http://core.svn.wordpress.org/trunk@48758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 13:24:07 +00:00
Sergey Biryukov 68d3c5ca56 Docs: Add a `@since` note about `adjacent_posts_rel_link_wp_head()` no longer being used in core.
Follow-up to [48966].

Props jnylen0.
See #39111.
Built from https://develop.svn.wordpress.org/trunk@48995


git-svn-id: http://core.svn.wordpress.org/trunk@48757 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 11:06:04 +00:00
Sergey Biryukov 0cdab6e91d Docs: Add a `@since` note for the `recovery_mode_email` filter about the `$email` argument now including the `attachments` key.
Follow-up to [48964].

See #51276.
Built from https://develop.svn.wordpress.org/trunk@48994


git-svn-id: http://core.svn.wordpress.org/trunk@48756 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 11:03:02 +00:00
Sergey Biryukov 6f4de5f31a Tests: Fix the failure in `test_get_weekday_undefined_index()` on PHP 8.
The test ensures that `WP_Locale::get_weekday()` throws an "undefined offset" notice when called with an incorrect `$weekday_number` parameter.

In PHP 8, that notice is now a warning, so the test needs to be adjusted accordingly.

See #50913.
Built from https://develop.svn.wordpress.org/trunk@48993


git-svn-id: http://core.svn.wordpress.org/trunk@48755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 10:58:03 +00:00
Sergey Biryukov ddefc9ee9a Twenty Twenty: Update the URL for PHP date formats table in translator comments.
Follow-up to [48991].

Props hareesh-pillai, mukesh27, iandunn.
Fixes #51335. See #51332.
Built from https://develop.svn.wordpress.org/trunk@48992


git-svn-id: http://core.svn.wordpress.org/trunk@48754 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 10:44:04 +00:00
Sergey Biryukov d5b8d282e8 Docs: Update the URL for PHP date formats table in translator comments.
Props hareesh-pillai, iandunn.
Fixes #51332.
Built from https://develop.svn.wordpress.org/trunk@48991


git-svn-id: http://core.svn.wordpress.org/trunk@48753 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-18 10:37:08 +00:00
Sergey Biryukov e1a05a42d3 Comments: Assign the array of comment data returned from the `comments_pre_query` filter to the `comments` property of the current `WP_Comment_Query` instance.
This avoids the performance overhead of calling `WP_Comment_Query::get_comments()` twice: first when creating the object instance, then to retrieve the filtered results.

This also makes the filter a bit more consistent with other similar filters, e.g. `posts_pre_query`, `terms_pre_query`, or `users_pre_query`.

Follow-up to [46086].

Props dinhtungdu, imath, spacedmonkey, adamsilverstein, SergeyBiryukov.
Fixes #50521.
Built from https://develop.svn.wordpress.org/trunk@48990


git-svn-id: http://core.svn.wordpress.org/trunk@48752 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 19:55:08 +00:00
antpb 541796de46 Media: Allow contextually generated images to show in Media Library grid view.
In grid view, contextually generated or cropped media is filtered out causing page numbering to be offset and incorrect. This also impacted any media utilizing `media-models.js`.
Props webmandesign, audrasjb, afercia, pbiron, mista-flo.
Fixes #46127, #50410, #47215.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48751 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 14:42:04 +00:00
Sergey Biryukov 359119a31e Tests: Move the `data_wp_site_query_meta_query()` data provider next to the test it's used in.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@48988


git-svn-id: http://core.svn.wordpress.org/trunk@48750 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 11:30:02 +00:00
Sergey Biryukov 226dc9fc2c Docs: Correct comments in `comments_pre_query`, `networks_pre_query`, and `sites_pre_query` tests.
Follow-up to [44983], [46086].

See #50768.
Built from https://develop.svn.wordpress.org/trunk@48987


git-svn-id: http://core.svn.wordpress.org/trunk@48749 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 11:20:04 +00:00
Sergey Biryukov e01409866e Docs: Reformat `comments_pre_query`, `networks_pre_query`, `sites_pre_query` DocBlocks for better readability.
See #50768.
Built from https://develop.svn.wordpress.org/trunk@48986


git-svn-id: http://core.svn.wordpress.org/trunk@48748 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 11:10:03 +00:00
Sergey Biryukov b66ff2f68d Docs: Fix typo in `*_pre_query` filter DocBlocks.
See #50768.
Built from https://develop.svn.wordpress.org/trunk@48985


git-svn-id: http://core.svn.wordpress.org/trunk@48747 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 10:45:03 +00:00
Sergey Biryukov 06e53b90a1 Docs: Correct the parameter type for `networks_pre_query` filter.
The filter should return the network count as an integer if `$this->query_vars['count']` is set.

Follow-up to [46100].

See #50768, #47599.
Built from https://develop.svn.wordpress.org/trunk@48984


git-svn-id: http://core.svn.wordpress.org/trunk@48746 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 10:37:05 +00:00
Sergey Biryukov ac00862f44 Formatting: Make sure `links_add_target()` adds the `target` attribute to the correct tag.
Previously, the attribute could unintentionally be added to a tag that starts with the same characters, e.g. `<aside>` instead of `<a>`.

Props antonlukin.
Fixes #51313.
Built from https://develop.svn.wordpress.org/trunk@48983


git-svn-id: http://core.svn.wordpress.org/trunk@48745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-17 10:14:07 +00:00
Helen Hou-Sandí 75262781d9 i18n: Ensure block type strings in the REST API end with a full stop.
Props ramiy, justinahinon.
Fixes #50805.


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


git-svn-id: http://core.svn.wordpress.org/trunk@48744 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-16 19:23:07 +00:00
Sergey Biryukov eef2e5c85c Code Modernization: Return an empty string from `wpdb::prepare()` if there are not enough arguments to match the placeholders.
This avoids a fatal error on PHP 8 caused by passing mismatched arguments to `vsprintf()`, and maintains the current behaviour.

Follow-up to [48979], [48980].

See #50913, #50639.
Built from https://develop.svn.wordpress.org/trunk@48981


git-svn-id: http://core.svn.wordpress.org/trunk@48743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-16 02:29:06 +00:00
Sergey Biryukov 9734ed5673 Code Modernization: Return an empty string from `wpdb::_real_escape()` if a non-scalar value is passed.
This avoids a fatal error on PHP 8 caused by passing a non-string value to ` mysqli_real_escape_string()`, and maintains the current behaviour.

See #50913, #50639.
Built from https://develop.svn.wordpress.org/trunk@48980


git-svn-id: http://core.svn.wordpress.org/trunk@48742 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-16 01:48:10 +00:00
Sergey Biryukov b37e0cec1b Tests: Revert [48973].
These tests ensure that a `_doing_it_wrong()` notice is thrown when `wpdb::prepare()` is called incorrectly, but also that the function will still handle the provided input as correctly as possible.

Disabling these tests on PHP 8 hides a problem, i.e. the function will no longer throw a notice and handle things correctly, it will now cause a white screen of death due to a fatal error.

That is a backward compatibility break, and `wpdb::prepare()` should be updated instead to maintain the original behaviour on PHP 8.

Props jrf, ayeshrajans.
See #50913, #50639.
Built from https://develop.svn.wordpress.org/trunk@48979


git-svn-id: http://core.svn.wordpress.org/trunk@48741 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-16 01:35:09 +00:00
Sergey Biryukov 3838ecccdd Build/Test Tools: Restore the `QUnit` global in JSHint config for QUnit.
Follow-up to [47512], [48977].

See #51312, #37117.
Built from https://develop.svn.wordpress.org/trunk@48978


git-svn-id: http://core.svn.wordpress.org/trunk@48740 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-15 10:09:07 +00:00
Sergey Biryukov 79ab76f5d8 Build/Test Tools: Remove unused legacy globals from JSHint config for QUnit.
Follow-up to [47512].

Props TimoTijhof.
Fixes #51312. See #37117.
Built from https://develop.svn.wordpress.org/trunk@48977


git-svn-id: http://core.svn.wordpress.org/trunk@48739 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-15 10:04:05 +00:00
Sergey Biryukov 042bdf66fd Docs: Document the usage of `$wpdb` global in `wp_delete_attachment_files()`.
Props jontyravi.
Fixes #51309.
Built from https://develop.svn.wordpress.org/trunk@48976


git-svn-id: http://core.svn.wordpress.org/trunk@48738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-14 13:43:04 +00:00
Sergey Biryukov d1dbc3c69d Docs: Document the usage of `$wpdb` global in `wp_get_post_autosave()`.
Follow-up to [48422].

Props ravivaddweb.
Fixes #51308. See #34560.
Built from https://develop.svn.wordpress.org/trunk@48975


git-svn-id: http://core.svn.wordpress.org/trunk@48737 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-14 13:37:06 +00:00
Sergey Biryukov f851814996 Tests: Correct assertion in `Tests_DB::test_prepare_incorrect_arg_count()`.
On failure, `wpdb::prepare()` returns either an empty string or `null`, not `false`.

The test only passed accidentally due to `assertEquals()` not performing a strict type check.

Follow-up to [41662].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48974


git-svn-id: http://core.svn.wordpress.org/trunk@48736 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-13 15:21:06 +00:00
Sergey Biryukov 7e2c6d63b7 Tests: Require PHP less than 8.0 for some `wpdb` tests.
These tests ensure that `wpdb::prepare()` throws a `_doing_it_wrong()` notice when called with an incorrect number of arguments, or with arguments of a wrong type.

PHP 8 introduces similar error messages natively, making these tests redundant on PHP 8.0 or later.

Follow-up to [41470], [41662].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@48973


git-svn-id: http://core.svn.wordpress.org/trunk@48735 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-13 02:49:06 +00:00
Sergey Biryukov a2947f7054 Tests: Replace the native PHPUnit `getMockForAbstractClass()` and `getMockBuilder()` methods.
This avoids parse errors in PHPUnit internals due to `match` being a reserved keyword in PHP 8.

To run on PHP 8, the tests relying on these methods require PHPUnit 9.3 or later.

When the test suite is updated for compatibility with PHPUnit 9.x, these overrides can be removed.

See #50913, #50902.
Built from https://develop.svn.wordpress.org/trunk@48972


git-svn-id: http://core.svn.wordpress.org/trunk@48734 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-13 02:38:07 +00:00
Sergey Biryukov 282c813259 Coding Standards: Explicitly declare the `$wp_version` global used in some core files.
Props jaydeep-rami, sabernhardt.
Fixes #44932.
Built from https://develop.svn.wordpress.org/trunk@48971


git-svn-id: http://core.svn.wordpress.org/trunk@48733 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-12 00:12:08 +00:00
Sergey Biryukov f29d62012d Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-plugin-install-list-table.php`.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@48970


git-svn-id: http://core.svn.wordpress.org/trunk@48732 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-11 01:05:08 +00:00
Helen Hou-Sandí 4e5211a691 REST API: Include attribute name in schema validation error message.
Props bobbingwide.
Fixes #51231.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48731 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-10 16:34:11 +00:00
Sergey Biryukov e36c7f0ba0 Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-plugins-list-table.php`.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@48968


git-svn-id: http://core.svn.wordpress.org/trunk@48730 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-10 14:23:08 +00:00
Sergey Biryukov 7dada5df2f Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-ms-themes-list-table.php`.
See #50767.
Built from https://develop.svn.wordpress.org/trunk@48967


git-svn-id: http://core.svn.wordpress.org/trunk@48729 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-10 14:21:09 +00:00
John Blackbourn 526f0d01d4 Posts, Post Types: Don't output the adjacent posts `rel` link by default.
This has a considerable performance impact on sites which don't otherwise show previous and next post links, and has no SEO benefit.

Props joostdevalk, swissspidy, johnbillion

Fixes #39111
Built from https://develop.svn.wordpress.org/trunk@48966


git-svn-id: http://core.svn.wordpress.org/trunk@48728 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 21:34:08 +00:00
Helen Hou-Sandí 447b526379 Privacy: Remove extraneous colon from settings screen.
Props vinita29, garrett-eclipse.
Fixes #50414.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48727 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 19:43:08 +00:00
desrosj 8e9e942215 Site Health: Allow attachments to be added to recovery mode emails.
The `wp_mail()` function has the ability to add attachments to emails. There is currently no way to add attachments to the recovery mode email sent out to site admins when a PHP error is encountered on their site.

This change adds that ability through the use of the `recovery_mode_email` filter, allowing developers to use the full capabilities of `wp_mail()`.

Props desrosj, timothyblynjacobs.
Fixes #51276.
Built from https://develop.svn.wordpress.org/trunk@48964


git-svn-id: http://core.svn.wordpress.org/trunk@48726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 16:21:06 +00:00
desrosj 04c8217724 Administration: Add the `aria-hidden` attribute to admin menu icons.
The admin menu icons are included as a visual element to support the text links. Without the `aria-hidden=“true”` attribute, they are also exposed to assistive technologies (which can process icon fonts in unpredictable ways).

This change improves the experience for multiple types of assistive technologies, including screen reading and voice control software. With `aria-hidden=“true”` added, the icons will not be read, and a user can now trigger a click of a top level admin menu item with commands such as “click posts”, or “click plugins”.

Props joedolson, afercia, audrasjb, adriantirusli.
Fixes #51012.
Built from https://develop.svn.wordpress.org/trunk@48963


git-svn-id: http://core.svn.wordpress.org/trunk@48725 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 16:15:06 +00:00
desrosj 5be5b975c3 Docs: Improve the `recovery_mode_email` inline docs.
See #51267, #50768.
Built from https://develop.svn.wordpress.org/trunk@48962


git-svn-id: http://core.svn.wordpress.org/trunk@48724 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 15:48:07 +00:00
Sergey Biryukov 649348cf5b Code Modernization: Remove unnecessary reference sign from `get_comment()` definition.
This fixes a PHP 8 "argument must be passed by reference, value given" error when using `array_map( 'get_comment', ... )`.

Object variables in PHP 5+ contain a reference to the object, and it's the reference that's passed around.

Note: This reverts [48838], which is now redundant.

Follow-up to a similar change for `get_post()` in [21572].

See #50913.
Built from https://develop.svn.wordpress.org/trunk@48961


git-svn-id: http://core.svn.wordpress.org/trunk@48723 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 03:55:07 +00:00
Sergey Biryukov 7c60a660f1 Code Modernization: Correct the check for negative post IDs in `WP_Query::parse_query()` to work as expected on PHP 8.
PHP 8 changes the way string to number comparisons are performed: https://wiki.php.net/rfc/string_to_number_comparison

In particular, checking if an empty string is less than zero in PHP 8 evaluates to `true`, not `false`.

For `WP_Query`, this resulted in unintentionally returning a 404 error for most of front-end requests, instead of the relevant content.

By explicitly casting the value to `int`, we make sure to compare both values as numbers, rather than a string and a number.

Follow-up to [38288].

Props trepmal.
See #50913.
Built from https://develop.svn.wordpress.org/trunk@48960


git-svn-id: http://core.svn.wordpress.org/trunk@48722 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-09 02:35:06 +00:00
Sergey Biryukov 17a4c20d55 Comments: Check if a valid comment ID was passed when editing a comment.
This avoids a PHP notice after submitting the Edit Comment form.

Props regan.khadgi.
Fixes #51263.
Built from https://develop.svn.wordpress.org/trunk@48958


git-svn-id: http://core.svn.wordpress.org/trunk@48720 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-08 13:41:08 +00:00
Sergey Biryukov ed86c0da6c Build/Test Tools: Allow unit tests to run on PHP 8 in full.
PHP 8 introduces a new control structure called `match`, which makes `match` a reserved keyword in PHP 8.

One of the PHPUnit dependencies declares a class named `Match`, which triggered a fatal error before PHPUnit could even start.

To be able to use PHPUnit 7.x on PHP 8 and run the tests, core needs a new version of that dependency, which is now installed using Composer.

This is the simplest way to get things working again and start addressing the individual test failures.

Additionally, various test runs on PHP 8 on Travis are now performed individually instead of being chained, so that failures outside of WP scope don't block further execution.

Props jrf, jorbin, pento.
See #50902.
Built from https://develop.svn.wordpress.org/trunk@48957


git-svn-id: http://core.svn.wordpress.org/trunk@48719 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-07 19:23:05 +00:00
Sergey Biryukov f01b307dc1 Tests: Replace a few instances of `assertNotEquals()` with `assertNotFalse()`.
See #38266.
Built from https://develop.svn.wordpress.org/trunk@48954


git-svn-id: http://core.svn.wordpress.org/trunk@48716 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-07 04:13:09 +00:00
Sergey Biryukov d52809e5f1 Tests: Remove the polyfill for `assertNotFalse()`.
`assertNotFalse()` is available in PHPUnit since version 4.0.

The polyfill was introduced back when WordPress still supported PHP 5.2 and PHPUnit 3.6.x, and is now redundant.

Follow-up to [39919], [45058], [47880].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48953


git-svn-id: http://core.svn.wordpress.org/trunk@48715 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-07 03:28:04 +00:00
Sergey Biryukov cb67321277 Tests: Add a polyfill for `assertEqualsWithDelta()` to `WP_UnitTestCase` and use it where appropriate.
`assertEqualsWithDelta()` was added in PHPUnit 7.5, while WordPress still supports PHPUnit 5.4.x as the minimum version.

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48952


git-svn-id: http://core.svn.wordpress.org/trunk@48714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-07 03:14:04 +00:00
TimothyBlynJacobs 55c21acc9f REST API: Extract `WP_REST_Controller::get_endpoint_args_for_item_schema()` to a standalone function.
This method is useful whenever a JSON Schema needs to be converted to a format suitable for argument validation with `WP_REST_Request`. Moving the logic into a standalone function allows developers to use it outside of the `WP_REST_Controller` context.

Props pentatonicfunk.
Fixes #50876. 

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


git-svn-id: http://core.svn.wordpress.org/trunk@48713 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-07 02:37:07 +00:00
Sergey Biryukov 6cbbd32eb5 Tests: Add a test case for storing `false` in the cache.
Follow-up to [20089], [48949].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48950


git-svn-id: http://core.svn.wordpress.org/trunk@48712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-06 04:25:04 +00:00
Sergey Biryukov b4e2dc1331 Tests: Correct assertion in `Tests_Cache::test_add_get_null()`.
It is possible to store `null` in the cache without it being converted to an empty string.

Follow-up to [20089].

Props johnbillion, SergeyBiryukov.
See #38266.
Built from https://develop.svn.wordpress.org/trunk@48949


git-svn-id: http://core.svn.wordpress.org/trunk@48711 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-06 03:37:04 +00:00
Sergey Biryukov 628a149789 Tests: Correct assertion in `Tests_Cache::test_miss()`.
On failure to retrieve contents, `WP_Object_Cache::get()` returns `false`, not `null`.

The test only passed accidentally due to `assertEquals()` not performing a strict type check.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48710 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-06 02:53:08 +00:00
TimothyBlynJacobs a63708debf REST API: Refactor `WP_REST_Server::dispatch()` to make internal logic reusable.
#50244 aims to introduce batch processing in the REST API. An important feature is the ability to enforce that all requests have valid data before executing the route callbacks in "pre-validate" mode.

This necessitates splitting `WP_REST_Server::dispatch()` into two methods so the batch controller can determine the request handler to perform pre-validation and then respond to the requests.

The two new methods, `match_request_to_handler` and `respond_to_request`, have a public visibility, but are marked as `@access private`. This is to allow for iteration on the batch controller to happen in the Gutenberg repository. Developers should not rely upon these methods, their visibility may change in the future.

See #50244.
Props andraganescu, zieladam, TimothyBlynJacobs.

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


git-svn-id: http://core.svn.wordpress.org/trunk@48709 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-05 21:52:07 +00:00
Sergey Biryukov 93b8183327 Media: In `wp_ajax_image_editor()`, check if the `error` property exists before accessing it.
This avoids a PHP notice when editing an image.

Follow-up to [48375].

Props Mista-Flo.
Fixes #51251.
Built from https://develop.svn.wordpress.org/trunk@48946


git-svn-id: http://core.svn.wordpress.org/trunk@48708 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-05 18:12:08 +00:00
TimothyBlynJacobs f43ca27db9 REST API: Support a route-level validation callback.
Most request data is validated on a per-parameter basis. Often, however, additional validation is needed that operates on the entire request object. Currently, this is done in the route callback and often in the `prepare_item_for_database` method specifically.

#50244 aims to introduce batch processing in the REST API. An important feature is the ability to enforce that all requests have valid data before executing the route callbacks in "pre-validate" mode.

This patch introduces support for calling a `validate_callback` after all parameter validation has succeeded. That allows moving more validation outside of the route callback and into `WP_REST_Request` which will improve "pre-validate" support.

Props TimothyBlynJacobs, zieladam.
Fixes #51255.
See #50244.



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


git-svn-id: http://core.svn.wordpress.org/trunk@48707 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-05 18:09:06 +00:00
Sergey Biryukov 63b15a6fd6 Tests: Replace a few more instances of `assertEquals()` with `assertSame()`.
These were previously missed due to incorrect capitalization.

Follow-up to [48937], [48939], [48940].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48944


git-svn-id: http://core.svn.wordpress.org/trunk@48706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-05 16:49:07 +00:00
Sergey Biryukov e05edbcd53 Comments: Rename `WP_Comments_List_Table::comment_status_dropdown()` to `::comment_type_dropdown()`.
This better reflects the purpose of the method, which doesn't have anything to do with a comment status.

Follow-up to [48521].

Props davidbaumwald, johnbillion, SergeyBiryukov.
Fixes #51248.
Built from https://develop.svn.wordpress.org/trunk@48943


git-svn-id: http://core.svn.wordpress.org/trunk@48705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-05 00:33:05 +00:00
Sergey Biryukov dd03a5a156 Docs: Further correct placement for `wp_editor_expand` filter DocBlock.
This ensures that the filter is only applied if the conditions before it are evaluated to true.

Follow-up to [48714].

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


git-svn-id: http://core.svn.wordpress.org/trunk@48704 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-04 21:48:07 +00:00
John Blackbourn d0a32c5111 Docs: Various docblock corrections and improvements.
See #50768
Built from https://develop.svn.wordpress.org/trunk@48941


git-svn-id: http://core.svn.wordpress.org/trunk@48703 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-04 20:41:07 +00:00
Sergey Biryukov 7ad3a59ca4 Tests: Replace a few more instances of `assertEquals()` with `assertSame()`.
These were previously missed due to incorrect capitalization.

Follow-up to [48937], [48939].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48940


git-svn-id: http://core.svn.wordpress.org/trunk@48702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-04 07:38:06 +00:00
Sergey Biryukov fab9a6e435 Tests: Introduce `assertSameSets()` and `assertSameSetsWithIndex()`, and use them where appropriate.
This ensures that not only the array values being compared are equal, but also that their type is the same.

These new methods replace most of the existing instances of `assertEqualSets()` and `assertEqualSetsWithIndex()`.

Going forward, stricter type checking by using `assertSameSets()` or `assertSameSetsWithIndex()` should generally be preferred, to make the tests more reliable.

Follow-up to [48937].

See #38266.
Built from https://develop.svn.wordpress.org/trunk@48939


git-svn-id: http://core.svn.wordpress.org/trunk@48701 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-04 07:02:05 +00:00
Sergey Biryukov 6d0491119e Administration: Give the `$error` variable in `wp-admin/admin-header.php` a more descriptive name.
This avoids a conflict with the same global variable used elsewhere, e.g. in Theme Editor.

Follow-up to [48850].

Props vinayak.anivase.
Fixes #51219.
Built from https://develop.svn.wordpress.org/trunk@48938


git-svn-id: http://core.svn.wordpress.org/trunk@48700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-03 01:43:07 +00:00
Sergey Biryukov 831c62ea8e Tests: First pass at using `assertSame()` instead of `assertEquals()` in most of the unit tests.
This ensures that not only the return values match the expected results, but also that their type is the same.

Going forward, stricter type checking by using `assertSame()` should generally be preferred to `assertEquals()` where appropriate, to make the tests more reliable.

Props johnbillion, jrf, SergeyBiryukov.
See #38266.
Built from https://develop.svn.wordpress.org/trunk@48937


git-svn-id: http://core.svn.wordpress.org/trunk@48699 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-02 00:37:09 +00:00
Sergey Biryukov 675f4fa43a General: Set `svn:eol-style` for `phpunit/includes/normalize-xml.xsl`.
Follow-up to [48072], [48845].

See #51113.
Built from https://develop.svn.wordpress.org/trunk@48931


git-svn-id: http://core.svn.wordpress.org/trunk@48693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-01 16:50:09 +00:00
Sergey Biryukov 593624f182 General: Correct reversed `svn:auto-props` for `.mo` and `.po` files.
* `.mo` files are binary and should have `svn:mime-type=application/octet-stream`.
* `.po` files are text and should have `svn:eol-style=native`, same as `.pot` files.

Follow-up to [46636], [48845].

See #51113.
Built from https://develop.svn.wordpress.org/trunk@48930


git-svn-id: http://core.svn.wordpress.org/trunk@48692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-01 16:40:08 +00:00
Sergey Biryukov 0418dad234 Docs: Synchronize the description of the `$format` parameter in various date/time functions for posts and comments.
See #50768.
Built from https://develop.svn.wordpress.org/trunk@48929


git-svn-id: http://core.svn.wordpress.org/trunk@48691 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-09-01 00:43:06 +00:00
Sergey Biryukov 2df5ec1234 Tests: Move the tests for `get_the_modified_time()` to a more appropriate place.
Add some new tests to better cover the functionality, for consistency with `get_the_date()` and `get_the_time()`.

Follow-up to [48911], [48912], [48918].

Props wittich.
Fixes #51184.
Built from https://develop.svn.wordpress.org/trunk@48924


git-svn-id: http://core.svn.wordpress.org/trunk@48686 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-08-31 22:43:05 +00:00
Sergey Biryukov 68dfbf51d9 Script Loader: Add backward compatibility for JavaScript i18n globals and properties deprecated in WordPress 5.5.
The recommended approach for any plugins using these globals or properties is to switch to the newer `wp.i18n` functions.

In the meantime, this ensures that accessing any of these globals does not break the rest of the code on the page, and an appropriate warning message is logged to the JavaScript console.

Follow-up to: https://core.trac.wordpress.org/query?summary=~wp.i18n&milestone=5.5

Props omarreiss, peterwilsoncc, kbjohnson90, johnbillion, TimothyBlynJacobs, joostdevalk, ocean90, desrosj, SergeyBiryukov.
Fixes #51123.
Built from https://develop.svn.wordpress.org/trunk@48923


git-svn-id: http://core.svn.wordpress.org/trunk@48685 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-08-31 20:30:03 +00:00
Sergey Biryukov d3abb209e1 Date/Time: In `get_the_date()` and related functions, pass the original, unmodified `$format` value to the filters.
Additionally, simplify the `$format` argument checks for consistency with similar checks in `get_the_modified_date()` and `get_the_modified_time()`.

Follow-up to [48912].

Props Rarst.
See #51184.
Built from https://develop.svn.wordpress.org/trunk@48918


git-svn-id: http://core.svn.wordpress.org/trunk@48680 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-08-31 18:30:05 +00:00