Editor chat summary: May 10th, 2023

This post summarizes the weekly editor chat meeting (agenda for May 10th meeting) held on Wednesday, May 10 2023, 03:00 PM GMT+1 in Slack. Moderated by @fabiankaegy.

Gutenberg 15.8 RC1 was released right after the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. editor chat concluded.

A release candidate for WordPress 6.2.1 is available for testing.

Key project updates

Open Floor

@gigtux created two PRs for improving the preview of some theme level blocks. An overview issue to track this overall effort was also created: Improve the preview states for blocks that require entities

Reviews are welcome ๐Ÿ™‚

@paaljoachim shared two PRโ€™s that could use some additional testing:

@Hanzala would love to get some feedback on Fix toggle new tab does not persist changes to text input in Link Control, which looks at the UXUX User experience of the LinkControl component

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

Dev Chat Summary, May 10, 2023

The WordPress Developers Chat meeting took place on May 10, 2023 at 20:00 UTC in the core channel of Make WordPress Slack.

Key Links

Highlighted Posts

Hereโ€™s an overview of updates in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between May 1 and May 8, 2023:

  • 24 commits
  • 56 contributors
  • 46 tickets created
  • 9 tickets reopened
  • 49 tickets closed
  • and 5 new contributors in this period ๐ŸŽ‰ย Welcome!
  • Whatโ€™s new for developers? (May 2023): Check out this nifty guide to some of the latest WordPress updates, especially suited for extenders or contributors who would like to learn more about developing with WordPress.
  • WP Briefing: Episode 55: Happy Anniversary, WordPress!: Take a look back on the pastย 20 yearsย and how the open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. community has grown WordPress into what it is today.
  • Whatโ€™s new in Gutenberg 15.7? (03 May): This is of the best places to see whatโ€™s new in the 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., as well as whatโ€™s in store for the future of CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
  • @webcommsat shared: It is day two of theย โ€œ#WP20 From Blogs to Blocksโ€ campaign. We have had a request from #marketing to highlight this in #core and encourage more devs to take part too:ย https://github.com/WordPress/Marketing-Team/issues/220.

Release Updates

  • WordPress 6.2.1 RC1 is now available: Help test this first 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. candidate (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).) for 6.2 before next weekโ€™s final release. See the post for details on whatโ€™s been fixed, and watch theย #6-2-release-leadsย channel for additional updates.
  • And a reminder, for those who havenโ€™tย submitted feedbackย for theย WP 6.2 release retrospectiveย โ€” @priethor has noted that the original survey deadline has been extended, so please make sure to take this opportunity to help improve future releases!

Maintainers: Component Help Requests

@oglekler indicated a draft 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. was ready, and requested contributor involvement with #23348: Add a โ€œContributeโ€ tab to the about page. @audrasjb agreed with the proposed update, but had a question about some of the languages included in the language options. Olga clarified that those were included in mobile apps, but that clarity was needed to avoid this appearing as a mistake.

Open Floor

PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher 8.x Compatibility

@xavivars asked about PHP supported versions, and documentation surrounding it. He pointed out misconceptions that WordPress wouldnโ€™t work under PHP 8.x due to its โ€œbeta supportโ€ label, and has only upgraded his sites from PHP 7.4 recently due to this misunderstanding. He then posed these questions (paraphrased):

  1. How can the PHP versions documentation page better convey that WordPress does work under PHP 8.x without major issues?
  2. What are the tickets that can help move PHP 8.x support forward, and allow removal of 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. supportโ€ 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.)?
  3. Do others think this is a problem?

@oglekler related the numerous PHP notices encountered when trying out WooCommerce and PHP 8.2, noting that even if WordPress was almost ready, plugins and themes still posed a challenge. @azaozz agreed that Core functions pretty well up to 8.2, and that plugins were the main reason behind the lack of full support. @clorith added that while Core should not have fatal errors, that the deprecation notices it might throw would be indiscernible from plugin errors to most users.

@sergeybiryukov shared two relevant discussions from last month:

@joemcgill asked if the proposal mentioned in the second link was ever published, and if there was enough support to help make it happen. While not published yet, @hellofromtonya confirmed the post is still planned, and that support for the compatibility strategy has been positive. She also noted that lifting PHP 8.0โ€™s โ€œbeta supportโ€ label was a target for WordPress 6.3. @clorith suggested that the best place to continue discussion would be the #core-php channel.

@azaozz noted that the PHP Compatibility Checker plugin only supports up to PHP 7.4, and questioned if it could be upgraded to support newer PHP versions. @sergeybiryukov mentioned the relevance of the Tide project, and @jeffpaul confirmed that Tide powers the recently updated PHP Compatibility Checker plugin. He added, however, that Tide in turn relies on PHPCompatibilityWP, which does not yet support PHP 8.x, and shared a discussion link toward adding PHP 8.x support.

To help address @xavivarsโ€˜s second question, @ironprogrammer shared links to PHP 8 items in the 6.3 milestone:

@ironprogrammer also pointed at a related topic that might help move PHP support-related discussions forward: #57345: Bump the minimum required PHP version to 7.2. @webcommsat indicated a possible need for #marketing team support to facilitate this work, which was confirmed by @sereedmedia.

Update Error Messages

