Bug Scrub Schedule for 6.1

With 6.1 well underway, here’s the initial schedule of 6.1 bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. scrub sessions. These 6.1-specific ticketticket Created for both bug reports and feature development on the bug tracker. scrubs will happen each week until the final release.

Alpha Scrubs:

Hosted by @audrasjb:

Hosted by @chaion07:

BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. Scrubs:

RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). Scrubs:

Check this schedule often, as it will change to reflect the latest information.

What about recurring component scrubs and triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. sessions?

The above 6.1 scheduled bug scrubs are separate and in addition.

For your reference, here are some of the recurring sessions:

Have a recurring component scrub or triage session?
PingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” @audrasjb or @chaion07 on SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. to have it added to this page.

Want to lead a bug scrub?

Did you know that anyone can lead a bug scrub at anytime? Yes, you can!

How? Ping @audrasjb or @chaion07 on slack and let us know the day and time you’re considering as well as the report or tickets you want to scrub.

Planning one that’s 6.1-focused? Awesome! It can be added to the schedule above. You’ll get well deserved props in the weekly Dev Chat, as well as in the #props Slack channel!

Where can you find tickets to scrub?

  • Report 5 provides a list of all open 6.1 tickets:
    • Use this list to focus on highest priority tickets first.
    • Use this list to focus on tickets that haven’t received love in a while.
  • Report 6 provides a list of open 6.1 tickets ordered by workflow.

Need a refresher on bug scrubs? Checkout Leading Bug Scrubs in the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. handbook.

Questions?

Have a question, concern, or suggestion? Want to lead a bug scrub? Please leave a comment or reach out directly to @audrasjb or @chaion07 on slack.

#bug-scrub

A Week in Core – October 3, 2022

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between September 26 and October 3, 2022.

  • 66 commits
  • 107 contributors
  • 70 tickets created
  • 3 tickets reopened
  • 60 tickets closed

The Core team is currently working on the next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope., WP 6.1 🛠

Ticketticket Created for both bug reports and feature development on the bug tracker. numbers are based on the Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.

Code changes

Administration

  • Guard against false transient key in get_cached_events()#55888

Bootstrap/Load

  • Revert the is_*_admin_screen() aliases for is_*_admin() function family – #56400

Build/Test Tools

  • Call wpTearDownAfterClass() before deleting all data, instead of after – #55918. – #55652
  • Disable process timeout when running PHPUnit tests via Composer – #55919
  • Remove PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1 and 8.2 from allowed failures – #55652, #55656, #56009, #56681
  • Remove extraneous -- from docker-compose up command – #56550
  • Remove the retryAfter input – #55652
  • Remove unnecessary --no-interaction option from Composer commands – #54695
  • Update actions/github-scripts to the latest version – #55652
  • Fix running build scripts on Windows does not generate CSSCSS Cascading Style Sheets. files for blocks – #56616
  • Simplify syncing core blocks from GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to Core – #56179
  • Ensure prerequisites are met for draft length tests in Tests_L10n#56681, #55652, #55656
  • Update blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. registration tests to account for RTL stylesheet loading changes – #56325

Bundled Themes

  • Twenty Eleven: Improve text color consistency of Table Block heading cells and figcaption – #56462
  • Twenty Ten: Escape get_author_posts_url() where appropriate in functions.php file – #56674
  • Twenty Ten: Escape get_permalink() where appropriate in functions.php file – #56667
  • Twenty Twenty-Three: Bug fixes and improvements for betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 2 – #56383
  • Twenty Twenty: Ensure the fallback fonts is applied to all content elements for non-latin languages – #56396

Code Modernization

  • Check the return type of parse_url() in url_to_postid()#55656
  • Correct default values in wp_handle_comment_submission()#56712, #56681, #55656
  • Fix null to non-nullable deprecation in WP_REST_Users_Controller::update_item()#55656
  • Fix null to non-nullable deprecation in WP_Theme_JSON::get_property_value()#56620
  • Fix null to non-nullable deprecations in wp_xmlrpc_server::_insert_post()#55656
  • Fix null to non-nullable deprecations in wp_xmlrpc_server::mw_newPost()#55656
  • Use correct default value for JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. translations path – #55967, #55656

Comments

  • Prevent AYS prompt when replying to a comment and nothing has been entered – #54990

Docs

  • Add @since to wp_enqueue_classic_theme_styles() docblockdocblock (phpdoc, xref, inline docs)#55646
  • Increase the specificity of various property documentation – #55646
  • Use Latin C instead of Cyrillic С in docblock for get_test_theme_version()#55646
  • Use third-person singular verbs in class-wp-site-health-auto-updates.php, as per docblocks standards – #55646
  • Various docblock fixes in wp-includes/revision.php, as per documentation standards – #55646

Editor

  • Cast theme.json values to string on theme export – #56684
  • Correctly load RTL stylesheets in register_block_style_handle()#56325
  • Ensure block script is enqueued, regardless of ronder_callback#56408
  • Ensure settings for fluid typography and spacingScale are not lost on theme export – #55646
  • Fix missing frontend section presets output – #56467
  • Fix spacing property generation in flow layout type – #56467
  • Make template names and descriptions dynamic, again – #56467
  • Reintroduce styles that were removed for classic themes – #56467
  • Remove deprecated callable in WP_Style_Engine class – #56467
  • Remove leading whitespace from some translated strings – #56467
  • Revert dynamic template names and descriptions – #56467
  • Update packages for 6.1 Beta 2 – #56467
  • Blocks: Fix 404 error for core styles with no file – #56408, #56614
  • Blocks: Remove extra get_theme_file_path() calls in register_block_style_handle()#56666

External Libraries

  • Update MediaElement.js to version 4.2.17 – #56319
  • Update Underscore.js to version 1.13.6#56030

General

  • Remove file_exists() checks after calling realpath()#56654

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Move code out of a translatable string in register_rest_route()#51986
  • Use correct default value for JavaScript translations path – #55967, #55656
  • Ensure empty strings are consistently translated to ''#55941

Menus

Options, MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. APIs

  • Prevent excessive notoptions key lookups – #56639

