WordPress core posts Archive • Yoast's WP core blog https://yoast.com/wordpress-core/blog/ SEO for everyone Fri, 26 Apr 2024 11:31:26 +0000 en-US hourly 1 https://wordpress.org/?v=6.5.2 https://yoast.com/app/uploads/2015/09/cropped-Yoast_Favicon_512x512-32x32.png WordPress core posts Archive • Yoast's WP core blog https://yoast.com/wordpress-core/blog/ 32 32 A month with the WordPress Core team โ€“ April 2024 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-april-2024/ https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-april-2024/#respond Fri, 26 Apr 2024 11:31:24 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3749421 In April, WordPress released version 6.5 and 6.5.2. The team also attended Yoast Contributor Day online. In our monthly update, Andrea talks about the Roma WordPress Meetup, and Sergey describes how we are working together to improve unit tests. Our monthly updates Sergey WordPress 6.5 On April 2, after five months of development, WordPress 6.5 […]

The post A month with the WordPress Core team โ€“ April 2024 appeared first on Yoast.

]]>
In April, WordPress released version 6.5 and 6.5.2. The team also attended Yoast Contributor Day online. In our monthly update, Andrea talks about the Roma WordPress Meetup, and Sergey describes how we are working together to improve unit tests.

Our monthly updates

Sergey

WordPress 6.5

On April 2, after five months of development, WordPress 6.5 โ€œReginaโ€ was released. Thanks to the work of more than 700 contributors from over 50 countries, it includes hundreds of enhancements and bug fixes, including better accessibility and many performance improvements. Congrats everyone! ๐ŸŽ‰

On the day of the release, some of the Core and Meta tasks I helped with included:

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Major Versions.

WordPress 6.5.2

On April 15, I participated in the release party for WordPress 6.5.2. This is a maintenance and security release that features 2 bug fixes on Core, 12 bug fixes for the Block Editor, and 1 security fix.

If you’d like to learn more about the release process, the steps are documented in the WordPress Core handbook: Releasing Minor Versions.

WordPress 6.6

I made fifty-two commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

In our weekly mob coding sessions with Carolina and Andrea, with valuable guidance from Juliette, we started looking into reorganizing the WordPress core unit test suite for compatibility with newer PHPUnit versions, specifically existing test classes into multiple files and removing method-level @covers tags in favor of class-level @covers tags to allow for supporting PHPUnit 11 attributes instead of annotations. See ticket #53010 for more details.

Some other notable changes include:

  • Continuing with various coding standards fixes in core. See ticket #60700 for more details.
  • Upgrading WPCS to version 3.1.0. See ticket #60840 for more details.
  • Investigating an issue with some external HTTP tests and backporting the fixes to all supported branches. See ticket #60865 for more details.

Andrea

In the last month, I kept focusing mostly on the WordPress editor to fix accessibility issues and improve the user interface consistency. Some important features in the editor still have room for improvements and, sometimes, they are still unpolished and not working as expected. The ContrastChecker feature, for example, is supposed to warn users when a certain color combination of text and background color is not accessible but it’s still largely buggy. In the same way, another important feature like keyboard shortcuts for changing the heading levels is still only partially implemented for only some blocks. As usual, I created a series of issues for my findings and submitted a few pull requests to solve some issues.

My other tasks as Roma WordPress Meetup co-organizer and facilitator of the Accessibility team Office Hours proceed steadily. Participation to the local meetup is increasing and the attendees are proactive when it comes to interaction and networking. In the next meetup, we will experiment a new way to host the speaker remotely by setting up a videocall for the speaker presentation and connect with che WordPress community from Costa Rica.

Carolina

Core and Gutenberg

I have continued to work on the bundled theme tickets and on my open Gutenberg pull requests. I am trying to pick up some new Gutenberg issues that are much smaller and easier for me to solve. I have also reported new Gutenberg issues and helped moved bug reports from Trac to the Gutenberg GitHub repository.

Yoast Contributor day

On the contributor day, I had planned for the themes table to do a Trac ticket triage. I briefly introduced Trac, and we went through the list of tickets and picked a ticket to test together. I received feedback from the attendees that it is too difficult to set up a local copy of WordPress and download a patch to test it. I wanted us to work on the Trac ticket list because there are many open tickets: But I don’t think this format works well for a contributor day. I also think that the documentation needs to be improved. I wish I had made it clearer to all attendees that they were encouraged to speak up and ask questions if they got stuck, and not wait until the end of the day.

After lunch, the table discussed how to set up local WordPress installations to test a theme patch across multiple WordPress versions. Alain Schlesser helped by showing how to use wp-cli to download different versions of WordPress and then set up symlinks to a shared wp-content/themes folder.

We discussed how the Default Theme task force can work together to reduce the number of open Trac tickets. There are several issues that affect more than one theme, for example bugs with font sizes and colors. To document how to solve these issues consistently, we asked the WordPress Meta team to open a new GitHub repository that we can use as an issue tracker.

The post A month with the WordPress Core team โ€“ April 2024 appeared first on Yoast.

]]>
https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-april-2024/feed/ 0
A month with the WordPress core team โ€“ March 2024 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-march-2024/ Tue, 02 Apr 2024 18:57:27 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3722554 In March there were many discussions about WordPress 6.5 and how to resolve problems with the Font Library.Eventually, the release was postponed until April 2. Read more in the announcement post for WordPress 6.5.At the beginning of the month, Sergey also joined team Yoast and Bluehost at WordCamp Asia. Checkout this recap of the event. […]

The post A month with the WordPress core team โ€“ March 2024 appeared first on Yoast.

]]>
In March there were many discussions about WordPress 6.5 and how to resolve problems with the Font Library.
Eventually, the release was postponed until April 2. Read more in the announcement post for WordPress 6.5.
At the beginning of the month, Sergey also joined team Yoast and Bluehost at WordCamp Asia. Checkout this recap of the event.

Luckily, you don’t have to wait until your next WordCamp to attend a contributor day. Yoast Contributor day 2024 โ€“ April edition, takes place on April 18, only two weeks away. This is an online event that is open for everyone, and we will be using Zoom. There will be tables for contributing to โ€‹#Core#Documentation#Polyglots#Sustainability#Themes, #Photo#WP-Cli.
You can signup below:

Our monthly updates

Carolina

I continue to divide my time between WordPress core, Gutenberg, and the bundled themes. Before a major release there is usually an overlap, since issues need to be solved in both Gutenberg and WordPress core. I have monitored new Trac tickets and Gutenberg issues related to WordPress 6.5, and helped with testing.
I was sick the week before the release, and I am grateful to the documentation leads that followed up on the changelogs for the bundled themes when I was unavailable.

Gutenberg

Gutenberg 18.0 finally includes the option to use the featured image in the Media & Text block. This was not an easy task for me. I have been working on this on and off since June 2023, and I am glad it is merged. There is still a known issue with the alt text.

I want to mention that work has started on allowing negative margins on blocks. I opened the issue for this back in 2021 and I get daily requests for this feature. You can follow the early explorations here.

Bundled themes

Tammie Lister has done a great job kicking off communications around the bundled theme task force. There are plans to post regular updates and to hold ticket triage sessions on the WordPress Slack. Not least, she has closed a number of bundled theme Trac tickets. I hope to catch up after the WordPress 6.5 release. There are currently 356 open issues in the Bundled Theme component.

Core tests

I have continued to learn more about PHPUnit tests and helped prepare existing tests by making them compatible with future versions of PHPUnit. The team has had coding sessions where we have focused on this work. I feel that it is important for me to continue doing this on a weekly basis, or I will forget how to work with the tests.

Andrea

In the last month, I continued focusing mostly on the WordPress editor to fix accessibility issues and improve the user interface consistency. In my research and testing I found out that even some commonly used editor blocks have usability and accessibility issues that still need to be addressed. The Social Icons block, for example, has room for improvements and it is still in a state I’d define not ideal. Other features in the editor have fundamental usability and accessibility issues like, for example, the block variations and the ‘transform block to’ feature. I collected my findings in a series of GitHub issues and submitted some pull requests fo fix some of them.

Besides development, my other tasks as Roma WordPress Meetup co-organizer and delegated person to run the Accessibility team Office Hours proceed steadily. Participation to the local meetup is increasing and our fellow attendees are pretty proactive when it comes to interaction and networking. In the next meetup, we will experiment a new way to host the speaker remotely by setting up a videocall for the speaker presentation, preserving the ability for all attendees to interact and ask questions.

Sergey

WordCamp Asia

In early March, I attended WordCamp Asia 2024 in Taipei. This was my first visit to Asia.

WordCamp Asia is one of the flagship events of the year in the WordPress space, each time held in a different country so that the attendees could get more familiar with other cultures. To me, it feels like a family reunion. I enjoyed catching up with old friends, making some new connections, watching a few interesting talks, and learning more about Taiwan.

On the contributor day, I helped leading the Core Performance table. The goal of a contributor day is to help people find their way around one or more teams making WordPress, and answer their questions so they could get started with contributing. By the end of the day, we made some progress with the Performance Lab plugin and triaged some tickets with the performance focus on Core Trac.

I am very grateful for this opportunity to reunite with the WordPress community in person.

WordPress 6.5

For the past two months I continued triaging and reviewing tickets for the next major release, WordPress 6.5, and started looking into some early tickets for WordPress 6.6, as part of my duties as a Core Committer.

I made thirty-four commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with various coding standards fixes in core. See ticket #60700 for more details.
  • Continuing with various documentation fixes in core. See ticket #60699 for more details.

The post A month with the WordPress core team โ€“ March 2024 appeared first on Yoast.

]]>
A month with the WordPress core team โ€“ February 2024 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-february-2024/ Thu, 29 Feb 2024 09:23:27 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3698853 In February the team worked on various tasks including coding standards and accessibility fixes. In the past month, WordPress released beta 1, 2, and 3 of version 6.5. The next update is the first release candidate for 6.5, planned for March 4 2024. Our monthly updates Sergey WordPress 6.5 For the past two months I […]

The post A month with the WordPress core team โ€“ February 2024 appeared first on Yoast.

]]>
In February the team worked on various tasks including coding standards and accessibility fixes. In the past month, WordPress released beta 1, 2, and 3 of version 6.5. The next update is the first release candidate for 6.5, planned for March 4 2024.

Our monthly updates

Sergey

WordPress 6.5

For the past two months I continued triaging and reviewing tickets for the next major release, WordPress 6.5, as part of my duties as a Core Committer.

I made thirty-nine commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Updating PHPCS to version 3.8.1. See ticket #60279 for more details.
  • Reducing usage of assertEquals() in favor of assertSame() in unit tests. See ticket #59655 for more details.
  • Continuing with various coding standards fixes in core. See ticket #59650 for more details.

Carolina

Core & themes

As part of the release squad for 6.5, I have triaged new bug reports, worked on patches, and made decisions about postponing tickets to future releases. Most of all I have tested bugs and enhancements.

To make testing easier, I created a new XML file for the Theme Test Data repository. The new file contains blocks with different settings, and no “classic” content. Then I used the file as a way to generate content for basic visual regression testing with Playwright. I plan to improve the tests over time as I learn more about Playwright and the existing WordPress testing tools.

I helped move the bundled theme changelogs from the WordPress Codex to new documentation articles. Stephen Bernhardt did most of the work and I just copy pasted ๐Ÿ˜€. I also refreshed some of the existing theme documentation pages to replace broken links and images.

Evaluating the theme wrangler role in the release squad

We are less than a month away from the release of WordPress 6.5, and I want to start evaluating my role in the release squad.
TLDR: I think it is important to keep the bundled themes up to date. It is beneficial for the person who is working on the bundled themes to stay informed about the active discussions about a release. But I’m not sure if or in what way the role is beneficial for the squad. I think that wether this role should be part of the squad or not, should depend on if there are major changes planned for themes.

Difficulties with implementing new features in the same release as they are introduced

One of the responsibilities for the theme wrangler is implementing features that are added in the current release. In reality, the bundled themes will always be at least one release behind. Because there is not enough information early on, and not enough time for implementation and testing before the feature freeze and code freeze.

Guarantee that all default themes fully support any new features added in the current release (as deemed appropriate)

Core Handbook

I think it’s important for one or more people to dedicate time and effort to ensure that the bundled themes are compatible with new editor features. This means that they need to be informed of changes that affect themes. And I think we as contributors can do better here.

  • It can be difficult to learn about editor changes early enough to take action
    • If a change that effects themes is not announced until a Dev note is published, it is too late for the people working on the themes to implement changes.
    • This could be improved with better communication and better labelling of editor issues in the Gutenberg GitHub repository.
  • Changes are merged into core late in the beta releases
    • If a change that effects themes is merged late, it can also be too late for the people working on the themes to implement changes.
    • This could be improved by merging changes earlier.