@pbiron raised the following ticket, #57999: Donโ€™t show error message when there is nothing to update, requesting patch testing and design feedback. He asked if the idea of the ticket was sound, and which of the proposed patches would be preferred.

@oglekler suggested adding screenshots for the proposed patches. @presskopp added screenshots of existing Core behavior, and @pbiron additionally requested before/after shots for each of the patches. @ironprogrammer also suggested pinging the #designย channel for awareness.

Screen Options and Help Panel Modernization

@oglekler asked for attention to be drawn to #21583: Improve discoverability and visual design of Screen Options and Help Panels, and remarked that modernizing these panels would also benefit 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).

@ironprogrammer referred to @joedolson previously suggesting some shared UI relevance between this ticket and WP Features Notifications, and asked if there had been any discussion about this. @oglekler asked how these were related. Brian provided the link to a recentย Notifications feature post, noting that the maintainers should be able to help answer questions. Joe further clarified that the Notifications feature is looking to add another panel in the same vicinity as Screen Options/Help, and called for holistic consideration of how each of these are implemented.

Before moving to the next item, @ironprogrammer pointed out that because Design Team time is often limited, addressing these related WP adminadmin (and super admin) UIUI User interface concerns at the same time could be a worthwhile collaboration.

โ€œRoll Backโ€ UI String

@kebbet requested feedback and 6.3 milestone consideration for ticket #58282: Change wording where `roll back` is used, asking if more user-friendly terms should be considered. There were several positive emoji reactions to the ticket, and @audrasjb swiftly added it to the 6.3 milestone.

Next Meeting

The next meeting will be on May 17, 2023 at 20:00 UTC.

Are you interested in helping draft Dev Chat summaries? Volunteer at the start of the next meeting on the #core Slack channel.

Props @audrasjb and @xavivars for peer review of this summary, and to everyone who participated in the Dev Chat.

#6-3, #6-2, #dev-chat, #meeting, #php-8-0, #summary

Developer blog meeting summary: May 4, 2023

Last monthโ€™s summary, for context.

@bph ran a lively meeting from a simple agenda (and a new continent!):
โ€ข Site updates and news
โ€ขย Project Board
ย ย ย ย โ—ฆ In the works
ย ย ย ย โ—ฆ Reviews needed
ย ย ย ย โ—ฆ To be approved
ย ย ย ย โ—ฆ New discussions on topics
โ€ขย Open Floor

Site updates and news

@bph has moved from Sarasota, FL, USA to her hometownโ€”Munich, Germanyโ€”after 25 years in the States.

More exciting than her big move was her news about the blogblog (versus network, site). Sheโ€™s been working with @dd32 on a few things:

Working on the blog adds goodies to your .org profile

Dion has installed WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/โ€™s WP Activity Notifier 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., which adds a post contribution to your WordPress.org profile activity list every time you publish a post, going forward. The contribution looks like this:

If you wrote an article between November and now, he has added the activity to your profile retroactively, by hand. Thanks, @dd32!

Letโ€™s build a Create Props 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.!

Since all the Make blogs are adding props for review, Dion has also started thinking about a Props block for posts and whatever else. If you have some time to make this real, he and Birgit have opened 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. ticketticket Created for both bug reports and feature development on the bug tracker. #6945 with their thoughts on how to get started.

Cross-publishing dev blog posts in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and dev-blog 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/ channels

Addressing a Dev chat conversation with @jeffpaul, Birgit and Dion have also made every new post on the dev blog auto-publish on the Core Slack as well as the #core-dev-blog Slack. So that should get even more eyes on the blog!

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/ organization for educational code

Birgit told the group that @psykro is working through a process that will make a GitHub organization for the faculty on the Training team and dev-blog authors to house code people can learn from. More on this when there is news to report โ€ฆ

New posts on the blog

From @greenshady come these:

@welcher published How webpack and WordPress packages interact.

Project status

These posts are in the works:

And these to-dos are approved:

@bph pointed out that some of those are delayed because of travel, or are waiting for a feature to land in a stable release of 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/, Core or a feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. Or, she added, because the writers donโ€™t yet have the bandwidth.

New topics

The group approved these new topics:

  1. Tutorial on building patterns and block styles with Details/Summary block
  2. How to manage block governance
  3. Adding custom color options for blocks
  4. Tutorial on style variations in theme.json
  5. How to add starter content to WordPress themes
  6. Make your siteโ€™s typography make a statement.
  7. Navigating the Block Editor Handbook
  8. Tutorial on building block-based templates in classic themes

@greenshady noted that a lot of those ideas are his, and heโ€™s happy to write any or all of them. The one post he is firmly committed to writing himself is the tutorial on the Details/Summary block.

The group spent a few minutes discussing what block governance really means in idea #2 and concluded that the post covers restricting access to specific block controls by user role so authors and editors on a WordPress siteโ€”maybe a publication or a corporate site, for instanceโ€”can edit content and visuals but can only use blocks that are styled to comply with their company brand standards.

@marybaum noted she can start the typography series in idea #6 this week with a plan for the posts and a draft of the first one.

Welcome Olga!

@bph welcomed @oglekler to the meeting and the editorial board. Recommended by @webcommsat (and highly seconded by your friendly neighborhood summary writer) Olga Glekler is a full-stack developer, component maintainer, and contributor to several Make teams over the years. The group gave her a rousing, emoji-filled welcome.

Open floor

