JSX in WordPress 6.6

WordPress 6.6 introduces the possibility for developers to use the new React JSX transform that was first released in ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org 17.ย 

How to use the new JSX in WordPress 6.6

Your build scripts need to apply the following changes in the built files:

  • Add the react-jsx-runtime to your script dependencies.
  • Use ReactJSXRuntime.jsx global as the output of your JSX calls.

In general, this is not something you do manually in your code base. Instead, youโ€™ll use a build tool. The @wordpress/scripts, @wordpress/babel-preset-default andย  @wordpress/dependency-extraction-webpack-plugin npm packages have been upgraded to apply these transformations automatically.

Build Tools Compatibility and upgrade path

If youโ€™re using the JSX syntax in your code base, and as long as you donโ€™t update your dev dependencies (including @wordpress/scripts, @wordpress/babel-preset-default or @wordpress/dependency-extraction-webpack-plugin), you will continue to use the old JSX transform. This will allow your 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. and built files to be compatible with WordPress 6.5, earlier versions and WordPress 6.6 as well.

When youโ€™re ready to make WordPress 6.6 the minimum supported version of your plugin, you can update the following dependencies to use the new JSX transform.

  • @wordpress/scripts from version 28.
  • @wordpress/babel-preset-default from version 8.
  • @wordpress/dependency-extraction-webpack-plugin from version 6.

Going forward

The new JSX transform comes with performance improvements and optimization.ย 

Note that the React team will deprecate the old JSX transform in the upcoming React v19 release (currently in RC).ย 


Thank you @ramonopoly @justlevine for contributing to and reviewing this post.

#6-6, #dev-notes, #dev-notes-6-6

Hallway Hangout: Theme Building with Playground, Create-block-theme plugin, and GitHubย 

During and after the Hallway Hangout on using the Site editor for client projects the question on how to handle version controlversion control A version control system keeps track of the source code and revisions to the source code. WordPress uses Subversion (SVN) for version control, with Git mirrors for most repositories. workflows for 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. theme development surfaced. You are invited to join Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org and theme builders at Automattic, discussing and sharing a workflow that combines open-source WordPress tools: Create Block Theme 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. and WordPress Playground. Playground allows them to connect their work to a GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โ€˜pull requestโ€™ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ repository for managing their themesโ€™ version control.ย 

In this session, theme developers will demonstrate the design, development, and preview approach for Automatticโ€™s process.ย You will learn how to make all the connections work seamlessly from Playground to GitHub and back again, and how to work with the features of the Create Block Theme plugin.ย  An extensive time for Q & A allows for plenty of questions answered.ย 

The event will take place on June 19 at 11:00 UTC. The Zoom link will be posted into the #outreach channel on the day of the meeting. There will be a recording provided for those who canโ€™t make it.ย 

Props to @greenshady for review.

#block-themes, #hallway-hangout, #outreach

Summary, Dev Chat, May 29, 2024

Startย of the meeting 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/, facilitated by @mikachan. ๐Ÿ”— Agenda post.

Announcements

  • The scheduled date forย WordPress 6.6 Beta 1 is June 4. From this point on, we will focus on testing and fixing bugs discovered during 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. testing. Begin writing Dev Notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. and the About page.
  • 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/ 18.4 was released on May 22. Read more about what was included in this releaseย here.

Forthcoming Releases

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.: 6.6

We are currently in theย WordPress 6.6 release cycle. See theย Roadmap Postย for details about what is planned for this release. Gutenberg 18.5 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). is scheduled for May 31, which is the final RC before WordPress 6.6 Beta 1. It will includeย these issues and PRs.

Next maintenance release: 6.5.4

@jorbinย hasย confirmedย that there will be a 6.5.4 release scheduled for June 5, to accommodateย #61269. Anย RCย is scheduled for May 30.

@hellofromtonya shared that an alternate approach to #61269 is being considered for 6.5.4 and requested more feedback:

This could have an impact on the planned RC schedule for 6.5.4 depending on consensus on what approach to ship.

Discussion

With the Beta 1 deadline quickly approaching, we used the discussion time to check in on priority items for this release. Please review the list of Editor Updates from this weekโ€™s agenda for a list of updates of several key features related to this release.