Plugins

  • Fix Upgrade icon alignment on mobile in Plugins Install screen – #55627

Query

  • Save excessive cache add and sets in WP_Query#22176

REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.

  • Ensure args is an array of arrays in register_rest_route()#51986

Script Loader

  • Prevent double space between attributes in WP_Styles class – #56675

Security

  • Introduce strings to indicate support status – #56532

Shortcodes

  • Revert recent apply_shortcodes and do_shortcode changes – #55883

Site Health

  • Fix incorrect message about the status of WP_AUTO_UPDATE_CORE#51041

Upgrade/Install

  • Keep search engine checkbox value when reloading the Install screen – #55900
  • Update sodium_compat to v1.19.0 – #56653

Users

  • Correctly pass the context property for persisted preferences – #56665#56467

Props

Thanks to the 107 (!) people who contributed to WordPress Core on Trac last week: @jrf (14), @SergeyBiryukov (11), @mukesh27 (8), @desrosj (7), @audrasjb (6), @aristath (6), @robinwpdeveloper (6), @costdev (5), @bernhard-reiter (5), @rafiahmedd (4), @cbravobernal (4), @ramonopoly (4), @rudlinkon (3), @sabernhardt (3), @kebbet (3), @azaozz (3), @poena (3), @hellofromTonya (3), @andrewserong (3), @Chouby (2), @hztyfoon (2), @dd32 (2), @spacedmonkey (2), @Ankit K Gupta (2), @whaze (2), @oandregal (2), @Clorith (2), @johnbillion (2), @glendaviesnz (2), @ironprogrammer (2), @maahrokh (1), @zoonini (1), @talldanwp (1), @ramon-fincken (1), @khokansardar (1), @chrisbudd1 (1), @manfcarlo (1), @tobiasbg (1), @nendeb55 (1), @chesio (1), @bernie (1), @lopo (1), @sumitbagthariya16 (1), @felipeelia (1), @dmsnell (1), @mcsf (1), @sergeybiryukov (1), @clorith (1), @wildworks (1), @zieladam (1), @paragoninitiativeenterprises (1), @isabel_brison (1), @ndiego (1), @beafialho (1), @jorbin (1), @critterverse (1), @madhudollu (1), @mikachan (1), @pls78 (1), @manooweb (1), @hugodevos (1), @Boniu91 (1), @krishaweb (1), @oglekler (1), @faisal03 (1), @apermo (1), @hasanuzzamanshamim (1), @cdbessig (1), @lovor (1), @swissspidy (1), @ocean90 (1), @saggre (1), @westonruter (1), @johnjamesjacoby (1), @peterwilsoncc (1), @get_dave (1), @meysamnorouzi (1), @scruffian (1), @tellthemachines (1), @rajanpanchal2028 (1), @imadarshakshat (1), @antonvlasenko (1), @justinahinon (1), @jameskoster (1), @jorgefilipecosta (1), @iviweb (1), @DarkoG (1), @azouamauriac (1), @dovyp (1), @mkox (1), @cu121 (1), @malthert (1), @nateallen (1), @johnmark8080 (1), @Hinjiriyo (1), @timothyblynjacobs (1), @AndrewNZ (1), @oneearth27 (1), @ntsekouras (1), @slaFFik (1), @multidots1896 (1), @umesh84 (1), @fuadragib01 (1), @jakariaistauk (1), @tillkruess (1), @elten (1), and @draganescu (1).

Congrats and welcome to our 14 (!) new contributors of the week: @maahrokh, @sumitbagthariya16, @cdbessig, @saggre, @meysamnorouzi, @rajanpanchal2028, @imadarshakshat, @cu121, @johnmark8080, @AndrewNZ, @oneearth27, @fuadragib, @jakariaistauk, @elten. ♥️

Core committers: @sergeybiryukov (20), @davidbaumwald (16), @audrasjb (12), @desrosj (6), @hellofromtonya (3), @gziolo (3), @jorgefilipecosta (2), @spacedmonkey (1), @westonruter (1), @peterwilsoncc (1), and @johnbillion (1).

#6-1, #core, #week-in-core

Editor chat summary: Wednesday, 28 September 2022

This post summarizes the latest weekly Editor meeting (agenda, slack transcript), held in the #core-editor SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel, on Wednesday, September 28, 2022, 14:00 UTC.

General Updates

  • Gutenberg 14.2.0 has been released and is available for download! It comes with writing flow improvements, a more polished Calendar blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience., smarter auto-completion, and much more!.
  • WordPress 6.1 Beta 2 is now available for download and testing.

Async key project updates

Read the latest updates directly from the following tracking issues:

Task Coordination

@annezazu

  • Shipped the Core Editor Improvement: Catalyst for creativity and control, have a draft of accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) improvements for 6.1.
  • Handling responses for the FSE Program Testing Call #17: Guiding the Gutenberg Gallery
  • Triaging/reporting issues as much as possible for 6.1 alongside @ndiego.

Open Floor

@wildworks looking for feedback on new “Time To Read” Block PR.

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

Read complete transcript

#meeting-notes, #core-editor, #editor, #gutenberg, #core-editor-summary

Performance Chat Agenda: 4 October 2022

Here is the agenda for this week’s performance team meeting scheduled for October 4, 2022, at 15:00 UTC.


This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

Editor Chat Agenda: October 5th 2022

Facilitator and notetaker: @fabiankaegy.

This is the agenda for the weekly editor chat scheduled for Wednesday, October 5th, 2022, 04:00 PM GMT+2.

This meeting is held in the #core-editor channel in the Making WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

If you cannot attend the meeting, you are encouraged to share anything relevant to the discussion:

  • If you have an update for the main site editing projects, please feel free to share as a comment or come prepared for the meeting itself.
  • If you have anything to share for the Task Coordination section, please leave it as a comment on this post.
  • If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.
  • If you have anything to propose for the open floor because you can’t make it, please leave a comment below.

#agenda, #core-editor-agenda, #meeting

Dev chat summary, September 28, 2022

1. Welcome

@marybaum and @webcommsat led the weekly WordPress developers chat meeting on this agenda.