@webcommsat suggested that whoever writes the agenda distribute links ahead of time so attendees can come prepared to discuss an idea at a deeper level come meeting time. Several folks thought that was a nice idea and then admitted they might not actually get around to reading the material in advance.

Birgit raised Olgaโ€™s post in the dev-blog Slack about software architecture and how to keep basic principles in mind as developers switch from language to language. The group concurred that a discussion of these concepts would be immensely valuable, as long as they stay firmly rooted in WordPress-relevant examples.

#core, #meeting, #summary, #core-dev-blog

Performance Chat Summary: 9 May 2023

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

Announcements

  • n/a

Priority Projects

Server Response Time

Link to roadmap projects

Contributors: @joemcgill @spacedmonkey @aristath

Database Optimization

Link to roadmap projects

Contributors: @aristath @spacedmonkey @olliejones @rjasdfiii

  • @spacedmonkey updates above
  • @olliejones Iโ€™ve been working on object cache instrumentation, no big results to report
  • @spacedmonkey There a project afoot to add a spec for getting object cache information https://github.com/rhubarbgroup/wp-object-cache-info-spec
    • @olliejones A new revision of this is coming soon, from me
    • @spacedmonkey Basically add aย wp_cache_infoย function to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and allow WP CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress., query monitor and other tools to understand the cache implementation

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 & CSSCSS Cascading Style Sheets.

Link to roadmap project

Contributors: @mukesh27 @10upsimon @adamsilverstein

  • One agenda item here today Discussion this week on CSP/async concerns inย https://github.com/WordPress/wordpress-develop/pull/4391
  • @westonruter I left some moreย feedbackย related to compatibility with Content-Security-Policy and the deferred inline scripts: the current implementation has a vulnerability related to CSP nonces, and it also blocks Strict CSP by requiringย โ€™unsafe-hashesโ€™ย due to theย onloadย attribute. I provided recommendations for how to address these issues and have beenย discussingย with @joemcgill
  • @joemcgill One of my questions about the CSP concerns you raised,ย @westonruter is whether this whole class of problem would be eliminated if we were to change the way we are approachingย asyncย dependencies, or if the problem exists withย deferย as well? For example, if we werenโ€™t concerned about maintaining loading order (because withย asyncย it shouldnโ€™t matter if the scripts are well constructed) then we wouldnโ€™t need to control loading inline scripts so they run after their dependencies.
  • @westonruter Yes, the problem with CSP nonces exists for deferred inline scripts forย deferย scripts as well
  • @joemcgill Ok, so Iโ€™ll need to double check whether it still makes sense for us to control the loading order there, and if so, then work on implementing one of your suggestions. Your explanation and research here has been really valuable, so thank you!
  • @westonruter If we eliminate special support for deferred inlineย afterย scripts forย asyncย scripts, then we can get rid of theย onloadย attribute and just useย addEventListener('load')ย in anย afterย script.
  • @flixos90 Being unfamiliar with โ€œit also blocks Strict CSP by requiringย โ€™unsafe-hashesโ€™ย due to theย onloadย attributeโ€ can you elaborate or share a link with how theย onloadย attribute causes a problem there?โ€
  • @westonruter sure, CSPโ€™s security model relies on nonces and hashes. For nonces, allย scriptย elements on a page should have aย nonceย attribute which matches aย nonceย value passed in theย Content-Security-Policyย response 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.. However, such nonces are not possible to be attached to event handler attributes, likeย onload
  • @flixos90 Your suggestion withย addEventListener('load')ย is problematic if it is wrapped around the inline script because it changes the scope of the code within. This was ruled out as an option early on in the design of this 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. because of that
  • @westonruter Actually not quite because the callback passed toย addEventListener('load')ย still just callsย wpLoadAfterScripts(handle) In the same way thatย onload="wpLoadAfterScripts(handle)"ย is now
  • @flixos90 Ah, so you mean WP core would handle that event listener on its own?
  • @westonruter Itโ€™s just that this change is not compatible withย asyncย scripts, but it does work forย deferย scripts
  • @flixos90 That is the part I donโ€™t understand, why wouldnโ€™t that work forย asyncย whereasย onloadย would?
  • @westonruter Becauseย asyncย scripts can load immediately before the rest of the document loads. Example:ย https://async-script-load-event-listener-test.glitch.me/?delay=500
  • @flixos90 I think the approach of the event listener is definitely preferable, asย deferย is more important to holistically support at this point, as it works in a simpler way with the current way core handles dependencies
    • That would mean we keepย deferย functioning like it does now, but will have to (continue to) rethinkย asyncย support, which I think is okay. Iโ€™d also like to throw out there a consideration of potentially only launching withย deferย in the first version of this
    • That would give us time to decouple theย asyncย exploration
  • @joemcgill Apart from getting into the weeds about how to best address the CSP issue, I do think itโ€™s worth a broader discussion about whether our current approach toย asyncย scripts is too conservative (mostly to try and help developers avoid loading errors with dependencies).
  • @joemcgill I think the concerns we based the current implementation from are valid, but maybe a bit heavy handed, so Iโ€™m open to us being less concerned with load order concerns if everyone is agreed.
  • @westonruter
  • My impression is thatย asyncย scripts are currently quite rare compared toย deferย scripts. Itโ€™s even rarer thatย asyncย scripts would depend on each other. But in the cases where they do have dependencies (e.g. AMP) then the loading order is handled in the scripts themselves, and not by source order in the page. Other cases of async scripts having dependencies, e.g. Google Analytics, itโ€™s also handled by the library and loading order doesnโ€™t matter
  • @flixos90 My concern with loosening that is around developer education. We would need to be very clear on what applyingย asyncย to a script implies. Core would handleย deferย to always work (make it blocking if needed), but forย asyncย it would indeed be on the 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. / theme developer if we loosen the current limits
  • @joemcgill I think that it would be a reasonable position to take, that if you are registering a script that isย asyncย or depends on anย asyncย script, then it is your responsibility to manage the load order concerns. But agree that dev ed would be important
  • @spacedmonkey FYI, 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/ will likely needed deferred scripts for Interactivity API runtime ( I guess is part of co-op editting ). Seeย https://github.com/WordPress/gutenberg/pull/49994
  • @westonruter Fortunately, there are ample educational materials out there for howย asyncย behaves. And devs should only use it if they know what they are doing.
    • @flixos90 Thatโ€™s what concerns meย 
  • @joemcgill Yep! But as this would be somewhat new for WP script enqueueing, we should support that with some WP-focused documentation as well.
  • @joemcgill Unless someone feel strongly that we should NOT make this the responsibility of the developer,ย @10upsimonย and I can work on updating the current approach to allow for a less strict implementation.
  • @flixos90 I think this still deserves more discussion, also with the other now additional consideration that inline scripts would also be responsibility of the developer
  • @westonruter Whatโ€™s certain is that while we would promoteย defer, we would need to be very clear in the docs thatย asyncย order is not predictable. So whileย deferย can often be applied to all scripts, this is definitely not the case forย async.
  • @joemcgill Happy to make it a future agenda item here. Weโ€™ll also be looking for feedback when we post on make core about the feature and can address it there as well.
  • @flixos90 But more importantly, what about decoupling this discussion? I suggested that above: I think weโ€™re all pretty clear what should happen withย defer, but we need to discussย asyncย more
  • @flixos90 Why not remove allย asyncย support from the current PR and keep that for an iteration? This allows us to iterate on what is already clear, and gives us time to approach the other problem separately
  • @joemcgill I think we should save that option for if we canโ€™t come to resolution in the next few weeks.
  • @flixos90 Thatโ€™s fair, though I want to make sure we donโ€™t come to early conclusions and eagerly update the PR with something that is then still being discussed
  • @flixos90 Itโ€™s clear that weโ€™re basically โ€œgoing back to the drawing boardโ€ withย async. So one could argue that topic is not yet ready for engineering. Having that discussion and providing related comments on the PR makes it more difficult for the folks working on the code to focus on the improvements to the PR that are clear
    • @joemcgill I disagree that weโ€™re going back to the drawing board, but am happy to pick this up async so we can move on with this conversation
    • @flixos90 We are changing the design of howย asyncย support works from how it was designed, thatโ€™s what I mean by that. Which of course is not a bad thing, but weโ€™re not ready to write code for that because of it still being discussed
    • @joemcgill Yeah, but it seems like a rather small change that will result in reducing the logic weโ€™ve implemented, not adding a lot more, so Iโ€™m not all that concerned as long as we get consensus on the correct approach.
  • @clarkeemily Iโ€™d like to suggest picking this up async, perhaps on the 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? We can also add an agenda item to revisit this time next week too if no conclusion is drawn on the GH issue? We have a few more project updates to go through, so we can circle back async