Reflecting over classic themes and block settings

I have been focused on block themes for the past few years. And I have learnt that making block settings work with the classic bundled themes is very time consuming. A bundled theme is required to be backwards compatible, and some of them support versions below 5.0. Over the years there has been changes to the blocks and the editor that has lead to two types of issues:

  • Either the block settings do not work because of the theme’s CSS, or;
  • The themes design breaks because of the block’s CSS and block settings.

When you create a bug fix, it needs to be tested across multiple WordPress versions to ensure that there are no (or not too many!) unexpected changes for the theme users.

There are a couple of things that we could do in Gutenberg to make this process easier. And that is to use class names for the block supports and avoid adding inline styles to the style attributes.
These are changes that have been proposed for years, but I want to remain hopeful that it can be improved.

Andrea

As usual, in the last month I’ve been focusing on testing, reporting, and attempting to fix accessibility issues in the WordPress admin and editor interface. Besides specific accessibility fixes, it appears there is an emerging trend of increased user interface inconsistencies across the editor that, in my opinion, don’t help the editor be perceived from users as an easy to use tool.
Historically, one of the WordPress’s strength has always been ease of use. However, the WordPress 2023 Annual Survey highlighted a pretty significant drop of the users feeling regarding the user interface. In 2022 32% of users cited ease of use as one of the three best things about WordPress. In 2023 that number dropped to 21.7%. I do believe all WordPress contributors should really focus on this data and start a collective effort to improve the editor user interface. On my side, I’ll try to focus more and more on this in the next future hoping to make things better and improve the general perception of the WordPress editor.

The post A month with the WordPress core team โ€“ February 2024 appeared first on Yoast.

]]>
A month with the WordPress core team โ€“ January 2024 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-january-2024/ Thu, 25 Jan 2024 11:23:59 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3668527 This month we continue to work on the WordPress 6.5 release. We are now three weeks away from Beta 1.Andrea has helped improve the accessibility of some of the major new features, including the Font Library. Sergey has focused on triage and core commits, while Carolina has worked on tickets in the bundled theme component. […]

The post A month with the WordPress core team โ€“ January 2024 appeared first on Yoast.

]]>
This month we continue to work on the WordPress 6.5 release. We are now three weeks away from Beta 1.
Andrea has helped improve the accessibility of some of the major new features, including the Font Library. Sergey has focused on triage and core commits, while Carolina has worked on tickets in the bundled theme component.

Our monthly updates

Andrea

In the last couple months I’ve been focusing as usual on accessibility issues, mainly regarding the WordPress Gutenberg editor. As always, testing the user interface with keyboard and assistive technology takes great part of my time, together with investigating issues and debugging. I’ve also had the opportunity to propose fixes to some of the issues I reported in a series of pull requests. It’s interesting to note that in the last months, based on testing and research, a few main recurring issues emerged. One of them is about unlabeled controls (buttons, links, etc. that have no textual content or other labeling). While the root problem is certainly lack of education and expertise, I’m more and more convinced that the editor base components are part of the problem. In fact, some components are open to misuse, as their labeling is not enforced via code. I proposed to review the labeling mechanism and make it depend on a required prop for the relevant React components used in the editor. The related discussion is ongoing and hopefully will see some consensus. One more recurring issue in the editor user interface is about keyboard focus losses triggered by focusable controls that are dynamically disabled while they are focused. It appears many contributors lack the necessary expertise and do not test enough to prevent these focus losses, which are a terrible experience for keyboard users. I do believe the editor should enforce best practices via code also in this case and prevent disabling on the fly focused controls. I did propose a potential approach for a solution of this issue, which is under discussion. Lastly, I’ve been focusing on a series of visual and functional inconsistencies that I do believe contribute to make the editor be perceived as an unpolished, confusing, user interface. Consistency and predictability are key for better usability and accessibility.

Besides coding, my other activities as Roma WordPress Meetup co-organizer and delegated person to run the Accessibility team Office Hours are going pretty well. Participation to the local meetup is slowly but steadily increasing. New initiatives and plans are in the works. The accessibility office hours are now a recognized, fixed, appointment in the WordPress Slack even though participation can still improve.

Sergey

WordPress 6.5

For the past two months I continued triaging and reviewing tickets for the next major release, WordPress 6.5, as part of my duties as a Core Committer.

I made seventy-two commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Add a Plugins link to the admin bar menu. See ticket #40683 for more details.
  • Updating the PHPMailer library to version 6.8.1. See ticket #59966 for more details.

Carolina

Gutenberg

Besides triage and testing I have worked on addressing feedback on my Gutenberg pull requests. This includes adding a featured image option to the media and text block, a filter for the next and previous post links, and a border option for the site logo block. I had a few “allow me to hide in the corner” moments the past week as I repeatedly forgot to test my changes in the Site Editor. It happens when you are working on so many different things at once. These enhancements are not planned for WordPress 6.5 and they have a low priority.

WordPress Core

In mid January I was asked if I wanted to be part of the WordPress 6.5 release squad. As part of the squad, I will help with enhancements and bug fixes related to the bundled themes (The bundled themes are the Twenty-series, such as Twenty Twenty-Three and Twenty Twenty-Four).
Currently there are 426 open tickets in the bundled theme component, and 22 of them are in the 6.5 milestone. Nine bundled theme tickets in the milestone are already fixed. I am looking forward to seeing what can be accomplished in the scope of this release.

  • One of the first things I did together with the leads for Twenty Twenty-Four was to research and move the remaining open issues from the theme’s GitHub repository to Trac. The GitHub repository is archived and new issues should be opened on Trac.
  • I have a deliberate focus on changes to the editor that may affect the themes. For example, there are changes to the global styles CSS that require careful and continuous testing. The implementation changes repeatedly because it is actively being worked on, so it has proven a bit difficult.
  • WordPress 6.5 finally brings the optional “Appearance tools” theme support to classic themes. It enables options that have only been available in block themes. Including the minimum height setting and the background image for group blocks.
    There are no plans right now to enable this for the classic bundled themes in WordPress 6.5, because there is not enough time to test it. But I am hoping that explorations of how to enable it without causing breaking changes will start soon.

The post A month with the WordPress core team โ€“ January 2024 appeared first on Yoast.

]]>
A month with the WordPress core team โ€“ November 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-november-2023/ Thu, 23 Nov 2023 13:44:34 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3612904 In November we saw the release of WordPress 6.4 and also the minor security and maintenance release, 6.4.1. You can read about the release in this blog post: WordPress 6.4: A more intuitive building experience. The team is already working on 6.5 and planning for 2024. We are also hoping to get more bug fixes […]

The post A month with the WordPress core team โ€“ November 2023 appeared first on Yoast.

]]>
In November we saw the release of WordPress 6.4 and also the minor security and maintenance release, 6.4.1. You can read about the release in this blog post: WordPress 6.4: A more intuitive building experience. The team is already working on 6.5 and planning for 2024. We are also hoping to get more bug fixes into a potential 6.4.2 release.
In December, this blog will take a break for the holidays, and will be back in 2024.

November was Ari’s last month with the team. We wish him all the best and good luck on his next adventure. Thank you for your time with us, Ari!

Our monthly updates

Andrea

With the WordPress 6.4 release happening on November 7th, I spent the first part of the last month helping refining new features with a special focus on accessibility. The Image block ‘lightbox’ required some pretty extensive polishing and improvements to be ready for the release. It was an interesting case, as this is one of the first components of the WordPress editor that renders a mini user interface on the front end. Users can interact with the lightbox interface to enlarge an image and we made sure the user experience is as accessible as possible. This is only the first version of the lightbox, further improvements are already planned in a dedicated GitHub issue on the Gutenberg GitHub repository. See #55513. Another interesting last-minute refinement was about the theme patterns files caching mechanism. It was first introduced in trunk by leveraging transients with no expiration date, which are also auto-loaded. Concerns were raised with this first implementation, as transients aren’t easily clearable which can lead to errors if these files are renamed, edited, or moved via FTP for example or by any other means that is not a standard theme’s update flow. For now, to address these concerns, the implementation was wisely revised by limiting caching to only the environments that use an object cache, by using wp_cache_set() instead of transients. See the core Trac ticket #59633 and the related changeset.

As usual, I spent much part of my time testing accessibility issues and reporting them on the Gutenberg GitHub repository. I also had the opportunity to finalize some accessibility fixes and propose a few new pull requests.

On the community side, the Accessibility Office Hours meetings proceed regularly, although the participation level is still varying and could be improved. My recent involvement with the Roma WordPress meetup is more and more giving me opportunities to get in touch with the local community. It’s a great opportunity for me to get some better understanding of what the most important user needs are.

Carolina

After 6.4 was released, I spent some time updating the education material, plugins, and example block themes that I maintain. I also helped with the temporary increase in support questions that are common after a major release.

Core

I have continued to focus on bug fixes and ticket triage for bundled themes. Most of these problems are related to the theme CSS conflicting with the CSS for the WordPress blocks.

Gutenberg

I have continued to work on my open pull requests, addressing feedback from reviewers and solving merge conflicts. This includes: adding border support to the site logo block, typography support to the file block, featured image in the media & text block, and support for custom CSS for elements in theme.json. These Gutenberg pull requests have had some progress but are not merged yet. I have started working on some other issues that have been on my to-do list. A label for the categories block, an alt text option for the site logo block, and changing the position of the patterns tab in the block inserter.

Sergey

WordPress 6.5

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.5, as part of my duties as a Core Committer.

I made forty-two commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Bumping the recommended MySQL version in readme.html. See ticket #59701 for more details.
  • Replacing tabindex example in submit button functions documentation. See ticket #59768 for more details.

The post A month with the WordPress core team โ€“ November 2023 appeared first on Yoast.

]]>
A month with the WordPress core team โ€“ October 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-october-2023/ Thu, 19 Oct 2023 10:41:26 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3586549 In October the team has participated in the Yoast contributor day and continued to work towards the WordPress 6.3.2 and 6.4 releases. A security & maintenance release was published on October 12, and the first release candidate for WordPress 6.4 was published on October 17. Our monthly updates Andrea With the approaching of the WordPress […]

The post A month with the WordPress core team โ€“ October 2023 appeared first on Yoast.

]]>
In October the team has participated in the Yoast contributor day and continued to work towards the WordPress 6.3.2 and 6.4 releases. A security & maintenance release was published on October 12, and the first release candidate for WordPress 6.4 was published on October 17.

Our monthly updates

Andrea

With the approaching of the WordPress 6.4 release, scheduled for November 7th, I’ve been dedicating my last weeks to testing accessibility of the new features introduced in WordPress, most notably the ones that add new user interfaces. Amongst them, the Image Lightbox is one of the most important ones and it offered room for improvements and fixes. The Lightbox is a setting of the WordPress editor Image block that makes an Image block show an ‘enlarged’ version of the image within a modal dialog. It’s probably the first time the editor adds an user interface on the front end that requires some advanced accessibility treatment. There have been quite a few findings and issues discovered in the initial implementation, all reported in a series of GitHub issues together with other issues. I had the opportunity to propose some Pull Requests to solve some of these issues, while other ones have been solved by other contributors. Overall, it has been a good opportunity for collaboration.

The Accessibility Office Hours meetings proceed steadily, although active participation is still improving. In the meantime, I had the opportunity to get more involved in the WordPress community in Roma, as I’m now a co-organizer of the Roma WordPress meetup. I’m very glad for this new task as I’ll have the chance to get in touch with many other users and contributors, listen to their needs and struggles, and get a better sense of how the WordPress users actually use our beloved publishing platform.

Ari