Last week’s summary, if you like to keep track.

2. Anouncements

WordPress 6.1 Beta 2 landed on Tuesday, September 27, 2022. Props to everyone who helped!

3. Blogblog (versus network, site) posts of note

A Week in Core – September 26, 2022 – thanks @audrasjb

Core Editor Improvement: Catalyst for creativity and control, September 26, 2022 – posted by @annezazu

Proposal: Client-side WebAssembly WordPress with no server, September 23, 2022

Roadmap to 6.1 core companion, September 24, 2022

4. Upcoming releases

The next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope. is WordPress 6.1.

@audrasjb gave a triage update.

On the 488 tickets in the milestone:

5. Maintainers and tickets

@sergeybiryukov reported in on several components. They covered these tickets:

On Help/About, @marybaum reported a new patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. for #50866.

@webcommsat raised #55603 on behalf of @costdev. Discussion followed on the impacts of trying to get it in for 6.1 or moving it to 6.2.

On behalf of @luminuu, @marybaum raised ticketticket Created for both bug reports and feature development on the bug tracker. #55985. That also prompted some discussion.

For @ndiego, @webcommsat raised #44434, a GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ issue.

And for Quick/Bulk edit, @webcommsat asked for further awareness and comments on #19859.

Props to @webcommsat for meeting prep, @marybaum and @webcommsat for facilitating, and @marybaum, @webcommsat, and @audrasjb for collaborating on the summary.

#6-1, #core, #dev-chat, #summary

What’s new in Gutenberg 14.2? (28 September)

“What’s new in GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.)) are posted following every Gutenberg release on a biweekly basis, discovering new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Full Site Editing project.


Gutenberg 14.2 has been released and is available for download!

It comes with writing flow improvements, a more polished Calendar blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience., smarter autocompletions and much more!

Table of Contents

Smarter suggestions for Query LoopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. block variations 

Block variations have been available in Gutenberg for a long time. They allow you to have similar versions of the same block that share some common functionality. From now on, if you have an active variation of the Query Loop block on your site and that variation has registered some block patterns, only those patterns will be suggested in the inserter.

For example, you might have a Products List block that is a variation of the Query Loop block. That Products List can also have a registered block pattern. Now, when inserting the Products List block, you will not see the default Query Loop block patterns but rather your own block pattern associated with the Products List. Pretty neat!

Improvements to the writing flow

Several improvements to the writing flow have been shipped in Gutenberg 14.2:

  • The sibling and line inserters now feature a more natural animation effect.
  • Selecting multiple blocks is now more visually consistent.
  • The block inserter is now hidden when the user is typing, reducing visual clutter.

Letter spacing in headings

It is now possible to modify the letter spacing of the headings directly in the Global Styles interface.

A more polished Calendar block

You can now set the background, link and text color of the Calendar block. Global Styles will now also affect the colors of the Calendar block and it will inherit the default text color from its parent block.

Four screenshots of the Calendar block in a 2 by 2 grid, each one of them using a different background color

New “Banners” and “Footers” block pattern categories

Two new block pattern categories are introduced in order to better reflect the structure of web pages. “Banners” here refers to visually distinctive elements that help structure or contrast the contents of a page (including headings and “hero” elements). 

A screenshot of the block inserter showing all of the block pattern categories

From now on, it is possible to autocomplete links in any block. Previously, blocks had to explicitly opt into this functionality with __experimentalSlashInserter  but now links will be autocompleted everywhere! The [[ shortcut is used to trigger the autocompletion in the editor.

Editor performance improvements

Introducing a new version of the List block that uses inner blocks uncovered a previously unknown performance issue: Whenever a block that contains inner blocks was displayed for the first time on a page it would re-render once for each level of nesting! So, if a List item was inside of a List that was inside of another List block, that block would re-render 3 times! This problem has now been fixed and the initial load performance of the editor should be improved.

Changelog

Deprecations

  • Officially deprecate the children and node block attribute sources. (44265)

Enhancements

Components

  • Link/Unlink buttons: Add more polished styling and UXUX User experience. (43802)

Global Styles

  • Allow setting Letter case and Decoration to ‘None’ and add Letter case to Global Styles. (44067)
  • Block supports: Allow overriding prettify options for enqueued CSSCSS Cascading Style Sheets.. (44248)
  • Show Letter Spacing in Global Styles -> Typography -> Headings. (44142)
  • Spacing presets: Switch to using numbers instead of t-shirt sizes for labels. (44247)

Block Editor

  • Hide all floating block UIUI User interface when typing. (44083)
  • Update animation for line and sibling inserter. (44269)
  • Warning component: Align the action buttons. (44328)

Block Library

  • Calendar block: Add color supports and polish styles. (42029)
  • Embed block: Mark which attributes should be considered content. (44039)
  • List Item block: Improve writing flow. (43954)
  • Post Navigation Link block: Add arrows. (40684)
  • Query Loop block: Suggest active variation patterns.
    (44197)

Patterns

  • Add a new categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. for block patterns called “Banners”. (44203)
  • Add a new category for block patterns called “Footers”.
    (44200)

Bug Fixes

Components

  • BlockMover: Clean up focus styles. (44241)
  • Fix animation running in loop while dragging an image on a dropzone. (44264)
  • Fix popover stacking in the customize widgets editor. (44282)
  • Link autocompleter: Enable for all blocks. (44078)
  • Remove unexpected has-text class when empty children are passed to Button. (44198)

Block Library

Bugfixes to blocks:
  • Cover block: Fix preview. (44321)
  • Freeform block: Hide “Convert to blocks” when the block locked.
    (44288)
  • Group block: Change default variation in inserter. (44176)
  • Missing block: Fix HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. block check. (44327)
  • Navigation block: Fix submenu colors for imported classic menus.
    (44283)
  • Navigation block: Remove ellipses as menu icon options for now. (44222)
  • Pullquote block: Fix transform to quote crash.
    (44315)
  • Post Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. block: Fix height/scale overwriting img inline styles. (44213)
  • Query Loop block: Fix broken preview in specific category template. (44294)
  • Query Loop block: Fix variation with declaredicon object with src.
    (44270)
  • Avoid showing the recursion warning in previews when replacing template parts. (44256)
  • Ensure replacing a template part using a pattern doesn’t update the existing entity. (44221)
  • Fix demo content cover block text color. (44174)

Block Editor

  • Block Toolbar: Update position when moving blocks. (44301)
  • Capture state changes scheduled between render and effect. (38509)
  • Writing flow: Fix partial selection when dragging in between blocks. (44230)

Global Styles

  • Block supports: Prioritize prettify options over SCRIPT_DEBUG. (44254)
  • Fix padding on the post editor when RootPaddingAwareAlignments setting is enabled. (44209)
  • Remove the betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. label from global styles headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes.. (44251)

Site Editor

  • Make template names and descriptions dynamic. (43862)
  • Prevent editor from creating multiple templates when multi-clicking the
    “create” button. (44146)

Keycodes

  • Keyboard Shortcuts: Fix settings sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. toggle shortcut. (43428)

AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)

  • Add role=application to List View to prevent browse mode triggering in NVDA. (44291)
  • Block label and title don’t consider variations. (44250)
  • Make inline toolbar navigable by arrow keys. (43645)
  • Text Selection in Safari: Try new fix for recent version. (44148)

Performance

  • Avoid calling redux actions constantly when moving the mouse or scrolling. (44325)
  • Batch container block settings action calls. (43958)
  • Prevent resize observer loops in BlockPreview. (44319)

Documentation

  • Include information about multiple scripts support added in WP 6.1. (44155)
  • Popover: Write better documentation regarding the recent APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. changes. (44195)
  • RangeControl component: Clarify rail vs track difference. (44057)
  • Update links in the Development Platform document. (44181)
  • Updating versions in WP for 6.0.2. (43826)

Code Quality

  • Backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. template creation changes from CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
  • Enforce coding guideline regarding the usage of quotation marks. (44305)
  • Fix missing TS types for a11yAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) in packages/components. (44277)
  • Preferences-persistence: Remove wordpress/compose dependency. (44202)
  • Refactor style engine border styles. (43594)
  • Removes whitespace from l18n-strings. (44314)
  • Renaming functions to match their naming in Core. (44266)
    (44299)
  • useInstanceId: Convert to typescript. (43790)