Images

Link to roadmap projects

Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill

  • @flixos90 Just a quick reminder that the Fetchpriority standalone plugin was published on Friday, the Fetchpriority standalone plugin was approved forย wordpress.org.ย Since we already have the infrastructure for it set up inย WordPress/performance, and since weโ€™ve already established that it works with the WebP Uploads standalone plugin, Iโ€™m going to go ahead and publish a first version now. Will share progress here

Measurement

Link to roadmap projects

Contributors: @adamsilverstein @olliejones @joemcgill @mukesh27

  • @joemcgill I plan to open a few tickets for some enhancements weโ€™d like to make to the automated performance tooling we added to core during the 6.2 milestone, but no immediate work happening there.

Ecosystem Tools

Link to roadmap projects

Contributors: @joegrainger

  • @joegrainer I have been away the past week so not much to update here from me but I will be working through the issues raised in the Plugin Checker Milestone 1 Review/QA. We have made some progress and closed a few of these out already. You can follow all progress on theย GitHub repoย here. Thanks!

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27 @10upsimon

Open Floor

  • @thelovekesh Since the performance plugin is expanding in terms of the number of classes, functions, 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. it contains, I believe it would be great to start documenting things so that plugin and theme developers may use them. We can start using the phpdocPHPDoc (docblock, inline docs)-parser to automatically create the necessary documentation from code comments when a release is made and the same can be deployedDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. to the GitHub pages site(https://wordpress.github.io/performance/) or toย WordPress.org.

Our next chat will be held on Tuesday, May 16, 2023 at 15:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Dev Chat agenda, May 10, 2023

(Updated 10 May 2023 with 6.2.1 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). post link)

The meeting takes place in the #core channel of the Make 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/ at 20:00 UTC.

Welcome and housekeeping

Announcements