@fabiankaegyย has flagged that there are a number of commits that still need to be synced from the Gutenberg repo as part of this tracking issue. He also is tracking related PRs inย this table on the WP 6.6 Editor Tasks board. Support from folks to review and commit these PRs is appreciated as we approach the 6.6 beta 1 deadline.

@joemcgill asked if the Release Squad needed any support to be ready for the 6.6 Beta 1 release next week.

@meher shared that all teams haveย reported a ๐ŸŸข status in the last check-in. Waiting for the Design and Performance to add their status. The documentation team has got help from folks.

Currently trying to decide whether the time to start Beta 1 should be 14:00 UTC or 16:00 UTC. Conversation about this continued after the meeting in the #6-6-release-squad channel.

Open Floor

Nothing was raised during Open Floor this week

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.

Props to @mikachan for proofreading.

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

WordPress 6.5.4: An upcoming maintenance release

A number of 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. authors have reported that the fix introduced as a part of #60992 has not sufficiently helped their users, therefore #61269 is being proposed as a short cycle fix. In order to get this fix released quickly, WordPress 6.5.4 is being planned with the following schedule.

  • 30 May 2024 โ€“ย Release Candidaterelease 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).ย made available and announced here on the make/coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.ย site.
  • 5 June 2024 โ€“ Final release made available.

Specific times will be decided in advance and adjustments to the schedule may be made. All adjustments will be noted in this post.

Minor or Maintenance releases of WordPress are intended asย 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.-fix only releases. If you have aย tracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.ย ticketticket Created for both bug reports and feature development on the bug tracker.ย that you think should be considered, please put it in the 6.5.4 milestone. If you have aย githubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โ€˜pull requestโ€™ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ย issue, please add it to theย 6.5.x Editor Tasksย board. If you lack bug gardening capabilitiescapability Aย capabilityย is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on theirย role. For example, users who have the Author role usually have permission to edit their own posts (the โ€œedit_postsโ€ capability), but not permission to edit other usersโ€™ posts (the โ€œedit_others_postsโ€ capability). and have a ticket or issue you wish to highlight for 6.5.4, please add a comment here.

Note: except in extreme situations, only bug fixes will be considered and generally only bugs that have been introduced during the 6.5 cycle.

Get involved with 6.5.4

Each of the open tickets in the milestone is going to require development work along with testing and review. Additionally, while the intent is for no new translated strings in this release,ย some locales have strings in 6.5 in need of translation.

General coordination for the release will happen in theย #6-5-release-leadsย channel and decisions around code for the release will be made in theย #coreย room.

Thisย minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.ย will be led byย @hellofromtonya, @costdev, and myself (@jorbin). If there are editor related issues that need to be included,ย @grantmkin has agreed to lead those as well.

Thanks to @joemcgill, @costdev, @grantmkin, and @hellofromtonya for prepublication review.

#6-5, #6-5-x

Summary, Dev Chat, May 22, 2024

Startย of the meeting 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/, facilitated by @joemcgill. ๐Ÿ”— Agenda post.

Announcements

  • The scheduled date forย WordPress 6.6 Beta 1 is June 4, which is less than 2 weeks away. From this point on, we will focus on testing and fixing bugs discovered during 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. testing. Begin writing Dev Notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. and the About page.
  • @ellatrixย recently announcedย that the last 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/ release to go into WP 6.6 will have an 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). next Friday, May 31.

Forthcoming Releases

Our 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.6. See theย Roadmap Postย for details about what is planned. Also, see the Bug Scrub post for more details on when the 6.6 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. scrubs are happening.

@jorbinย requestedย that we discuss the potential of doing a 6.5.4 release to accommodateย #61269, and noted:

@hellofromtonya, @costdev and myself have been working through some options to help solve some issues that cropped up from 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. dependencies and are proposing #61269 as a solution that we would like to get in the hands of users as soon as possible.

Our suggestion is that we do a very small focused 6.5.4 on 5 June with an RC on 30 May. I am not currently aware of any other issues but would be open to including other fixes. I know itโ€™s not much time for feedback, but am open to it as far as the schedule goes and also open to other tickets folks want to raise for inclusion.

The feedback that would be most helpful:

  • Testing and review of the proposed 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.
  • feedback on the schedule,
  • proposal of additional issues that should be considered for the release if any