Updating dependencies

  • Update fast-average-color library to latest version. (44175)
  • Update json2php to v0.0.5. (44313)
  • Remove wp-editor from wp-edit-blocks dependencies. (33496)

Block Library

  • Comments Pagination blocks: Rename for consistency. (44287)
  • Embed block: Remove incorrect comments about block variations. (43834)

Components

  • Refactor NavigationMenu to ignore exhaustive-deps. (44090)
  • Refactor RangeControl to pass exhaustive-deps.
    (44271)
  • Popover: Add anchor prop which supersedes all previous anchor-related props. (43691)
  • UnitControl: Fix exhaustive-deps warnings. (44161)
  • UnitControl: Use hideHTMLArrows prop to hide spin buttons. (43985)
  • useSetting: Minor refactor. (44267)

Refactoring tests to use @testing-library/reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.

  • Refactor BlockControls tests to @testing-library/react. (44122)
  • Refactor ColorPalette tests to @testing-library/react. (44108)
  • Refactor KeyboardShortcutHelpModal tests to @testing-library/react.
    (44077)

Work to remove dependency on lodash

  • Compose: Introduce in-house compose and pipe utils. (44112)
  • Compose: Introduce in-house debounce() utility, deprecate Lodash version. (43943)
  • Lodash: Remove dependency from wordpress/widgets package. (44201)
  • Lodash: Refactor away from _.flowRight().
    (44188)

Testing

  • Storybook: Set up local visual regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. testing.
    (43393)

Tooling

  • Ensure all packages get minor/major version bump when requested. (44317)

Performance Benchmark

The following benchmark compares performance for a particularly sizeable post (~36,000 words, ~1,000 blocks) over the last releases. Such a large post isn’t representative of the average editing experience but is adequate for spotting variations in performance.

Post Editor

VersionLoading TimeKeyPress Event (typing)
Gutenberg 14.28.4s48.69ms
Gutenberg 14.112.7s54.31ms
WordPress 6.06.4s29.97ms

Site Editor

VersionLoading TimeKeyPress Event (typing)
Gutenberg 14.24.1s44.76ms
Gutenberg 14.115.7s54.39ms
WordPress 6.05.0s26.15ms

Contributor Props

The following contributors merged PRs in this release:

@aaronrobertshaw @ajlende @annezazu @apmatthews @aristath @c4rl0sbr4v0 @carolinan @chad1008 @ciampo @dcalhoun @draganescu @ellatrix @geriux @glendaviesnz @gziolo @jasmussen @jorgefilipecosta @kebbet @kkoppenhaver @Mamaduka @matiasbenedetto @mcsf @michalczaplinski @mirka @mtias @noisysocks @ntsekouras @pagelab @ramonjd @t-hamano @talldan @tellthemachines @tyxla  @walbo @youknowriad

The following PRs were merged by first time contributors:

  • @kkoppenhaver: Update RangeControl documentation to clarify rail vs track. (44057)
  • @pagelab: Enforce coding guideline regarding the usage of quotation marks. (44305)

Kudos to all the contributors that helped with the release! 👏

Props to @priethor @bernhard-reiter @matveb @cbravobernal for their assistance with the release and props to @javiarce for the images and videos!

#block-editor, #core-editor, #gutenberg, #gutenberg-new

Dev Chat agenda, September 28, 2022

The next weekly WordPress developers chat will take place in the #core SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel on Wednesday September 28, 2022 at 20:00 UTC .

Summary of the last Dev Chat on September 21, 2022 – posted by @webcommsat

1. Welcome

2. Announcements

WordPress 6.1 Beta 2 released – September 27, 2022

3. Blogblog (versus network, site) posts

A Week in Core – September 26, 2022 – posted by @audrasjb

Core Editor Improvement: Catalyst for creativity and control, September 26, 2022 – posted by @annezazu