As we’re getting closer and closer to the WordPress 6.4 release, I spent a lot of time doing code reviews. But that’s not all! This past month I also focused on the following projects:

  • Performance improvement: Reduced the use of the _wp_array_get –ย #5244
  • Twenty Twenty-Four theme: Performance improvements in the way block styles get loaded, and some more code reviews there
  • PHP autoloader: I continued working on this feature – which I believe is very important for the longevity of WP long-term. I updated the implementation for WordPress 6.4 and everything is once again up to date (#3470).
  • Forms blocks: After more than a year of development, we finally managed to merge this feature! You can see the pull-request in ย #44214 and can start testing it by enabling the feature in the Gutenberg-experiments screen.
  • Allow using CSS level 4 viewport-relative units: A rather small (but important nonetheless) tweak. This will allow theme-developers to use the newest CSS units (#54415)

Carolina

As the temperature grows colder (We are expecting the first snow in Stockholm today), I have not been able to escape the dreaded sinus infections, so I have not worked a full month.

  • During the Yoast contributor day I led the core table and the participants worked on both core and Gutenberg issues and on the Twenty Twenty-Four theme.
  • For Twenty Twenty-Four I have worked on bug fixes and completed an accessibility-ready review. The review was made over Zoom with two other participants but was not recorded. The accessibility problems that I found have since been solved.

Core & Gutenberg

I have continued to focus on issues related to 6.4 and my Gutenberg pull requests. I am starting to think about what I want to focus on for the next WordPress release.

The theme developer handbook

I have not had time to focus on the handbook, but I bring good news. A new chapter has been published, and you can read it here: Global Settings and Styles (theme.json).

Sergey

WordPress 6.4

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.4, as part of my duties as a Core Committer.

I made forty-seven commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Adding /login.php as an alias for the login page. See ticket #40762 for more details.
  • Disabling attachment pages for new installations. See ticket #57913 for more details.
  • Allowing Quick Edit to be disabled for custom post types or taxonomies. See ticket #16502 for more details.
  • Reducing the use of the _wp_array_get() function to improve performance. See ticket #59405 for more details.
  • Upgrading WPCS in core to version 3.0.0. See ticket #59161 for more details.

The post A month with the WordPress core team โ€“ October 2023 appeared first on Yoast.

]]>
A month with the WordPress core team โ€“ August & September 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-august-september-2023/ Thu, 21 Sep 2023 12:18:02 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3557555 WordPress released version 6.3 at the beginning of August. You can read more about what is new in this article: WordPress 6.3: A more intuitive way of working on your site. The team is dividing their time between working on the upcoming WordPress 6.4 release, new features for the Gutenberg plugin, accessibility improvements, and the […]

The post A month with the WordPress core team โ€“ August & September 2023 appeared first on Yoast.

]]>
WordPress released version 6.3 at the beginning of August. You can read more about what is new in this article: WordPress 6.3: A more intuitive way of working on your site. The team is dividing their time between working on the upcoming WordPress 6.4 release, new features for the Gutenberg plugin, accessibility improvements, and the next default theme.

Yoast Contributor day 2023 โ€“ October edition

On October 4 2023 Yoast will host a contributor day and we hope that you will join us. Yoast Contributor day isย open to everyoneย who wants to contribute to WordPress. Learn more and signup.

Our monthly updates

Sergey

WordPress 6.3

On August 8, after four months of development, WordPress 6.3 โ€œLionelโ€ was released. Thanks to the work of more than 650 contributors from over 50 countries, it includes hundreds of enhancements and bug fixes, including better accessibility and many performance improvements. Congrats everyone! ๐ŸŽ‰

For the past month I continued helping with WordPress 6.3 release tasks and started looking into some early tickets for WordPress 6.4, as part of my duties as a Core Committer. I also led a meeting for new core contributors, and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

On the day of the release, some of the Core and Meta tasks I helped with included:

  • Updating the Credits API
  • Updating the Roadmap, History, and some other documentation pages on WordPress.org
  • Running tests, enabling updates, etc.

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Major Versions.

WordPress 6.4

I made fifty-five commits to WordPress core, mostly various bug fixes and enhancements.

In our weekly mob coding sessions with Ari, Carolina, and Andrea, we continued working on resolving the remaining coding standards issues in WordPress core, starting with always using strict comparison in PHP files and updating database queries to use wpdb::prepare() . See PR 3873 and PR 4922 for more details.

Some other notable changes include:

  • Continuing with various coding standards fixes in core. See ticket #58831 for more details.
  • Enabling running the tests on PHP 8.3. See ticket #59231 for more details.
  • Preparing for WPCS 3.0.0 update. See ticket #59161 for more details.
  • Correcting the Site Health check for disk space available to safely perform updates. See ticket #59116 for more details.
  • Updating PHPUnit Polyfills to version 1.1.0. See ticket #59150 for more details.
  • Updating the PHPMailer library to version 6.8.1. See ticket #59238 for more details.

Andrea

I had my holidays on August, so my tasks have moved slowly in this period. On September, besides researching and reporting new Gutenberg accessibility issues, I had the opportunity to finalize my proposal to establish Accessibility Office Hours in the WordPress Slack.

The Accessibility Office Hours

As agreed with the WordPress accessibility team and Yoast, I will dedicate part of my time to run a new weekly meeting in the WordPress Slack. The accessibility Office Hours will be hold every Wednesday at 14:00 UTC, starting on September 20th.

Why a new meeting

Itโ€™s difficult to find opportunities to discuss general accessibility principles and best practices in depth. Accessibility team meetings mainly focus on issues that emerge during the release cycle and bug scrubs focus on specific Trac tickets or GitHub issues. The accessibility office hours is a space meant to be a learning opportunity for everyone. Itโ€™s a space where everyone can help everyone improve their accessibility knowledge.

Though this is a meeting focused on accessibility, everyone is welcome, so please read the kick-off post on Make WordPress, drop in and say hello! Feel free to contribute discussion points and participate actively.

In the accessibility team thereโ€™s not much prior experience about the best way to hold this kind of meeting. This is an opportunity to get participants involved in a meta project to set the best way to structure these sessions. All are welcome to join and propose ways we can organize topics to prioritize them in the most efficient way. All participants contribution will also be key to discuss whether and how to collect the outcome of the meetings discussions in a series of documented, shared, best practices.

Carolina

At the end of August I attended the WordPress Community Summit and WordCamp US outside Washington, DC. After that I have mostly worked on the next default theme; more about that below.

The Community Summit

The community summit is a two-day in-person discussion event for contributors to the WordPress project. People are invited based on applications, and topic submission is open to everyone. Discussions or “sessions” are held in small groups so that everyone can participate. The summit has a non-attribution guideline and aims to be a safe space encouraging open and inclusive discussions. It is important to know that no decisions are made at the summit. That means the sessions are not recorded, but notes are taken and published on WordPress.org so everyone can read what was discussed and leave comments.
I will not go into details about the discussions instead, you can read all the notes from the summit on WordPress.org. Please participate by leaving comments.

My key takeaways from the summit are that our community is full of brilliant, passionate, and kind people. The summit is an important event for the project where we can brainstorm about the future, reflect, share experiences, listen, and learn from each other. As always, I would have liked to see more action points. More proposals for how we can improve how we work together and improve WordPress. I am looking forward to seeing what will come out of the discussions.

WordCamp US

WordCamp US 2023 Included one contributor day and two conference days. During the contributor day, I was at the Themes table and we started working on the next default theme, Twenty Twenty-Four. We were three table leads, and had lots of extra help; I want to especially thank Daisy Olsen, who helped new contributors.
During the conference days, I attended talks and one workshop. I met with friends and colleagues and spoke with people in the community that I admire and appreciate but had not met in person before. I had interesting conversations with agency employees, freelancers, and users about Yoast products, full site editing, and the future of WordPress. Of course, there were also work-related discussions about the day-to-day work on Gutenberg. On the last day, I was in the Yoast booth for the first time. It was a soft introduction because it was not so busy in the so-called “sponsors area”. I very much enjoyed the pride event and the social event.

Comparing WordCamp US and WordCamp Europe

I have attended several WordCamp Europe events, but this was my first time at WordCamp US. It was also my first time traveling to the US since 2002. I had heard that WordCamp US is different from WordCamp Europe, and I agree.
At WordCamp Europe in Athens, I was overwhelmed by the amount of people who wanted to talk to me, and while I appreciated all the discussions, I am not used to people wanting to take selfies with me, and it was hectic and stressful. With that experience in mind, I had braced myself for a similar experience at WordCamp US, and I was nervous about how to avoid burnout. But I found WordCamp US to be much more relaxed. I was well-fed every day and got enough sleep and time for myself, which is important. At this event, we were only a small group from Yoast and Bluehost, and I really appreciated the company and all the help from my colleagues, not least when I ran into problems with my hotel room.

Twenty Twenty-Four

The design for the next default theme Twenty Twenty-Four was approved just before the contributor day at WordCamp US, and we started working on creating and updating block patterns and templates at the event.
Twenty Twenty-Four is a new block theme that will be included in the WordPress 6.4 release. You can help out by testing the theme, reporting issues and by submitting pull requests. There are also weekly meetings held on Wednesdays at 17:00 CEST.
Development will first happen on GitHub (link below). The theme will be moved to the Trac ticket system closer to release, so that it can be tested as part of the WordPress beta and release candidates.

Introducing Twenty Twenty-Four
Meeting notes
View the design in Figma
GitHub repository

Gutenberg & Core

I have focused on theme-related enhancements and bug fixes for 6.4, and on Twenty Twenty-Four. For Gutenberg, I have continued to work on enhancements for the media & text block and the text orientation feature. I have also tried to engage more contributors to help with reviewing the problems with the excerpt block and the excerpt length setting, but still need to follow up on that.
This has meant that I have not had time to help with reviewing the updates to the Theme Developer Handbook, but hopefully, that will change once the 6.4 beta is released.

Ari

Style Engine

We introduced the Style Engine WordPress last year. Since then, it has dramatically improved the developer experience. However, it still needs to be used more widely in WordPress, so I’ve been trying to implement it in other places as well (like, for example, global styles). This is a big project, but it will allow us to generate more optimized CSS.

Form block