@jorbin also highlighted that we will need someone with MC access, someone with a 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. sandbox, someone who can create a helphub page. Please reach out if you can help with any of these tasks.

The next GB release, Gutenberg 18.4, is going out soon and includesย these issues. As mentioned during the announcements section of this chat, that means the following GB release (18.5) will be the last one planned to be included in WP 6.6. Nowโ€™s a very important time to be testing and reviewing PRs that are being synced from that repo to trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision..

Discussion

Ahead of the meeting, @annezazu highlighted the following updates on features for 6.6 โ€“ please help review and provide feedback as you can!

  • About a 10 minute long video demoย of zoomed out view and where things stand, including current challenges with adding it to the pattern insertion experience. As it stands today, it looks like the zoomed out experience to build with patterns wonโ€™t be ready but will be an experiment in the plugin.
  • Block bindings latest updateย including a run down of merged PRs, risks for the release, and next steps. As it stands today, it looks like having the functionality toย allow editing of custom fields when connected to blocksย will likely not be ready for 6.6.
  • Section styling has aย new discussion around CSS specificityย which is necessary to resolve for the feature to land. There is potential breakage that might happen with the zero specificity styles and an alternative plan presented to preserve backwards compatibility.

@fabiankaegy and @colorful-tonesย have been doing great work triaging theย WP 6.6 Editor Tasks board as well.

@vcanales mentioned the following issuesย in theย WordPress 6.6 Editor Tasks boardย that are up for grabs for developers:

Open Floor

@dmsnell mentioned the HTML API: weโ€™re getting nervously close to the deadline but still on task for our two main updates:

  • adding a spec-compliant text decoder
  • refactoring the HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Processor so that it always presents a normalized โ€œperfectโ€ view of the HTML itโ€™s parsing

@dmsnell mentioned that the best way to support this project is to review the work or share thoughts about how itโ€™s all structured. Theย WP_Token_Mapย (Core-60324)ย is the biggest general thing in view and everyone is invited to share input on it or onย the dev note Iโ€™ve prepared.

@dmsnell also raised two other tickets:

  • #61009ย allows storing the proposed โ€œBitsโ€ syntax, making it possible for experimentation inside Gutenberg.
  • #61052ย allows storing custom data attributes containing dashes, which is what the Interactivity 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. relies on.

The first one opens up the ability for Gutenberg to start experimenting withย Bits, which are โ€œShortcodes, 2.0โ€, orย dynamic tokens for externally-sourced data. This could use security review and scrutiny but is quite small in scope. The idea is that these can appear with a name and attributes which denote thatย somethingย will replace it when rendered, but where Blocks are big, Bits are small, for example:

<//wp:post-meta key="isbn">

The main discussion around this is here.

The second ticketticket Created for both bug reports and feature development on the bug tracker. is about aligningย ksesย with the needs of the Interactivity API. There is more information in this ticket. It would also be helpful to have more eyes and scrutiny on the way that this has been implemented.

For more information about both of these tickets, please read @dmsnellโ€˜s messages during the dev chat from here.

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.

Props to @joemcgill for proofreading.

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

What’s new in Gutenberg 18.4 (22 May)

โ€œ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 tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, hereโ€™s an overview of different ways to keep up with Gutenberg and the Editor.


Gutenberg 18.4 is ready and available for download!

This release includes 178 pull requests by 58 contributors. Look for improvements to the Grid 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., a new handy keyboard shortcut, and useful features for extenders. Additionally, as always, a number of bugs, 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) issues, and performance issues have been fixed.

Great work to all who contributed to Gutenberg 18.4, with special appreciation for the first-time contributors we had this release. Thank you!

Table of Contents

Visualize grid layouts