Proposal: Client-side WebAssembly WordPress with no server, September 23, 2022 – posted by @zieladam.

4. Releases

i) Major releases – 6.1

  • Update on the discussion on the 6.1 release date from last week’s meeting.
  • Update from release leads/ squad

5. Component maintainers/ Tickets to highlight/ help requests

Please add any updates or tickets you wish to raise in the comments below.

6. Open Floor

Please add any items you would like to raise in open floor in the comments below.

#agenda, #dev-chat

Performance team meeting summary 27 September 2022

Meeting agenda here and the full chat log is available beginning here on Slack.

Announcements

Focus group updates

Images

@adamsilverstein @mikeschroder

GitHub project

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

Feedback requested

Site Health

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” in SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.
  • No updates

Feedback requested

Measurement

N/A

GitHub project

Feedback requested

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.

@aristath @sergiomdgomes

GitHub project

  • @aristath: No movement on the JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. front recently, so focusing on general performance improvements instead, including #56636#56637#56654 and just a few minutes ago #56666. The process I’ve been following is to basically run vanilla WP using Xdebug-profiling, examine the results using webgrind and try to reduce the amount of function calls – as well as their cost. Generally small tweaks, with relatively big benefits. Last week #55005 was also merged in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., so overall I believe WP 6.1 contains a lot of nice and impactful performance changes – as highlighted by all the updates from other folks above.

Feedback requested

Infrastructure

@flixos90

GitHub project

Feedback requested

Discussion: SQLite support

@spacedmonkey and @aristath

  • @spacedmonkey: Think this is a great idea and could be useful in core for running unit tests and for other projects like wordpress-wasm. Wonder if the performance team should help take on this problem, even if it is to review the solution and ensure that there’s no performance regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5..
  • @aristath: Understand that testing could be difficult, so currently converting it to work as a pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party in this repository. Trying to convert to something that would make sense for core and then publish in the .org repo as a featured plugin. Hoping if this is in the form of the plugin, more people will test and provide feedback. Also noting that the initial proposal focused on small-to-medium sites, but there’s great potential for growth in other areas as well where large sites can take advantage of SQLite.
    • @spacedmonkey: I’ve forked hyperdb and run very large multisites, can provide context here
    • @aristath: We’ll need lots of context once we get rolling – the prospect of pairing SQLite and hyperdb is very exciting

Our next chat will be held on Tuesday, October 4, 2022 at 11am EDT in the #core-performance channel in Slack.

#core-js, #core-media, #performance, #performance-chat, #summary, #hosting-community

#meta

A Week in Core – September 26, 2022

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between September 19 and September 26, 2022.

  • 110 commits
  • 173 contributors
  • 66 tickets created
  • 13 tickets reopened
  • 91 tickets closed

The Core team is currently working on the next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope., WP 6.1 🛠 Last week, we entered the betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. cycle, with the release of WP 6.1 beta 1 🚀

Ticketticket Created for both bug reports and feature development on the bug tracker. numbers are based on the Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.

Code changes

Administration

  • Add new get_views_links method to WP_List_Table#42066
  • Allow to wrap Settings sections with custom HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. content – #17851

Bootstrap/Load

  • Confirm the value of WP_ENVIRONMENT_TYPE before using – #55741
  • Introduce is_*_admin_screen() aliases for is_*_admin() function family – #56400
  • Send HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. headers after querying posts in WP::main()#56068

Build/Test Tools

  • Enable debugging when rerunning a failed workflow – #56407
  • Increase the timeout value for MacOS jobs – #55652
  • Remove unnecessary --no-interaction option from Composer commands – #54695
  • Temporarily allow the NPM testing workflow to fail – #56615
  • Test building WordPress to run from src first – #55652
  • Update NPM dependencies in default themes – #56641
  • Update NPM dependencies in default themes, part 2 – #56641
  • Update NPM dependencies to their latest versions – #56641
  • Improve how combined assets are generated – #56615

Bundled Themes

  • Import Twenty Twenty-Three, the new default theme for WordPress 6.1 – #56383
  • Twenty Twenty-One: Add a missing HTML comment for CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings. notice control – #55725
  • Twenty Twenty-Three: Bug fixes and improvements for beta 2 – #56383
  • Twenty Twenty: Ensure the fallback fonts is applied to all content elements for non-latin languages – #56396

Chore

  • Run browserslits update – #56467

Code Modernization

  • Fix null to non-nullable deprecation in WP_REST_Users_Controller::update_item()#55656

Coding Standards

  • Applying an alignment fix from running composer format#56467
  • Correct alignment in WP_Theme_JSON_Resolver::get_core_data()#55647
  • Move WP_List_Table::get_views_links() to a more appropriate place – #42066
  • Remove extra space in REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. plugins controller test class – #56629
  • Rename WordPress Dependencies APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. class files – #37861, #55647
  • Replace double quote with single quote in test_if_failed_update()#55758
  • Various alignment fixes from composer format#39210, #55443, #56288, #56092, #56408, #56467, #55881

Cron API

  • Add error logging and hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. to wp-cron.php#56048

Date/Time

  • Correct sanitization of timezone_string in sanitize_option()#56468#53404
  • Correct sanitization of localized default timezone_string in populate_options()#56468
  • Correct timezone dropdown list creation in wp_timezone_choice()#56468
  • Minor tweak to support deprecated timezones on General Settings screen – #56468

Docs

  • Correct @see reference to deprecated_function_run in the _deprecated_function docblockdocblock (phpdoc, xref, inline docs)#56625
  • Correct the wording in wp_lostpassword_url() description – #55646
  • Fix prev_text and next_text parameters type in paginate_links()#56622, #55646
  • Fix wp_get_layout_style() parameter documentation – #55646
  • Increase the specificity of various property documentation – #55646
  • Remove a change that needs to instead be applied in the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ repo – #55646
  • Typo correction in _load_textdomain_just_in_time() docblock – #55646
  • Updates and corrections to various inline docsinline docs (phpdoc, docblock, xref) added in 6.1 – #55646
  • Use typed array notation for the $locales parameter in pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party update filters – #55646
  • Various improvements and corrections to inline docs – #55646