I continued working on the form & input blocks (#44214).

  • I Completely refactored the email method for form submissions.
  • I added a notification system for form submissions. Users can now add their messages for form-submission success and failures. The system is hookable so that plugins can change the notices and behavior for more advanced scenarios.
  • I added a Privacy/GDPR form. This form hooks in the WordPress privacy actions and allows users to request an export of their data or the deletion of their account. 
  • It is now possible to add `hidden` inputs in forms.

SQLite

This project is moving very slowly, but there is progress. At this stage, we need to resolve some edge cases and polish the SQL translation layer between MySQL and SQLite.

PHP Autoloader

The PHP autoloader is practically ready for WordPress Core. However, due to the constant changes and other improvements in Core, we must keep maintaining the pull request, updating it to stay in sync with the rest of the codebase. This way, merging will be more effortless when the time is right (#3470).

Other tasks

  • I am daily doing code reviews in Gutenberg to help move the project forward faster.
  • Updated Gutenberg to use WPCS 3.0 (#53866)
  • It is now possible for button blocks to use a <button> element (#54206). This change will allow us to use the button element in forms and make it easier for authors to create more semantically correct markup when a button element is required.
  • Performance improvement: Reduce the use of the `_wp_array_get` function (#51116). In the following days, I will backport these changes to WordPress Core to include them in the next 6.4 release. 
  • Continued work on a blocks-registration issue in WordPress-Core (#56865)

The post A month with the WordPress core team โ€“ August & September 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ July 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-july-2023/ Thu, 27 Jul 2023 22:57:18 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3518083 As WordPress 6.3 enters the release candidate stage, weโ€™re putting some finishing touches on it and continue working on some long-standing projects. Read on to learn what weโ€™ve been up to for the past month! Our monthly updates Andrea In the last month, with the WordPress 6.3 release approaching, testing of new features and user […]

The post A month with the WordPress Core team โ€“ July 2023 appeared first on Yoast.

]]>
As WordPress 6.3 enters the release candidate stage, weโ€™re putting some finishing touches on it and continue working on some long-standing projects. Read on to learn what weโ€™ve been up to for the past month!

Our monthly updates

Andrea

In the last month, with the WordPress 6.3 release approaching, testing of new features and user interfaces has been more intensive. Actually, using a software in Beta phase that precedes the release is an effective way to discover small bugs and unpolished features that need to be fixed. Using the software as a normal user would do can surface glitches and bugs that went unnoticed during development and review.

Thanks to this in depth testing phase, I reported a long series of issues mainly related to the Gutenberg editor. A couple of them were pretty interesting from an accessibility perspective: some input fields received focus by the means of the autofocus attribute. It is worth reminding that using autofocus is generally considered not the best choice, as users may find themselves dumped in the middle of a form, potentially without context. Particularly relevant from this point of view: #52601 and #52605.

I spent some time submitting some pull requests to fix some of these issues and thanks also to the prompt intervent of other contributors most of these issues have been solved.

Ari

Since we are very close to a major WordPress release (v6.3), I spent most of my time doing code reviews and facilitating the process for others. It’s not glorified work, but it still is essential and time-consuming to ensure the project’s health.

Besides that, I continued working on some long-standing projects:

  • Gutenberg and WP-Core performance improvements
  • Introduce experiments forms and input blocks (#44214)
  • Code quality improvements in WP-Core and Gutenberg
  • Introduce a PHP autoloader in WordPress Core to reduce memory usage.
  • Add support for SQLite in WordPress Core

Carolina

The past month I have done a lot of manual testing of WordPress version 6.3. I have reports new bugs, reviewed pull requests and patches, and I have worked on bundled theme trac tickets. I have also started helping out with the 6.3 end user documentation and reviewed upcoming changes to the Theme Developer Handbook.

In the Gutenberg GitHub repository I focused on issues and pull requests related to 6.3, and worked on my other open pull requests. Six pull requests for the new patterns sidebar in the Site Editor were merged. Next, I plan to continue enhancing the text-orientation feature.

I also opened a new discussion: Add theme type to the issue template? Because I am finding it difficult to reproduce or troubleshoot theme issues when the reporter does not mention if they are using a block theme, hybrid, or classic theme.

Sergey

WordPress 6.3

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.3, as part of my duties as a Core Committer.

I made eighty-two commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Adding a โ€œGet Involvedโ€ tab to the About page. This aims to make all the various ways of contributing to open-source WordPress project more discoverable, as well as make it easier to find an area that aligns with new contributorโ€™s skills and interests. See ticket #23348 for more details.
  • Adding a sustainability focus to Core Trac. See ticket #meta7039 for more details.
  • Continuing with various coding standards fixes in core. See ticket #57839 for more details.
  • Using str_starts_with(), str_ends_with(), and str_contains() PHP functions where appropriate in core. See tickets #58012, #58206, and #58220 for more details.

The post A month with the WordPress Core team โ€“ July 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ May & June 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-may-june-2023/ Thu, 22 Jun 2023 11:02:13 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3483826 In May, the team continued working on enhancements and bug fixes for WordPress 6.3, and Sergey co-led the 6.2.1 minor release. In June, we traveled to Athens, Greece, to attend WordCamp Europe (WCEU) together with Bluehost and YITH. The event had over 2500 attendees, and our booths were popular. This year’s theme at the Yoast […]

The post A month with the WordPress Core team โ€“ May & June 2023 appeared first on Yoast.

]]>
In May, the team continued working on enhancements and bug fixes for WordPress 6.3, and Sergey co-led the 6.2.1 minor release. In June, we traveled to Athens, Greece, to attend WordCamp Europe (WCEU) together with Bluehost and YITH. The event had over 2500 attendees, and our booths were popular. This year’s theme at the Yoast booth was sustainability and reducing your carbon footprint.

Our monthly updates

Andrea

Core and Gutenberg

During May and June, I focused mostly on accessibility related issues, as usual. With the new WordPress release approaching, it’s very important to test new features and new user interfaces as much as possible. My testing sessions surfaced also some long standing accessibility issues. I made my best to report all my findings in a pretty long series of GitHub issues. That was a very time-consuming task. Little time left for pushing actual fixes but I was able to make a few Gutenberg pull requests anyways.

On the last days of June I had the opportunity to focus on making a small debugging plugin to dump to the browser console the WordPress a11y speak messages. Speak is a small utility tool that allows to easily announce dynamic interface updates to screen readers by using ARIA live regions. It’s widely used in WordPress core and in the editor. However, many contributors aren’t that aware of this tool. Also, many contributors aren’t that familiar with testing with a screen reader, which makes checking the Speak audible messages a task for specialists only, so far. The main goal of the plugin is to make testing the Speak messages a breeze, as they just appear in the browser console. I’m planning to publish this plugin on GitHub soon and later propose to include it by default in WordPress trunk as a built-in debugging tool.

WordCamp Europe

On early June I attended WordCamp Europe 2023 in Athens. It was my first WordCamp Europe in 4 years. It was such a pleasure to meet in person with the entire Yoast team WordPress for the first time. Also meeting with so many new Yoasters was a pleasure. At the conference I enjoyed meeting again with so many old friends and fellow core committers. Getting to know new people and establishing new connections was a joy as well. Four years without getting in touch with the largest European community was a very long break and Athens will always have a special place in my heart because it was a true rebirth.

At the contributor day, I had the pleasure to have a good conversation with Lena Morita and George Mamadashvili. We focused on exploring ideas and options to implement visual regressions testing on CI on GitHub. In WordPress core, Gutenberg, and the Gutenberg storybook there’s already some different flavours of visual regression testing tools. So far, they’re meant for local testing only. Instead, we do believe that introducing automated visual regression testing on CI is paramount for making sure that some aspects of the WordPress user interface don’t regress. In fact, there are features that can only be reliably tested visually. Hopefully, we will have some more news to share soon.

Ari

Adding a language attribute for inline text

In May we added a new feature to allow users to define the language of inline text in Gutenberg (see #49985 and #50632). This will be a good improvement to improve the accessibility of multilingual content creation.

SQLite

I continued working on the SQLite project: The project will no longer be a part of the performance-lab plugin, so we needed to decouple it and write upgrade routines in the standalone plugin. This resulted in the release of two updates to the plugin.

Forms & Inputs blocks

I made some progress in the forms & input blocks: It is now possible to use this as a native comment form in WordPress, so that brings us one step closer to having a final implementation (#44214)

Performance

While doing some performance profiling I noticed that the _wp_array_get function gets called too many times and consumes a lot of resources, so I tried to improve the performance of that function (#58376), as well as reduce the number of times it gets called (#51116).

Generic

I pushed some coding-standards fixes and generic code-quality improvements in Gutenberg. As always, a big chunk of my time dedicated to doing code reviews and facilitating the work of others.

WordCamp Europe

What an experience… WordCamp Europe is always a pleasure. Lots of people and excitement, many discussions and meeting friends – old and new. The event was amazing and I can’t wait for next year!

Carolina

In May, I spent time preparing for my WCEU Workshop, including some speaker training arranged by the WordCamp organizers.

Gutenberg

Here are some of the things I have worked on in the past month:

WordCamp Europe

I loved meeting old friends and making new acquaintances during the WordCamp. I met some amazing people for the first time and also had many opportunities to introduce other WordPress contributors and extenders to one another. It was also the first time I attended a speaker/sponsor/volunteer social at WordCamp Europe. I have restocked my wardrobe with some new T-shirts and socks from other sponsors. I lost count of how many people approached me to thank me for the fullsiteediting.com site, which I appreciated โค (I also appreciated the more quiet upstairs area and the silent rooms at the venue…).

Contributor day

During the contributor day, I was one of the leads for the Theme’s table. I am very glad that Maggie Cabrera wanted to co-lead with me and that we had additional support from Ben Dwyer. We had two tables that grew to three because there were not enough seats for everyone, and it was hectic. We worked on a block theme called Blue Note, which is part of the community themes initiative started by Maggie. The attendees paired up to work on separate issues, for example, to create the archive page, 404, or single post templates. Together we made seven pull requests for the theme and theme-related Gutenberg issues. I believe the attendees who stayed until the afternoon gained a good understanding of the challenges when transforming a design into a block template.

Workshop

On the last day of the WordCamp, I facilitated a no-code workshop on the topic “Create a theme using the Site Editor โ€“ Without coding!”
This was my first time doing a workshop at this scale, and everyone who knows me knows that this was a very big step and a personal achievement because public speaking is not easy for me.
I was confident in my content, but 30 minutes before the workshop, I was waiting in the so-called “green room,” and my voice still hadn’t warmed up. With Sjรถgren’s syndrome, my voice can become harsh, and right then, I could barely make myself heard.
Thankfully another speaker was there and could help me warm up my voice and help me calm down by engaging in conversations; Suddenly, it was my time to go to Workshop Room 1, and I was not panicking anymore. Thank you, Luigi.
During the workshop, the room was about half full (out of 100 seats). I forgot some things, and I showed some WordPress features in the wrong order compared to how I had prepared, but overall I think it went OK. I don’t know if the attendees actually created a whole new block theme – but I know that several people came up to thank me afterward and were excited about what they had learned.

The workshop was recorded and will be on WordPress.tv when it has been processed.
A written step-by-step guide on how to create a theme without coding, links to the required WordPress plugins, and an example theme are available at wordcamp.fullsiteediting.com

Sergey

WordPress 6.2.1

I was a co-lead for WordPress 6.2.1. This is a security release that features 20 bug fixes in core, 10 bug fixes for the block editor, and several security fixes. All versions since WordPress 4.1 have also been updated.

WordPress 6.3

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.3, as part of my duties as a Core Committer.

I made seventy-one commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Create a temporary backup of plugins and themes before updating. See ticket #51857 for more details.
  • Continuing with various coding standards fixes in core. See ticket #57839 for more details.
  • Replacing usage of strpos() in core with str_starts_with(). See ticket #58012 for more details.
  • Improving performance of the _wp_array_get() function. See ticket #58376 for more details.
  • Updating the jQuery library to version 3.7.0. See ticket #58083 for more details.

WordCamp Europe

In early June, I attended WordCamp Europe 2023 in Athens. This was my first WordCamp in four years, after WordCamp Thessaloniki 2019.

WordCamp Europe is one of the flagship events of the year in the WordPress space, each time held in a different country so that the attendees could get more familiar with other cultures. To me, it feels like a family reunion. I enjoyed catching up with old friends, making some new connections, attending a tai chi session, watching a few interesting talks, and learning more about Greece.

On the contributor day, I helped leading the Core table. The goal of a contributor day is to help people find their way around one or more teams making WordPress, and answer their questions so they could get started with contributing. By the end of the day, we created a new sustainability focus on Core Trac, which already has some tickets.

The day after the WordCamp, I enjoyed the views from Mount Lycabettus, found a mini zoo at the Athens National Garden, watched the sunset from the Areopagus Hill, and had a nice dinner at one of the many cafรฉs with Greek food around the Acropolis area.

The journey was a bit long (about 36 hours one way, same for the return journey) due to the wait time between multiple connections and different types of transport. But I am still very grateful for this opportunity to reunite with the WordPress community in person.

The post A month with the WordPress Core team โ€“ May & June 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ April 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-april-2023/ Thu, 11 May 2023 10:55:23 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3457055 In April, we started working on WordPress 6.3 by refining some of our long-running projects such as the SQLite database proposal, among other things. Read on to learn more! Our monthly updates Carolina Documentation I spent the beginning of the month working on the WordPress 6.2 end-user documentation, updating and creating new articles. Most of […]

The post A month with the WordPress Core team โ€“ April 2023 appeared first on Yoast.

]]>
In April, we started working on WordPress 6.3 by refining some of our long-running projects such as the SQLite database proposal, among other things. Read on to learn more!

Our monthly updates

Carolina

Documentation

I spent the beginning of the month working on the WordPress 6.2 end-user documentation, updating and creating new articles. Most of the updates I worked on have now been published. I also attended meetings and participated in discussions about the Block editor handbook and the Theme developer handbook.

Gutenberg and Core

In April, I participated in a contributor day with the rest of the team, where we explored a way to create and save block patterns directly in the WordPress admin area.
For Gutenberg, I continued doing triage and troubleshooting reported issues and worked on the following:

  • Re-adding the heading options (typography, color) to text-based blocks in the Styles sidebar in the Site Editor
  • Adding support for custom CSS for block style variations and elements using theme.json
  • Proof of concept for a playlist block
  • Rebasing and solving merge conflicts in my older pull requests that are awaiting review

Andrea

In the last month, I mostly focused, as usual, on some accessibility issues in Gutenberg and submitted a few pull requests. Most of the newly discovered issues and regressions surface recurring patterns with a lack of basic accessibility, keyboard interaction, inconsistent UI, and erroneous usage of accessible components. Looking at the big picture, it appears the Gutenberg project would greatly benefit from a big effort in documentation and training. WordCamp Europe is approaching, which will be an excellent opportunity to have some productive conversations.

Apart from that, I had the pleasure to return back to committing a small change in WordPress core, where a missing post type label caused the editor to use some improper labeling for the Reusable block.

Ari

April was a pleasantly busy month. Among other things, in many countries, it was Easter, so we had a few days off to relax and recharge our batteries.

Yoast hackathon

On April 5, we had a Yoast Hackathon, and the results were amazing! Our group consisted ofย @mykola,ย @janw-me,ย @hdvos,ย @rolf-yoast,ย @enricobattocchi,ย @aristath,ย @carolinan,ย @SergeyBiryukov,ย @mhkuuย andย @afercia. We worked on building a user interface to allow users to create and edit patterns in the editor. The results of this collaboration can be seen onย #49607, and I can’t wait to see this move forward.

Fonts API

Word on the Fonts-API continues in WordPress Core, led byย Tonya Mork. We started working on this API almost two years ago, and with the leadership of Tonya, a lot of progress has been made. An early version of the API became part of WordPress last year, and now we are polishing it, extending it, and getting it ready for a bright future.

Frontend performance

Improving the front-end performance of WordPress is a never-ending battle. There are constantly things we can improve, and this month I was figuring out ways to reduce the amount of CSS added to the front-end of a site by applying some rudimental tree-shaking.ย 

SQLite

Work on the SQLite continues at a fast pace! In April, we pushed a lot of fixes and published aย post on the make.w.org blog with a status update. The post received many comments and feedback, so we keep moving forward.

Accessibility improvements

During our weekly mob-coding sessions, we usually collaborate on issues each one of us has and help each other improve our skills. In April, we turned our attention to Gutenberg, and the whole team (@afercia,ย @carolinan,ย @SergeyBiryukov, andย @aristath) co-authored an implementation to add `lang` and `dir` attributes to the block editor. This will allow content authors to specify if a piece of content on their posts is using a different language than their main post’s content and therefore make life easier for screen-readers and assistive technologies in general.

As a sidenote, I can’t wait to see you all in person next month at WordCamp Europe in Athens!

Sergey

WordPress 6.3

For the past month, I continued triaging and reviewing tickets for the next major release, WordPress 6.3, as part of my duties as a Core Committer.

I made forty-one commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with various coding standards fixes in Core. See ticket #57839 for more details.
  • Removing Windows Live Writer manifest file. See ticket #41404 for more details.
  • Updating the Requests library to version 2.0.6. See ticket #58079 for more details.
  • Update the sodium_compat library to version 1.20.0. See ticket #58224 for more details.

The post A month with the WordPress Core team โ€“ April 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ March 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-march-2023/ Thu, 13 Apr 2023 12:13:50 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3437244 This past month, the team worked on WordPress 6.2, which was released on March 29. We also started a project to improve how attachment pages are used. Our monthly updates Carolina Gutenberg and Core In March, I focused on the WordPress 6.2 release by testing the release candidates and doing follow-ups.I continued resolving problems with […]

The post A month with the WordPress Core team โ€“ March 2023 appeared first on Yoast.

]]>
This past month, the team worked on WordPress 6.2, which was released on March 29. We also started a project to improve how attachment pages are used.

Our monthly updates

Carolina

Gutenberg and Core

In March, I focused on the WordPress 6.2 release by testing the release candidates and doing follow-ups.
I continued resolving problems with the excerpt length feature and the details block. The details block is finally in Gutenberg. You can enable it by going to the WordPress admin area, Experiments, and selecting “Test the Details block.”
Overall I spent most of my time updating my open pull requests and doing triage.

Themes & Documentation

I continued working on updates for the Theme Developer Handbook and the WordPress 6.2 documentation. I also participated in the kick-off for the community themes project and contributed by creating GitHub issues and pull requests.

Andrea

In the last month, I’ve been pretty slowed down because of some personal health issues. I’ve been able to focus, as usual, on some accessibility issues in Gutenberg and submitted a few pull requests. Working on Core and Gutenberg sometimes surfaces bugs in the tooling chain as well. Interestingly, I discovered and reported a bug related to the localization tools that prevent translators from being provided with translation comments in some cases. This has an impact on the actual quality of the translations and, consequently, on the quality of the user interface and user experience. The investigation is ongoing, and any help is very welcome.

Apart from that, I enjoyed attending the Yoast Contributor Day, where the core table focused on building a Gutenberg UI to allow users to create and save patterns directly from the Editor. It was a good learning opportunity, and it was good to meet with some new contributors.

Ari

SQLite

Work continues in the SQLite implementation for WordPress. In a few months, we want SQLite to e part of the Performance-Lab plugin (PL for short), so one of the tasks I am currently working on is to backport the implementation from the stand-alone plugin to the PL repository. There are a lot of implementation details that we need to work out because the PL plugin has its own activation/deactivation routines that we need to override and tweak for SQLite to work properly in that context.

In addition to that, I also worked on implementing the installation routines and forms. New sites should be able to choose whether they want to use a MySQL or SQLite database when they get installed. Of course, this is not something that we can implement in the plugin, so it was implemented in a draft pull request for WordPress-Core (#3220).

PHP Autoloader

This month I continued working on the PHP Autoloader (#3470). We finally resolved some performance issues that we had in previous months, and now the autoloader improves the performance of WordPress load times.

Overall, we noticed a 1% improvement in loading time and a 5% improvement in memory consumption. These numbers may not seem like much, but in the grand scheme of things, with the popularity of WP, this can have a huge impact and significantly improve the developer experience.

Style Engine

I continued on the work we started about six months ago with the style engine package in WordPress & Gutenberg. The style engine allows us to concatenate, minify and optimize styles. However, it is not used in all the places we could be using it, and there’s a lot of room for improvement.

By using the style engine in more places, we can reduce the amount of styles delivered to end-users and therefore reduce the carbon footprint of their sites automatically.

Removing attachment pages

One of the things the whole team focused on was removing attachment pages from WordPress. Attachment pages are a feature that is not used in the vast majority of sites but is enabled everywhere. The result is that a lot of additional pages and URLs get generated on all sites. The issue on #57913 proposes a solution to this, so we worked on an implementation to fix it (see code in #4233).

Sergey

WordPress 6.2

On March 29, after five months of development, WordPress 6.2 โ€œDolphyโ€ was released. Thanks to the work of more than 600 contributors from over 50 countries, it includes hundreds of enhancements and bug fixes, including better PHP 8.2 compatibility and many performance improvements. Congrats everyone! ๐ŸŽ‰

For the past month I continued helping with WordPress 6.2 release tasks and started looking into some early tickets for WordPress 6.3, as part of my duties as a Core Committer. I also led a meeting for new core contributors, and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

On the day of the release, some of the Core and Meta tasks I helped with included:

  • Updating the Credits API
  • Updating the Roadmap, History, and some other documentation pages on WordPress.org
  • Running tests, enabling updates, etc.

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Major Versions.

WordPress 6.3

I made fifty-one commits to WordPress core, mostly various bug fixes and enhancements.

In our weekly mob coding sessions with Ari, Carolina, and Andrea, we continued working on resolving the remaining coding standards issues in WordPress core, starting with always using strict comparison in PHP files. See PR 3873 for more details.

Some other notable changes include:

  • Continuing with various coding standards fixes in core.
  • Continuing with various unit test improvements in core. See ticket #57841 for more details.
  • Updating the Requests library to version 2.0.6. See ticket #58079 for more details.
  • Updating the PHPMailer library to version 6.8.0. See ticket #57873 for more details.

The post A month with the WordPress Core team โ€“ March 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ February 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-february-2023/ Thu, 16 Mar 2023 15:02:06 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3414647 In February, we moved forward with some of our long-running projects. We worked on the SQLite database proposal, forms and details/summary blocks, PHP autoloader for WordPress core, updating documentation for themes, improving translatable strings in Gutenberg, and addressing coding standards issues in core, among other things. Read on to learn more! Our monthly updates Ari […]

The post A month with the WordPress Core team โ€“ February 2023 appeared first on Yoast.

]]>
In February, we moved forward with some of our long-running projects. We worked on the SQLite database proposal, forms and details/summary blocks, PHP autoloader for WordPress core, updating documentation for themes, improving translatable strings in Gutenberg, and addressing coding standards issues in core, among other things. Read on to learn more!

Our monthly updates

Ari

Gutenberg and WordPress are enormous projects, and naturally, a lot is going on every day. Lately, I struggle daily because the development speed in Gutenberg is fast. So fast that it’s impossible to keep up and know what goes on – even for people like me working full-time on the project. There is just too much going onโ€ฆ

Especially during months when we are preparing a major WordPress release, there is a lot of pressure (from ourselves) to test, test and re-test everything multiple times, leaving no stone unturned. That takes a lot of timeโ€ฆ

Thankfully I could focus on my long-running projects, and we made a lot of progress!

SQLite

I continued working on the SQLite implementation for WordPress Core. Together with Adam Zielinski, we finished the refactor, and now the implementation is a lot more secure and able to handle a significantly wider array of queries.

There is also a Trac ticket now to facilitate discussions (#57793), and a proof-of-concept implementation in #3220 which showcases how SQLite can be integrated in WP, and the changes that will be necessary in the installation process.

Forms & Inputs blocks in Gutenberg

With some help from Andrei Draganescu we finally figured out a solution for one of the blockers in the implementation. Basically, all automated tests for the block were failing, because the wp_kses_allowed_html filter was stripping out all <input> elements from the HTML. With that out of the way, I continued working on the blocks and updated them adding more improvements. Hopefully, once WordPress 6.2 is released we can ask for some design feedback from the community, and move this project forward.

For more information and details, you can find the code & discussion in #44214

Other tasks

  • I continued backporting PHP changes from Gutenberg to Core for v6.2
  • I submitted some small patches and bugfixes in WordPress Core and Gutenberg.
  • I started experimenting with ways to import dynamic text in blocks (#47964). This will allow theme authors and content editors to use dynamic text in their content (like for example the current year for their copyright line etc).
  • Lots of testing in the Gutenberg repository as well as WordPress’s trunk for the upcoming WordPress 6.2 release.
  • Various admin tasks
  • During a Yoast Hackathon we started going over translatable strings in Gutenberg, and worked on fixing some of these errors. The project is still a work in progress, but you can find our current work on #48130
  • Continued working on the WP PHP Autoloader implementation (#3470)
  • Continued with a refactor of the global styles we started months ago, to use the style-engine (WIP – #48955)

Carolina

Gutenberg

My main focus has been on WordPress 6.2, the later part of a release is stressful and it is difficult to keep up with all the decisions and to find where you can help out the most. It definitely makes me feel restless.

Besides 6.2, I have worked on improving documentation for theme.json #48250 #48269, continued on the details/summary block, experimented with caption settings for the featured image, and worked on role attribute block support #47868.

The post excerpt update that re-added the excerpt length setting was merged, but shortly after we discovered new bugs. One of the bugs were fixed with a new minor release of Gutenberg. There are still more bug fixes and improvements to be made, and a new pull request is waiting for review and testing.

Core & themes

I have worked on updates for the Theme Developer Handbook, and I have continued triaging bundled theme Trac tickets. I am so glad that I am not alone working on the themes; especially sabernhardt and mukesh27 are contributing a great deal.

Sergey

WordPress 6.2

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.2, as part of my duties as a Core Committer.

I made fifty-nine commits to WordPress core, mostly various bug fixes and enhancements. I also led a meeting for new core contributors, published the script for running these meetings in the handbook so that anyone interested could run them too, and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

In our weekly mob coding sessions with Ari, Carolina, and Andrea, we started working on resolving the remaining coding standards issues in WordPress core, starting with always using strict comparison in PHP files. See PR 3873 for more details.

Some other notable changes include:

  • Introducing the WP_Automatic_Updater::is_allowed_dir() method to avoid a PHP warning in the update process if the open_basedir directive is in use. See ticket #42619 for more details.
  • Adding more error checking to WP_List_Util::pluck(). See ticket #56650 for more details.
  • Addressing all the remaining coding standards warnings in bundled themes. See ticket #56791 for more details.
  • Marking screen reader strings as such with translator comments. This aims to provide better context for translators and make it easier to determine that some strings contain hidden accessibility text and are not displayed in the UI. See ticket #29748 for more details.
  • Documenting default values for optional parameters in various DocBlocks. See ticket #56792 for more details.
  • Checking that either mysqli_connect() or mysql_connect() function is available when loading WordPress core. This resolves a fatal error and displays an actionable message if the mysqli PHP extension is missing. See ticket #51988 for more details.

The post A month with the WordPress Core team โ€“ February 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team โ€“ January 2023 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-january-2023/ Thu, 09 Feb 2023 14:14:26 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3387617 January was an exciting month! Together we worked on PHP 8.0+ compatibility, editor enhancements and accessibility improvements for WordPress version 6.2. Among other things, we attended bug scrubs and the old Trac ticket triage, and helped land the custom CSS feature in the Site Editor. Our monthly updates Andrea In the last month, with the […]

The post A month with the WordPress Core team โ€“ January 2023 appeared first on Yoast.

]]>
January was an exciting month! Together we worked on PHP 8.0+ compatibility, editor enhancements and accessibility improvements for WordPress version 6.2. Among other things, we attended bug scrubs and the old Trac ticket triage, and helped land the custom CSS feature in the Site Editor.

Our monthly updates

Andrea

In the last month, with the WordPress new release approaching, I spent a good amount of time in testing accessibility of the new features. I mostly focused on the Site Editor. There’s still lot of room for improvements. Testing surfaced a series of regressions and unexpected behaviors in some of the most basic accessible design patterns such as modal dialogs, constraining tabbing within modals, setting initial focus on some components and the like. Often, these patterns work in a slightly different way depending on the browser in use. When it comes to keyboard focus and interaction, browsers behavior may actually differ. That’s why it’s very, very, important to test these features with all major browsers, which is an extremely time-consuming process. I reported all my findings in new issues on the Gutenberg repository and I’m still working to solve most of them.

Sergey

WordPress 6.2

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.2, as part of my duties as a Core Committer.

I made fifty-eight commits to WordPress core, mostly various bug fixes and enhancements. I also led two meetings for new core contributors and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with various unit test improvements in core. See ticket #56793 for more details.
  • Renaming function parameters that use reserved PHP keywords. While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names. See ticket #56788 for more details.

Carolina

Gutenberg & Core

Since the last update several of my pull requests have been merged into Gutenberg. Including improvements and bug fixes for the featured image block, tag cloud, and cover block. You can now select an HTML element for the cover block.
After trying many different solutions, I have re-added the excerpt length option to the post excerpt block. This change will not be part of 6.2, but you can try it out in the plugin soon.
The Gutenberg contributors have approved the new Details / Summary block, and will add it to Gutenberg in a future update.

For core, I focused my efforts on triage and testing patches for the bundled theme component tickets in the 6.2 milestone. There was some overlap because I needed to make changes to Gutenberg before addressing some issues in the bundled themes. For example, I added missing CSS classes to twenty one blocks.

I have done a lot of reading to learn more about the style engine package, because it will have a more important role from 6.2 and forwards. For example, I could use it to make it easier to add the CSS classes I mentioned. I also published an update to the theme developer handbook, and one more update is under review.

Ari

SQLite

I continued working on the SQLite implementation for WordPress. This is a big project, and it will take a few more months before we can call it “ready for production”.

I split the implementation from the performance-lab plugin to a separate, standalone plugin. This is something that Matt requested in a comment. Since its release, there have been several updates to the plugin with bugfixes and improvements.

I am currently collaborating with @adamziel, working on a refactor of the code to strengthen security and further abstract the implementation. Our refactor is based on an SQL-parser package from PHPMyAdmin, showing a lot of promise!

Forms and input fields blocks

Though there wasn’t a lot of progress in this area, I pushed some bugfixes and improved the UI a bit. You can test the implementation yourself and provide feedback on #44214.

Webfonts API

The API was renamed to “Fonts API”, and we are now one step closer to including it in WordPress Core.

Unfortunately, we didn’t make it on time for the WP 6.2 release, and it will be included in the next major release (6.3). Besides renaming and completely refactoring the API, some other minor fixes were also pushed – like the removal of local() CSS functions in the generated styles.

Other contributions

  • Reviews: As always, a big part of our job is performing Code reviews. I dedicated a big portion of my time to reviewing code in the Gutenberg project.
  • Tests: Tests can take many forms – from manual testing to writing automated tests for pre-existing code. We try to include automated tests for all the code we add in the WordPress project, and in addition to that, spend many hours manually testing the included changes to ensure there are no regressions.
  • Localizations/Translations: Localizations is one of the most important parts of WordPress. It’s also one of the most resources-intensive processes! This month I explored some options to improve the performance of translations in WP. There is an interesting discussion in the performance project regarding translations… Definitely something to keep an eye on.
  • Backporting Changes from Gutenberg to WP-Core: I helped backport some PHP changes from Gutenberg to the next major release of WordPress.

The post A month with the WordPress Core team โ€“ January 2023 appeared first on Yoast.

]]>
A month with the WordPress Core team – December 2022 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-december-2022/ Thu, 19 Jan 2023 10:52:24 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3368012 Another month came and went, and we left 2022 behind. Our team was very productive this year! In fact, we were the most active company in the WordPress project after Automattic. In December, most of our team took some well-deserved and needed time off. As a result, the update for December will be a bit […]

The post A month with the WordPress Core team – December 2022 appeared first on Yoast.

]]>
Another month came and went, and we left 2022 behind. Our team was very productive this year! In fact, we were the most active company in the WordPress project after Automattic. In December, most of our team took some well-deserved and needed time off. As a result, the update for December will be a bit shorter.

