Media Meeting Recap – November 12, 2020

The following is a summary of the weekly media component meeting that occurred on Thursday, November 5, 2020 at 15:00 UTC. Weekly media meetings are held every Thursday at 15:00 UTC. A full transcript can be found here in the #core-media room in the Make WordPress Slack.

Attendees: @antpb, @sageshilling, @johnbillion, @paaljoachim, @hellofromtonya, @mista-flo, @hongnizzle

5.6 Remaining Tickets

@mista-flo mentioned two tickets that were not included in the 5.6 milestone but should have. These have been committed as of today.

#39968Media Library: deleting all items on the last page loses the pagination/navigation buttons and shows message – The ticketticket Created for both bug reports and feature development on the bug tracker. is related to existing changes in 5.6 and wasn’t added to the milestone. This has been reviewed and committed.

#51396[Media upload.php] Switch back from grid to list mode reopen the modal – Consensus from those present in the media meeting was that this was a safe change to include in the 5.6 milestone. It has since been committed.

Because there wasn’t time to complete the agenda item to review new tickets that require attention, @antpb is proposing 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. scrub away from the regular meeting times. The list has grown quite a bit, so any assistance is appreciated! Please leave a comment below with a time that works for you.

Props @antpb for proofreading and final review.

#core, #media, #summary

Media Meeting Recap – November 5, 2020

The following is a summary of the weekly media component meeting that occurred on Thursday, November 5, 2020 at 15:00 UTC. Weekly media meetings are held every Thursday at 15:00 UTC. A full transcript can be found here in the #core-media room in the Make WordPress Slack.

Attendees: @antpb, @johnbillion, @sergeybiryukov, @desrosj, @hongnizzle

5.6 Remaining Tickets

#41648Alignment issue on media-new.php when browse uploader screen is active – Currently owned by @antpb. The ticketticket Created for both bug reports and feature development on the bug tracker. will be reviewed and committed by end of day November 6, 2020.

#22363Accents in attachment filenames should be sanitized@antpb will be reviewing ticket to confirm pending issues have been addressed before closing.

#51665wp_get_image_editor() ->save stopped creating the directory in 5.6-beta2-49360@mikeschroder has responded to ticket and there are still tasks to be completed.

#42663Imagick support for stream wrappersDev 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. are pending for this ticket. Otherwise, if no notes are available, then the commit message describes the changes very well.

#51685: Media Element CSSCSS Cascading Style Sheets. Issue : Some layout display crop – Per @antpb, this ticket has recently moved to 5.6 as a fix to some UIUI User interface bits. Very recently refreshed. Will be completed by @antpb.

With these pending tickets addressed, the milestone will be cleared! Thank you everyone!

Props @antpb for proofreading and final review.

#core, #media, #summary

Media Meeting Recap – October 29, 2020

The following is a summary of the weekly media component meeting that occurred on Thursday, October 29, 2020 at 14:00 UTC. Weekly media meetings are now held every Thursday at 15:00 UTC. A full transcript can be found here in the #core-media room in the Make WordPress Slack.

Attendees: @antpb, @sageshilling, @mista-flo, @hongnizzle, @johnbillion 

Upcoming Meeting Schedule

The team discussed moving the regular meeting time to adjust for daylight savings time. It was agreed moving forward, the meeting will be taking place on Thursdays 15:00 UTC time as opposed to the current 14:00 UTC time. 

5.6 Remaining Tickets

#50972media_handle_sideload() does not allow $post_data to override – Currently owned by @sergey and set to reviewing, this ticketticket Created for both bug reports and feature development on the bug tracker. needs unit tests at the moment. @johnbillion mentioned that the functions aren’t very testable without refactoring, so the group agreed this ticket is a candidate to move to 5.7.

#41648Alignment issue on media-new.php when browse uploader screen is activePatchpatch 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. is ready to go and @antpb will review and commit. 