Highlighted posts

A Week in Core, May 8, 2023 โ€“ thanks to @audrasjb

Changes onย TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.ย between May 1 and May 8, 2023:

  • 24 commits
  • 56 contributors
  • 46 tickets created
  • 9 tickets reopened
  • 49 tickets closed

and 5 new contributors in this period. Welcome!

WordPress 6.2.1 RC available to test

Help requests for tickets / components maintainers

Open floor

#agenda, #dev-chat, #meeting

A Week in Core โ€“ May 8, 2023

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 May 1 and May 8, 2023.

  • 24 commits
  • 56 contributors
  • 46 tickets created
  • 9 tickets reopened
  • 49 tickets closed

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

Build/Test Tools

  • Fix the permissions that are granted to the 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/ notifications workflow โ€“ #57865
  • Restrict the permissions granted to jobs on 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 โ€“ #57865

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

  • Add helper function wp_cache_set_last_changed โ€“ #57905

Code Modernization

  • Replace usage of strpos() with str_starts_with() โ€“ #58012

Coding Standards

  • Bring more consistency to PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher 8.0 string function polyfills โ€“ #57839
  • Remove unnecessary variable escapement in Bookmark Administration API โ€“ #58239

Docs

  • Correct and improve inline docsinline docs (phpdoc, docblock, xref) relating to the style engine โ€“ #57840
  • Correct the placement of @see tags in WP_HTML_Tag_Processor class โ€“ #58254
  • Corrections and improvements to docblocks for global styles, global settings, 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. parsing, and shortcodes โ€“ #57840
  • Improve formatting of markup in the docs for WP_HTML_Tag_Processor โ€“ #57840
  • Miscellaneous formatting corrections to inline docs and whitespace โ€“ #57840
  • Remove @return void from various DocBlocks โ€“ #57840
  • Update code examples formatting in WP_HTML_Tag_Processor documentation โ€“ #58028
  • Various improvements in Bookmark Administration API function descriptions, as per docblocks standards โ€“ #57840

Filesystem API

  • Correct and improve the return type documentation for the dirlist() method in WP_Filesystem_Base and its extending classes โ€“ #58229, #57840

General

  • Restore strpos() check in wp-admin/load-styles.php โ€“ #58244, #58012

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API

  • Accumulate shift for internal parsing pointer โ€“ #58179
  • Adjust coding style to pass 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/ linter โ€“ #58250
  • Restore mistakenly-removed content in documentation โ€“ #58256, #57840

Help/About

  • Left-align 6.2 about page subheading โ€“ #57387

Post Types

  • Add the view_items label to the wp_block post type โ€“ #58209

Script Loader

  • Update jQuery version to 3.6.4 to match the current version โ€“ #58203, #57324

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.

  • Remove redundant call to get_term in wp_queue_posts_for_term_meta_lazyload โ€“ #57966

Upgrade/Install

  • Create a temporary backup of plugins and themes before updating โ€“ #51857

Props

Thanks to the 56 people who contributed to WordPress Core on Trac last week: @costdev (5), @dmsnell (5), @johnbillion (5), @audrasjb (5), @sergeybiryukov (4), @mukesh27 (4), @desrosj (3), @TobiasBg (3), @spacedmonkey (3), @peterwilsoncc (2), @sabernhardt (2), @dd32 (2), @azaozz (2), @ayeshrajans (1), @mat-lipe (1), @ignatggeorgiev (1), @shagors (1), @johnjamesjacoby (1), @tillkruess (1), @amin7 (1), @pavanpatil1 (1), @szepeviktor (1), @jorbin (1), @nickpap (1), @dhrumilk (1), @flixos90 (1), @DigTek (1), @zieladam (1), @jrf (1), @utsav72640 (1), @lgadzhev (1), @thisisyeasin (1), @juanmaguitar (1), @davidbaumwald (1), @mikeschroder (1), @afragen (1), @pbiron (1), @hellofromTonya (1), @aristath (1), @TJNowell (1), @bronsonquick (1), @Clorith (1), @poena (1), @TimothyBlynJacobs (1), @a2hosting (1), @chaion07 (1), @KZeni (1), @galbaras (1), @richards1052 (1), @Boniu91 (1), @mai21 (1), @francina (1), @coffee2code (1), @noisysocks (1), @dlh (1), @joemcgill (1).

Congrats and welcome to our 5 new contributors of the week:ย @shagors, @nickpap, @DigTek, @lgadzhev, @thisisyeasinย โ™ฅ๏ธ

Core committers: @sergeybiryukov (7), @johnbillion (7), @audrasjb (5), @bernhard-reiter (2), @spacedmonkey (2), @afercia (1).

#6-3, #core, #week-in-core

WordPressย 6.2.1ย RC1 is now available

WordPressย 6.2.1ย Releaseย Candidateย 1 (RC1) is available for testing! Some ways you can help test thisย minorย release:

  • Use theย WordPress Beta Testerย 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.
    • As this is a minorย 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).ย release, select theย Pointย Releaseย channel and theย Nightliesย stream. This is the latest build including the RC and potentially any subsequent commits inย trunk.
  • Useย WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ย to test:
    wp core updateย https://wordpress.org/wordpress-6.2.1-RC1.zip
  • Directly download the Beta/RC version.

Whatโ€™s in thisย releaseย candidate?