Our monthly updates

Ari

In December, my focus remained on some long-standing projects:

SQLite in WordPress

After many months, we finally managed to merge the SQLite implementation in the Performance Lab plugin, and it is available to test. Following some comments in the call-for-testing blog post, we decided to release it as a stand-alone plugin as well. The stand-alone plugin is now available in the WordPress plugin repository as “SQLite database integration“.

Forms in Gutenberg

I continued working on the implementation of the forms blocks in Gutenberg. The pull-request needs some testing, but I feel it is at a point where we can easily merge it in the plugin. The fact that it’s marked as an experiment will also make it easier to merge the implementation without worrying about its experimental nature. Users will need to opt-in to use it. For more information and testing you can head on to #44214.


Andrea

In December, I have been focusing on some internal projects, and I haven’t had much time for WordPress core or Gutenberg.

To give a picture of the latest accessibility issues I’ve been focusing on, it’s best to take into consideration the work done in the last couple of months. I spent a good amount of time investigating new issues and some regressions. Most of them were related to managing focus, constraining tabbing, and the new ‘Browse mode’ for the Site editor.

Amongst these issues, the most interesting ones are #45903 and #46041 about constraining tabbing within some components, typically but not limited to modal dialogs. These issues proved once again, that when it comes to accessibility, it is very important to test with all browsers. Not all modern browsers behave exactly the same. Their behavior differs, especially when it comes to things like keyboard focus, handling focus losses, and the like. It’s also important to note that all unit tests or E2E tests that are related to accessibility should run with all browsers.