#39968Media Library deleting all items on the last page loses pagination/navigation buttons – This has been addressed by @mista-floand is ready for review. It was agreed that this was related to existing changes in 5.6 so it is safe to test and commit before the next 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. cycle.

#51396[Media upload.php] Switch back from grid to list mode reopen the modal. – This is a quick fix for an existing 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.. @mista-flo mentioned that this is not a critical bug so please chime in in the comments below if you have any thoughts on this fix being implemented in 5.6 or if it should wait for 5.7.

Props @antpb for proofreading and final review.

#media, #summary

Minutes: Core Privacy Meeting 19 August 2020

The Consent 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.:

The Consent API is the oldest of the privacy initiatives currently under active development, not yet merged into CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
It was created in response to the following ticketticket Created for both bug reports and feature development on the bug tracker.: https://core.trac.wordpress.org/ticket/44043 (Framework for logging/retrieving a user’s consent state)
The proposed feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. can be found here: https://wordpress.org/plugins/wp-consent-api/
The code is extremely light-weight (13KB, excluding the readme.txt and the licence).
The Consent API could greatly benefit from a wp_set_cookie(); function in WordPress Core, which would make adoption by pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party and theme developers more likely than the current has_consent(‘type’) approach.
These two items have natural synergies and would do well scoped together.
In its current form, the Consent API does not have any User Interface.
However, it would be more valuable to allow registered users to save their consent (functional, preferences, anonymous statistics, statistics and marketing) more permanently under their profile page for when they are logged in. There could also be settings for whether or not to make the profile visible to search engines, etc.
Logged out users, or users who are not signed up for an account, would not have a UIUI User interface in Core, but instead their UI would be provided via a cookie banner or comprehensive consent management plugin.

The Disclosures Tab:

The Disclosures Tab is intended to aggregate the information collected from individual disclosures.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 in individual plugins, themes and Core.
Compiling a disclosures.json file for Core would be a significant undertaking, as, among other things, it is intended to disclose any external references (calls to other sites, available APIs, feeds, etc.)
The intention of the tab is to help site owners and admins to understand what information their site collects, where it is stored and where it is sent.
This will help site owners / admins to make more informed privacy-related choices and understand their privacy risk profile.
Any actual “controlling” (the Permissions Tab) is likely more suited as an optional plugin.
The Disclosures tab would require creating a JSON schema and writing a function (first in a plugin and then in core) to validate the schema.
The UI would most likely exist as a new tab under the Settings tab.

Enter the Local AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. Project:

CNDs have privacy considerations in that, at least in theory, it is possible for the CDN to track users across sites. Some CDNs do use data obtained this way as a source of marketing analytics data. Furthermore, the hashing that is used can be brute-forced, which may lead to unwanted disclosures of someone’s identity.

The Local Avatar Project has tremendous value as a case study in best practices.
Avatars are a highly relatable way to explain complex privacy concepts to users and developers like.
Furthermore, it has tremendous persuasive potential for achieving developer buy-in, as a common refrain includes “But avatars do the same thing!”

The UI for registered users would be located on the user’s profile page.
This UI would allow a registered user to upload an avatar (and could be extended by plugin to allow for more options, like selecting from a pre-set).
The UI for authorized users would be located as a new tab under the Media tab.
The UI for site-level settings would be located where the avatar settings are currently located, as this would most likely be the most intuitive for users.

Vision:

Each of the above projects can be developed in a modal way in order to achieve a cohesive privacy-by-design vision.
This would require distinct, but complimentary education drives for developers and for site owners / admins.

#consent-api, #core-media, #core-privacy, #disclosures-tab, #local-avatar-project, #minutes

Agenda: Office Hours 19 August 2020 at 18:00 UTC

