Commit Graph

25418 Commits

Author SHA1 Message Date
Gary Pendergast d13ae6300c Build Tools: Add an npm script shortcut to run grunt.
Rather than needing to install grunt globally, this allows running grunt from `node_modules`, instead.

`npm run grunt ...` is effectively the equivalent of running `grunt ...`.

Props andrew.taylor.
See #45214.


Built from https://develop.svn.wordpress.org/branches/5.0@43836


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43665 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-29 08:28:32 +00:00
Gary Pendergast 91ce38b3d5 Build Tools: Revert [43826] and [43824].
Grabbing the packages directly from the Gutenberg repo was an interesting experiment, but it causes significant workflow issues, particular for folks using Windows.

See #45145.


Built from https://develop.svn.wordpress.org/branches/5.0@43835


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-29 08:27:39 +00:00
danielbachhuber 7136636db3 REST API: Improve performance by avoiding `call_user_func()`.
The `get_compact_response_links()` method was introduced in WP 4.5, and this conditional is no longer necessary.

Props schlessera, timothyblynjacobs.
Fixes #45189.

Built from https://develop.svn.wordpress.org/branches/5.0@43834


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43663 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-29 00:49:40 +00:00
danielbachhuber eea6942164 Block Editor: Preload `wp/v2/media` with OPTIONS for caps check.
Also introduces a `block_editor_preload_paths` filter for plugins and themes to preload additional data.

Props imath, mattheu.
Fixes #45194.

Built from https://develop.svn.wordpress.org/branches/5.0@43833


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43662 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-29 00:25:38 +00:00
Aaron Jorbin 8b7967db38 php7.3 compatibility: Fix compact throwing notices for multisite
In PHP 7.3, the compact() function has been changed to issue an E_NOTICE level error if a passed string refers to an unset variable. In previous versions of PHP, this notice was silently skipped. The full RFC can be viewed here: https://wiki.php.net/rfc/compact

By initializing these variables, they can be compacted.

Previously [43819].
See #44416.
Props desrosj.


Built from https://develop.svn.wordpress.org/branches/5.0@43832


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 20:18:38 +00:00
Gary Pendergast 97a88cdf69 Script Loader: Add translator comments and remove textdomains.
The inline script for `wp-date` incorrectly included a textdomain, and lacked translator comments.

Props mukesh27.
Fixes #45191, #45162.


Built from https://develop.svn.wordpress.org/branches/5.0@43831


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43660 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 08:16:42 +00:00
Gary Pendergast 0c54153886 Meta Boxes: Fix error when a meta box is rendered with a static method callback.
When `WP_DEBUG` is set, ensure that a static method callback is passed to `ReflectionMethod`, instead of `ReflectionFunction`.

Props DrewAPicture.
Fixes #45192.


Built from https://develop.svn.wordpress.org/branches/5.0@43830


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43659 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 08:12:39 +00:00
Gary Pendergast e491b2bc6a Accessibility: Media: Improve the usage of a few label elements in the media templates.
Label elements should only be used for labelable elements.
- `Uploaded By` and `Uploaded To` aren't form controls and shouldn't be associated with labels
- changes the labels for media source, alternate sources, poster image, and tracks to solve a layout issue and explicitly associate the labels to their form fields (previously, the labels were wrapping also the Remove buttons)

Merges [42444] to the 5.0 branch.

Props Presskopp, afercia.
Fixes #38759, #40468.


Built from https://develop.svn.wordpress.org/branches/5.0@43829


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43658 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:41:45 +00:00
Sergey Biryukov 81131b0635 Tests: Use `DIR_TESTDATA` in `test_wp_set_script_translation()`.
`__DIR__` is not available in PHP 5.2.x.

See #45103.
Built from https://develop.svn.wordpress.org/branches/5.0@43828


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:40:05 +00:00
Drew Jaynes 2f515c6db0 Docs: Link to the "Conditional Tags" article in the Theme Developer Handbook from the descriptions for a variety of core conditional tag functions.
These notations largely serve to direct consumers (of both the source and the parsed code reference) to extended information on individual and related conditional tags throughout WordPress. The changeset also standardizes corresponding DocBlock summaries to use third-person singular verbs.

Notations have been added for the following functions:

* comments_open()
* email exists()
* has_excerpt()
* has_post_thumbnail()
* has_tag()
* in_category()
* in_the_loop()
* is_404()
* is_active_sidebar()
* is_active_widget()
* is_admin()
* is_admin_bar_showing()
* is_archive()
* is_attachment()
* is_author()
* is_blog_installed()
* is_category()
* is_comments_popup()
* is_date()
* is_day()
* is_dynamic_sidebar()
* is_feed()
* is_front_page()
* is_home()
* is_local_attachment()
* is_main_query
* is_month()
* is_multi_author
* is_new_day()
* is_page()
* is_page_template()
* is_paged()
* is_plugin_active()
* is_plugin_active_for_network()
* is_plugin_inactive()
* is_plugin_page()
* is_post_type_archive()
* is_preview()
* is_rtl()
* is_search()
* is_single()
* is_singular()
* is_sticky()
* is_tag()
* is_tax()
* is_taxonomy_hierarchical()
* is_time()
* is_trackback()
* is_user_logged_in()
* is_year()
* pings_open()
* post_type_exists()
* taxonomy_exists()
* term_exists()
* username exists()
* wp_attachment_is_image()
* wp_script_is() 