Editor

  • Remove repetitive calls to file_get_contents() in blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor settings – #56637
  • Remove duplicate use of realpath() in register_block_style_handle()#56636
  • Add box-shadow support for blocks through theme.json files – #56467
  • Add has_archive property to the post types REST endpoint – #56467
  • Add post types property to wp-rest-block-patterns-controller.php – #56467
  • Adds template types, is_wp_suggestion, and fallback template content – #56467
  • Backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. block supports (border, color, elements, spacing) from Gutenberg to WP 6.1 – #56467
  • Backport block supports filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. callback, registrations and tests to 6.1 – #56467
  • Backport hooks to filter theme.json data from Gutenberg to 6.1 – #56467
  • Fix function name case in wp_default_packages_inline_scripts()#56467
  • Fix missing frontend section presets output – #56467
  • Fix spacing property generation in flow layout type – #56467
  • Fix text zoom on link popup editor – #53174
  • Improve block loading PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher performance – #55005
  • Improves layout block support in wp_get_layout_style()#56467
  • Introduce spacing presets in global style properties – #56467
  • Introduces fluid typography and uses Style Engine – #56467
  • Make template names and descriptions dynamic – #56467
  • Revert [54305]
  • Sync changes from the Gutenberg plugin 14.1 release – #56467

External Libraries

  • Update the jQuery UIUI User interface library to version 1.13.2 – #56239
  • Update the jQuery library to version 3.6.1 – #56451

General

  • Correct the fallback logic in apache_mod_loaded()#56010
  • Ensure adminadmin (and super admin) notices are properly displayed on Site Health layout – #54624
  • Pass $action to nonce_life filter – #35188
  • Remove file_exists() checks after calling realpath()#56654
  • Replace Codex links with their HelpHub counterparts – My Sites screen – #48987
  • Revert [54225]#48987
  • Throw a more descriptive error when templates are not found – #36631

Help/About

  • Add a help tab in Theme Install screen for the new “Block Themes” search filter – #56405
  • Make translator comments version agnostic and make version translatable on the About page – #54741
  • Remove an unwanted whitespace in a Theme Install screen help tab string – #56405

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Remove code tags from translatable strings in WP_List_Table::get_views_links()#42066
  • Update list of continents and cities for the timezone selection – #56468

Login and Registration

  • Add a new filter for the lost password link – #55388

Media

  • Add caching to wp_count_attachments()#55227
  • Change alt attribute field to textarea in media library – #50066
  • Fix JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. TypeError with video playlists and native video – #47513
  • Respect EXIF Rotations – #54937
  • Revert WebP generation – #55443

Menus

Networknetwork (versus site, blog) and Sites

  • Move global_terms_enabled() to its proper final resting place – #21734
  • Officially remove global terms – #21734
  • Store main site id of a network in network options – #55802

Posts, Post Types

  • Fix WP_Query parameter used by get_page_by_title()#56609, #36905
  • Post title should not be translatable in get_user_data_from_wp_global_styles method – #55392
  • Update new wp_post_class_taxonomies filter name for consistency – #37114
  • Cache get_page_by_title()#36905
  • Coding standards fixes following [54234] – #36905
  • Prevent get_sample_permalink() modifying the post object – #54736

REST API

  • Fix check for has_archive inclusion – #56618

Role/Capability

  • Add a new update_role function – #54572

Security

  • Salting functions: translate the phrase “put your unique phrase here” – #55937

Shortcodes

  • Reverse wrapping of apply_shortcodes() and do_shortcode()#55883
  • Revert default filter callback changes from apply_shortcodes to do_shortcode#55883

Site Health

  • Improve the details provided by the REST API checks – #54617

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • Standardise the format used to describe arguments passed to actions and filters inside wp_insert_term() and wp_update_term()#55441

Tests

  • Add tests with deprecated timezone strings – #56468
  • Delete Link Manager plugin after running REST API plugins controller tests – #56629
  • Remove empty directory in WP_UnitTestCase_Base::rmdir()#55652
  • Remove nested empty directories in WP_UnitTestCase_Base::rmdir()#55652
  • Replace the timezone used in date/time tests – #56468
  • Reset timezone-related options if the tests change them – #56468
  • Revert removing empty directory in WP_UnitTestCase_Base::rmdir() for now – #55652, #56629
  • Simplify the data provider for testing whether KSES globals are defined – #55652

Text Changes

  • Remove self-reference (“we”) in WordPress Admin – #55758, #46057

Themes

  • Import Twenty Twenty-Three is now the default theme – #56383
  • Relocate actions firing prior to and after template loading – #54541

Tools

  • Fix running build scripts on Windows does not generate CSSCSS Cascading Style Sheets. files for blocks – #56616
  • Simplify syncing core blocks from Gutenberg plugin to Core – #56179

Upgrade/Install

  • Add plugin URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org to the automatic update email – #53049
  • Update sodium_compat to v1.19.0 – #56653
  • Use “placeholder” for example values in setup-config.php – #56365

Users

  • Make wp_list_authors() and wp_list_users() filterable – #17025

i18n

  • Ensure empty strings are consistently translated to ''#55941

Props