@paaljoachim has asked what the UI needs to look like for a Privacy screen in Core. You can read the conversation here: https://wordpress.slack.com/archives/C9695RJBW/p1597418745430800 (a Slack account is needed)

  • Site-level privacy
    Initiatives: 1.) Disclosures and Permissions Tab; 2.) Local AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. Project (in collaboration with the #core-media team)

    The DPT would require writing a JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema, as well as a coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. function to validate it (hopefully in collaboration with the #core-restapi team).
    The UIUI User interface would most likely be under Settings -> Privacy.
    This interface should help site owners / admins understand what information their site collects (by means of individual plugins, themes, as well as Core), where it is stored and where it is sent.
    Ideally, this would provide a mechanism for the site owner to prevent data from being transmitted off-site / make choices with regards to third party access.

    Part of the Local Avatar Project would overlap with site-level privacy in the following areas: Settings, Permissions and Library.
    There is currently still a discussion as to whether a fully-fledged library is needed (defined as that image 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.-data needs to be edit-able).
  • Website-visitor level privacy
    Initiatives: 1.) Consent 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.; 2.) Local Avatar User Upload Screen

    The Consent API in its current form is not intended to have any UI.
    This is due to the fact that website visitors who are not registered / not logged in still need to be able to exercise privacy choices.
    However, it may be nice to allow logged-in users to save their privacy choices on a more permanent basis, perhaps by making use of user_meta. In this case, there would need to be a UI on the user’s profile screen to support this.
    There would presumably still be no UI for users who are not logged in. A UI could be provided by means of a consent management 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.

    Additionally, the Team needs to discuss which filters / functions may be necessary in Core in order to convert the Consent API feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. into a more fully-fledged API, e.g. wp_set_cookie();

    Part of the Local Avatar Project would overlap with website-visitor level privacy. This would mainly be in the following area(s): User Profiles. For example, users may want to indicate that they do not wish for their avatars to be indexed by search engines.

Please join us for this week’s office hours to discuss what these solutions may look like!

#consent-api, #core-privacy, #disclosures-tab, #local-avatar-project, #privacy

Media Meeting Recap – June 25, 2020

Here’s a summary of the #core-media chat from June 25, 2020. Weekly media meetings happen on Thursdays at 14:00 UTC; see the full transcript here, in the Make WordPress Slack.

Attendees: @paaljoachim, @joemcgill, @desrosj, @chaion07, @cdog, @sageshilling, @antpb, @afercia, @swissspidy, @JJJ, @pbiron

Discuss Media 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 below post was discussed as an effort to bring visibility to the changes in image editing. Please take a moment if you haven’t to consider any Media implications of the changes. Many great ideas have been documented in the post.

Ticketticket Created for both bug reports and feature development on the bug tracker. #50105: Remove infinite scrolling behavior from the Media grid

#50105 was discussed and there is some help needed testing the most recent 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. to remove the infinite scrolling behavior in Media grid. Separately from this issue, a new 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. was found that needs some attention. The unintended consequence of the changes were that the number of items counted for the “Load More” button are incorrect as they calculate images that do not render. The ticket at minimum before 5.5 needs a more accurate count to better represent what is left to load. An issue to track this can be found in #50410.

Media Meeting Continued June 26 at 14:00 UTC

One topic that did not get a chance to be discussed was #16020 “Upload custom avatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. for user in Dashboard” which was recently commented with a recommendation to remove from the 5.5 scope. Given the timeframe and wide range of complexities, this needs some time to:

  1. Discuss tomorrow at 14:00 UTC to determine next steps
  2. Collaborate with the Privacy team to ensure this is done in the best way for everyone and in a featured 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.

Please feel free to continue the momentum of this issue join in on the discussion tomorrow.

#core, #core-accessibility, #core-media, #media, #summary

Media Chat Agenda: 24th June, 2020

This is the agenda for the weekly Media Meeting scheduled for Thursday, June 24, 2020, 04:00 PM GMT+2.

This meeting is held in the #core-media channel in Making WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

– Topics to Discuss