No longer an experiment, the grid layout visualization is now available to everyone! See outlines of the grid columns and rows, and use the drag handles to make content span across them. (#61640)

Group blocks with a keyboard shortcut

Many design tools provide shortcuts for grouping elements. Gutenberg has been missing this convenience since blocks could be groupedโ€ฆ until today. Now you can conveniently group all selected blocks with the โŒ˜ Command + G on MacOS or Ctrl + G on Windows. (#46972)

Define custom aspect ratio presets with theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.

Tired of being stuck with the same standard aspect ratios for image cropping and layout? Now themes can define their own aspect ratio presets to use. (#47271)

Set new aspect ratios with the settings.dimensions.aspectRatios option in theme.json. As with other presets, the default options are always available by default. To remove them and use only your own, set the settings.dimensions.defaultAspectRatios option to false.

{
	"version": 3,
	"settings": {
		"dimensions": {
			"aspectRatios": [
				{
					"name": "Super Ultra-Wide - 32:9",
					"slug": "32-9",
					"ratio": "32/9"
				}
			]
		}
	}
}

Other notable highlights

For extenders needing more customizability than the BlockToolbar has to offer, you can use the newly exported BlockPopover component to easily create your own custom toolbar. (#61529)

For extenders replicating rich text pasting behavior in your own blocks, you now have access to a convenient supports.splitting block setting. When it is enabled and content is pasted inside the block, it will split your block in two, insert the content, and then merge the ends together. (#54543)

For theme developers, the list block now includes a wp-block-list class to allow styling the block separately from other lists. No more accidentally selecting too many things when styling list blocks. (#56469)

Changelog

View full list of changes

Enhancements

Layout

  • Check child layout exists before generating classname. (61392)
  • Hide Image block resizer when inside a grid layout. (61603)

Grid interactivity

  • Improve max attribute logic. (61420)
  • Improve how grid resizer handles 0-width and 0-height cells. (61423)
  • Show grid visualizer when block inspector is closed. (61429)
  • Stabilise grid layout visualiser and resizer. (61640)

Global Styles

  • Add aspect ratio presets support via theme.json. (47271, 61774)
  • Background images: Remove required โ€œfileโ€ prop. (61387, 61469)
  • Change โ€œSolidโ€ tab to โ€œColorโ€. (61366)
  • Improve panel title and description for palette. (61365)
  • Tweak palette panel spacing and empty message. (61368)
  • Update color variations. (61334)

Block Styles

  • Add extended version of register block style functions. (61029)

Post actions

  • Improve success messages of some post actions. (61539)
  • Unify the list of available post type actions. (61520)
  • Donโ€™t export duplicatePostAction for now. (61407)

Zoom Out

  • Editor: Enable Zoom-out mode in the post editor. (61293)
  • Keep original viewport width (single scale). (61424)
  • Open inserter 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. when clicking on inserter buttons on zoom-out mode. (61434)
  • Remove experimental zoom out control. (61509)
  • Zoomed Out View: Donโ€™t close the inserter. (61004)

Components

  • Do not render FormTokenField label when not defined. (61336)
  • Placeholder: Tweak placeholder style. (61590)
  • Add content only descriptions in dropdown menus for patterns and templates. (61127)

Block Library

  • List Block: Add block class name to the list block. (56469)
  • Embeds Block: Add Bluesky variation. (61352)
  • Site Logo Block: Add setting labels via the โ€˜register_settingโ€™ method. (61351)

Block Editor

  • Make BlockPopover component public. (61529)
  • Only add the selected pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. in metadata during insertion. (61557)
  • Add a keyboard shortcut to create group from the selected blocks. (46972)
  • Enhance block outlines and selection interactions. (60757)
  • Tiny tweak to position close button properly in the inserter. (61461)

Editor

  • Editor: Unify 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. component. (61273)
  • Editor: Unify the sidebar between the post and site editors. (61507)
  • Editor: Update and simplify the Post Summary and Post Card section in the document sidebar. (61624)
  • Try: Improve date-wrapping in prepublish flow. (61490)
  • Update: Implement the new discussion panel design. (61357)

Post Editor

  • Add global styles to settings using existing context code. (61556)
  • Display a notice after moving a post into the trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days.. (61670)
  • Simplify Post Publish Flow status term. (61386)

Site Editor

  • Redirect /wp_template_part/all to /patterns. (61446)
  • Moves โ€œPatternsโ€ command to site editor main navigation. (61416)
  • Adds โ€œTemplate Partsโ€ command to site editor. (61287)
  • Show pin/unpin button on the site editor 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. sidebar. (61448)
  • Remove default entry into Navigation MenuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. focus mode but retain ability to access via โ€œEditโ€. (61275)

Data Views

  • Add bulk actions toolbar. (59714)
  • Align list and table layout visuals. (61157)
  • Add actions to list layout. (60805)
  • Make pattern preview click area larger. (61250)

Bug Fixes

Layout

  • Fix grid item resizing in non-iframed editor. (61636)
  • Fix resizing items to top and left with GridItemResizer. (60986)
  • Grid Visualizer: Fix grid item resizing in site editor. (61641)
  • Grid Visualizer: Fix resize not ending when mouse is released outside gridโ€™s bounds. (61668)
  • GridItemResizer: Fix resizing when List View is open. (61643)
  • Only show grid resizer if grid block allows resizing on children. (61552)

Global Styles

  • Background image: Explicitly set background repeat value in user styles. (61526)
  • Background image: Size controls should show when an image is set. (61388)
  • Make sure to replace all instances of :Where(body) instead of just โ€ฆ. (61602)
  • Reduce specificity of global styles body margin reset rule. (61340)
  • Remove Post Template background override. (61545)

Patterns

  • Fix blocks in unsynced patterns can enable overrides. (61639)
  • Revert โ€œUse contentOnly locking for pattern block, remove hard-coded block check in block inspectorโ€. (61517)

List View

  • Account for text fields in shortcut handler. (61583)
  • Add a special case for shortcuts coming from modals. (61606)
  • Standardize List View feature name to use title case capitalization. (61535)

Zoom Out

  • Block editor: Scroll block into view on insert. (61418)
  • Fix double scrollbars in site editor with zoom out view enabled. (61548)
  • Fix zoom out UIUI User interface scale. (61265)
  • Add bottom and top inserters. (61473)
  • Add patterns loading state. (61513)
  • Donโ€™t allow dropping outside section root. (61512)
  • Donโ€™t select last block. (61484)
  • Pass the section root ID to the inserter. (61464)
  • Zoom-out: Fix iframeiframe iFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the userโ€™s browser. ref error. (61200)

Components

  • Fix inconsistent complementary header styles. (61331)
  • Fix sticking โ€œResetโ€ option in ToolsPanel. (60621)
  • RadioControl: Fix shrinking radio controls. (61476)

Block Library

  • Navigation Block: Add list item wrapper to social links when used in navigation block. (61396)
  • HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Block: Remove font weight on toolbar tab button โ€“ #61254. (61308)
  • Time to Read Block: Fix โ€œthis block has encountered an errorโ€ โ€“ #61459. (61614)
  • Image Block: Enable crop action when image has a link. (61470)
  • ShortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. Block: Fix layout margin override. (55028)

Block Editor

  • Editor styles: Fix cache (by wrapper selector). (61397)
  • Fix Truncate component for long unbreakable text. (61137)
  • Fix focus loss due to filtering blocks. (61558)
  • Fix: The issue of appender button not clickable in row/stack group. (61585)
  • Writing Flow/Rich Text: Unify split logic. (54543)

Post Editor

  • Fix the โ€˜usePaddingAppenderโ€™ error. (61500)
  • Return an empty object when no fallback templates are found (wp/v2/templates/lookup). (60925)

Site Editor

  • Fix user capabilitiescapability Aย capabilityย is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on theirย role. For example, users who have the Author role usually have permission to edit their own posts (the โ€œedit_postsโ€ capability), but not permission to edit other usersโ€™ posts (the โ€œedit_others_postsโ€ capability). check for the Site Editor. (61444)
  • Preserve the wp_theme_preview query arg when navigating in Site Editor. (61394)
  • Trigger sidebar animations only on cross-route navigations. (61402)
  • Site Editor: Restore the hover zoom effect when hovering the editor frame. (61647)

Widgets Editor

  • Hide the close button on the inserter for widgets editor. (61510)

Data Views

  • Fix 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. on keyboard navigation. (61478)
  • Improve dataview types. (61586)

Interactivity 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.

  • Interactivity API: Allow multiple event handlers for the same type with data-wp-on-document and data-wp-on-window. (61009)
  • Interactivity API: Prevent empty namespace or different namespaces from killing the runtime. (61409)
  • Interactivity API: Prevent wrong written directives from killing the runtime. (61249)

Accessibility

Components

  • ComboboxControl supports disabled items. (61294)
  • Remove usage of aria-details from InputControl and BaseControl. (61203)

Block Library

  • Fix the RRS block placeholder labeling and improve spacing. (61576)

Block Editor

  • Focus currently selected block when entering canvas. (61472)
  • Focus inserter toggle when closing the inserter sidebar. (61467)
  • Inserter: Add close button. (61421)

Post Editor

  • Post Actions: Correctly disable dropdown trigger. (61625)

Performance

  • Calculate and report quartiles in performance results. (60950)
  • Refactor InserterTabs to use children and remove re-memoizing. (61295)
  • Tests: Improve collection and reporting. (61450)
  • Performance tests: Fix results file path. (61686)
  • Revert โ€œuseBlockSync: Remove isControlled effectโ€. (61480)

Documentation

  • Update old document URLs to new ones. (61595)
  • Add a section about block_editor_settings_all to the Filters 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. doc. (61597)
  • Add link to VS Code Playwright Extension. (61505)
  • Added check for duplicated slugs during manifest.json generation. (61332)
  • Block Editor: Remove multiline prop from Richtext doc. (61592)
  • Docs: How-to Guides > 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. Boxes โ€“ Update metabox.md. (61314)
  • Docs: Interactivity API โ€“ Add viewScriptModule as a requirement to work with the Interactivity API. (61355)
  • Docs: Interactivity API : New pages โ€“ About and FAQ. (61323)
  • Docs: Interactivity Api โ€“ Small fixes. (61403)
  • Docs: Remove list of keyboard shortcuts from FAQ page. (61591)
  • Docs: Update theme-json-living.md to fix little issue. (61354)
  • Fix WP versions for theme.json v3 migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. in inline documentation. (61328)
  • Several Typo Correction in Inline doc. (61379)
  • Small fixes as per feedback received. (61445)
  • Theme.json: Update schema with working create theme link. (61306)
  • Update wordpress/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) README.md. (61635)
  • Update Node.js requirement in create-block docs. (60962)
  • Update and restructure the Editor Hooks doc. (61596)
  • Updated links to developer resources on README.md. (61525)
  • theme.json schema: Remove duplicate key. (61523)
  • Several Typo Corrections in Inline Documentations. (61662)

Code Quality

  • PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher load: move rest template controller 6.6 import to โ€œRESTโ€ area. (61564)
  • Replace classnames with clsx. (61138, 61380)

Block Bindings

  • Remove not needed breaks in gutenberg_block_bindings_replace_html. (61660)
  • Simplify the HTML replacement logic until the HTML API is ready. (61236)

Patterns

  • Pattern overrides: Use block binding editing API. (60721)

Components

  • Assess stabilization of Theme. (61077)
  • Upgrade @types/reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org package and @types/react-dom. (60796)
  • Fix problem with gradient-parser types. (61679)

Block Editor

  • Improve LineHeightControl unit tests. (61337)

Editor

  • Move the starter template options to the editor package. (61665)

Post Editor

  • Edit post: Do not consider sidebars mutually exclusive. (61468)
  • Editor: Move the sidebar component to the editor package. (61497)

Site Editor

  • Site Editor sidebar: Provide explicit backPaths, remove the getBackPath helper. (61286)

Data Views

  • Expand typing more components. (61654)
  • Add end-to-end tests for keyboard interactions in DataViews ListView. (61648)
  • Add types to the ViewGrid component. (61667)
  • Type the BulkActions component. (61666)
  • Type the ItemActions component. (61400)
  • Type the ViewList component. (61246)
  • Remove onActionPerformed & onActionStart from the ActionModal API. (61659)

Interactivity API

  • Add types for warn helper. (61687)
  • Enable strict type checking. (59865)

Tools

Testing

  • Convert FocalPointPicker tests to TypeScript. (61373)
  • E2E: Fix artifacts handling in CI. (61338)
  • Interactivity API: Fix flaky tests for attribute hydration. (61615)
  • Lightbox UI block override tests. (61414)
  • Playwright Utils: Silence some of the warnings coming from Firefox. (61451)
  • Test: Fix failing style linting error. (61649)
  • Tests: Fix flaky interactivity deferred test. (61359)

Build Tooling

  • Add stylelint rule to disallow the order CSSCSS Cascading Style Sheets. property. (61243)
  • Enforce @since tags in /packages/block-serialization-default-parser/ and other files. (60007)
  • Bug: False positives for react-hooks/exhaustive-deps. (61599)
  • Scripts: Add RTLCSS to wp-scripts. (61540)
  • WP-ENV: Fix return type and tests. (61631)
  • Create Block: Match specified engines with Gutenberg and CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. (61430)
  • Set prefer-dedupe as the default. (61630)
  • build: Suggest workaround if tsc --build fails. (61501)
  • build:package-types: Run silently to reduce user confusion. (61530)
  • GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โ€˜pull requestโ€™ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ Actions: Fix PHP file change detection 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. pattern. (61183)
  • Dedupe packages. (61532)
  • 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. react-autosize-textarea for updated types. (61570)
  • Upgrade @use-gesture/react. (61503)
  • Upgrade framer-motion. (61572)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @ajlende @amitraj2203 @anton-vlasenko @artemiomorales @bacoords @carolinan @cbravobernal @colinduwe @DaniGuardiola @DAreRodz @desrosj @draganescu @ellatrix @fullofcaffeine @geriux @getdave @gigitux @hbhalodia @jameskoster @jasmussen @jeryj @jffng @johnhooks @jorgefilipecosta @jpstevens @jsnajdr @juanmaguitar @kevin940726 @kovshenin @MaggieCabrera @Mamaduka @mcsf @mrmurphy @ndiego @noisysocks @ntsekouras @oandregal @ramonjd @retrofox @richtabor @ryelle @SantosGuillamot @scheinercc @scruffian @shail-mehta @sirreal @stokesman @StyleShit @swissspidy @t-hamano @talldan @tellthemachines @tyxla @vipul0425 @WunderBart @youknowriad

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

Bug Scrub Schedule for WordPress 6.6

Scheduled 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. scrubs are completed ๐Ÿ˜Š Thanks to everyone!
Please continue testing 6.6 ๐Ÿ’ช

Release Candidaterelease 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).ย Bug Scrubs will be conducted if needed.

Continue reading โ†’

#6-6, #bug-scrub, #core

Summary, Dev Chat, May 15, 2024

Startย of the meeting 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/, facilitated by @annezazu. ๐Ÿ”— Agenda post.

Announcements

A reminder that theย WordPress 6.6 roadmapย has been published. Please also read and leave feedback on theย Server to client data sharing for Script Modules proposal. Feel free to leave feedback either during Dev Chat or on the proposal post.

Forthcoming Releases

Weโ€™re currently in theย WordPress 6.6 release cycle. You can find out more about the release squad inย this post.

@annezazu noted that after a discussion in the publicย #6-6-release-leadsย channel,ย there is an update underwayย for the remaining roles yet to be filled. This has now been posted here.

For any folks who want to learn more about the releaseย andย help contribute back, I want to call attention to this post onย Early opportunities to Test WordPress 6.6. Help the release and learn about it at the same time!

Discussion

Release Squad: A lengthy discussion ensued about the fact that 3 weeks from 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. 1 that the full release squad has not been filled. There were questions about why this release has been so hard to fill and what we could do to improve this in the future. Some questioned the size of the release squad making it difficult to fill and others questioned the length of the cycle. Suggestions were made to try to recruit a release squad earlier in the cycle, or even at the end of the previous cycle.

Note: Since the meeting, the WordPress 6.6 release squad is ready.

Canonical 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. plugins proposal: There is an initial issue and discussion here, and a follow-up Gutenberg PR is currently in progress to create a time to read block. Have folks had a chance to catch up here? Any questions or concerns?

  • @jeffpaul questioned what problem this would solve compared with either shipping these blocks in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. or allow them to be maintained as community plugins.
  • @jorbin expressed support for the idea, but identified that there were some questions that need to be answered in addition to what @grantmkin shared in this GitHub comment.
  • @annezazu shared that the difference is useful in that some blocks havenโ€™t been a great fit for Core, for a variety of reasons. This separation allows the base experience to remain the same while offering strong, supported blocks provided by Core that folks can add on.
  • This was a lengthy discussion. Everyone is encouraged to provide feedback on the related issue.

Proposal: Server to client data sharing for Script Modules: This proposal is still looking for feedback.

Open Floor

@kkmuffme requested guidance on several tickets that have stalled, that he is hoping will get picked up in time for the 6.6 release. Following the meeting, @jeffpaul scrubbed the list and pinged relevant core developers who might be able to review and provide feedback.

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.

Props to @mikachan for proofreading.

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

WordPress 6.6 release squad ready

This post is a follow-up to the WordPress 6.6 call for volunteers update.

Iโ€™m glad to announce the WordPress 6.6 release squad is ready and the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. and Documentation lead roles have been filled:

Big thanks to everybody who volunteered to the release squad or to mentor and support!


Thanks to @chanthaboune for reviewing this post.

#6-6 #planning

Summary, Dev Chat, May 8, 2024

Startย of the meeting 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/, facilitated by @joemcgill. ๐Ÿ”— Agenda post.

Announcements

Theย WordPress 6.6 roadmapย has been published.

WordPress 6.5.3 was releasedย on Tuesday, May 7. This minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. features 12 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. fixes in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and 9 bug fixes for the 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. You can review a summary of the maintenance updates in this release by readingย the Release Candidate announcement.

Gutenberg 18.3 was released on Wednesday, May 8. The release highlights include a full page client-side navigation experiment, negative values for margin controls, and adding a publish flow to the editor.

Forthcoming Releases

We are currently in theย WordPress 6.6 release cycle and 4 weeks away from 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. 1. The latest update on the release squad is detailed in this post and there are a few TBD roles for Core triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. and Docs leads. During the meeting, @OGlekler volunteered to be Core Triage Lead for 6.6. @priethor also followed up with a note to say:

  • Would the Core Triage role benefit from a second lead?
  • The Docs lead role is nearly ready too.

@jorbin confirmed that 6.5.3 came out on May 7. Thank you to everyone who helped. We now need to consider whether we should plan a 6.5.4. As of now, there is one potential 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. that is being investigated, so @jorbin suggested that we give it one to two weeks before making a decision. The 6.5.4 milestone has already been added in tracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

@annezazu noted that the only other feedback is around this:ย https://github.com/WordPress/gutenberg/issues/59511:ย Thereโ€™s been some feedback from an enterprise client as they can no longer change titles easily. The problem is thereโ€™s not an intermediate solution in the works and it will be resolved by 6.6 when the site editor pattern experience comes to classic themes. This will be discussed further in #6-5-release-leads.

Discussion

Here are a couple of follow-ups from previous meetings:

  • New slack channels:ย #core-interactivity-apiย was created to help folks working there better organize and collaborate.
  • 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/ commits:ย as a wayย to bring additional visibilityย to changes committed in the Gutenberg repo, weโ€™ve started an experiment to show commits to the trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". (PR merges) in theย #coreย channel.

We dedicated a lot of discussion time to the 6.6 roadmap and any updates about the major efforts listed on the Roadmap.

@afragen gave an update about Rollback Auto-Update: there have been zero reported issues with the PR. Weโ€™re currently just looking at making some of the comments a bit more descriptive. Hopefully Rollback Auto-Update will be committed in the next day or so.

@johnbillion raised #61173: if anyone wants to help with that workflow that would be great.

Open Floor

@azaozz requested for โ€œmore eyesโ€ and reviews onย https://github.com/WordPress/wordpress-develop/pull/6407#issuecomment-2101275000. This is a PR that properly fixes the infinite 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 as reported on #60652 (the current 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. just hides it, that PR removes the possibility for a loop to happen). It also fixes the possibility for 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. to completely remove the newย font_dirย 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. which is a pretty nasty thing to do and would break all other plugins that are using that filter.

@kkmuffme requested some final reviews on the following PRs:

@grantmkin also noted: @vcanalesย and I have started exploring โ€œcanonical block plugins,โ€ an idea to have more community developed blocks that are shipped as stand-alone block plugins, for blocks that arenโ€™t a fit in the default block library shipped with Gutenberg/WordPress. The primary issue is atย https://github.com/WordPress/gutenberg/issues/58773, in case youโ€™d like to learn more about, follow, discuss, or contribute to the effort. There will likely be a follow-up on make/core to get more feedback.

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.

Props to @joemcgill for proofreading.

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