Merges [42710] to the 5.0 branch.

Props janalwin.
Fixes #43254.

Built from https://develop.svn.wordpress.org/branches/5.0@43827


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43656 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:38:26 +00:00
atimmer 918da46df0 Build tools: Fix build after [43824].
Props omarreiss.
See #45145.

Built from https://develop.svn.wordpress.org/branches/5.0@43826


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43655 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:36:46 +00:00
herregroen 6ff1386460 I18N: Add JavaScript translation support.
Adds the `wp_set_script_translations` function which registers translations for a JavaScript file. This function takes a handle, domain and optionally a path and ensures JavaScript translation files are loaded if they exist.

Props atimmer, omarreiss, nerrad, swissspidy, ocean90.
Fixes #45103.

Built from https://develop.svn.wordpress.org/branches/5.0@43825


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43654 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:35:06 +00:00
atimmer efb928cd0b Build tools: Clone and build from packages repo.
Instead of requiring the packages individually this commit changes it so the packages are used from the packages repository (gutenberg). This is a solution that makes updating the packages easier, as long as we don't have a monorepo to manage both WordPress & the JavaScript packages together.

Props youknowriad, gziolo, omarreiss, herregroen.
See #45145.

Built from https://develop.svn.wordpress.org/branches/5.0@43824


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-26 07:33:26 +00:00
Gary Pendergast 9295846214 Post WordPress 5.0 Beta 1 version bump.
Built from https://develop.svn.wordpress.org/branches/5.0@43823


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43652 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 21:54:51 +00:00
Gary Pendergast b14ecd20f7 WordPress 5.0 Beta 1.
Built from https://develop.svn.wordpress.org/branches/5.0@43822


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43651 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 21:38:51 +00:00
Dominik Schilling 38c80551e6 Bundled Themes: Remove languages folder with POT file from Twenty Nineteen.
POT files are no longer required.
Built from https://develop.svn.wordpress.org/branches/5.0@43821


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 21:01:51 +00:00
Sergey Biryukov bbd58a5c35 Upgrade/Install: Convert `Sample Page`, `Hello World`, and `Privacy Policy` to block content.
Props desrosj, garrett-eclipse, danielbachhuber.
Fixes #45151.
Built from https://develop.svn.wordpress.org/branches/5.0@43820


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43649 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 18:51:51 +00:00
Aaron Jorbin 9635ac49bb php7.3 compatibility: Fix compact throwing notices
In PHP 7.3, the compact() function has been changed to issue an E_NOTICE level error if a passed string refers to an unset variable. In previous versions of PHP, this notice was silently skipped. The full RFC can be viewed here: https://wiki.php.net/rfc/compact

This fixes all unit tested code that uses compact.

Props desrosj.
Fixes #44416.

Built from https://develop.svn.wordpress.org/branches/5.0@43819


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43648 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 16:33:52 +00:00
Gary Pendergast 50ef6331e7 Scripts: Add a missing date format to the `wp-date` config.
`wp-date` recently added the `datetimeAbbreviated` format, but the config wasn't sending it on page load.

Fixes #45158.


Built from https://develop.svn.wordpress.org/branches/5.0@43818


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43647 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 11:48:53 +00:00
atimmer f99db02983 Build tools: Build webpack dev in `grunt build`.
For the WordPress zip we need both the minified and non-minified files. This is because of `SCRIPT_DEBUG`. So in `grunt build` we need to do both `grunt webpack:prod` and `grunt webpack:dev`.

Props bordoni.
Fixes #45156.

Built from https://develop.svn.wordpress.org/branches/5.0@43817


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43646 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 09:57:50 +00:00
Gary Pendergast 0b98b31c1f Block Editor: Remove some errant debugging included in [43815].
Props bordoni.
See #45037.


Built from https://develop.svn.wordpress.org/branches/5.0@43816


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43645 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 09:00:39 +00:00
Gary Pendergast dde5487499 Editor: Minor bug fixes.
Change the default layout slightly, and tweak the HTML stored in `post_content`.

Props matveb, karmatosed, joen, youknowriad, aduth, iseulde, pento, EphoxJames, mkaz, jnylen0, notnownikki, lonelyvegan, chopinbach, njpanderson, mimo84, intronic, westonruter, mcsf, dmsnell, afercia, paulwilde, mitogh, codebykat, mrahmadawais, kopepasah, circlecube, adamsilverstein, timmydcrawford, ephox-mogran, nbachiyski, JDGrimes, laurelfulford, Soean, mapk, sirjonathan, j-falk, ryelle, helen, netweb, lamosty, willybahuaud, maurobringolf, jorbin, spocke, androb, annaharrison, Afraithe, georgeh, matt, melchoyce, nitrajka, sirreal, babbardel, arush, martinlugton, iandunn, oyously, rileybrook, azaozz, folletto, ianstewart, johnpixle, clorith, joedolson, ipstenu, mrwweb, diegoliv, jeffpaul, lukecavanagh, shaunandrews, hugobaeta, jjj, mizejewski, buzztone, jdembowski, webdevmattcrom, GaryJones, jasonagnew, dd32, ieatwebsites, gma992, swissspidy, dixitadusara, ameeker, stagger-lee, jblz, nicbertino, rahmohn, vladanost, gziolo, lancewillett, lynneux, betsela, fuyuko, msdesign21, thrijith, chanthaboune, Cloud887, hblackett, vishalkakadiya, c-shultz, nfmohit, noisysocks, omarreiss, hedgefield, hideokamoto, mirucon, nosolosw, DannyCooper, burhandodhy, zebulan, benjamin_zekavica, danielbachhuber, jorgefilipecosta, ajitbohra, bph, ChrisVanPatten, dixitadusara, antpb, mikehaydon, jahvi, floriansimeth, Mathiu, amedina, diegoreymendez, etoledom, caxco93, yoavf, welcher, bobbingwide, jonsurrell, notlaura, ocean90, eliorivero, wpscholar, Shelob9, travislopes, earnjam, designsimply, johnwatkins0, dfangstrom, igorsch, jaswrks, daniloercoli, rianrietveld, dimadin, SergioEstevao, dlocc, tinkerbelly, schlessera, sumobi, kjellr, ireneyoast, hypest, tfrommen, intronic, johnny5, samikeijonen, bpayton, atimmer, Rahmon, tg-ephox, nerrad, talldan, Xyfi.

