Performance team meeting summary 4 October 2022

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

Announcements

Focus group updates

Images

@adamsilverstein @mikeschroder

GitHub project

  • @adamsilverstein: Not much to update, worked on a bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fix for #56442
  • @eugenemanuilov: #524 to disable JPEG subsizes generation for WebP images has been updated based on feedback from @flixos90
  • @mukesh27: Working on #525 to add a checkbox to the Media screen to enable multi-MIME type output, to match with the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. WebP implementation
  • @ankitgade: Working on background processing infrastructure related to image regeneration
    • Background job class PR #507 is merged
    • Background process runner PR is in progress and will be ready to review tonight
    • Adminadmin (and super admin) queue screen PR is work in progress
  • @khoipro: Any updates on SVG uploads?
    • @shetheliving: No one is actively working on this at the moment, so anyone can pick it up if they have time https://github.com/WordPress/performance/issues/427
    • @spacedmonkey: Not working on this right now, but may in the future. Biggest blockerblocker A bug which is so severe that it blocks a release. is that the library that everyone uses for cleaning SVGs requires PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 7+, so it would need to be forked/rewritten if we wanted backwards compatibility. If we wanted to make it a PHP 7+-only feature, it would make things a lot easier.
    • @flixos90: WP hasn’t really done that before, but don’t think it’s a no-go as long as it’s a non-critical feature
    • @spacedmonkey: PHP 5.6 is only 4% of WP installs, per https://wordpress.org/about/stats/
    • @adamsilverstein: We already do something like this with server support for images where you can’t use a format unless your server supports it
    • @flixos90: As long it gracefully falls back if unsupported and doesn’t break anything on older versions, would be totally onboard
    • @khoipro: What about sanitize and escape file uploading, and styling SVG in media preview?
    • @flixos90: Matt also mentioned a few years back that he would be open to WP offering certain features only to sites with HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information., kind of similar
    • @spacedmonkey: The creator of the library was open to support, not sure how much work we would need to do to port back to 5.6
    • @flixos90: Unless backporting would be super straightforward, I would say it’s not worth our effort and we make it 7+ only
    • @ankitgade: We can analyze what issues we see on 5.6 to evaluate how difficult this would be

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

  • @spacedmonkey: Committed https://core.trac.wordpress.org/ticket/56721 and need review and commit on https://github.com/WordPress/wordpress-develop/pull/3403
  • @spacedmonkey: Also been profiling and testing WP 6.1 betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 2 – profiling data
    • @spacedmonkey: WP6.1 beta 2 has a slower page generation time than 6.0, in some cases by a lot (0.6325 vs. 0.2929 seconds), even with fewer DB calls in a lot of cases
    • @flixos90: Did you test 1 for each scenario, or multiple and then use average/median results?
    • @spacedmonkey: Ran at least three times and did median
    • @flixos90: If we could automate, maybe do something like 5-10 runs to make it more accurate
  • Also working on dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include: a description of the change; the decision that led to this change a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. (1, 2, 3) – @shetheliving has reviewed and @flixos90 will take a look today or tomorrow
  • @khoipro: Will assign someone from their back-end team to take a look at profiling and testing, as well

Feedback requested

Site Health

N/A

GitHub project

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

Feedback requested

Measurement

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or ping in Slack
  • @shetheliving: Getting closer to starting engineering on the pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party performance checker thanks to @mehulkaklotar and @jjgrainger‘s work on a design doc

Feedback requested

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

@aristath @sergiomdgomes

GitHub project

  • No updates

Feedback requested

Infrastructure

@flixos90