6.2.1ย RC1 featuresย 19 fixes on Coreย as well asย 10 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.

The followingย coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.ย tickets fromย TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.ย are fixed:

  • #57387 โ€“ use aligncenter class in about page sub-heading
  • #57903 โ€“ Non-core blocks are not properly loading RTL stylesheets
  • #57918 โ€“ โ€œDeprecatedโ€ on the Appearance Menu page of the classic theme.
  • #57937 โ€“ Sync the SECURITY.md file with our HackerOne policy
  • #57994 โ€“ Coding Standards fixes for WP 6.2.1
  • 57996 โ€“ Change $search_columns type from array to string[].
  • #58007 โ€“ HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. 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.: Support comments created by invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. 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.) name in tag closers
  • #58028 โ€“ WP_HTML_Tag_Processor: Its reference in the Developer Resources is broken
  • #58051 โ€“ Attachment custom fields not rendered after upload
  • #58064 โ€“ In the comment_time function, the call to the get_comment_time function is incorrect.
  • #58069 โ€“ Performance of _wp_normalize_relative_css_links() can be increased >2x
  • #58096 โ€“ Incorrect color for โ€œTheme enabled.โ€ adminadmin (and super admin) notice
  • #58146 โ€“ HTML API: Ensure attribute updates happen only once for case variants
  • #58160 โ€“ HTML API: Fix case where updates are overlooked when seeking to earlier locations.
  • #58179 โ€“ HTML API: Accumulate shift for internal parsing pointer.
  • #58203 โ€“ jQuery version doesnโ€™t match
  • #58250 โ€“ HTML API: Adjust coding style to pass 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/ linter
  • #58254 โ€“ HTML API: Fix ordering issue in docblockdocblock (phpdoc, xref, inline docs) thatโ€™s breaking Developer Resources
  • #58274 โ€“ Update @wordpress packages for WordPress 6.2.1

The following block editor issues fromย 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/ย are fixed:

  • GH 49135 โ€“ 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.: Add context to labels related to CSSCSS Cascading Style Sheets. position properties
  • GH 49054 โ€“ Comments: Fix โ€˜sprintf requires more than 1 paramsโ€™ error
  • GH 49861 โ€“ Fix the site editor loading in multi-site installs
  • GH 49881 โ€“ Fix quick inserter going off-screen in some situations
  • GH 49685 โ€“ Site Editor: Decode the site title properly
  • GH 48210 โ€“ Firefox: fix input rules (ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org async state issue)
  • GH 49703 โ€“ Only show alignment info when parent layout is constrained
  • GH 49450 โ€“ [Inserter]: Fixย onHoverย error on patterns tab in mobile
  • GH 49364 โ€“ Fix site editor redirection after creating new template or template part
  • GH 49675 โ€“ Site Editor: fix the โ€˜back to Dashboardโ€™ links labelling

Whatโ€™s next?

The developer-reviewed workflow (doubleย committerย sign-off) is now in effect when making changes to the 6.2ย 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"..

The finalย releaseย is expected on Tuesday, May 16th, 2023 (see the release planning). Please note that this date can change depending on possible issues after RC1 isย released. Coordination will happen in theย WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ย 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/ย #6-2-release-leadsย channel.

A special thanks to everyone who helped test, raised issues, and helped to fix tickets. With thisย releaseย candidate, testing continues, so please help test!

The WordPressย 6.2.1ย releaseย is led by @audrasjb, @mamaduka and @sergeybiryukov.

Thanks @costdev and @francina for proofreading.

#6-2, #6-2-1, #minor-releases, #releases

Performance Chat Agenda: 9 May 2023

Here is the agenda for this weekโ€™s performance team meeting scheduled for May 9, 2023 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: May 9th 2023

Facilitator and notetaker: @fabiankaegy

This is the agenda for the weeklyย editor chatย scheduled forย Wednesday, May 9th 2023 at 16:00 CESTย The 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/.

  • Announcements
  • Project updates
  • Task Coordination
  • Open Floor โ€“ extended edition.

If you are not able toย attendย the meeting, you are encouraged to share anything relevant for 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.

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

Whatโ€™s new in Gutenberg 15.7? (03 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 Site Editor project (formerly called Full Site Editing)

What's new in Gutenberg 15.7 cover image

Gutenberg 15.7 ย has been released and is available for download!

For the latest release of the 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., contributors continued improvements to existing UIUI User interface and UXUX User experience for content creators, site owners working on their own site, or theme developers creating new themes. Users will find small changes for streamlined workflows, fixed bugs, and refined responsiveness, just to name a few. The release includes 142 PRs by 62 contributors, of which 8 merged their first contributions. Congratulations to all.

Table of contents

Site Logo replacement via the 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.

Site Logo update image workflow in sidebar

To continue the quest of streamlining creator workflows, the Site Logo 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. now offers a direct way to replace the logo in the sidebar for the block. It might seem like a minor feature, but managing a siteโ€™s branding identity warrants an easy and intuitive process. (49992)

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. controls in block sidebar

Duotone / filter in the sidebar

Speaking of streamlining workflows:ย  Duotone is a fascinating feature for the block editor. The controls for using the preset filters or creating custom filters were hidden via the Block Toolbar. Now all controls are available with the style settings in the sidebar and allow designers and content creators easier access. (49838)

Fluid Typography scales giant fonts to small screens

Fluid typography scaled

While fluid typography arrived with WordPress 6.0, users and designers had problems with large custom fonts. The previous fluid calculation didnโ€™t scale down enough for smaller screens. In this Gutenberg plugin release, a more refined handling of fluid typography arrived using the logarithmic scale factor to calculate a minimum font size for smaller screens. With reliable scaling calculations, designers have more typographical freedom and can better rely on the built-in responsiveness of their designs. (49707)

Other Notable Highlights

Images that have custom borders assigned show those borders also in their placeholder, for instance, in archive post templates. That way, a site owner has an indicator of what colors are involved, and it makes it less haphazard when selecting featured images for their posts. (49569)ย 

Also, the Top toolbar behavior received some refinements that received mixed comments from contributors. Itโ€™ll be interesting to learn how site owners and content creators feel about these changes. (49634).ย 

Patterns show up in a masonry layout in a new full-screen modal that also received some refinement. (49958, 49894).ย The List View experienced some important refactoring to improve 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) for assistive technologies. (48461)