See #45037.

Built from https://develop.svn.wordpress.org/branches/5.0@43815


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43644 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 06:46:40 +00:00
Gary Pendergast abc3cdd5b1 Themes: Document the new theme features being added.
The `add_theme_support()` inline docs now includes the features that the block editor adds.

Props desrosj.
See #45134.


Built from https://develop.svn.wordpress.org/branches/5.0@43814


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43643 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 04:16:39 +00:00
Gary Pendergast 722f25cd97 KSES: Allow the `download` attribute on `<a>` tags.
To avoid this being a vector for bypassing the filetypes that are allowed to be uploaded, this attribute is only allowed to be added without a value.

Props kalpshit, arshidkv12, welcher, peterwilsoncc, marina_wp, pento.
See #44724.


Built from https://develop.svn.wordpress.org/branches/5.0@43813


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43642 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 01:19:39 +00:00
Gary Pendergast 23984141ce Styles: Add helper functions for loading block styles.
Blocks are able to register styles that used in the editor and the frontend, or only in the editor. These functions ensure the correct styles are loaded in the correct place.

See #45065.


Built from https://develop.svn.wordpress.org/branches/5.0@43812


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43641 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-24 00:36:39 +00:00
danielbachhuber 7e3414597f Meta: Allow empty strings to be set by Custom Fields meta box.
Because the REST API allows meta keys to have empty values, the Custom Fields meta box should permit the same behavior.

Props charlestonsw, soulseekah.
Fixes #43559.

Built from https://develop.svn.wordpress.org/branches/5.0@43811


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43640 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 18:56:38 +00:00
danielbachhuber 9cd179146c Embeds: Filter HTML response in oEmbed proxy controller.
Adapts the response from `WP_oEmbed_Controller::get_proxy_item()` so that the response is correctly filtered and embeds work properly in JavaSccript editors. Introduces new `get_oembed_response_data_for_url()` function for preparing internal oEmbed responses.

Props danielbachhuber, imath, swissspidy.
Fixes #45142. 

Built from https://develop.svn.wordpress.org/branches/5.0@43810


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 17:48:39 +00:00
Aaron Jorbin 634bb165bc Bundled Theme: Make twentynineteen the default theme.
After [43808], we can now make twentynineteen the default theme. Twentyseventeen has been a great default, but 5.0 and twentynineteen is guten.

Fixes #45152.

Built from https://develop.svn.wordpress.org/branches/5.0@43809


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43638 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 16:51:39 +00:00
allancole a3ae67bd8f Importing Twenty Nineteen, our new default theme for 2019, set for 5.0.
Let Gutenberg shine with this simple, fast, and powerful theme. Initial development occurred on GitHub. See: https://github.com/WordPress/twentynineteen

Props allancole, karmatosed, kjellr, yingling017, mrasharirfan, milana_cap, fabiankaegy, westonruter, aaronjorbin, netweb, b-07, khleomix, blowery, dereksmart, jasmussen, audrasjb, nielslange, mmaumio, dimadin, joyously, anevins12.

Built from https://develop.svn.wordpress.org/branches/5.0@43808


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43637 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 15:53:44 +00:00
Gary Pendergast 46e270096b Dashboard: Remove the Try Gutenberg callout.
Block or block not. There is no try.

Props mukesh27.
See #45063.


Built from https://develop.svn.wordpress.org/branches/5.0@43807


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 11:04:40 +00:00
danielbachhuber 4521b34dca Blocks: Fix coding standards introduced in [43804].
Props Presskopp, swissspidy.
See #45098

Built from https://develop.svn.wordpress.org/branches/5.0@43806


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 10:59:40 +00:00
Gary Pendergast b1f64a77d8 REST API: Add endpoints for blocks.
`WP_REST_Block_Renderer_Controller` allows rendering of server-side rendered blocks, whilst `WP_REST_Blocks_Controller` allows retrieving of reusable blocks.

Props desrosj, danielbachhuber, pento.
See #45065.


Built from https://develop.svn.wordpress.org/branches/5.0@43805


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43634 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 07:04:39 +00:00
Gary Pendergast c60c870ab8 Blocks: Add the reusable block post type, `wp_block`.
See #45098.


Built from https://develop.svn.wordpress.org/branches/5.0@43804


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43633 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:53:38 +00:00
Gary Pendergast 8083498426 Scripts: `wp-url` is a dependency of `wp-api-fetch`.
See #45065.