Implications of the proposed experimental 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 for image editing: https://make.wordpress.org/core/2020/06/14/shipping-experimental-endpoints-in-core-rest-api-meeting-summary-june-11-2020/

#50105: Remove infinite scrolling behavior from the Media grid – Discuss next steps. Seems that this could use testing and dev-notes. Let’s see how we can help here!

Custom AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. feedback that @cdog provided last week:
https://make.wordpress.org/core/2020/06/18/media-chat-agenda-18th-june-2020/#comment-38779  

Discuss support for WebP – @joemcgill said in #core-media, “Given the announcement yesterday that Safari is about to support WebP, I’m wondering how we might go about supporting the format in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., revisiting this discussion: https://wordpress.slack.com/archives/C02SX62S6/p1581005513097600

Even if you cannot make the meeting, you are encouraged to share anything relevant for the discussion. If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.

#agenda, #media

Media Chat Agenda: 18th June, 2020

This is the agenda for the weekly Media Meeting scheduled for Thursday, June 18, 2020, 04:00 PM GMT+2.

This meeting is held in the #core-media channel in Making WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

– Updates
    – To be determined.
– Topics to Discuss
    – Custom AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. Uploader: https://core.trac.wordpress.org/ticket/16020
    – Gallery 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.https://github.com/WordPress/gutenberg/issues/11436

Even if you cannot make the meeting, you are encouraged to share anything relevant for the discussion. If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.

#agenda, #core-media, #media

Editor Chat Summary: 17th June, 2020

This post summarizes the latest weekly Editor meeting (agenda, slack transcript). This meeting was 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 2020-06-17 14:00 UTC and was moderated by @annezazu.

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/ version 8.3

Gutenberg 8.3.0 was released last week. Update your sites and check out what’s new. We’re experimenting with new ways to organize the make post, so any feedback you may have is welcome!

Monthly Plan

There was limited discussion on the specifics of the current monthly priorities. As a reminder though, WordPress 5.5 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. is less than a month away! Last week @ellatrix created this board with must-haves and priorities for 5.5. If anyone has the capacity to help, please jump in there.

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.  Remember: don’t just focus on code contributions!

@zebulan

  • Working on PRs to get the Buttons 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. polished and to resolve some confusing behavior including making the block’s editor DOM match the front-end more.
  • Need technical help to proceed with this Buttons Block PR. Help with this should also help land a PR from @nfmohit to add a vertical option for the Buttons block.
  • Continuing to make progress on the Heading block heading level validator PR. Currently stuck trying to figure out how to prevent the dropdown from automatically closing when one of the heading level options is clicked.

@nosolosw

  • The release took quite a bit of bandwidth over the last week!
  • Outside of the release, a major focus was preparing presets for line-height and padding (and adapting the UIUI User interface controls accordingly).
  • Next week, I’ll carry on that presets for line-height and padding work, and hope to help porting to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. for 5.5. 

@mcsf

  • Reviewing a bunch of stuff!
  • Trying to weigh in/unblock a variety of discussions from FSE, design tools, block context, and more.
  • In close contact with @ellatrix to see how I/we can help her in her 5.5 editor lead role.

@youknowriad

  • Worked on improvements to Popover behavior.
  • Updated the colors used in Gutenberg components to rely on CSSCSS Cascading Style Sheets. variables.
  • Opened a PR to expand anchor support to all static blocks.
  • Working on the quick inserter.
  • On my mind to work more on stabilizing e2e tests.

@itsjonq

  • Focused mainly on Design Tools.
  • Looking over issues (feature requests) and researching external designs/experiences to see how we could improve these tools.
  • So far, most applications of design tools have centered around the Cover block. Under the hood, there’s been work to unlock/enable customizations to other blocks though. Approaching it more like APIs, rather than ad-hoc enhancements

@sageshilling

@itsjusteileen 

@mkaz

  • A follow up from last weeks discussion around Documentation, the 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.) was switched back to master, so published Gutenberg docs are now top of tree. Exploring ways to create a version switcher. Thanks @coffee2code for the assist in ticket #5266.