Thanks to the 173 (!!) people who contributed to WordPress Core on Trac last week: @costdev (31), @SergeyBiryukov (23), @audrasjb (19), @jrf (12), @hellofromTonya (11), @peterwilsoncc (9), @bernhard-reiter (8), @desrosj (8), @mukesh27 (7), @mcsf (5), @aristath (5), @oandregal (5), @andrewserong (5), @kebbet (5), @johnbillion (4), @gziolo (4), @Clorith (4), @afercia (4), @dd32 (4), @johnjamesjacoby (4), @adamsilverstein (4), @ramonopoly (4), @ntsekouras (4), @rafiahmedd (4), @joedolson (4), @sabernhardt (4), @isabel_brison (3), @spacedmonkey (3), @antonvlasenko (3), @madhudollu (3), @poena (3), @nacin (3), @dingo_d (2), @scribu (2), @jameskoster (2), @onemaggie (2), @scruffian (2), @chaion07 (2), @DrewAPicture (2), @wonderboymusic (2), @glendaviesnz (2), @Presskopp (2), @robinwpdeveloper (2), @czapla (2), @cbravobernal (2), @marcyoast (2), @oliverstapelfeldt (2), @wildworks (2), @clorith (2), @mikachan (2), @ironprogrammer (2), @critterverse (2), @beafialho (2), @hilayt24 (2), @colorful tones (1), @daisyo (1), @dianeco (1), @bgardner (1), @greenshady (1), @anariel-design (1), @amjadr360 (1), @joen (1), @pbiron (1), @thijso (1), @khokansardar (1), @ramon-fincken (1), @JosVelasco (1), @ChrisHardie (1), @Ipstenu (1), @monolithon (1), @pento (1), @noisysocks (1), @joehoyle (1), @wparslan (1), @JavierCasares (1), @edent (1), @shetheliving (1), @Rahmohn (1), @herregroen (1), @jffng (1), @NomNom99 (1), @kafleg (1), @garrett-eclipse (1), @chaton666 (1), @krupalpanchal (1), @haritpanchal (1), @marybaum (1), @giuseppemazzapica (1), @martinkrcho (1), @pbearne (1), @dwainm (1), @pcfreak30 (1), @igmoweb (1), @jorbin (1), @jonny-s (1), @boonebgorges (1), @kishanjasani (1), @Dharm1025 (1), @thelovekesh (1), @tanvirul (1), @soean (1), @richtabor (1), @pbking (1), @mtias (1), @luminuu (1), @juhise (1), @maksimkuzmin (1), @kraftbj (1), @joyously (1), @hellofromtonya (1), @tobifjellner (1), @rehanali (1), @engahmeds3ed (1), @petitphp (1), @presstoke (1), @ocean90 (1), @here (1), @courane01 (1), @davidbaumwald (1), @vikasprogrammer (1), @maximemeganck (1), @gabri3lmarques (1), @dlh (1), @jsnajdr (1), @Camwynsp (1), @draganescu (1), @mamaduka (1), @dmsnell (1), @sergeybiryukov (1), @azaozz (1), @zieladam (1), @paragoninitiativeenterprises (1), @ndiego (1), @felipeelia (1), @lopo (1), @manooweb (1), @Chouby (1), @hugodevos (1), @Boniu91 (1), @krishaweb (1), @timothyblynjacobs (1), @mburridge (1), @palmiak (1), @jeherve (1), @chriscct7 (1), @ryan (1), @ross_ritchey (1), @griffinjt (1), @namithjawahar (1), @whaze (1), @joostdevalk (1), @jonoaldersonwp (1), @webcommsat (1), @swissspidy (1), @schlessera (1), @afragen (1), @antpb (1), @mciampini (1), @mboynes (1), @Enchiridion (1), @oglekler (1), @jorgefilipecosta (1), @cbirdsong (1), @aaronrobertshaw (1), @youknowriad (1), @TimothyBlynJacobs (1), @chetan200891 (1), @Mte90 (1), @kevinB (1), @matveb (1), @mikeschroder (1), @tbember (1), and @tobiasbg (1).

Congrats and welcome to our 15 (!) new contributors of the week: @marcyoast, @colorfultones, @anariel-design, @amjadr360, @thijso, @khokansardar, @edent, @here, @maximemeganck, @gabri3lmarques, @Camwynsp, @hugodevos, @ross_ritchey, @cbirdsong, @tbember ♥️

Core committers: @sergeybiryukov (28), @audrasjb (23), @desrosj (20), @davidbaumwald (13), @hellofromtonya (7), @jorgefilipecosta (6), @johnbillion (5), @gziolo (5), @peterwilsoncc (5), @joedolson (4), @spacedmonkey (2), @antpb (1), @clorith (1).

#6-1, #core, #week-in-core

Core Editor Improvement: Catalyst for creativity and control