Built from https://develop.svn.wordpress.org/branches/5.0@43803


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:36:38 +00:00
Gary Pendergast 86484c93cc Script Loader: Fix metadata being registered as an inline script.
[43723] included script metadata for the `wp-polyfill` script that was being registered as an inline script.

See #45065.


Built from https://develop.svn.wordpress.org/branches/5.0@43802


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43631 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:21:39 +00:00
Gary Pendergast f6366c297f Build: Update the `@wordpress/editor` package.
The `@wordpress/editor` wasn't upgraded to the correct version in [43789].

This commit includes changes from the `@wordpress/block-library` upgrade in [43789], that weren't copied to the correct location in core.

This also regenerates the `package-lock.json` in Linux, which the build server requires.

See #45145.


Built from https://develop.svn.wordpress.org/branches/5.0@43801


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43630 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:16:39 +00:00
David A. Kennedy 878a6359dc Twenty Seventeen: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Seventeen. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.

Props laurelfulford, ianbelanger, crunnells.
Fixes #45045.

Built from https://develop.svn.wordpress.org/branches/5.0@43800


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43629 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:14:17 +00:00
David A. Kennedy 5454da68ff Twenty Sixteen: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Sixteen. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props laurelfulford.
Fixes #45044.

Built from https://develop.svn.wordpress.org/branches/5.0@43799


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43628 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:13:38 +00:00
David A. Kennedy 969c41a2b4 Twenty Fifteen: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Fifteen. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props laurelfulford.
Fixes #45043.

Built from https://develop.svn.wordpress.org/branches/5.0@43798


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43627 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:13:00 +00:00
David A. Kennedy 283a3791ef Twenty Fourteen: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Fourteen. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props laurelfulford, crunnells, ianbelanger.
Fixes #45042.

Built from https://develop.svn.wordpress.org/branches/5.0@43797


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:12:20 +00:00
David A. Kennedy 3ad030877b Twenty Thirteen: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Thirteen. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.
* Add theme support and styles for `align-wide`, to allow wide and full alignment styles on the blocks.

Props laurelfulford, ianbelanger.
Fixes #45041.

Built from https://develop.svn.wordpress.org/branches/5.0@43796


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:11:39 +00:00
David A. Kennedy 7c3565dd99 Twenty Twelve: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Twelve. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props ianbelanger, crunnells, laurelfulford.
Fixes #45040.

Built from https://develop.svn.wordpress.org/branches/5.0@43795


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:10:58 +00:00
David A. Kennedy 92f2294d71 Twenty Eleven: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Eleven. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props ianbelanger, laurelfulford.
Fixes #45039.

Built from https://develop.svn.wordpress.org/branches/5.0@43794


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:10:19 +00:00
David A. Kennedy 24946fb0f6 Twenty Ten: Add styles and support for the new block-based editor.
This update adds styles and theme support related to the new block-based editor to enhance the experience of using it with Twenty Ten. 

These are the specific changes made to this theme:

* Add blocks.css, to style blocks on the front end, to make sure they match the theme’s existing HTML element styles.
* Add editor-blocks.css to style blocks in the editor, to make sure they match the theme’s existing HTML element styles.
* Add theme support for `editor-styles`, to pull the existing editor stylesheet into the new editor.
* Add theme support for `wp-block-styles`, to load the default block styles on the front end.
* Add theme support for `editor-color-palette`, to load a color palette based on the theme’s color scheme into the block-based editor.

Props nielslange, crunnells, laurelfulford.
Fixes #45038.

Built from https://develop.svn.wordpress.org/branches/5.0@43793


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43622 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:09:39 +00:00
Dominik Schilling 957a6af144 Meta Boxes: Sync checks for valid meta boxes from `do_meta_boxes()` to `the_block_editor_meta_boxes()`.
See #45112.
Built from https://develop.svn.wordpress.org/branches/5.0@43792


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:08:59 +00:00
Dominik Schilling 4caf9b7aaf Themes: Remove a stray slash and `gutenberg` text domain.
See #45125.
Built from https://develop.svn.wordpress.org/branches/5.0@43791


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43620 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:08:19 +00:00
danielbachhuber 8caf4f9260 Themes: Introduce responsive embeds support.
Responsive embeds is a way for a theme to opt in to WordPress dynamically scaling the width/height of an embed. When a theme supports responsive embeds, a `wp-embed-responsive` class is added to the `<body>` tag. This information is also presented through the REST API for clients to respect.

Props desrosj.
Fixes #45125.

Built from https://develop.svn.wordpress.org/branches/5.0@43790


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43619 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:07:39 +00:00
atimmer 8efbcce93b Build tools: Upgrade @wordpress packages.
Generated using `npm update @wordpress/api-fetch @wordpress/blob @wordpress/block-library @wordpress/blocks @wordpress/components @wordpress/compose @wordpress/core-data @wordpress/data @wordpress/date @wordpress/dom @wordpress/edit-post @wordpress/editor @wordpress/element @wordpress/escape-html @wordpress/list-reusable-blocks @wordpress/nux @wordpress/plugins @wordpress/redux-routine @wordpress/rich-text @wordpress/url @wordpress/viewport`.

See #45145.