GitHub project

  • @flixos90: Per the vote to bump the Performance Lab plugin minimum requirement to WP 6.0, our next release will require 6.0
  • @flixos90: Our next release, 1.6.0, will be Monday, October 17, less than two weeks from now. Any feature or enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. that you want to include in this release should be completed and merged by next Wednesday, October 12 (see #548).

Feedback requested

Module proposal: Server-Timing API

@flixos90

  • @rickjames: For server-side performance measurement, MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/.’s “slowlog” can be useful
  • @flixos90: Not familiar with that tool, but worth exploring another time and feel free to draft a proposal. The current proposal leaves the actual measurement agnostic so it would leave room to introduce a more flexible and opinionated system later.
  • @adamsilverstein: Overall love the proposal, are you proposing that this would be included in the response by default once this is added?
    • @flixos90: Yes, envision that it would be added by default
  • @johnbillion: Added a comment on the issue about headers: headers need to be sent before any output, and a lot of processing that happens in WordPress that would ideally be measured occurs after the output begins
    • @flixos90: Definitely a fair point. Even with that limitation, still a lot of benefit to having the headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. to measure everything until WP begins to render the output. This will be a known limitation eventually, but also think this will become a smaller issue with FSE sites because they typically generate all content and then it is just “printed” out, so less “work” happening after headers are sent.
    • @johnbillion: Maybe, but <head> still gets filled up by plugins and core doing processing. Would be good to think of what metrics would be useful to see and whether exposing those metrics via this APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. makes sense.
    • @flixos90: One example would be the autoloaded options query given the recent module proposal to improve that
    • @johnbillion: Does FSE actually construct its output before it’s all sent?
      • @aristath: Yes, the whole content/template gets rendered internally prior to sending any headers
    • @johnbillion: Like the idea of using the Server-Timing API header, but not sure if it necessarily works for WP
    • @flixos90: Isn’t it worth pursuing to be able to cover anything that happens prior to page output, which is a lot?
    • @johnbillion: It could well be, but would be good to see real world examples of what would be good to measure. Output buffering may not be the worst idea if the API is restricted to the plugin; definitely worth investigating.
    • @flixos90 will think about examples

Open floor

  • @aristath: Started porting SQLite as a module: https://github.com/WordPress/performance/pull/547; will discuss further next week
  • @josklever: https://core.trac.wordpress.org/ticket/55344 is related to the performance of the WP dashboard. Resources are loaded for dashboard widgets that are disabled via Screen Options, which can cause unwanted delays or issues for other widgets if there are conflicts.

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

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

#meta

Performance team meeting summary 27 September 2022

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

Announcements

Focus group updates

Images

@adamsilverstein @mikeschroder

GitHub project

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

Feedback requested

Site Health

N/A

GitHub project

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

Feedback requested

Measurement

N/A

GitHub project

Feedback requested

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

@aristath @sergiomdgomes

GitHub project

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

Feedback requested

Infrastructure

@flixos90

GitHub project

Feedback requested

Discussion: SQLite support

@spacedmonkey and @aristath

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

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

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

#meta

Performance team meeting summary 20 September 2022

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

Announcements

Focus group updates

Images

@adamsilverstein @mikeschroder

GitHub project

  • @adamsilverstein: WebP feature was reverted following Matt’s post. Still trying to determine what a canonical pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party is and if it would work for WebP by default. Still have some fixes to land for 6.1 around image quality when WebPs are output via Performance Lab plugin.
  • @spacedmonkey: Next steps for Dominant color feature
    • We’ve run out of time to merge before BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 1 cutoff
    • Feedback process was a lot slower than we thought it would be
    • Should continue to work on this and try to get it in for 6.2
    • @pbearne: Version with theme flag could be merged
    • @spacedmonkey: Merging now doesn’t feel great as there are still unanswered questions. Code is ready, but not sure what feedback will push this across the line. May need to push early in 6.2 cycle and see what happens.
    • @flixos90: Feels like another merge proposal post with a concrete timeline on a merge date could be good to put out right after 6.1, so people can provide any additional feedback. Should also note the new theme support flag approach.

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

Feedback requested

Site Health

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” in SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.
  • @shetheliving: #56040 and #56041 (two Site Health checks from Performance Lab) have been merged for 6.1 and dev notes are in progress
  • @mukesh27: PR #543 for adding can-load.php to these Health Checks is ready for review

Feedback requested

Measurement

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or ping in Slack
  • @shetheliving: Reminder about the performance testing environment work started back in March: https://make.wordpress.org/core/2022/03/22/performance-team-meeting-summary-22-march-2022/. This has stalled out since then; if anyone is interested in picking it back up, let us know.
  • @flixos90: Working on a proposal to integrate the Server Timing API into Performance Lab. We have a lack of awareness for how WP is performing server-side and this simple piece of infrastructure would allow us to measure specific features/modules of the plugin to see who they are affecting PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher performance. Should an open an issue this week or next.
  • @mehulkaklotar: Continuing to work on a proposal for the plugin performance checker tool

Feedback requested

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

@aristath @sergiomdgomes

GitHub project

  • N/A

Feedback requested

Infrastructure

@flixos90

GitHub project

Feedback requested

Discussion: Module proposal: Optimized autoloaded options

@markjaquith

  • Options are autoloaded by default, and most options stay autoloaded even after the plugin or theme that uses them has been deactivated
  • This autoloading has a cost in terms of the performance of the query that loads autoloaded options, and also because the values of these options are kept in memory
  • Discussed a lot of ways of addressing this at WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. US, and the most promising path that would have the most benefit for the most users (and fits in with this group’s philosophy on focusing on automated fixes instead of introducing new APIs) is to dynamically move options in and out of the “autoload” pool based on usage
  • Options that are used *and* are not past a certain size cutoff should be autoloaded, but large options and options that are not used, should not be autoloaded
  • Proof of concept is linked in the ticketticket Created for both bug reports and feature development on the bug tracker. and we’re looking for additional feedback
  • @pbearne already brought up the issue of options that are queried BEFORE a module could start “listening” for them to be called, but there are undoubtedly other gotchas and opportunities here
  • Especially useful would be help in developing a strategy for measuring the performance of this fix for various sizes of autoloaded options
    • @flixos90: Could leverage the Server Timing APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. (noted above) to measure the time the autoloaded options query takes, for example
  • @pbearne: Think that both @markjaquith‘s and my fixes can be used as they work best for different configurations
  • @spacedmonkey: Could we start adding a limit to the number of autoloaded options, say 250 rows? Or is the issue size in terms of memory?
    • @pbearne: If we can load just what we need, the SQL time is less
    • @markjaquith: We do this to avoid hundreds of individual queries
  • @rickjames: Is “autoloading” the thing that PHP can do for include files? I thought it was so slow as to be better to always include everything
    • @markjaquith: No, this is about quering the wp_options table for autoload = 'yes'
  • @rickjames: That gets to the lack of adequate indexes for the wp_options table; a simple change can speed up SELECTs
    • @markjaquith: There’s already an index, it’s more about the volume of data being transferred
  • @eugenemanuilov: Think we should move from defining which option is autoload-able in the database table to the option registration in WP, so a plugin/theme owner will need to register an option similarly to how settings are registered with register_setting and define whether an option is autoload-able there
  • @flixos90: Both proposals at a high level have the idea of querying what is needed, but the newer proposal does it globally while still keeping a single place of storage while the latter was aimed at having different “options lists” per template/page. The latter would be great, but it comes with heavy storage implications, so the newer proposal is probably the best place to start since it has no additional storage implications.
  • @markjaquith: Do think that the issue is data, not rows – evicting autoloaded options could help wtih both
  • @rmccue: Have run into performance problems with pulling autoloaded options from object cache, so agreed that this is an issue
  • @markjaquith: Also issue with memcache’s default config being size-limited
  • @spacedmonkey: Could we use register_settings to define if an option should be autoloaded?
  • @rmccue: CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. problem is that autoload is true by default, which is what causes issues
  • @markjaquith: Two approaches – @pbearne optimized for “literally just what this page needs”; my POC was for “never autoload things that aren’t used”
  • @spacedmonkey: So will we store an array of used options in options table?
    • @markjaquith: Current implementation only stores timestamp of last calibration, but with some additional storage we could minimize dynamic re-adding of autoloaded options
  • @rmccue: Autoloading options should minimize DB/cache calls, but not necessarily replace them. The heuristic of what should be autoloaded is key to this proposal.
    • @markjaquith: To me, it’s “things that are used and aren’t unreasonably large.” Can also honor autoload='no' while not honoring autoload='yes' as chosen by developers.
  • @spacedmonkey: Don’t love the idea of storing an array of keys. How do you generate the array? What is the average page load?
  • @rmccue: To move forward, we need a concrete proposal for how the heuristic works. Will look into the networknetwork (versus site, blog) saturation problems we’ve run into get an idea of what “unreasonable” might lok like.
  • Next steps: @markjaquith will work on detailing the heuristic further in #526 and when it’s ready, we’ll schedule another discussion for a future chat

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

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

#meta

Performance team meeting summary 16 August 2022

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

Announcements

Focus group updates

Images

@adamsilverstein @mikeschroder

GitHub project

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

  • @tillkruess: Focused on getting the Object Cache Site Health test merged into core in https://github.com/WordPress/wordpress-develop/pull/2890 with @furi3r; core developer feedback appreciated

Feedback requested

Site Health

N/A

GitHub project

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

Feedback requested

Measurement

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or ping in Slack
  • @shetheliving: Reminder about the performance testing environment work started back in March: https://make.wordpress.org/core/2022/03/22/performance-team-meeting-summary-22-march-2022/. This has stalled out since then; if anyone is interested in picking it back up, let us know.

Feedback requested

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

@aristath @sergiomdgomes

GitHub project

  • @adamsilverstein: For the preload resources work, proposed a new, more declarative way to specify preloads in https://github.com/WordPress/wordpress-develop/pull/3089; appreciate any feedback.

Feedback requested

Infrastructure

@flixos90

GitHub project

  • N/A

Feedback requested

Open Floor

  • @olliejones: There’s a Site Health and Troubleshooting plugin, and similar but not identical functionality in core. Is there any plan to incorporate that pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party into core? Or do Performance Lab modules need to target both environments?
    • @shetheliving: Someone manages that plugin, but not sure who; might be worth asking in the #meta channel

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

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

CSS Chat Summary: 18 March 2021

The meeting took place here on Slack. @notlaura facilitated and @danfarrow wrote up these notes.

Housekeeping

  • Following last week’s discussion we agreed that, from 01 April onwards, the meeting time will advance from 10pm to 9pm UTC to accommodate daylight saving time
  • The bugscrub time will similarly be brought forward one hour from 01 April onwards

Project updates

CSSCSS Cascading Style Sheets. audit (#49582)

  • @ryelle‘s audit tool is nearly ready to share with the wider community once the “container audit” feature is in place
  • The PostCSS PR is tested & ready to merge. UPDATE: Now merged, thanks @ryelle!
  • @notlaura asked if the tool is ready to have its repo moved into the WordPress org. @ryelle will ask in #meta

Colour scheming (#49999)

  • We will have another mock-up share at the next meeting (25 March). If you’re able to please bring a mock-up of a component of your choice using custom properties
  • @ryelle reported having updated her mockup to use a roughly --prefix--location--property--state naming pattern e.g. --wp-admin--button-primary--hover
  • In @ryelle’s example some custom properties are derived from other custom properties e.g. --wp-admin--button-secondary--text: var(--wp-admin--button-primary). Users could override these derived values as required

Open Floor + CSS Link Share

With that the meeting drew to a close. Thanks everyone!

#core-css, #summary

Editor chat summary: Wednesday, 10 June 2020

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

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

Gutenberg 8.3.0 has been released. The team continues iterating on two big projects – Full Site Editing and Navigation Screen- while improving other areas of the editor as well.

Includes some great features like padding support for cover blocks, color support for link, enhanced blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. toolbars. Check out the release note for more details.

Monthly Plan

The high-level items that Gutenberg contributors are focusing on for the month are available here

Weekly Priorities

There was limited discussion on the specifics.

Looking to land the Block Inserter for 5.5. Extra eyes are needed on this PR and @ellatrix is looking at reusing an existing endpoint for the front end images, but there could be the possibility an experimental APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. is shipped. The issue will be discussed by the REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. team.

Task Coordination

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

@mkaz

  • Working on a new Create a Block tutorial based on the create-block and wp-scripts for developers new to block development.  

@michael-arestad

  • Working on Full Site Editing related items
  • The main priority being WP 5.5 would be reviewing anything related to it, especially issues/PR’s we want to get in, but are stalled or need design feedback.
  • I would appreciate pings on any issues for 5.5 that could use design eyes.

@annezazu

  • Working on some documentation and wrangling proper feedback tools for the Full Site Editing outreach program. This documentation will be specific to helping those in the program know how best to provide feedback, setup Gutenberg.

@zebulan

  • Working on adding a heading level checker. Design feedback to ensure an accessible UIUI User interface would be appreciated 22650.
  • As a follow-up to 22650, working on a PR that refactors PostSavedState to use hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.. (some technical questions that need addressing before I can progress)
  • PR to revise the Save draft and Preview buttons should be ready for final reviews now.
  • Custom HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. block polish PR needs reviews.
  • Table of Contents block PR is still stuck.
  • List block color controls PR is also stuck.
    A code quality PR to refactor ReusableBlockEditPanel to use hooks is ready for review.

@ellatrix

  • Mostly working on image editing refinements (since we’ll try to get it in 5.5) and experimenting with the light block API.

@youknowriad

  • Working essentially on the Inserter and helping with a few other things like Adminadmin (and super admin) Colors handling.

@itsjonq

  • Continue focus on the Cover block, have PRs/branches that enables:
    • positioning coordinates for Video backgrounds (+ improved positioning controls).
    • Extract dominant color from the Cover image
    • Apply background filters (e.g. saturation, contrast, etc… ) (works for video too!)
  • Continuing efforts to improve @wordpress/component components.
    The goal is to make them feature-rich so that the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress./3rd party has less overhead when using them. This includes improving internal state management, style rendering, cross-component integration, and built-in UXUX User experience features (e.g. drag to update).

@paaljoachim

  • Working with @mkaz on Create a Block tutorial
  • General Gutenberg design triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors..

@toro_unit

  • Working on getting rid of errors that occur in the console 23019, 22967.

@ntsekouras

  • Working on changing the layout of transform Block to a vertical list and changing a bit the Styles preview 23028.

@retrofox

  • Improvements in the MediaPlaceholder and MediaReplaceFlow, which in short allow us to control the uploading process a little bit more, knowing what are the files that are being uploaded by the user.

Open Floor

@cvoell

  • The Gutenberg-Mobile + Gutenberg Web “Monorepo” effort seems to be approaching final PR Reviews in the next 1-2 weeks, so we wanted to give everyone here a heads up about that.
  • Final PR should go from Draft to Ready for review in the next 2-3 days.
  • Changes that web devs might see are summarized here.
  • For now, would like to highlight
    • We added 4 new CI jobs (as GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ actions) which will run on each PR for e2e testing of the mobile demo app.
    • Three new packages: reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-native-aztec, react-native-bridge and react-native-editor
    • A new npm command npm run native to run native scripts in packages/react-native-editor/package.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.
    • After Monorepo changes are merged, you will be able to try the demo app by running npm run native start:reset followed by npm run android (or npm run ios) in a new terminal.
    • You will need either the Android SDK or XCode installed on your machine (a docker based script should come later).

@mkaz

Documentation versioning

  • It was discussed yesterday to switch Gutenberg docs publishing to DevHub back to off the master tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.), and then figure out how to publish sets of versioned docs based off wp version tags. I’m not sure what the next steps should be. I can modify scripts and process and work on it, but don’t know who/where/what/how
  • The problem of using a master is that things change that aren’t in core. So the idea was a version switcher, for a complete set of docs Or somehow version on a per-function/feature, which is how Codex/Reference works in Core.
  • @youknowriad A version switcher would be great. I’d suggest you should ask in #metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. or try to find a developer familiar with the meta repo to help here.
  • I’ll check with them and see what we can work out

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

#core-editor-summary

Dev chat summary, May 5, 2020

@davidbaumwald facilitated the chat with this agenda. @sageschilling wrote this summary. @marybaum edited.

Announcements and highlighted posts

CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. team repTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. elections

Nominations for Core Team Reps are still open until May 14. After that, we vote! Thanks to @jeffpaul for getting that process underway.

WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe Online 2020 Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/.

This year you, too, can join WordCamp Europe’s Contributor Day – even if you don’t live in Europe and weren’t planning to be anywhere near there. But especially if you do! Find all the details in the WCEU post here.Getting a handle

An Experimental Outreach Project for Full Site Editing

Thinking hard about full-site editing? You’ll want to join this experimental outreach project. The deadline to comment on the post or join up is May 14. Questions? Ask @chanthaboune.

APAC Dev Chat + Town Hall Meetings

See the post here. The deadline to comment and volunteer May 18

Core Team profile badges

And finally, a lot of developers (ed. note: and more, like your two-bit copy editor here!) just got Core Team Badges.
The #meta team added everyone who was a Noteworthy Contributor in the core-developer list, going back at least to 5.0; read all the details in this meta-trac post. 

The Core team always wants to attract and support new contributors. So from now on, every release that publishes a credits list will auto-grant the badge.

WordPress 5.4.1

And a big announcement, WordPress 5.4.1 has been released!
WordPress 5.4.1 is now available! This security and maintenance release features 17 bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes in addition to 7 security fixes.

Because this is a security release, it is recommended that you update …Merge Announcement: Plugins & Themes Auto-Updates
and to go along with this,

Upcoming Releases

@chanthaboune will release the WP5.5 post this week, so keep an eye out for that!

David will lead another early scrub for 5.5 next week. Date and time TBD. Keep an eye out on https://make.wordpress.org/meetings/ 

@sageshilling mentioned the media team is looking at patterns to add for gallery and would welcome some guidance.

Components Check-in

@dlh brought up the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ site-editing project as it relates to the customizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings..

  • What can happen in the Customize component that would help pave the way in core for the site-editing component?
  • How can developers familiar with the Customizer help the Gutenberg team?
  • What’s the best use of time in the Customize component for non-Gutenberg tasks? Is it worth it to patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. bugs or build enhancements?

@youknowriad mentioned he’d be happy to have such a discussion and is looking forward to working more in collaboration.

@chanthaboune suggested posting time/day for the discussion on make/core, since plenty of people will join in.

@dlh offered to stop by #core-editor to find a time.

Plugins & Themes Auto-Updates

@audrasjb shared:

  • #50052 Plugins & Themes Auto-Updates is a nearly blank ticketticket Created for both bug reports and feature development on the bug tracker. for the Auto-Updates feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. — Azaozz and others gave code suggestions. They have updated and sent a full patch to TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..
  • Also, the feature plugin has just auto-updated to 0.7.0 — download and test, please! https://github.com/WordPress/wp-autoupdates/releases/tag/0.7.0
  • They’ll give it few days to soak a bit and to be tested before sending the merge proposal on to Trac.

#auto-updates, #core, #dev-chat, #full-site-editing

Summary of Core Privacy Office Hours, Sept. 25th 2019

Below is a summary of the discussion from this week’s CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Privacy chat (agenda, Slack Transcript).

Agenda Item: 5.3 Bugs

The following tickets were flagged as bugs for 5.3 privacy component and focus;

  • #37782 – Duplicate Page Entry in View All Pages when generating a Menu
  • #43974 – Both personal data request processes should follow the same convention
  • #44038 – Change personal data export path stored in request metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. to relative paths
  • #44314user_confirmed_action_email_content filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. run on two different strings
  • #44669 – Privacy Notification doesn’t clear after dismissing notification_wp_privacy_send_erasure_fulfillment_notification.
  • #46829 – Denote the special pages in CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings. Menu editor
  • #47366 – Privacy Policy page dropdown needs a max-width

#37782 is ready to commit if any committers can provide a final review.

Agenda Item: Privacy Data Request Form

Feature Plugin Proposal – https://make.wordpress.org/core/2019/09/04/feature-plugin-proposal-privacy-data-request-form/

We (@audrasjb & @garrett-eclipse) will be joining a future #meta chat to propose adding the pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to the Feature plugins list.

Agenda Item: Consent and Logging Mechanism for User Privacy

Feature Plugin Discussion – https://make.wordpress.org/core/2019/08/07/feature-plugin-discussion-a-consent-and-logging-mechanism-for-user-privacy/

@idea15 mentioned there was some great comments on the thread many of which support the idea and proposal.

Next steps were discussed and @williampatton offered to review and start on the momentum for the work required.

@idea15 mentioned it would be nice to have the work ready to roll at least 60 days before the CCPA deadline believed to be on July 1st.

Agenda Item: WP User/Pro Survey

@idea15 flagged some earlier discussions on the survey with several questions put forth regarding user needs for privacy;
https://make.wordpress.org/updates/2019/06/28/updates-to-the-wordpress-user-developer-survey/

We also touched on that in the consent and logging proposal  https://make.wordpress.org/core/2019/08/07/feature-plugin-discussion-a-consent-and-logging-mechanism-for-user-privacy/#comment-36281 

The consensus was that like other teams, we need data on what users and contributors actually need from us – what their concerns are, what their business needs are, what resources they expect from us, what tools they need us to build.

In this week’s post on the survey (above), which links to the full set of questions https://docs.google.com/document/d/171KgbxvNukyuuHwLiY14yhqfbs7X5KBkw6hvbEcQZ9k/edit

There are no questions about user needs there, for us or for any other team.

It feels like all the feedback about what should go on the survey was ignored.

So, this is worrisome that the once-a-year opportunity to gain critical information to support our work is at risk of being lost.

So, let’s all take a day or two to review both posts and the draft script, with a goal to feedback with a team comment on Friday.

@idea15 started a gDoc (https://docs.google.com/document/d/1ZXfT-Mvvfxa-ZjD9cSQG9BKvtTAhXuZb0QS5lK47BGY/edit?usp=sharing) in order to collaborate on some suggested questions for privacy.


#core-privacy, #privacy

Dev chat summary: July 17

@earnjam led the meeting. @marybaum took notes and is writing this summary.

Announcements

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

@earnjam announced the release of Gutenberg 6.1 last week. New features include animations/motion to blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. reordering, improved messaging for REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. errors and more.

Check out the release post for more details: https://make.wordpress.org/core/2019/07/10/whats-new-in-gutenberg-10-july/

Look for version 6.2 RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). to land next week.

PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Coding Standards

@pento posted a followup to some proposed coding standards changes from a few months back.
See the decisions on these changes here (they might surprise you!): https://make.wordpress.org/core/2019/07/12/php-coding-standards-changes/

And keep in mind these affect only the code for WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. In your own Themes and Plugins, use the coding conventions that make sense for you.

Releases

5.2.3

With four tickets in the queue and none of them affecting functionality, it’s still not clear that they warrant a separate 5.2.3 release. Scheduling for that is still pending further info on a roadmap for 5.3, which should land in early fall.

5.3

As yet the Core team is progressing on current open tickets — there are 57 in the queue — while @chanthaboune continues gathering data from component maintainers on feature priorities for 5.3.

Component maintainer updates

Core-media

@azaozz asked for more eyes on #40439.

If you can help test, please check out the ticketticket Created for both bug reports and feature development on the bug tracker. or head to #core-media.

Site-health

@clorith pointed to the call for input for bumping the PHP recommendation and said that soon a Make blogpost will outline next steps—and next versions.

For now, the site-health team isn’t looking to raise the hard minimum. This will be a soft bump up to nudge users toward the minimums that will follow.

Open Floor

Triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. Team

@joyously asked about progress from the Triage Team, and the responses came from several quarters.

@desrosj posted a link to his three-month summary: https://jonathandesrosiers.com/2019/06/wordpress-triage-team-3-month-reflection/ and plans to post more often on https://make.wordpress.org/updates.

@karmatosed mentioned that Design holds two triages a week, and that from where she sits, triage seems to be going gangbusters and spreading across the WordPress Project.

@azaozz pointed the group to his efforts on TinyMCE: https://core.trac.wordpress.org/query?status=accepted&status=assigned&status=new&status=reopened&status=reviewing&component=TinyMCE&order=priority

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

Gutenberg Phase 2

Newcomer @Lu asked about the timing of Gutenberg Phase 2, with a particular interest in widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. blocks. @earnjam answered with a summary of the release discussion earlier in the chat.

Strings

@marybaum asked the group for their thoughts on a more systematic, global approach to the copy in strings.

For now, the group agreed to have #meta add two keywords to tickets—needs-copy-review and has-copy-review.

Props to @garrett-eclipse, who opened meta#4609 and its counterpart meta#4610 on the spot.

Right at the close of the official chat, @audrasjb linked to https://make.wordpress.org/core/handbook/best-practices/post-comment-guidelines/#style-and-substance

#dev-chat, #gutenberg, #releases, #strings, #triage-team

#summary

The Block Registration API – status update

Build a WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ directory for discovering blocks, and a way to seamlessly install them is one of the 9 priorities in the 2019 roadmap. This post tries to summarize work done so far and identify all the next steps required to land this project in WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. later this year.

It has been over two months since the MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. team published a post intended as a starting point for discussion and new ideas for the Block Directory, and a new type of plugin:

Put briefly, I’d like to propose a new type of WordPress pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party that provides blocks and nothing else: Single BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Plugins. These will be hosted in a separate Block Directory section of the Plugin Directory. They will be JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.-based, and each plugin will register a single Block. And they will be searchable and installable from within the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ editor itself.

@tellyworth

Currently, new Gutenberg blocks can be provided by plugins, which often register many blocks, and which are managed from outside the editor. The proposal mentioned above outlines a new type of simple block-based plugin that is intended to be seamlessly installed from within Gutenberg itself. It was later followed up with the call for design on installing blocks from within Gutenberg. There was an essential technical aspect highlighted in the post:

The WordPress.org APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. will provide an endpoint for searching for blocks by name and description, and return metadata similar to that of plugins. Gutenberg’s Inserter could use that endpoint to also show relevant block plugins that are available to install, with a button and process for seamless installation.

@tellyworth

This new endpoint is going to be based on the Block Registration API RFC which intends to address the server-side awareness of blocks and simplify the block discovery for the block directory project. In practical terms, it means that we are seeking for a solution where block type registration is declarative and context-agnostic. Any runtime (PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher, JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors., Android, iOSiOS The operating system used on iPhones and iPads. or other) should be able to interpret the basics of a block type and should be able to fetch or retrieve the definitions of the context-specific implementation details.

Core Editor team reached the point where we believe that the Request for Comments is close to being finalized. However, there are still some areas where we feel that other WordPress teams could have a significant impact on the proposal.

Internationalization

The way how translations are handled inside JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. files is something novel for WordPress core. The current proposal for PHP follows the existing get_plugin_data core function which parses the plugin contents to retrieve the plugin’s metadata, and it selectively applies translations dynamically. It would be also similar for JavaScript, with the remark that we plan to implement a custom Babel plugin which would mirror PHP behavior for ESNext code. The transformation would happen during the build step to ensure that files can be statically analyzed before scripts are enqueued. You can find more details in RFC document in the Internationalization section. There is also an issue#15169 opened which describes the technical details of the proposed JavaScript implementation of the Babel plugin.

Core JS team discussed this topic at the end of the weekly meeting on Apr 2nd. We have received great feedback from @swissspidy which helped to shape the proposal. However, we still encourage other Polyglots teamPolyglots Team Polyglots Team is a group of multilingual translators who work on translating plugins, themes, documentation, and front-facing marketing copy. https://make.wordpress.org/polyglots/teams/. members to voice their opinions.

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

The long term vision for the block discovery in WordPress includes:

  • Fetching the available block types through REST APIs.
  • Fetching block objects from posts through REST APIs.

The proposed implementation for the server-side awareness of block types should ensure that it stays intact with all recommendations that REST API team might have. That’s why we encourage the REST API team to get involved in the process early on. There is no immediate need to start working on new block type related API endpoints. However, it would be great to have it included on the roadmap. Ideally, they should stay as close as possible to the WordPress.org API and the final shape of the endpoint for searching for blocks.

#block-directory, #core-editor, #gutenberg, #i18n, #meta, #rest-api