Changelog

Enhancements

Block Library

  • Group: Add allowedBlocks attribute and pass it to innerBlockProps. (49128)
  • Media & Text: Add allowedBlocks attribute and pass it to innerBlock. (49981)
  • Site Logo: Add logo replace flow in Inspector controls. (49992)

Global Styles

  • Fluid typography: Use logarithmic scale factor to calculate a min font size. (49707)
  • Style book: Make the style book slot generic. (49973)
  • Base Styles: Add the editor input reset with increased specificity. (49831)

Components

  • Draggable: Allow elementId based elements to be attached to the ownerDocument body. (49911)
  • Spinner: Enforce no background. (49695)
  • Updates the behavior of the top toolbar fixed setting. (49634)

Design Tools

  • Image: Display custom borders on placeholder. (49569)
  • Patterns: Try a masonry layout on the template pattern suggestion modal. (49958)

Duotone

  • Duotone: Add block controls on the inspector. (49838)
  • Duotone: Fix setup state for image block. (49949)
  • Polish duotone rendering code. (49706)
  • Deprecate remaining global duotone functions. (49702)
  • Group duotone outputs and refactor rendering. (49705)

Accessibility

  • List view: Refactor ARIA attributes. (48461)
  • Block Mover: Make text labels for left/right move buttons legible. (49747)
  • Block Toolbar: Fix incorrect switcher button width in text mode. (49847)
  • Snackbar: Fix insufficient color contrast on hover. (49682)
  • Update Reakit dep to 1.3.11. (49763)
  • List View: Add aria-description. (49907)

Bug Fixes

Block Library

  • Cover block: Remove overflow hidden rule. (49913)
  • Fix BlockInfo slot displaying logic. (50054)
  • Fix block toolbar height and rounded corners of parent selector button when text label mode. (49556)
  • Demo content cover block alignment not respected. (49848)
  • Group block: Remove innerprops from placeholder wrapper. (49783)
  • Only display the modified post date if the post has been modified. (46839)
  • 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.: Fix crash at runtime when postType is undefined. (49899)
  • 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.: Fix some sizing issues. (49641)
  • Adjust copy of Site Logo Block. (49540)
  • Adapt flex child controls for Spacer. (49362)
  • Social Icon: Update the link and mail block variationโ€™s icons. (49952)

Components

  • CheckboxControl: Add support custom IDs. (49977)
  • Equalize modal internal padding. (49890)
  • Increase modal radius. (49870)
  • Query: Fix add new post link position via private SlotFill. (49819)
  • Tweak WordPressComponent type. (49960)
  • Update the framer motion dependency to the latest version. (49822)
  • Improve output of CHANGELOG CI check. (49779)
  • Retain context when opening modals on small screens. (50039)
  • Update CHANGELOG CI check to support forked repos. (49906)

Global Styles

  • Borders: Fix border style on color/width clearing and global styles fallback logic. (49738)
  • Borders: Maintain radius in Global Styles. (49950)
  • Close stylebook if the global styles side bar is not open. (50081)
  • Do not add unregistered style variations to the 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. schema. (49807)
  • Update preset styles to use Selectors 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.. (49427)
  • Change the โ€˜WP_Theme_JSON_Data_Gutenbergโ€™ class directory. (50062)

Site Editor

  • Fix screen flash when deleting templates in templates list. (48449)
  • Fix the condition for the modal to choose the initial template pattern. (49954)
  • Fix editor crash caused by missing type conversion in EditorStyles component. (49882)
  • Remove frame shadow in edit view. (49767)
  • Add home to list of new templates. (47389)
  • Animate the site icon element between view and edit in the site editor. (48886)
  • Restore click event handler on site icon button. (50094)
  • Correctly return โ€˜isResolvingโ€™ from โ€˜useAlternativeTemplatePartsโ€™ hook. (49921)

Patterns

  • Increase dimensions of the pattern modal that appears when creating a new page. (49859)
  • Update full screen modal dimensions, and pattern grids. (49894)
  • Increase pattern modal dimensions when creating a new template. (49722)

List View

  • Add parameters to custom-scrollbars-on-hover. (49892)
  • Update with scrolling and custom scrollbar. (49793)
  • Ensure list view block id is unique to the list view instance. (49944)