Built from https://develop.svn.wordpress.org/branches/5.0@43789


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43618 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-23 06:06:59 +00:00
Gary Pendergast a618939ddb Script/Style Dependencies: Make sure that inline scripts for handles without a source are printed.
See [36550] for `WP_Styles`.

Merges [43565] to the 5.0 branch.

Props bpayton.
Fixes #44551.


Built from https://develop.svn.wordpress.org/branches/5.0@43788


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43617 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 06:13:38 +00:00
Gary Pendergast 49702cca54 TinyMCE: remove stray CSS map reference from `skin.min.css`.
Merges [43581] to the 5.0 branch.

Props pross.
Fixes #44785.

Built from https://develop.svn.wordpress.org/branches/5.0@43787


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43616 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 06:05:39 +00:00
Gary Pendergast a2a28e85a3 Build/Tools: Add PHPCS to the 5.0 branch.
This allows us to apply WordPress Coding Standards rules to new files in the 5.0 branch.

Props netweb.
Fixes #44366.



Built from https://develop.svn.wordpress.org/branches/5.0@43786


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43615 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 05:15:39 +00:00
Gary Pendergast 38aa44817f Build: Update images following [43684].
`grunt-contrib-imagemin` was updated, which included some changes to image minification. Those changes are now applies.

Props netweb.
See #45080.


Built from https://develop.svn.wordpress.org/branches/5.0@43785


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43614 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 05:06:38 +00:00
Gary Pendergast ce66f73e68 Build: Updated CSS vendor prefixes following [43684].
`autoprefixer` was updated, which included some vendor prefix changes. Those changes are now applied.

Props netweb.
See #45080.


Built from https://develop.svn.wordpress.org/branches/5.0@43784


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43613 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 05:04:40 +00:00
Gary Pendergast 2025427f5d Build: Ignore the vendor directory during the `jsvalidate:build` task.
Props netweb.
Fixes #45119.


Built from https://develop.svn.wordpress.org/branches/5.0@43783


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43612 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 04:54:39 +00:00
Gary Pendergast fb9f4e8abd Build: Switch package.json to using tabs for indents.
Merges [42460] to the 5.0 branch.

Props netweb.
Fixes #43075.


Built from https://develop.svn.wordpress.org/branches/5.0@43782


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43611 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 04:50:40 +00:00
Gary Pendergast 5d58c6dc66 KSES: Allow `url()` to be used in inline CSS.
The cover image block uses the `url()` function in its inline CSS, to show the cover image. KSES didn't allow this, causing the block to not save correctly for Author and Contributor users. As KSES does already check each attribute name against an allowed list, we're able to add an extra check for certain attributes to be able to use the `url()` function, too.

Props peterwilsoncc, azaozz, pento, dd32.
See #45067.


Built from https://develop.svn.wordpress.org/branches/5.0@43781


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43610 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 04:04:41 +00:00
Gary Pendergast 433dfae509 Block Editor: Add extra body classes when the block editor is loaded.
See #45037.


Built from https://develop.svn.wordpress.org/branches/5.0@43780


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43609 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 03:14:40 +00:00
Gary Pendergast 6800a811b6 Meta Boxes: Add `__back_compat_meta_box` and `__block_editor_compatible_meta_box` flags to meta boxes.
When meta boxes are registered, they can use the `__back_compat_meta_box` and `__block_editor_compatible_meta_box` flags, to show whether this registration just exists for if the classic editor is loaded, and whether this meta box is compatible with the block editor.

When a meta box marks itself as incompatible with the block editor, and `WP_DEBUG` is enabled, a warning will show inside that meta box in the classic editor.

As all core meta boxes have been recreated in the block editor, they can be marked with the `__back_compat_meta_box` flag.

See #45112.


Built from https://develop.svn.wordpress.org/branches/5.0@43779


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43608 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 02:32:41 +00:00
Gary Pendergast acda70184d Block Editor: Add helper functions to collect meta box information.
To allow the block editor to render meta boxes, it needs to collect information about how those meta boxes are registered, and format it for the block editor to make use of.

See #45112.


Built from https://develop.svn.wordpress.org/branches/5.0@43778


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43607 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 02:16:39 +00:00
Gary Pendergast e0361726c2 Block Editor: Add an `is_block_editor()` method to `WP_Screen`.
This method allows checking (or setting) whether the block editor is loading on the current screen.

See #45037.


Built from https://develop.svn.wordpress.org/branches/5.0@43777


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43606 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-22 02:06:40 +00:00
danielbachhuber d6895a1e65 REST API: Render response in user locale with `?_locale=user`.
Introduces new `determine_locale()` function for deciding the proper locale to use for a response. Default value is `get_user_locale()` in the admin, and `get_locale()` on the frontend. Because REST API requests are considered frontend requests, `?_locale=user` can be used to render the response in the user's locale.

Also updates `wp-login.php?wp_lang` implementation to benefit from this abstraction.

Props flixos90, mnelson4, swissspidy, TimothyBlynJacobs.
Fixes #44758.

Built from https://develop.svn.wordpress.org/branches/5.0@43776


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43605 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-21 15:03:40 +00:00
Gary Pendergast 648850ea73 Revisions: Improve performance of `WP_Text_Diff_Renderer_Table`.
`WP_Text_Diff_Renderer_Table` is used to generate the diff view in revisions, but there were some cases that could cause it to take excessive amounts of time to run.

Some noteable cases include:
- When a large number of new lines were inserted in the middle of the post from one revision to the next.
- When both revisions contain >100 lines.
- When either revision contains a lot of long lines.

