Editor chat summary: 08 January 2020

This post summarizes the latest weekly Editor meeting, held in the #core-editor Slack channel, on Wednesday, January 8, 2020, 14:00 UTC. These meetings coordinate collaboration in the development evolution of 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/ project.

Gutenberg 7.2.0

The first item of the agenda is Gutenberg 7.2.0! @ella is working on the final release. The release candidaterelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). was published on Monday and is available here. It is a bigger release than usual because of the pause we had for the holidays.

The final release will contain fixes for four regressions that we caught since Monday.

Weekly Priorities

The post with the priorities for the month will be published soon and we can discuss the bigger picture in more detail in the comments when it is ready. Based on conversations we had in the past and in the general direction of the project it looks like these are the main things we should focus on during the next week:

  • FSE work (namely: separate edit UIUI User interface and implement/merge additional blocks),
  • Updates to the blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. UI, namely the lighter block dom and the new improvements to the UI,
  • Polishing the navigation block.

Task Coordination

@karmatosed working on:

  • Navigation block triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors./feedback.
  • PR 19255 Global styles designs 
  • Triage, focusing on feedback and priority labels on design issues.

@andraganescu working on:

  • starting 8 Jan 2020 all media blocks (file, video, audio, image and media+text) have the new media replace control implemented — props to @soean
  • for the next week I’ll be working on refinements to the navigation menuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. and other media replace control open issues
  • I could use some eyes on these two very tiny PRs:
    • PR 19504 Adding always on display of media URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org
    • PR 19461  When editing a navigation link, replace the current label with the title of page or post

@gziolo working on:

  • Patterns 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. integration with the Inserter

@koke working on

  • PR 18055 Close to shipping Page Templates/Block Patterns
  • PR 17335 I’d like to know more about the plans for that on the web and how we can consolidate the implementations better (or at least the parts that overlap) 

@mapk working on:

  • PR 19259 Creating template variations
  • PR 19499 Moving the Welcome Guide link 
  • PR 19400 Moving the Manage reusable blocks link

@itsjonq

  • Refocusing on Global Styles working with @karmatosed and perhaps others to get things working

@getdave working on:

  • Project 31 Focusing primarily on enhancements and fixes to the Nav Block.
  • PR 19387 UI (and accompanying 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/. endpoint) to allow look-up of details about remote URLs (such as <title> 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.)) for display in hyperlink creation UI (LinkControl).

@retrofox working on:

  • Project 31 also on polishing the Navigation block too. As usual, we track the progress in the project board 

@bart working on: 

  • PR 18897 Navigation Block adds an empty link for untitled pages
  • PR 18321 Be consistent where we say edit or change
  • PR 18318 Navigation Block: Reduce toolbar options for menu item

@jorgefilipecosta

  • This week — a script to automate WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. package updates and committed the first automatically generated package upgrade 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.. I reviewed some PR’s and worked on some bugfixes (two were cherry-picked into the release).
  • Next week — Automating package updates, namely by moving the script to core. I will explore dividing the way styles are loaded in core to unblock a challenge we have on the mechanisms to simulate media queries. 
  • Reviewing PR’s and working on my current PR’s/fixes.

@ella

  • Currently focussing on lightening the block DOM and performance.

Open Floor

Adding ColorControl component

@welcher is looking for review of PR 19288 Adds ColorControl component introducing a color picker without a pallet

@jorgefilipecosta pointed out the component “PanelColorSettings” is used in core blocks. At first sight it seems this component would allow everything the new component ColorControl allows with the primary concern being this solution includes a component that core itself does not use yet.

@chrisvanpatten pointed out the main difference is that ColorControl could really be described as “ColorPickerControl” for cases where we don’t want to offer colors from a specific palette

Introduce PluginManager class

@welcher asked for input on PR 19485 Introduce PluginManager class

This PR proposes disconnecting 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 API function calls from direct access to the low-level datatype. This intermediary makes the API more semantic, allows for future changes/updates more easily and is meant to address @youknowriad ‘s concerns about the API not being fully semantic. This PR would be a precursor to changes to the API such as #16384. Also it introduces a new filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. to allow the PluginManager class to be filtered allowing for ease of testing new API features and underlying data types. This last item is not the main purpose of this PR and is easily removed.

@welcher indicated this is a larger conversation to get started as the issue of the API not being semantic enough has blocked enhancements as seen in PR 16384. @jorgefilipecosta suggested allowing time for people to review the PR asynchronously and adding discussion to a future agenda.

Cover Block Background Image Size Selector

@paaljoachim asked for design feedback on PR 19223 “Cover Block: Add Background Image Size Selector”. @karmatosed suggested and added labels so it doesn’t get passed over for review

@jorgefilipecosta noted:

  • The first issue is UI and is labeled for feedback, so it should soon be discussed/reviewed.
  • The second issue is technical the images are loaded as css property `background`. Due to limitations of CSSCSS Cascading Style Sheets. not having an equivalent to srcset( possible work around https://drafts.csswg.org/css-images-4/#image-set-notation), the browser will always download the same image size regardless of device.

A possible fix is to use an image element but use CSS to mimic look of background as done for video backgrounds. Post comments on this solution option in 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/.

@jeffreycarandang made a similar suggestion as @jorgefilipecosta  using absolute positioning <img /> instead of background-image for Cover Block which would allow responsive image sizes, noting the biggest issue to solve is the Focal Point Picker. 

Image Handling

This is a related issue to the Cover Block Background Image Selector

@azaozz Issue 6177 offers a “mini-proposal” on how to handle images in the editor and the front-end (follow-up from #4914).

Latest Post Block

@FahimMurshed Issue 13584 “Latest Posts” blocks need “pagination”/”Load more” feature.

Looking for design feedback or propose a potential design for the block.

Triage PRs

@mkaz requested self-triage because the issue count is almost 2,000 with 400+ open PRs. If you have opened an issue or PR, please confirm they are still valid. You can see your list by filtering by Author. @Jorgefilipecosta agreed and pointed out a good way to contribute is by reviewing with the added bonus that you also learn with what other people have done.