Block Editor

  • Fix quick inserter going off-screen in some situations. (49881)
  • List View: Update drop indicator width to be aware of scroll containers. (49786)
  • Block highlight: Fix radius issue. (49864)
  • DOM: Update getScrollContainer to be aware of horizontal scroll. (49787)
  • Fix fixed block toolbar positioning. (49990)
  • 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.: Add enqueue_block_assets. (49655)
  • Rename immutableSet to setImmutably. (50040)
  • Edit Post: Hide overflowing content in visual editor wrapper to prevent block popovers from creating scrollbars. (49978)

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/

  • Replace fallbacks to fallback (singular) in Nav fallback REST endpoint. (50044)
  • Consolidate Navigation fallbacks logic between Editor and Front of Site via REST API. (48698)
  • Add /revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. endpoint for global styles. (49974)

Build Tooling

  • Fix multiple tooltips showing on NavigableToolbars. (49644)
  • Add โ€“env-cwd Option To wp-env run. (49908) โ€“ Add Port To WP_TESTS_DOMAIN. (49883)
  • Add support in check-license for conjunctive (AND) licenses. (46801)

Performance

Continued the work refactor away from Lodash usages to reduce the build size
49799, 49794, 49755

Experiments

  • Allow adding posts and pages with custom titles from the command menu. (49893)
  • Update the design of the command center. (49681)

Documentation

  • Adds closing code tags. (49991)
  • Add โ€œblock-selectorsโ€ documentation to TOC and manifest. (49471)
  • Adds note about custom fields to Plugin Sidebar page in documentation. (49622)
  • Autocomplete: Add heading and fix type for onReplace in README. (49798)
  • Document the separation between private APIs and experimental APIs. (47973)
  • Fix broken link and update title of Localizing Gutenberg doc. (49851)
  • Fixes broken img link. (49805)
  • Need to use WordPress package for useState. (49478)
  • Remove unused screenshot from documentation folder. (49896)
  • Small grammar fixes for block-context.md. (49701)
  • Update IS_GUTENBERG_PLUGIN to process.env.IS_GUTENBERG_PLUGIN in coding guidelines. (49825)
  • Fixes typo in README. (49957)
  • Update README.md. (49762)
  • Update README.md. (49855)
  • Update outreach.md. (49961)
  • Update wp-env prereq documentation. (50004)
  • Formatting inside alert div. (50090)

Theme.json

  • Add documentation for variations key in theme.json. (49826)
  • Update theme.json reference documentation to include more sections. (48250)

Gutenberg Plugin release

  • Update the Gutenberg release issue template to reflect the new Gutenberg release team. (50037)
  • Update Gutenberg release documentation to include the new Gutenberg Release Team. (50036)
  • Fix broken link and minor tweaks to formatting and verbiage in the Gutenberg Release Process doc. (49876)
  • Update release checklist. (50068)

Block Development

  • Improve the learning experience for writing blocks. (49792)
  • Re-write of the landing page. (49643)
  • Improve insertBlock(s) documentation. (50078)
  • Small Typo: Remove dots. (49853)

Code Quality

  • Fix PrivateInserter import. (50038)
  • Remove the normalizeFalsyValue util. (50033)
  • Donโ€™t programmatically lowercase post type label. (49591)
  • Port colord to PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher. (49700)
  • Reuse cleanEmptyObject utility and fix empty string case. (49750)
  • toStyles: Donโ€™t mutate the tree argument. (49806)
  • useInstanceId: Fix useMemo hook dependencies. (49979)

Tools

Testing

  • Components: Update ColorPicker unit tests. (49698)
  • Migrate CPT end-to-end tests to Playwright. (50031)
  • Fonts API: Add tests for gutenberg_add_registered_fonts_to_theme_json(). (50049)
  • Expand multi-line block tests. (49732)
  • Rich text test helpers mimic user events. (49804)
  • Fix editor canvas detaching error in end-to-end tests. (49374)

Build Tooling

  • Add script which checks published types for non-checked JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. packages. (49736)
  • Docgen: Fix issue where function token canโ€™t be found. (49812)
  • Publish build types for notices. (49650)
  • Publish types for plugins package. (49649)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshawย @adamzielย @ajlendeย @alexstineย @andrewserongย @annzielย @auroobaย @bduretteย @bphย @carolinanย @chad1008ย @chintu51ย @courtneyr-devย @dcalhounย  @derekblankย  @draganescuย  @ellatrixย  @fluiddotย @gaamboย @geriuxย @getdaveย @gigituxย @guaraniย @gvgvgvijayanย @gzioloย @hellofromtonyaย @jameskosterย @jasmussenย @jeryjย @jhnstnย @jsnajdrย @juanmaguitarย @kevin940726ย @m0hanrajย @MaggieCabreraย @MahendraBishnoi29ย @Mamadukaย @masteradhocย @mburridgeย @mcsfย @mikachanย @mirkaย @mokagioย @mtiasย @ndiegoย @noahtallenย @ntsekourasย @oandregalย @ObliviousHarmonyย @priethorย @ramonjdย @scruffianย @SiobhyBย @Soeanย @sque89ย @t-hamanoย @talldanย @tellthemachinesย @tyrann0usย @tyxlaย @Wtowerย @youknowriadย @zzap


Props to @priethor @annezazu @nickdiego for review

#gutenberg-new