In one extreme test case, the diff view took over a minute to generate. With this change, it now takes less than a second.

See #35667.


Built from https://develop.svn.wordpress.org/branches/5.0@43775


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-20 08:36:40 +00:00
Sergey Biryukov bae53caa70 REST API: Restore Autosaves controller test for multisite.
PHPUnit 3.6.x requires `exclude` and `file` paths to be relative to the checkout root.

PHPUnit 4.0.0+ requires the paths to be relative to the configuration file.

See #45131.
Built from https://develop.svn.wordpress.org/branches/5.0@43774


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43603 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-20 04:21:38 +00:00
danielbachhuber 0a3bb63b8f REST API: Limit the scope of wp-admin files required in WP_REST_Attachments_Controller methods.
Narrow the scope of the included wp-admin files loaded for `wp_generate_attachment_metadata()`, `wp_handle_upload()`, `wp_tempnam()`, and `wp_handle_sideload()`. Requires only `wp-admin/includes/file.php` and `wp-admin/includes/image.php` instead of `wp-admin/includes/admin.php`.

Props ocean90, lonelyvegan, soulseekah, pratikthink.
Merges [43589], [43604] to the 5.0 branch.
Fixes #43757.

Built from https://develop.svn.wordpress.org/branches/5.0@43773


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43602 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 18:53:41 +00:00
danielbachhuber 5a627786bf Help/About: Ensure the space after the period for the 4.9.8 changelog entry is preserved.
Props chetan200891, burhandodhy, swissspidy.
Merges [43622] to the 5.0 branch.
See #44717.

Built from https://develop.svn.wordpress.org/branches/5.0@43772


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 18:41:40 +00:00
danielbachhuber 6c9675bf37 REST API: Handle api-request query parameters with plain permalinks.
When constructing the request URL, ensure that `?` is replaced with `&` when the API root already contains a `?`. Fixes an issue where requests were broken when sites had permalinks set to plain.

Props aduth.
Merges [42965] to the 5.0 branch.
Fixes #42382.

Built from https://develop.svn.wordpress.org/branches/5.0@43771


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 18:33:39 +00:00
danielbachhuber 58ea8c82e4 REST API: Include `block_version` on Post `content` object.
The `block_version` denotes which version of Blocks the `post_content` contains. Introduces new `block_version()` function for versioning Blocks.

Props danielbachhuber, birgire.
Fixes #43887.

Built from https://develop.svn.wordpress.org/branches/5.0@43770


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43599 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 17:58:39 +00:00
danielbachhuber 7700a3ef3e REST API: Skip Autosaves controller test for multisite.
There's some PHP 5.2 (cough, cough) edge case where paths calculated differently, possibly caused by differing version of PHPUnit.

See #45132, #45131, #43316.

Built from https://develop.svn.wordpress.org/branches/5.0@43769


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 14:09:38 +00:00
danielbachhuber 50b0bf94c4 REST API: Introduce Autosaves controller and endpoint.
* Adds `WP_REST_Autosaves_Controller` which extends `WP_REST_Revisions_Controller`.
* Autosaves endpoint is registered for all post types except `attachment` because even post types without revisions enabled are expected to autosave.
* Because setting the `DOING_AUTOSAVE` constant pollutes the test suite, autosaves tests are run last. We may want to improve upon this later.

Props adamsilverstein, aduth, azaozz, danielbachhuber, rmccue.
Fixes #43316.

Built from https://develop.svn.wordpress.org/branches/5.0@43768


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 13:49:41 +00:00
danielbachhuber 53002c68c4 REST API: Use a truly impossibly high number in User Controller tests.
The `100` number could be valid in certain test run configurations. The `REST_TESTS_IMPOSSIBLY_HIGH_NUMBER` constant is impossibly high for this very reason.

Fixes #45128.

Built from https://develop.svn.wordpress.org/branches/5.0@43767


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43596 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 11:57:39 +00:00
danielbachhuber 7edc3e2b98 REST API: Ensure rest_url() consistently has leading slash.
`rest_url()` inconsistent addes slashes to the passed path depending on whether the site has pretty permalinks enabled. Apart from being inconsistent, this also caused the unit tests to fail when pretty permalinks are enabled.

Props frank-klein.
Merges [42250] to the 5.0 branch.
Partially reverts [43720].
Fixes #42452. See #41451, #45017.

Built from https://develop.svn.wordpress.org/branches/5.0@43766


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43595 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 11:14:39 +00:00
mcsf 326cd6af15 Deactivate Gutenberg plugin on update to 5.0.
Fixes #45123.


Built from https://develop.svn.wordpress.org/branches/5.0@43765


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 10:51:39 +00:00
Gary Pendergast 93343de1bd i18n: Remove some translation domains accidentally included in [43762].
See #45110.


Built from https://develop.svn.wordpress.org/branches/5.0@43764


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 09:12:38 +00:00
Gary Pendergast 2ccaeedbda REST API: Introduce the `rest_preload_api_request()` function.
This function helps perform multiple REST API requests, for the purpose of preloading data into a page.

See #45110.


Built from https://develop.svn.wordpress.org/branches/5.0@43763


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43592 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 08:57:40 +00:00
Gary Pendergast de323bc14c Block Editor: Add helper functions for displaying the editor.
`use_block_editor_for_post()` and `use_block_editor_for_post_type()` determine if the block editor should be loaded.