Playwright provides the ability to run tests with various browsers, for example, Chromium, Webkit, and Firefox. These should be the browsers to test accessibility issues with, at the very least. Worth noting: Some of these bugs surfaced only when extending some tests to run with Webkit and Firefox, in addition to the default Chromium.

The discovered bugs (some of them were actual regressions) are now partially fixed. A more comprehensive fix is in the works. For a full fix, I’d like to draw some attention to #45809.

There are a few places in Gutenberg where components use a scrollable div element. Firefox is the only browser that makes scrollable elements focusable. All other browsers don’t. This has an impact on the user experience, accessibility, and also on testing. To reliably test with all browsers, the ‘focusability’ of scrollable elements should be standardized by means of a dedicated component.

As it turns out, Gutenberg has a Scrollable component. It needs to be improved though, and its usage extended to replace all occurrences of hardcoded scrollable elements. Any help and feedback is very welcome on the related issue #45809.


Sergey

WordPress 6.2

For the past month, I continued triaging and reviewing tickets for the next major release, WordPress 6.2, as part of my duties as a Core Committer.

I made fifty-two commits to WordPress core, mostly various bug fixes and enhancements. I also led two meetings for new core contributors and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with various unit test improvements in core. See ticket #56793 for more details.
  • Renaming function parameters that use reserved PHP keywords. While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names. See ticket #56788 for more details.
  • Upgrading PHPMailer to version 6.7. This is a bug fix release which also contains some PHP 8.1 related improvements. See ticket #57281 for more details.

Carolina

In December I had some time off for Christmas and New Years, but here is what I worked on:

For Gutenberg I made two improvements for handling the size of the featured image block, which has been merged.
I still have three open pull requests related to featured images that needs testing. Here I am working towards making the featured image block settings match the image block settings better, to make the blocks easier to use.
I am looking at solutions for displaying the image caption field from the media library, because users have reported that this is something they need before they can switch to using blocks instead of the classic editor.
I have also continued the work on the details and summary block and the post excerpt length option.

The feature I am most excited about it is the per block custom CSS option in the Styles sidebar in the Site Editor. It makes it easier to add custom CSS to specific blocks since you don’t need to know the block selector.
My most challenging work lately has been to explore if we could edit the navigation overlay; the mobile menu, separately from the navigation block. By using a new type of template part for the overlay, we should be able to add almost any block to the mobile menu. This feature is far from ready and the work has been explorative.

For WordPress core, I have focused on issues related to the bundled themes. In WordPress 6.2, the plan is to allow classic themes to enable the new border, spacing and link color options. To enable this in Twenty Twenty-One, I have done lots of testing and I have been trying to re-work some of the CSS to make the theme compatible with the new link color options.



The post A month with the WordPress Core team – December 2022 appeared first on Yoast.

]]>
A month with the WordPress Core team – November 2022 https://yoast.com/wordpress-core/a-month-with-the-wordpress-core-team-november-2022/ Thu, 08 Dec 2022 09:53:48 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3327246 After a lot of deliberation, we decided to change the format of these blog posts. We felt that a weekly or bi-weekly update did not allow us to focus on some bigger concepts and ideas. From now on, these blog posts will be a monthly overview of what our team worked on. It can still […]

The post A month with the WordPress Core team – November 2022 appeared first on Yoast.

]]>
After a lot of deliberation, we decided to change the format of these blog posts. We felt that a weekly or bi-weekly update did not allow us to focus on some bigger concepts and ideas. From now on, these blog posts will be a monthly overview of what our team worked on. It can still contain mentions and links to individual issues and an overview of what we did, but at the same time, it will provide some more “breathing room” to expand a bit more on abstract ideas and the grander plan.

Our monthly updates

Ari

November was a busy month!

Performance and sustainability

After the WordPress 6.1 release, I was really happy to see a lot of people focusing on performance. There is an increasing number of data-driven contributions in that area; WordPress developers have started using profiling tools more. The result of that, is that we are finally addressing long-standing issues. Some of these changes have already made their way in minor releases of WP, but there are a lot more on the way. WordPress 6.2 will be faster than previous releases, improving the performance and sustainability of the whole project!

Besides working on performance improvements myself, I started shifting my focus to helping others improve performance. That involved a lot more code reviews focused on performance tickets, and a plethora of discussions with people who want to contribute to that focus-area.

Forms in Gutenberg

One of the things I’m most excited about, is the proposal to add forms & inputs fields in WordPress.

The vast majority of WordPress sites contains a form of some sort. It can be a contact form, a comment form, a product-review form, or any other kind of form.

However, WordPress never had a native way to handle building and presenting these forms. In #44214 we introduce new form and input blocks. Users will be able to build the forms they need, and/remove the fields that they want, and so on.

Previously, in WordPress, comment forms were hardcoded. If anyone wanted to make any change to the default forms (or add a new form), they needed a good understanding of the WP code structure and good coding skills – or install a forms plugin.

If we merge this implementation, WordPress will be able to start using these blocks for post comments etc, deprecating all the legacy, hard-coded implementations we had. At the same time, it will allow all forms plugins to start using these core blocks as a framework they can expend on, and enrich it – as opposed to reinventing the wheel every time.

You can see a short screencast of building and styling a form below (screencast linked from the Gutenberg proposal):

Supporting SQLite in WordPress Core

A few months ago, we published a proposal to make WordPress officially support SQLite. That proposal has gained a lot of traction, and we started implementing it as a module in the Performance Lab plugin. There have been a lot of reviews, comments and feedback on that proposal. After addressing all the comments, we are now very close to merging it in the plugin.

If all goes well, we’ll be able to merge it later this week and it will be included in the next release of the plugin in a few days. ๐Ÿฅณ

This is a huge win, both for performance and sustainability, as it will allow smaller WordPress sites to run on servers that don’t have a MySQL server. At the same time, it presents a unique opportunity for hosting companies to provide new, niche services for these sites – and simplify server maintenance.

Of course it’s a long road before this makes its way back to WordPress Core, but this first step will allow site-developers, plugin-developers, and hosts, to test the implementation; It is the first step towards a bigger change to ensure WordPress’s longevity for the future.

Autoloading WordPress classes

As PHP evolves, so must WordPress. We should not, under any circumstances become a legacy project.

Part of this “evolution”, is the implementation of an autoloader for PHP classes in WP-Core. There were attempts to do this in the past as well, however at the time it was met with a lot of resistance. I’m hoping that this time we will be able to move forward with this… At some point it has to be done, it’s just a matter of getting the timing right.

The idea has a lot of support from WP & PHP developers, so I’m currently working on an implementation for it. Hopefully this time we’ll get it right.๐Ÿคž

Other notable updates

After many months, we finally managed to merge a change in Gutenberg which I feel is important to theme developers:

When a submenu of a navigation was active (ie the user was on a page that was not a primary/top-level item), we had no way to visually highlight the menus. This was fixed by adding a current-menu-ancestor class to navigation items (#40778).

We also started refocusing on the Webfonts API for WordPress. In the 6.1 release, a preliminary version was merged. For 6.2 we started focusing on a refactor of the implementation, one that will make more sense long-term and can be considered a permanent solution. More details on that can be found on #43492.


Andrea

In the last weeks, apart from working on accessibility issues and pull requests for the Gutenberg project, I’ve been focusing on something completely new to me. A good learning opportunity: visual comparison testing with Playwright. Building upon prior art by @kevin940726, @mirka, @WunderBart, @JustinyAhin, and @tellthemachines, I’ve been researching the best way to introduce visual comparison tests in #46210.

Why visual comparison tests matter.

Visual comparison tests can be used to check for visual regressions in the layout, styling, etc. More interestingly, they can be used to test visual features that related to user interaction. It matters the most when it comes to accessibility features. For example, in #46210 I’m aiming to test the focus style of the navigateRegions component. The focus style could be only tested by checking the actual CSS applied on the related elements, but that wouldn’t guarantee the focus style is actually visible to the users. Actually, this focus style was partially hidden or not visible at all, and only visual comparison tests can guarantee the focus style works as expected and is actually perceived by users. I can think of tons of other cases where visual comparisons tests can help accessibility features.

The actual challenge to build a solid visual comparison testing tool is about cross-operating systems differences. On the Gutenberg repository, tests run on CI and of course they run on Ubuntu. However, most WordPress developers work on macOS. Other developers may work on Windows.

When running the visual comparison tests locally, the reference images used to perform the comparison are generated taking a screenshot of what the browser (chromium by default) renders on the user operating system. When running on CI, the images are generated taking a screenshot of what the browser renders on Ubuntu. WordPress and Gutenberg use ‘system fonts’, that is: a font-family stack meant to use the ‘default’ fonts for each operating system. In short, the actual font used is different depending on the operating system in use. This introduces subtle differences in the reference images taken on the user operating system and on CI-Ubuntu. The reference images generated locally will likely differ from the ones generated while running the tests on CI, making the tests fail.

Call for help

We’re exploring a few options to work around this problem. Anyone with some good knowledge of GitHub actions workflows, Playwright and, optionally, Docker, is very welcome to join the conversation on #46210.


Sergey

Preparations for bumping the recommended PHP version to 8.0+

WordPress core currently lists PHP 7.4 or greater as the recommended version. As of 28 Nov 2022, PHP 7.4 is no longer supported by the PHP community. Bumping the recommended version to 8.0+ was briefly discussed a few months ago in #meta6432 as something to be re-evaluated after the WordPress 6.1 release.

Some of the biggest concerns with recommending PHP 8.0+ at this time are:

  • Incomplete test coverage for WordPress core.
  • Unknown state of plugin and theme compatibility.

While the former is a work in progress, I have created a Meta ticket to help with the latter and discuss the prerequisites for updating the recommended version to PHP 8.0+. See #meta6612, any thoughts and ideas welcome!

WordPress 6.1.1

On November 15, I participated in the release party for WordPress 6.1.1. This is a maintenance release that features 29 bug fixes in Core and 21 bug fixes for the block editor.

On the day of the release, some of the Meta tasks I helped with included:

  • Updating the Credits API
  • Running tests, enabling auto-updates, etc.

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Minor Versions.

WordPress 6.2

For the past month I continued triaging and reviewing tickets for the next major release, WordPress 6.2, as part of my duties as a Core Committer.

I made sixty commits to WordPress core, mostly various bug fixes and enhancements. I also led a meeting for new core contributors and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with various coding standards fixes in core. See ticket #56791 for more details.
  • Continuing with various unit test improvements in core. See ticket #56793 for more details.
  • Renaming function parameters that use reserved PHP keywords. See ticket #56788 for more details.
  • Checking that both normalizer_*() functions exist in remove_accents(). This avoids a fatal error if a plugin includes polyfill for any of the functions but the Normalizer class has a different namespace, for example when using the Symfony polyfill. See ticket #56980 for more details.
  • Showing correct theme per template or template part in Site Editor. See ticket #55437 for more details.
  • Upgrading PHPMailer to version 6.7. This is a bug fix release which also contains some PHP 8.1 related improvements. See ticket #57281 for more details.

The post A month with the WordPress Core team – November 2022 appeared first on Yoast.

]]>
A week with us: WordPress 6.1 and 6.1.1 https://yoast.com/wordpress-core/a-week-with-us-wordpress-6-1-and-6-1-1/ Thu, 10 Nov 2022 14:52:46 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3305918 Since its release on November 1st, WordPress 6.1 has been downloaded over 19 million times. On the Yoast blog, you can find more details about the release, including some of the features we worked on: WordPress 6.1.1 is scheduled for release on Tuesday, November 15. It contains several bug fixes fore core and the block […]

The post A week with us: WordPress 6.1 and 6.1.1 appeared first on Yoast.

]]>
Since its release on November 1st, WordPress 6.1 has been downloaded over 19 million times.

On the Yoast blog, you can find more details about the release, including some of the features we worked on:

WordPress 6.1.1 is scheduled for release on Tuesday, November 15. It contains several bug fixes fore core and the block editor.

Besides working on the releases, we participated in the Yoast online contributor day on November 4.

Our weekly updates

Ari

These past few weeks, I’ve been focusing on three major projects. These take up the majority of my time, but as always, I make sure to review and comment on other people’s submissions in Gutenberg to help the project move forward.

Forms/Inputs blocks

Almost every site needs a contact form, so we’re trying to introduce a way to build forms in WordPress. In #44214, I’m adding a form and an input block, to allow building any kind of form.

SQLite implementation

It was decided to implement SQLite as a module in the performance-lab plugin. This will allow more people to test it properly and get closer to merging the implementation in WordPress Core. You can see the pull request on #547 for more details.

WordPress performance improvements

We identified a bottleneck in WordPress (specifically, the WP_Theme_JSON class), and I submitted #3555 with the help of Juliette. The changes have already been approved, so they should be merged relatively soon.

Andrea

In the past weeks I had the opportunity to work on some long standing accessibility issues in Gutenberg, mostly related to keyboard interaction and focus. The keyboard shortcut to navigate the editor regions has been finally fixed in #45019. Also related to the editor regions, the focus style for the currently focused region wasn’t fully visible since a while. It is now fixed in #45369.

A serious focus loss occurred when closing the Publish panel, forcing keyboard users to re-start keyboard navigation from the document root. It’s now fixed in #45623. This fix was particularly interesting, as it surfaced an inherent issue with components that manage focus using componentDidMount and components that do that with React hooks. The fix includes two new E2E tests, which gave me the opportunity to get more familiar with Playwright.

Lastly, I fixed the styling of the block toolbar when the ‘Show button text labels’ is enabled in #44779.

Sergey

WordPress 6.1

On November 1, after five months of development, WordPress 6.1 โ€œMishaโ€ was released. Thanks to the work of more than 800 contributors from over 60 countries, it includes hundreds of enhancements and bug fixes, including many accessibility and performance improvements. Congrats everyone! ๐ŸŽ‰

For the past three weeks I continued helping with WordPress 6.1 release tasks and looking into some early tickets for WordPress 6.2, as part of my duties as a Core Committer. I ran mission control for WordPress 6.1 RC6, led a meeting for new core contributors, and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

On the day of the release, some of the Core and Meta tasks I helped with included:

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Major Versions.

Yoast Contributor Day

Last Friday I was excited to co-lead with Enrico the Core team table at the Yoast Contributor Day. The team looked into several tickets for WordPress core, which will further be reviewed for WordPress 6.2 or 6.1.1:

  • #43761 CS: Fix violations for wp-admin/install-helper.php
  • #50018 Site Health: is_writable() check when there are more than 1 theme directories
  • #54225 Request header key case inconsistencies
  • #55437 Bugfix: Display correct theme in site editor
  • #55922 Update wp_list_comments type parameter to allow array or string
  • #55993 Wrong canonical redirect for paged posts page
  • #56023 Twenty Twenty-One: Default quote block style overrides citation color on the front
  • #56824 SVGs missing title and description in WordPress dashboard
  • #56920 Illogical placement link to shortcuts in comments help section
  • #56926 Infinite loop in wp_nav_menu()
  • #56946 WP 6.1-RC6: `menu-item-has-children` class is not being applied correctly

It felt like a productive day and a fun experience, thanks everyone who joined us! ๐Ÿ™Œ

WordPress 6.1.1

This week some of my focus is on the next minor release, WordPress 6.1.1, scheduled for November 15. It will contain a few bug fixes for core and the block editor.

WordPress 6.2

I made 105 commits to WordPress core, mostly various bug fixes and enhancements. Some notable changes include:

  • Displaying a notice if any of the required KSES globals are not set. See ticket #47357 for more details.
  • Improving the wording of โ€œSite Addressโ€ field description. See ticket #50629 for more details.
  • Improving unit tests for Ajax and multisite test groups. See ticket #56793 for more details.

Carolina

This week I have troubleshooted bugs reported in WordPress 6.1, and continued working on improvements for the theme developer handbook.

For Gutenberg I have mainly worked on a new details/summary block. The block is not complete yet and it has been time consuming, but I have learnt several new “tricks” that I did not know that Gutenberg was able to do.

I have been having problems with reading test reports and updating the correct test fixtures for an improvement for the image block. I have finally managed to run most of the tests locally. It is a small comfort this week (read: annoyance) that there is an Android test that keeps failing or skipping for everyone, not only me ;p.

I have also triaged open issues and made some documentation updates.

The post A week with us: WordPress 6.1 and 6.1.1 appeared first on Yoast.

]]>
A week with us: WordPress 6.1 RC1 & RC2 https://yoast.com/wordpress-core/a-week-with-us-wordpress-6-1-rc1-rc2/ Thu, 20 Oct 2022 12:32:49 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3289107 As WordPress 6.1 enters the release candidate stage, we’re putting some finishing touches on it and start working on early tickets for WordPress 6.2. Read on to learn what weโ€™ve been up to for the past couple of weeks! Our weekly updates Ari Unfortunately, after my trip to the Netherlands in the Yoast headquarters, I […]

The post A week with us: WordPress 6.1 RC1 & RC2 appeared first on Yoast.

]]>
As WordPress 6.1 enters the release candidate stage, we’re putting some finishing touches on it and start working on early tickets for WordPress 6.2. Read on to learn what weโ€™ve been up to for the past couple of weeks!

Our weekly updates

Ari

Unfortunately, after my trip to the Netherlands in the Yoast headquarters, I came home with Covid19. I had to spend a few days offline – which in turn meant that my productivity was a bit down these past couple of weeks. That being said, I still managed to do lots of things!

  • I continued working on the SQLite integration. Right now the integration is built as a module in the performance-lab plugin, but the hope is to get more eyes on it and eventually merge it in WordPress Core. You can see the code (and test the module) in the GitHub pull-request.
  • I continued running profiling tests in WordPress Core. I managed to identify a bottleneck and created a ticket on #44772. Thankfully it was fixed on time, so the WordPress 6.1 release won’t suffer from that issue. My profiling tests also resulted in another, minor fix (#56758), but most importantly a lot of discussions with other WordPress contributors – who also started using profiling tools to ensure there are no performance regressions.
  • I started experimenting with autoloading WP classes. I think we can find a solution that will satisfy everyone without refactoring the whole codebase (see draft pull-request on GitHub).
  • I continued working on the input-fields/form blocks in Gutenberg – #44214. The implementation is going really well, and I converted it to an experiment – hoping that it can get merged early so other contributors can also collaborate on it.
  • I continued debugging the performance of the WP_Theme_JSON object. The logic in there is a bit over-complicated, but I believe we can find ways to simplify some things and improve its performance. One of the main issues is the large number of nested loops and array calculations.

Carolina

Gutenberg

This week I have worked on adding padding and margin controls to more blocks. This tracking issue is a good overview of the progress: Tracking: Dimensions Design Tools Consistency. These updates are important for improving the editing experience.

I have also worked on a new details/summary block, a block that you can use to hide and show content such as a text transcript for media blocks. I am still experimenting with different settings and it is not ready for testing.

In the last blog update, I mentioned that I had started working on the post excerpt settings. Unfortunately I have run into blockers for both the post excerpt block and the latest posts block. I think it is important to solve the existing bugs, but I have not found any suitable fixes.

Sergey

WordPress 6.0.3

I was a co-lead for WordPress 6.0.3. This is a security release that features 16 fixes. Because this is a security release, it is recommended that you update your sites immediately. All versions since WordPress 3.7 have also been updated.

On the day of the release, some of the Core and Meta tasks I helped with included:

  • Updating the Credits API
  • Backporting security patches, running tests, building packages, enabling updates, etc.

If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Minor Versions.

WordPress 6.1

For the past two weeks I continued triaging and reviewing tickets for the next major release, WordPress 6.1, as part of my duties as a Core Committer.

I made thirty-two commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Introducing wp_cache_supports() function that allows object cache plugins to correctly list their supported features. See ticket #56605 for more details.
  • Addressing the remaining known issues on PHP 8.1 and 8.2 to get a passing test build. See tickets #56681, #56712, and #56009 for more details.
  • Correcting MariaDB version check in wpdb::has_cap() so that the check for utf8mb4_unicode_520_ci collation support works as expected. See ticket #54841 for more details.
  • Avoiding PHP notices from WP_Query when get_queried_object() returns null. See ticket #29660 for more details.
  • Fetching user by login in retrieve_password() if not found by email. See ticket #53634 for more details.

The post A week with us: WordPress 6.1 RC1 & RC2 appeared first on Yoast.

]]>
A week with us: WP 6.1-beta3 https://yoast.com/wordpress-core/a-week-with-us-wp-6-1-beta3/ Thu, 06 Oct 2022 13:24:35 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3278521 This week we had YoastCamp; Members of Yoast from all around the world gathered in our headquarters in the Netherlands, for a week full of activities, collaboration, and getting to know each other in person. In WordPress, version 6.1-beta3 was released with a lot of improvements! You can read more about this beta release on […]