@michael-arestad

  • Reviewing issues/PRs for 5.5. Please 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.” me if there’s an issue/PR planned for 5.5 that needs design feedback/review/help.
  • Starting in again on designing flows for creating new templates. – might be good for a zoom jam (stay tuned).
  • Proposed an iteration on the reusable block (and template part) UI.
  • Updated the e2e prototype and got good feedback. The next iteration will be broken up into specific flows.

@ntsekoura

  • Worked on a merged PR about consolidating disparate “copy block” actions, when we copy from keyboard and when copy from Block Toolbar.

@ella

  • Focused on figuring out what things need to happen for WP 5.5 Beta, and helping out where I can. Looks like navigation and 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. screens are unlikely to be included given the time that’s left. I’m optimistic about including the currently experimental image editor, but there’s still quite a few things to do.
  • Going forward, will make sure remaining issues are tracked and worked on. Note that any refinements also need to be included before 5.5 Beta as afterwards we only backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. regressions.

@poena

  • Stuck on the former FSE post categories / now hierarchical taxonomy block because I don’t know how to get the custom taxonomies that a post (or custom post typeCustom Post Type WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept.) uses. This was flagged for dev help!

@gziolo

  • Worked on server side rendering for blocks – block.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. + 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/. + register_block_type_from_metadata.
  • Worked on 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 and enhancements for npm packages with tooling – wordpress/scripts, wordpress/create-block and other, lots of reviews for work done by @ocean90.

@noisysocks:

  • Working on the Navigation screen, specifically picking up #22656 again which lets you add Search blocks alongside Link blocks.