`get_block_categories()` and `get_block_editor_server_block_settings()` provide data be included while the block editor is loading.

See #45110.


Built from https://develop.svn.wordpress.org/branches/5.0@43762


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43591 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 08:44:41 +00:00
Gary Pendergast 99d061b53c General: Extract the code editor settings from `wp_enqueue_code_editor()`.
They're now returned by a new function, `wp_get_code_editor_settings()`, so they can be reused by the block editor.

See #45127.


Built from https://develop.svn.wordpress.org/branches/5.0@43761


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43590 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 06:45:39 +00:00
Gary Pendergast 158cbdbf03 Build Tools: Copy package JavaScript and CSS into `wp-includes`.
- `grunt webpack:dev` now copies packages JS into `/src/wp-includes/js/dist`, and CSS into `/src/wp-includes/css/dist`.
- `grunt webpack:prod` does the same, but into `/build` instead of `/src`.
- `grunt build` now runs the `webpack:prod` task.

Props atimmer, pento.
Fixes #45119.


Built from https://develop.svn.wordpress.org/branches/5.0@43760


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43589 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 06:06:46 +00:00
Gary Pendergast 98eb507bbe i18n: Add the `wp_get_jed_locale_data()` function.
This function formats locale information to be used by Jed.

Props desrosj.
See #45111.


Built from https://develop.svn.wordpress.org/branches/5.0@43759


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43588 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 05:52:25 +00:00
Gary Pendergast dbb5cd9960 Classic Editor: Disable the wpautop TinyMCE plugin on block posts.
As the block editor adds its own `<p>` tags, disabling the wpautop stops the classic editor from removing them.

See #45113.


Built from https://develop.svn.wordpress.org/branches/5.0@43758


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43587 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 01:43:26 +00:00
danielbachhuber a5bd8cb64c REST API: generate a valid fallback URI in wp.api.utils.getRootURL.
When window.location.origin isn't set, correctly insert two slashes between the protocol and host when constructing the fallback URL.

Props abdullahramzan.
Merges [43566] into the 5.0 branch.
Fixes #44764.

Built from https://develop.svn.wordpress.org/branches/5.0@43757


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 20:49:25 +00:00
danielbachhuber 699bf044ef REST API: Correct HTTP status code in error for requests to create a duplicate term.
The 409 error code is intended for situations where it is expected that the user will resolve the conflict and resubmit the same request. We use 400 error codes for other routes when a duplicate request is made. The 400 status code tells the user they need to modify their request for it to be successful.

Props shooper.
Merges [42354] to the 5.0 branch.
Fixes #42781. See #41370.

Built from https://develop.svn.wordpress.org/branches/5.0@43756


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 20:32:27 +00:00
danielbachhuber 8023795f7d REST API: Fix permissions error message in post statuses controller.
The permissions error message when a request tries to fetch post statuses unauthenticated is incorrect. It was a copy/paste from elsewhere, as indicated by the use of "in this post type" where this is no post type referenced.

Props schlessera.
Merges [42356] to the 5.0 branch.
Fixes #42303.

Built from https://develop.svn.wordpress.org/branches/5.0@43755


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 20:26:25 +00:00
atimmer 72c9037248 Script loading: Fix a PHP error introduced in [43753].
See #45065.
Props swissspidy.

Built from https://develop.svn.wordpress.org/branches/5.0@43754


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43583 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 13:27:26 +00:00
atimmer ab6b171b1d Script loading: Fix regression after [43738].
After [43738], TinyMCE would be loaded earlier than before, which
makes filters run at a different time relative to the loading of
TinyMCE. Fix this by calling `wp_print_scripts` at the location where
TinyMCE would previously be inserted as a `<script>` tag in the page.

Props azaozz, omarreiss.
Fixes #45065.

Built from https://develop.svn.wordpress.org/branches/5.0@43753


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43582 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 13:22:26 +00:00
Gary Pendergast 798c2581b1 Blocks: Parse blocks when displaying posts.
Posts containing blocks are now correctly handled when displaying on the front end, including dynamic blocks and nested blocks.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43752


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 11:54:26 +00:00
Gary Pendergast f7d01b4e70 Blocks: Introduce the block parser.
The `WP_Block_Parser` class, and the accompanying `parse_blocks()` helper function, can be used to parse an array of blocks out of a content string.

`WP_Block_Parser` is copied from the `@wordpress/block-serialization-default-parser` package. To ensure it stays in sync with the JavaScript parser, changes should be implemented in the package first, then the package version should be upgraded to include the changes.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43751


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43580 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:40:27 +00:00
Sergey Biryukov 591a09dea0 Media: Pass EXIF data to the `wp_read_image_metadata` filter.
Props desrosj.
Merges [42879] to the 5.0 branch.
Fixes #43624.
Built from https://develop.svn.wordpress.org/branches/5.0@43750


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43579 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:15:26 +00:00
Sergey Biryukov b6e0d06fff Media: In `wp_read_image_metadata()`, rename `$sourceImageType` variable to `$image_type` to match coding standards.
Merges [42878] to the 5.0 branch.
See #43624.
Built from https://develop.svn.wordpress.org/branches/5.0@43749


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43578 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:14:25 +00:00
Sergey Biryukov 7a47da86e0 Build/Test Tools: Instruct Git and Subversion to ignore Composer's `vendor` directory.
Props netweb.
Merges [42405] to the 5.0 branch.
Fixes #42909.
Built from https://develop.svn.wordpress.org/branches/5.0@43748


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43577 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:13:25 +00:00
Sergey Biryukov e3018db874 Build/Test Tools: Remove `vendor` file name entry from `.gitignore.`
Props netweb.
Merges [42733] to the 5.0 branch.
Fixes #43411.
Built from https://develop.svn.wordpress.org/branches/5.0@43747


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:09:25 +00:00
Sergey Biryukov 3deded1729 General: PHP 7.3 throws an `E_WARNING` when using continue to target a switch.
Applying continue to a switch is equivalent to using break and quite possibly, a continue targeting a higher level control structure is actually intended.