The post A week with us: WP 6.1-beta3 appeared first on Yoast.

]]>
This week we had YoastCamp; Members of Yoast from all around the world gathered in our headquarters in the Netherlands, for a week full of activities, collaboration, and getting to know each other in person.

In WordPress, version 6.1-beta3 was released with a lot of improvements! You can read more about this beta release on the WordPress News post, where you’ll also find instructions on how to download it and test it.

Ari

This week I continued working on projects that I previously started. More specifically:

  • I continued working on the forms & inputs blocks in Gutenberg (#44214).
  • I started porting the SQLite integration in the performance-lab plugin (#547)
  • I continued working on performance improvements in WordPress Core, profiling the PHP performance on each page-load and analysing bottlenecks.
  • I continued doing code reviews and adding feedback in Gutenberg tickets
  • I fixed an issue with multiple-scripts in the navigation block (#3395)
  • I submitted another performance patch in WordPress Core (#56745)

The whole team is working on the WP 6.1 release. In just a few weeks, it will be released, so we are all focused on that.

Andrea

In the past month I took a few weeks off. Back to work this eek, I’ve had the opportunity to focus my attention on an interesting issue related to the Gutenberg Tooltip component. Turns out that setting a Tooltip conditionally triggers a full re-rendering of the element (usually a button) it’s associated with. From an accessibility perspective, full re-renderings are less than ideal. When they happen on a focusable element, they trigger a focus loss, which is a very confusing experience for all keyboard users. I was able to mitigate the problem, but a full solution is yet to be found. I created a Github discussion to gather thoughts and potential ideas to improve the Tooltip component. Anyone interested is very welcome to join the discussion.

Apart from that, I took care of some issues related to labelling and Tooltips of other buttons, with a couple pull requests that improve the Save buttons and the block toolbar buttons.

Carolina

This week I am at the Yoast office in Wijchen, for both social events and training. It is my first visit to the office and it has been great meeting the colleagues. I have enjoyed both the weather, food, interesting talks about SEO and JavaScript, and opportunities to do pair programming in person.

My focus remains on the WordPress 6.1 release, the theme Twenty Twenty-Three, and bugs in other bundled themes.
In Gutenberg I have worked on updates for to the navigation block, page list and quote block. I have started looking at improvements for blocks that use post excerpts. We need to update these blocks, to handle excerpt length settings and excerpt length filters.

Navigation block: Add padding to buttons when “Submenus Open on click” is enabled
Only include theme.css if the theme declares support for wp-block-styles
Twenty Twenty-Three

Sergey

WordPress 6.1

For the past week I continued triaging and reviewing tickets for the next major release, WordPress 6.1, as part of my duties as a Core Committer.

I made twenty-three commits to WordPress core, mostly various bug fixes and enhancements. I also led a meeting for new core contributors and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with code modernization efforts on updating WordPress core and unit test suite for PHP 8.1 and preparing for PHP 8.2. ๐Ÿ๐Ÿ˜ As of this week, WordPress core unit tests pass on PHP 8.1 and 8.2. While full compatibility with PHP 8.1 and 8.2 is still a work in progress, this should prevent new PHP issues from being introduced in WordPress core. All remaining known issues are deprecation notices. Massive props to Juliette for continuously working on PHP 8.x compatibility for many months! See tickets #55652, #55656, #55967, #56620, #56681 for more details.
  • Preventing excessive notoptions key lookups to improve performance. See ticket #56639 for more details.
  • Disabling process timeout when running PHPUnit tests via Composer. See ticket #55919 for more details.
  • Calling wpTearDownAfterClass() method in the test suite before deleting all data, instead of after. See ticket #55918 for more details.

The post A week with us: WP 6.1-beta3 appeared first on Yoast.

]]>
A week with us: Beta x 2 https://yoast.com/wordpress-core/a-week-with-us-beta-x-2/ Thu, 29 Sep 2022 13:30:40 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3267629 Since our last blog update, we have had a successful Contributor day at the Yoast office and online, and WordPress has released Beta 1 and Beta 2 of version 6.1. Ari A lot has happened in the past few weeks! SQLite support We finally published our official proposal to support SQLite in WordPress Core, and […]

The post A week with us: Beta x 2 appeared first on Yoast.

]]>
Since our last blog update, we have had a successful Contributor day at the Yoast office and online, and WordPress has released Beta 1 and Beta 2 of version 6.1.

Ari

A lot has happened in the past few weeks!

SQLite support

We finally published our official proposal to support SQLite in WordPress Core, and the feedback has been very positive. As a follow-up to that proposal, I started working on a plugin to allow testing the implementation easier. The plugin is not yet published on the w.org repository, but you can get a preview by downloading it from its GitHub repository.

Performance improvements in WordPress Core

These past few weeks, I focused a lot on performance improvements for WordPress Core.

  • Remove duplicate calls to realpath()#56636
  • Remove repetitive calls to file_get_contents()#56637
  • Remove unnecessary calls to file_exists()#56654 
  • Remove multiple calls to get_theme_file_path()#56666
  • Improve performance of block.json files loading – #55005

In order to find bottlenecks in WordPress’s execution path, I used xdebug-profiling. I then examined the results via webgrind, and analyzed the total cost of function calls on a page load.

A lot of other performance improvements are also included by other contributors. Overall, I feel that WordPress 6.1 contains a lot of performance improvements, and we are moving in the right direction.

Gutenberg

I helped backport some changes from Gutenberg to WordPress Core for the 6.1 release. As always, I did a lot of code reviews to help move the project forward.

I also submitted a proposal to start developing forms and input blocks in Gutenberg. Forms are something that the vast majority of sites need, and WordPress should have an implementation of them. You can read more about that on #44186, and leave your own feedback. You can also test an early-bird proof-of-concept in #44214.

Carolina

Yoast Contributor Day

During the contributor day I worked on solving a problem with the navigation block, helped with answering questions from participants, and did Gutenberg issue triage (following up on open issues, testing, adding labels etc).

WordPress 6.1 and Gutenberg

My focus has been on theme related issues, both enhancements and bugs. I have also worked on updates to the Theme Developer handbook.
As is common for major releases, there has been many discussions about which features that are ready to be included in 6.1, and I have spent a lot of time following up on notifications, questions and last minute changes.
This late in a release, I am already starting to look forward to the next; many of the enhancements that I have worked on for Gutenberg did not make it into WordPress 6.1, but will hopefully be part of Gutenberg soon.

Sergey

Yoast Contributor Day

I was excited to lead the Core team table at the Yoast Contributor Day. Some of my colleagues joined the Zoom session, while some onboarded new contributors in the Yoast office in Wijchen.

The team looked into several tickets for WordPress core and WP-CLI:

  • #38431 -webkit-appearance rule should be removed from the CSS
  • #50018 Site Health: is_writable() check when there are more than 1 theme directories
  • #53404 Replace http with https entering a video link
  • #54225 Request header key case inconsistencies
  • #55941 Empty string wrongly translated to ‘0’
  • #56287 Handle PHP Notice when get_post_type_object() returns null in is_post_type_archive()
  • WP-CLI #5645 Set WP_CLI_PACKAGES_DIR in config file
  • and a few others.

Some of these tickets are already committed and will be included in WordPress 6.1, others are still a work in progress.

It felt like a productive day and a fun experience, thanks everyone who joined us! ๐Ÿ™Œ

WordPress 6.1

For the past three weeks I continued triaging and reviewing tickets for the next major release, WordPress 6.1, as part of my duties as a Core Committer.

I made seventy-seven commits to WordPress core, mostly various bug fixes and enhancements. I also led a meeting for new core contributors and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Sending HTTP headers after querying posts in WP::main() to ensure that conditional tags work as expected. This provides better context and more flexibility when adjusting HTTP headers via the wp_headers filter or send_headers action. See ticket #56068 for more details.
  • Updating the KSES library to improve support for CSS variables and allow for using more modern CSS syntax. See tickets #55966, #56122, #56353 for more details.
  • Making adjustments to timezone selection UI and underlying functions to ensure that timezone strings deprecated in newer PHP versions are handled correctly by WordPress. Thanks Juliette! See ticket #56468 for more details.
  • Continuing with code modernization efforts on updating WordPress core and unit test suite for PHP 8.1 and preparing for PHP 8.2. Thanks everyone working on the PHP 8.2 PRs! See tickets #55652, #55656, #55787, #56513, #56514, #56033, #56034 for more details.

The post A week with us: Beta x 2 appeared first on Yoast.

]]>
A week with us: Yoast Contributor day and more! https://yoast.com/wordpress-core/a-week-with-us-yoast-contributor-day-and-more/ Thu, 08 Sep 2022 10:43:47 +0000 https://yoast.com/?post_type=yoast_wordpress_core&p=3255337 At Yoast, we believe in giving back to the community, and this team is proof of our commitment to our core values. As we do every few months, on September 14, 2022 Yoast is organizing a WordPress Contributor day! It is a great opportunity for all of us to work together and improve WordPress for […]

The post A week with us: Yoast Contributor day and more! appeared first on Yoast.

]]>
At Yoast, we believe in giving back to the community, and this team is proof of our commitment to our core values. As we do every few months, on September 14, 2022 Yoast is organizing a WordPress Contributor day! It is a great opportunity for all of us to work together and improve WordPress for everyone. Our contributor days are open for everyone, so feel free to join us.

When: September 14, from 10:00 AM till 4:30 PM (UTC+2).
Where: Online or at the Yoast HQ in Wijchen, Netherlands.
Read more about the contributor day and sign up.

Our weekly updates

Andrea

Back from my vacation, in the last week I spent some time catching up with all the latest updates and managing my queue of emails and notifications. I also had the opportunity to work on some of the more recent issues I created for Gutenberg, mostly related to labelling and tooltips used on some of the buttons in the Gutenberg toolbars.

These kind of issues may look simple at first, but they require a good amount of time to investigate the best approach. This led me to submit a few pull requests, mainly for the toolbar buttons. Besides that, I submitted #43848 to fix the headings hierarchy in the Styles sidebar. That’s an interesting case where the heading levels were used incorrectly, more for visual purposes rather than for establishing a good hierarchy within the sidebar content. Worth reminding headings are meant to be used to build a meaningful content structure so that users can easily identify the main sections within the content. Also, assistive technology users use headings to navigate the content by jumping through headings. A correct headings hierarchy is paramount to alloww these users to get a sense of the content structure.

Carolina

My focus was divided between the default theme and Gutenberg bugs, enhancements, and pull request reviews.
Before the 6.1 feature freeze, there are many enhancements to typography, spacing and color settings for blocks that we still need to test.

Twenty Twenty-Three

The layout setting in Gutenberg, which allows users to change the width of blocks and use wide and full width, has been updated with new properties. This meant we needed to update all the container blocks (such as group blocks) in the HTML templates in Twenty Twenty-Three.

On Wednesday, the default theme leads announced which style variations would get added to the theme. Among them were designs from Jessica Lyschik, Amjad Ali, Rich Tabor and Brian Gardner. See the previews of the designs and read the full announcement.

Sergey

WordPress 6.0.2

I was a Core Tech lead for WordPress 6.0.2. This is a security and maintenance release that features 12 bug fixes on Core, 5 bug fixes for the Block Editor, and 3 security fixes. Since this is a security release, it is recommended that you update your sites immediately. All versions of WordPress since 3.7 were also updated.

On the day of the release, some of the Core and Meta tasks I helped with included:

  • Updating the Credits API
  • Committing and backporting security patches, running tests, building packages, enabling updates, etc.

If you’d like to learn more about the release process, you can find documentation for these steps in the WordPress Core handbook: Releasing Minor Versions.

WordPress 6.1

For the past four weeks I continued triaging and reviewing tickets for the next major release, WordPress 6.1, as part of my duties as a Core Committer.

I made eighty commits to WordPress core, mostly various bug fixes and enhancements. I also triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).

Some notable changes include:

  • Continuing with code modernization efforts on preparing WordPress core for PHP 8.2. Thanks Juliette! See tickets #56033 and #56514 for more details.
  • Making various enhancements to the WordPress unit test suite. See ticket #55652 for more details.

Ari

Due to a recent injury, a subsequent surgery, and the recovery that follows, I was unable to work as intensively as I would have liked this past month. But that doesn’t mean that I did fewer things… On the contrary! I just had to focus on different tasks for a while.

These past few weeks I did a lot of code reviews, and focused a lot on the future of WordPress. I’ve been thinking of ways we can help the project move forward, further WordPress’s mission to democratize publishing for everyone, and allow it to reach more markets and people.

I’m pretty excited about the prospects, and you can expect a formal proposal in the make.w.org/core blog soon.

The post A week with us: Yoast Contributor day and more! appeared first on Yoast.

]]>