@annezazu

  • Working on resources for the FSE outreach program (will be dropping drafts for the group to review this week in #fse-outreach-experiment), doing triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. focused on needs-testing, and trying to do my own testing with the Gutenberg experiments (found this fun bug).

Open Floor

Is there any interface for a theme to supply a list of classes that could be used as a datalist for the Block sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. Advanced class input? Raised by @joyously.

For greater context, @joyously is looking for a user to be able to put theme-supplied classes into the Advanced class input box. @youknowriad jumped in to provide context. The closest solution offered was “style variations”. However, you can’t apply multiple styles at the same time or use custom classNames instead of style-*. Both of these suggestions have related issues right now.

Next Step: @joyously can chime in on related GitHubGitHub GitHub is a website that offers online implementation of git repositories that can 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/ discussions around style variations. There’s this main issue here for allowing custom style classNames and a general list of style variation themed issues.

Introduction for the media for block editor proposal. Raised by @sageshilling.

This will be about a year and a half project. If you’re curious to see what’s being proposed, you can see the initial proposal here in #core-media. While there were some questions and concerns raised including making sure this is built step by step within the Gutenberg Repo, this was meant purely as an initial introduction with more information to come in future meetings.

Next step: @sageshilling will share more information in the #core-media meeting tomorrow and in the comments of this post as necessary.

A reminder to not ignore intermittent test failures with e2e tests and to make tests even more robust when possible. Raised by @youknowriad.

I just wanted to share that end 2 end tests has not been very stable lately. And very often when we have an instability we have a tendency to think: oh it’s not related to my PR, so we just restart the test until it passes and forget about it. I have been guilty of doing so myself and I’d like to encourage the regular contributors to “stop” ignoring these intermittent test failures and when possible take time to debug and make the tests more robust even if not directly originating from our own PRs.

Why was the decision made to not have width and height attributes specified at all times for images? Raised by @flixos90.

Recently, @flixos90 opened a trac ticket around specifying missing width and height attributes for images in WordPress. Right now, not having these attributes defined causes an increased amount of layout shifting as images are being loaded. Historically, the classic editor has always provided these attributes, so the user experience has somewhat regressed with Gutenberg in that sense. Gutenberg only provides these attributes in the core/image block when the image is resized.

While there was some discussion here, we agreed this issue seems to have a lot of history and no one in the meeting could answer with certainty.

Next Step: @flixos90 is going to open up a GitHub issue to open up the conversation to see if greater historical information can be found and a way forward can be worked on.

How to resolve issues with Gutenberg.run? Raised by @itsjusteileen.

Right now, there are some issues with getting gutenberg.run, a PR testing tool, to run (pun intended).

Next Step: @itsjusteileen is going to open an issue in the Gutenberg.run repository.

What do people think of the idea of an ESLint 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 discourage the use of some (but not all) Lodash functions when there’s a close vanilla JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. equivalent? Raised by @zebulan.

There were varying opinions and ideas thrown out including the thought that perhaps this isn’t worth optimizing for. There are a few ESLint plugins of this sort already that could be explored. Generally though, this topic was out of scope for this meeting.

Next Step: @zebulan added this to the agenda for #core-js meeting next week as this is a better spot to discuss this question.

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

Media Meeting Recap – January 9, 2020

Here’s a summary of the #core-media chat from January 9, 2020. Weekly media meetings happen on Thursdays at 14:00 UTC; see the full transcript here, in the Make WordPress Slack.

Attendees: @joemcgill, @karmatosed, @antpb

Upcoming Meeting Schedule

Happy 2020! Because of the holidays, the group postponed chats until Thursday, January 9.

This morning, the group also discussed moving the regular time, so more people can join the chat – particularly people working on critical tickets in the 5.4 release cycle.

Here are three options. Vote for your favorite in the comments:

  • Move the current Thursday 14:00 UTC time to 15:00 UTC
  • Move the date to Tuesday at 21:00 UTC (this option works well for the three who came to today’s meeting.)
  • Multiple meetings, to account for both sides of the world. This option would likely require a push of the currently scheduled meeting to 15:00 or 16:00 UTC as well as an agreed time and date for the second meeting. @joemcgill suggested that multiple meetings not be forced to cover the same agenda items. Some items will overlap where it makes sense, but, for example, if one meeting has cleared the ticketticket Created for both bug reports and feature development on the bug tracker. queue, it would be pointless for the next meeting to consist largely of a triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors..

New Media ticket triage

#48194 – Unregistered image sizes used for IMG 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.) “srcset”

As @joemcgill pointed out: “The problem here seems to be that someone has deleted image files that are still referenced in the database in attachment metadata. Regenerating image sizes ( wp media regenerate ) would fix this problem, but should we only use registered sizes in `srcset` attributes if there are other sizes available?”

#48321 – Hotswapping featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. with gallery images

It seems the ask is for (after creating gallery) the option to click on one of the gallery items and set as featured image of the associated post. It was agreed by attendees that this may not be best fit in the gallery 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. UIUI User interface and perhaps would be better fit as an option within the media modal when creating galleries, images, etc.

The group changed the ticket to ask for reporter feedback.

@karmatosed made another point. The “Uploaded to this post” 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., in the Set Featured Image modal, does give the reporter part of what they’re asking for.

#48325 – Additional filter in media-template.php. Let developers hide attachment page link.

@joemcgill pointed us to the code that creates the attachment link: https://github.com/WordPress/WordPress/blob/master/wp-includes/media-template.php#L511 and said, “At minimum, I think that template should check that data.link is actually a URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org before displaying [it]. [Developers] could filter the data that is used by this template.”

WordPress 5.4 Media Focuses

While it didn’t come up in the meeting, notes are a great place for all of us to develop ideas for Media focuses in 5.4.

If you have any media-related focuses you’d like to work on in the 5.4 cycle, and that you’re ready to work on, please leave a comment.

That helps the Media maintainers gather and prioritize the work. Plus, it would be great if you’d come to next week’s chat so we can all discuss your idea!

#core, #core-accessibility, #core-media, #media, #summary