To target the higher level control structure, a numeric argument has to be passed to continue. This fixes two cases in WordPress Core where this is currently happening.

See: https://github.com/php/php-src/pull/3364
See: https://wiki.php.net/rfc/continue_on_switch_deprecation

Props jrf.
Merges [43653] to the 5.0 branch.
Fixes #44543.
Built from https://develop.svn.wordpress.org/branches/5.0@43746


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43575 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 03:42:27 +00:00
Sergey Biryukov 38235a183e Media: Remove checkered background for icons in Attachment Details.
Props BandonRandon.
Merges [42642] to the 5.0 branch.
Fixes #42535. See #41948.
Built from https://develop.svn.wordpress.org/branches/5.0@43745


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43574 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 03:11:26 +00:00
danielbachhuber 883d237689 Posts, Post Types: Add labels for post transformation messages.
Because the existing `post_updated_messages` filter can be modified dynamically based on post state, it's unreliable to use with REST API clients. Instead, these new labels give clients stateless equivalents.

Props earnjam.
Fixes #45101.

Built from https://develop.svn.wordpress.org/branches/5.0@43744


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43573 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 02:04:26 +00:00
Gary Pendergast 28310289bd Blocks: Introduce `register_block_type()`, `unregister_block_type()`, and `get_dynamic_blocks()` functions.
These helper functions allow easy access to the global block registry.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43743


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 01:53:26 +00:00
Gary Pendergast 22840639e8 Blocks: Introduce `WP_Block_Type` and `WP_Block_Type_Registry` classes.
These are the foundational classes allowing blocks to be registered and used throughout WordPress.

This commit also includes the `has_block()` and `has_blocks()` functions, which are required for unit testing these classes.

Props adamsilverstein, danielbachhuber, desrosj.
See #45097, #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43742


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43571 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 01:31:26 +00:00
danielbachhuber e4b0ddbf4d REST API: Fix version number in `_doing_it_wrong()` call.
`_doing_it_wrong()`, indeed.

Props joehoyle.
See #39965.

Built from https://develop.svn.wordpress.org/branches/5.0@43741


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43570 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-17 22:20:25 +00:00
K. Adam White a943d902c1 REST API: Slash existing meta values when comparing with incoming meta upates.
When comparing the old and new values for a meta key being set, ensure both values are sanitized using the same logic so that equal values match.

props boonebgorges, dcavins, MattGeri, pilou69, TimothyBlynJacobs.
Fixes #42069.

Built from https://develop.svn.wordpress.org/branches/5.0@43740


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43569 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-17 20:10:25 +00:00
danielbachhuber a2d601024f REST API: Introduce controller for searching across post types.
Introduces a `WP_REST_Search_Controller` class which registers a `/wp/v2/search` endpoint. Search types are handled by extending `WP_REST_Search_Handler`. The default search type is `WP_REST_Post_Search_Handler` but can be filtered by plugins or a theme.

Props danielbachhuber, flixos90, pento, rmccue.
Fixes #39965.

Built from https://develop.svn.wordpress.org/branches/5.0@43739


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-17 17:03:26 +00:00
atimmer 07ea394b44 Script loader: Adjust JS packages registration.
Adjusts the packages registration after [43723]:

* Combine the different registration functions into one
`wp_default_packages` function. To reach this goal move the prefix
logic into a function so it can be called from different locations.
Use a `static` variable there to prevent duplicate inclusion of
`version.php`.
* Call this function from the `wp_default_scripts` action by
registering it as a default filter.
* Combine some of the logic in `_WP_Editors::print_tinymce_scripts`
into `wp_register_tinymce_scripts`. The logic to force an uncompressed
TinyMCE script file stays in `_WP_Editors::force_uncompressed_tinymce`
because that logic is very specific to the classic editor.
* The script handle `wp-tinymce` is now a dependency of the `editor`
script handle. In combination with the previous item, this makes the
classic editor work.
* Adjust the syntax of the script paths to be more consistent with
other WordPress code.
* Always use `"production"` mode for the media files to prevent people
from inadvertently committing development files.

Props pento, omarreiss.
Fixes #45065.

Built from https://develop.svn.wordpress.org/branches/5.0@43738


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43567 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-17 15:29:26 +00:00
danielbachhuber fbd004bbbd REST API: Fire actions after items are completely updated/inserted.
The existing `rest_insert_*` actions are fired before meta and additional fields are updated. These new `rest_after_*` actions fire after all write operations have completed.

Props timothyblynjacobs.
Fixes #42864.

Built from https://develop.svn.wordpress.org/branches/5.0@43737


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43566 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-17 11:20:26 +00:00