These “CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Editor Improvement…” posts (labeled with the #core-editor-improvement tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.)) are a series dedicated to highlighting various new features, improvements, and more from Core Editor related projects. 

Alongside the addition of more blocks to edit more parts of your site, more design tools are being added across all blocks to both ensure consistency in the experience and to allow folks to customize their site even more, without needing to use CSSCSS Cascading Style Sheets.. This post goes through each categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. of design tools, what blocks they are available in, the progress made, and some fun examples showing off what you can now do. The result is a catalyst for creativity, with more to come on the horizon. 

Typography BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Support

Visual listing out all of the block with typography support in four columns with a green color scheme.

These settings include font size, line height, font style, font weight, text transform, letter spacing, font family, and text decoration. When combined, these allow you to have new ways to differentiate your content, whether by making something stand out more or less. At a high level, various combinations of these options are available in the following blocks with many added for the 6.1 release cycle: 

  • Column/Columns
  • Categories
  • Code
  • Comment Author Name
  • Comments Content
  • Comment Date
  • Comment Edit Link
  • Comments Reply Link
  • Comment Template
  • Paragraph
  • Comments
  • Comments Pagination
  • Comments Pagination Next
  • Comments Pagination Numbers
  • Comments Pagination Previous
  • Comments Title
  • Cover
  • Home Link
  • Group
  • Latest Comments
  • List
  • Media & Text
  • Page List
  • Post Author
  • Post Author Biography
  • Post Author Name
  • Post Comments Count
  • Post Comments Link
  • Post Content
  • Post Date
  • Post ExcerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox.
  • Post Template
  • Post Terms
  • Post Navigation Link
  • Preformatted
  • Pullquote
  • Search
  • Table of Contents – not available in 6.1
  • Latest Posts
  • Navigation
  • Query No Results
  • Query Pagination
  • Query Pagination Next
  • Query Pagination Numbers
  • Query Pagination Previous
  • Query Title
  • Quote
  • Term Description
  • Verse
  • Button/Buttons
  • Archives
  • Calendar
  • Site Title
  • Site Tagline
  • Table
  • Heading
  • Navigation Link
  • Read More

      To see the power of these supports in action, here’s an example of using them to personalize a button: 

      The audit for this set of design tools is 85.71% complete. To follow further efforts and see more details about the support added to each block, please review this tracking issue

      Dimensions and Spacing Block Support

      Visual listing out all of the block with dimension and spacing support in four columns with a blue color scheme.

      These supports include padding, margin, block gap, height, width, and min height. As the name suggests, they give you exact control over the layout of blocks both in relation to inner blocks (like the layout of a List or Gallery) and in relation to blocks nearby. At a high level, various combinations of these options are available in the following blocks with many added for the 6.1 release cycle: 

      • Archives
      • Audio
      • Tag Cloud
      • Table of contents – not available in 6.1
      • Table
      • Term Description
      • Spacer
      • Post Date
      • Heading
      • Paragraph
      • Query Title
      • Post Title
      • Video
      • List
      • Media & Text
      • Verse
      • Categories
      • Comment Edit Link
      • Comment Date
      • Comment Reply Link
      • AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name.
      • Site Logo
      • Social Links
      • Gallery
      • Button/Buttons
      • Code
      • Column/Columns
      • Comment Author Name
      • Comment Content
      • Comments Title
      • Cover
      • Group
      • Heading
      • Navigation
      • Post Author
      • Post Author Biography
      • Post Author Name
      • Post Excerpt
      • Post Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts.
      • Read More
      • Separator
      • Site Tagline
      • Site Title

      To show how you can use these tools to refine your work, here’s an example of just using the block gap option to manage the layout of social links: 

      The audit for this set of design tools is 54.76% complete. To follow further efforts and see more details about the support added to each block, please review this tracking issue

      Colors Block Support

      Visual listing out all of the block with color support in four columns with an orange color scheme.

      This includes text color, background color, link color, gradient options, and duotone filters. These options allow you to do everything from add a custom duotone filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. to all featured images in a display of posts to picking unique color combinations for your social links. At a high level, various combinations of these options are available in the following blocks with various ones added for the 6.1 release cycle: 

      • Social Links
      • Gallery
      • Calendar
      • Table of Contents – not available in 6.1
      • Social Links
      • Button
      • Avatar – Duotone only
      • Code
      • Column/Columns
      • Comment Author Avatar – Background only
      • Comment Author Name
      • Comment Content
      • Comment Date
      • Comment Edit Link
      • Comment Reply Link
      • Comments
      • Comments Pagination
      • Comments Pagination Next
      • Comments Pagination Previous
      • Comments Title
      • Cover – Duotone only
      • Gallery – Background only
      • Group
      • Heading
      • Image – Duotone only
      • List
      • Media & Text
      • Navigation
      • Paragraph
      • Post Author
      • Post Author Biography
      • Post Author Name
      • Post Comments Count
      • Post Comments Form
      • Post Comments Link
      • Post Date
      • Post Excerpt
      • Post Featured Image – Duotone only
      • Post Navigation Link
      • Post Terms
      • Post Title
      • Preformatted
      • Pullquote
      • Query
      • Query No Results
      • Query Pagination
      • Query Pagination Next
      • Query Pagination Numbers
      • Query Pagination Previous
      • Query Title
      • Quote
      • Read More
      • Search
      • Separator
      • Site Logo – Duotone only
      • Site Tagline
      • Site Title
      • Social Links
      • Table
      • Table of Contents
      • Term Description
      • Verse

      To see these supports in action, here’s an example of providing your own colors for social link icons that match with the branding on your site: 

      The audit for this set of design tools is 65.47% complete. To follow further efforts and see more details about the support added to each block, please review this tracking issue

      Layout Block Support

      Visual listing out all of the block with layout support in one columns with a blue color scheme.

      Of note, this support only applies to container blocks (buttons, columns, gallery, etc) since it impacts the layout of blocks within each.  At a high level, various combinations of these options are available in the following blocks. Note that no new supports were added for the 6.1 cycle: 

      • Buttons
      • Column
      • Columns
      • Comments Pagination
      • Gallery
      • Group
      • Navigation
      • Post Content
      • Post Template
      • Query
      • Query Pagination
      • Social Links

      To see these specific container related options in play, here’s an example with the navigation block where you can quickly switch between different configurations as you find which best fits with the headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. of your choosing:

      The audit for this set of design tools is 52.17% complete. To follow further efforts and see more details about the support added to each block, please review this tracking issue

      Border Block Support

      This includes the ability to control color, radius, style, and width on each side of the border. These powerful set of tools allows for some neat ways to decorate everything from individual images to overall columns of content. At a high level, various combinations of these options are available in the following blocks with a few added for the 6.1 release cycle: 

      • Post Featured Image
      • Column/Columns
      • Image
      • Avatar
      • Button
      • Code
      • Column/Columns
      • Comment Author Avatar
      • Comments Title
      • Group
      • Pullquote
      • Read More
      • Search

      To see how borders can transform a block, here’s an example showing how a theme author can customize a featured image block to make it stand out even more: 

      The audit for this set of design tools is 14.28% complete. To follow further efforts and see more details about the support added to each block, please review this tracking issue

      The power of combining tools

      While this post sectioned out the various design tools to make it easy to catch up on all that’s happened, remember that the true power in these tools comes when they are combined altogether. For a simple yet powerful and common example, here’s a video showing how with some very quick changes you can make a paragraph pop to better call attention to a part of your post:

      For a more complex example, here’s a video showing how you can customize your featured image block with various borders and a duotone filter, long before you select the image of your choosing: 

      More to come

      The above simply captures the initial set of work to create consistency across blocks, with tons more planned to offer an increasingly intuitive default experience for all blocks and to stabilize the underlying block support APIs. This has been a massive effort involving a flurry of PRs across multiple different GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ releases ahead of 6.1. As these tools grow, the question of how best to scale the interface becomes more important, with explorations already underway for a better way to reset values and clarify inherited styles. Tied to this, it’s also important that any omission of support is deliberate in order to ensure a more cohesive experience. 

      Props to @markoserb for the design help with the visuals you see above and @beafialho for help with the video demos!

      #core-editor, #core-editor-improvement