Dev Chat Summary: September 13th (4.9 week 7)

This post summarizes the dev chat meeting from September 13th (agendaSlack archive).

4.9 schedule and requests for contributions

  • 2 weeks until the feature project merge deadline, 3 weeks until Beta 1
  • These tickets need someone to contribute to them or else they’re in danger of not making it in 4.9:
    • Add nested folder structure deeper than 2 levels (#6531)
    • Add better warnings when you’re editing themes and plugins (even if they’re not active) (#31779, #41078)
    • Updating a plugin or theme via a ZIP file (#9757). Also, drag and drop uploading of themes and plugins (#24579)
    • Widgets: Default to “custom URL” in the image widget (#41629)
    • Customizer drafting/scheduling (#39896, #28721)
  • @westonruter: I committed CodeMirror to integrate with the Theme/Plugin editors, Custom HTML widget, and Additional CSS in the Customizer
  • @jbpaul17: looking to schedule bug scrubs, please reach out if you’re interested in helping
    • Component maintainers: Please confirm if you’re running scrubs for your component

#4-9, #core, #dev-chat, #summary

Dev Chat Summary: September 6th (4.9 week 6)

This post summarizes the dev chat meeting from September 6th (agendaSlack archive).

4.9 schedule review

  • 3 weeks until the feature project merge deadline, 4 weeks until Beta 1
  • Customizer improvements for merging Changeset drafting and scheduling has yet to kick off development, designs are nearing completion (see: #39896 and #28721)
  • Gallery widget is still under development but it seems to have stalled, TODO’s noted on related GitHub PR
    • @joemcgill to look into avoiding serializing attachments data in the widget this week
  • @obenland working on wrestling the widget mapping issue when switching themes (see: #39693)
  • Page on Front progressing slowly, likely not ready for dev before Feature Merge
  • Theme switching issue for nav menu mapping has already been merged in trunk (see: #39692)
  • CodeMirror feature plugin (aka Better Code Editing) needs testing and a few outstanding issues that would benefit from contributors. Plan is to merge this week.
  • @psykro to look into #9757
  • “Add Media” button in the Text widget great opportunity for new contributors
  • #35827 could use an owner and remaining items in 4.9 Goals post could use contributors to help land in the release

Editor update

Iterating in trunk

  • @matt: I’m fine with more iteration happening in trunk vs how we’re bouncing patches around Trac so much
  • @matt: I’m okay with parts of trunk being broken as we iterate in this phase of dev
  • @desrosj: Do we have an established process for reverting things that break?
  • @obenland: I think we’re not talking about “PHP fatals”-broken, but rather a feature maybe not fully functional

HTML5 input types for validation

  • @afercia: any thoughts about relying on HTML5 input types browsers built-in validation only?
  • @azaozz: used to be buggy, seems to be working properly now
  • @afercia: seems to me still premature to rely on required for validation
  • @afercia: looking to leads to make a decision as new browsers support policy
  • @asaozz: Worth some testing, especially on the “lower end”, IE11
  • @afercia: there are still CSS rules in ie.css for Internet Explorer 6 (and 7, and 8). Can they just be dropped?
  • @azaozz: no need of ie.css in my honest opinion
  • @azaozz: intention is not to completely break old browsers if they still work, but to stop testing in them
  • @clorith: concerned about users locked into older browsers, like IE8, and keeping option for them to enqueue scripts relevant to their browser
  • @afercia: I wanted to start the discussion about this as it relates to the new browsers support policy

General announcements

#4-9, #core, #core-customize, #core-editor, #dev-chat, #gallery, #gutenberg, #html5, #summary, #trunk, #widgets

New Contributors Meeting Recap – August 30th

This past Wednesday, the weekly new contributor meeting was held in the #core Slack room. Here is a recap of the meeting. A full chat log is also available.

Participants: @adhun @afercia @alfonso100 @asalce @azaozz @boonebgorges @coderkevin @cousett @davidmosterd @desrosj @flixos90 @harryjackson1221 @jack50n9 @joemcgill @joyously @katmoody @mapk @mp518 @mrasharirfan @nicbertino @pbearne @psdtohtmlguru @ryankanner @sergeybiryukov @sygnoos @thomasplevy @tjnowell @xkon @yahil

Discussion Highlights

Ways other than Trac to find where to help

Accessibility Contributions

If your expertise is not in code, but rather accessibility, the a11y team meets weekly, every Monday at 17:00UTC in the #accessibility Slack room. All are welcome!

Meetings are held regularly for many of the Core components and Make WordPress teams. Attending these meetings is a great way to get a feel for how progress is made within the project and find ways you can offer help.

New PHPUnit Test section in the Core Handbook

@boonebgorges has recently spent some time constructing a new section of the WiordPress Core Handbook, “Writing PHPUnit Tests“.

Miscellaneous Topics

  • @coderkevin inquired if there had been discussions about memory leakage within the test suite. #41641 was mentioned as the ticket to read into for this. The Distributed Host Testing project is also relevant to that ticket.
  • Currently, there is no central place for documentation on the test suite’s factory classes. The inline documentation for the __construct() functions within each factory class is currently the best place for this information.

Tickets Reviewed

  • #41743 (Using the_widget on a widget that has not been registered results in an undefined index notice.)

 

Next Week’s Meeting

The next meeting will take place in the #core slack channel on Wednesday, September 6, 19:00 UTC. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone who attended! As always, please feel free to leave a comment below or reach out to any of the moderators (@adamsilverstein, @desrosj, @stevenkword, @welcher) with questions on Slack. Or, feel free to reach out to any core developer or component maintainer with questions specific to certain core areas.

#new-contributors, #summary

Dev Chat Summary: August 30th (4.9 week 5)

This post summarizes the dev chat meeting from August 30th (agendaSlack archive).

4.9 schedule review

  • 4 weeks until the feature project merge deadline, 5 weeks until Beta 1
  • CodeMirror feature plugin (aka Better Code Editing) aiming for merge in 2 weeks
    • @westonruter: Integration with CodeMirror’s linter is almost done to prevent the user from being able to save changes to the file editor, Additional CSS in the Customizer, and the Custom HTML widget if there are syntax errors in the code.
    • Demo: Blocking WordPress file editor saves via linting in CodeMirror
    • Still want to implement a PHP linter to help prevent whitescreening a site
    • Prior effort by @georgestephanis to add a PHP linter by using the PHP binary on the server had to be reverted because it will not be available on many hosts
    • May be able to implement a rudimentary PHP linter that uses CodeMirror’s tokenizer and use it to at least make sure that basic syntax is valid
    • For anyone who wants to contribute, please follow Issue#48
    • Aiming to release v0.5.0 of the plugin on WordPress.org today
    • It needs user testing and code review.
  • @azaozz: looking for second opinion on #41752.
    • Should we refactor the JS so it still works with (very) old plugins and themes?
    • It should replace the UI with a simple input type=“file”. If yes, any takers to do that?
    • If only a handful of plugins/themes affected, then we could work with the plugin authors to update rather than maintain back-compat in core for something that is dead.
    • @westonruter: will upload the results of my acking for affected plugins/themes to Trac when it finishes
  • @westonruter: one of the 4.9 feature ideas that had excitement was updating themes and plugins via ZIP upload, where this is not allowed (see #9757)
    • This work currently needs an owner, otherwise it is in risk of getting punted from the release
    • There are some good orientation comments at the end by pento and dd32 which can help you get started
  • @westonruter: big Customizer features planned for this release, including drafting and scheduling, have designs currently being worked on by @joshuawold and @folletto (see: #39896 #28721)
  • Reminder of the tickets in the goals post targeted for 4.9, please help specifically with these… thanks!

Update to Editor weekly meeting focus

  • Office hours on Wednesdays at 17:00 UTC are becoming tickets sessions to go through issues together for each weekly milestone of Gutenberg.
  • Please join then to help move that project forward.

#4-9, #core, #core-customize, #core-editor, #dev-chat, #summary, #swfupload

Dev Chat Summary: August 23rd (4.9 week 4)

This post summarizes the dev chat meeting from August 23rd (agendaSlack archive).

Review 4.9-early tickets

  • Items in Trac all seem to need owners, especially since they were all tagged 4.8-early as well
  • Should also include work on CodeMirror which needs more testing and contributions
    • Can currently be downloaded from the latest tagged release
    • Feedback is best on GitHub Issues for now, until the plugin is merged
    • Will work to get it into the w.org repo for easier installation
  • #39693 could use a review from another committer

Gutenberg testing

  • Gutenberg just released v0.9.0 and if you haven’t tested in a while this would be a good release to get into testing and provide feedback
  • Development is progressing and feedback is really important
  • Two tests are described in the handbook, you can also give your feedback via the plugin forum

Future support for ancient versions of WordPress

  • Discussion started previously in #core
  • @jorbin: is it time for us to stop backporting so far? Does anyone object? If not, Does anyone have ideas for how to go about it, or suggestions for me to put together a proposal on it?
  • @joemcgill: I would like to see a published proposal outlining reasons, usage data, and any tradeoffs/considerations and leave a bit of time for feedback before definitely doing this.
  • W.org Stats shows 3.7 is about 0.4%
  • @mikeschroder: We chatted about this at the summit, and about enabling protections for upgrades for major versions like we do for minor ones.
  • @ocean90: We should start with 3.7.z to 3.8.z. Note that this is already a huge step because 3.8 includes the new admin design.
  • @jorbin: I will work on the proposal. I’ll ping some of the committers and other active contributors who have contributed to this conversation to review it before publishing.

General announcements

#4-9, #core-editor, #core-restapi, #dev-chat, #gutenberg, #summary

New Contributors Meeting Recap – August 16th

Yesterday, the new weekly contributor meeting was held in the #core Slack room. Here is a recap of the meeting. A full chat log is also available.

Participants: @adamsilverstein @brainfork @clorith @davidmosterd @desrosj @dipeshkakadiya @drewapicture @flixos90 @geoffreyshilling @jnylen0 @johnbillion @joyously @justpeace @mikeschroder @milindmore22 @morganestes @mte90 @mrahmadawais @nabil_kadimi @sergey @stevenkword @zakkath

Discussion Highlights

Documentation on core unit test suite

  • There’s currently no documentation on the core unit testing suite in the handbook.
  • The current and best method for learning is to read some of the existing tests and see how they do it. With specific questions, @boone and @johnbillion are always good people to go to.
  • Several developers indicated their interest in working on an introduction or documentation for it. Any results will be published in a future meeting.

Documentation on contributing with Git

  • Documentation on Git contributions is still lacking. Most typical handbook pages with patch instructions only reference SVN commands and don’t have Git examples. @morganestes will start working on consolidating pages and instructions and would love to have some guidance on contributing tests as part of that.
  • @jnylen0 shared a handbook page specific to contributing with Git.

Documentation on getting started with contributing

  • There’s not a very good “Getting Started” documentation in the handbook. It throws several things at you in different pages. You can learn how things technically work, but not really how to get started from a workflow/mindest point of view.
  • @adamsilverstein shared what is probably the best “Getting Started” page for core contributing.
  • However where you start, to a large extent depends on your preferences. It’s important to find one or two areas of core in which you’re most interested in and concentrate on those first.
  • To get a feeling for what is being worked on and how these processes work, participating or even just lurking in meetings can help a lot. Show up to some dev chats, and other component meetings you’re interested in.
  • If you don’t need to do it remotely and have the possibility to attend a WordCamp, probably the best way to start is attending a contributor day. The in-person communication has huge benefits, especially for the beginning.

Moving tickets forward

  • Persistence is generally key in keeping your patches moving on trac. Knowing who to ping and how often can take you a long way. Start with the component maintainers and work out to the core developers. Ask for feedback at a dev chat, or if you don’t want to jump in yourself ask whomever is running dev chats to toss out the ticket for public discussion.
  • Ping specific people, don’t worry about being annoying or anything. It can happen that someone is short on time and does not respond immediately, and that may feel like a bummer. But every core developer is trying to help, so do not hesitate being persistent. Actually, component maintainters and core devs expect to get pinged and try to make core contributing as welcome as possible.
  • The easiest way to get in touch is commonly in a component meeting if there is one. But if there is none, pinging a maintainer is the way to go.

Changing workflow keywords on tickets

  • Everyone can and should properly apply and modify workflow keywords on a ticket. Here are some examples:
    • If you add a patch, add the has-patch keyword if it isn’t set yet.
    • If you provide tests, add the has-unit-tests keyword if it isn’t set yet.
    • If you feel a patch is rather complex, feel free to add dev-feedback.
  • If you aren’t sure that your patch addresses the issue, or if you don’t feel that you understand the issue well, it’s best to let someone else look and change the keywords appropriately. But also no worries, if you accidentally or mistakenly set a “wrong” keyword.

Next Week’s Meeting

The next meeting will take place in the #core slack channel on Wednesday, August 23, 19:00 UTC. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended! As always, please feel free to leave a comment below or reach out to any of the moderators (@adamsilverstein, @desrosj, @stevenkword, @welcher) with questions on Slack. Or, as mentioned above, to any core developer or component maintainer with questions specific to certain core areas.

#new-contributors, #summary

New Contributors Meeting Recap – August 2nd

Yesterday, the new weekly contributor meeting was held in the #core Slack room. Here is a recap of the meeting. A full chat log is also available.

Participants: @adamsilverstein @asalce @azerial @chetan200891 @circlecube @clorith @desrosj @dipeshkakadiya @dnavarrojr @e_baker @helen @jdmensing @johnbillion @jorbin @josiahsprague @joyously @kelseyfecho @linsoftware @luckyankit @milindmore22 @mte90 @nabil_kadimi @proscriptsell @punit5658 @stevenkword @t-rave @welcher @zakkath

Discussion Highlights

Before Creating Tickets

  • Before creating a ticket, there are a few things you should do:
    • Ensure you are running the latest version of WordPress (if reporting a bug).
    • Search Trac to make sure a ticket for your bug or enhancement.
  • Creating a duplicate ticket is ok, as long as you did your best to find a pre-existing ticket.

Writing a Title

  • A good ticket title should accurately summarize the problem the ticket addresses.
  • Someone should be able to see the title and get the general idea of what the ticket is trying to solve, not the solution.

Writing a Description

  • A ticket description should include:
    • A description of the behavior you expect and why
    • A description of the behavior you are seeing
    • Steps to reproduce the behavior so other contributors can see it for themselves and track down the source.
    • If an enhancement ticket, describe what it improves upon and why this is beneficial.
  • If it involves something else (like a specific browser, or server type), make sure to detail that as well.
  • If applicable, screenshots are also very helpful.
    • Screenshots are best uploaded directly to Trac. This prevents images from becoming dead links when removed from external image sources.
  • Always try to focus on the problems being solved, even if it’s an enhancement, you are trying to solve a problem of some sort.

Examples of tickets with good titles and descriptions: #41525, #37013.

What is the difference between Core and Meta Trac?

Core Trac is meant for tickets relating to the WordPress software you install and run (including unit tests). Meta Trac is meant for a bunch of other things, but mainly things that are WordPress.org related. There is a full list at the top of the Meta Trac home page.

Security Vulnerabilities

It is very important that any issues with security implications be reported through responsible disclosure privately. For more information on reporting security vulnerabilities, see the WordPress Handbook.

What is considered “enough testing”?

  • This will vary based on the ticket and what problem is being solved.
  • Testing may span multiple releases for complex problems.
  • It also is up to the committer that chooses to take ownership of the ticket. They need to be completely comfortable with the change, and confident that there is little to no potential for issues.
  • Once committed, the testing does not end. Testing continues by using trunk.
  • After that, the alpha, beta, and RC releases are in place to catch anything that might have been missed.

Is there a protocol for old tickets that have become stagnant?

  • Check that the problem or enhancement in the ticket is still relevant.
  • Test any patches on the ticket to ensure they still apply cleanly.
  • Test that the patch still solves the issue.
  • Add the needs-refresh tag if not.
  • Stagnant tickets can be frustrating, but remember, no one is purposefully ignoring your efforts. Most (if not all) of the folks here are volunteers working in their free time.

Tickets discussed

  • #39535 – Canonical redirects disallow tag named comments
  • #37057 – Creation of an esc_html functions for _n(), _nx(), _ex(), and number_format_i18n()
  • #41521 – Menu list with dropdown icon alignment bug in responsive.
  • #41497 – Menu has style problem in listing on admin menu page

Next Week’s Meeting

The next meeting will take place in the #core slack channel on Wednesday, August 9, 19:00 UTC. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended! As always, please feel free to leave a comment below or reach out to any of the moderators (@adamsilverstein, @desrosj, @stevenkword, @welcher) with questions on Slack.

#new-contributors, #summary

New Contributors Meeting Recap – July 26

Yesterday our weekly new contributors meeting was held, again with some great questions and insights into contributing to WordPress core. Here is the recap for the chat, alternatively the full chat log is also available.

Participants: @adamcarter @audunhus @desrosj @dipendahal @flixos90 @hardeepasrani @johnbillion @joyously @jsonm @samikeijonen @stevenkword @welcher @xkon

Discussion Highlights:

  • Working on one of the three focuses (Gutenberg, Customizer, REST API) is preferred, but it’s also as great to contribute to another area of core as development in those components of course has not stopped. Contributions are welcome everywhere, the focuses only gain more traction and attention at this point.
  • VVV is only one way to contribute to WordPress core. It is the recommended way to do so since it has all the tools needed preinstalled and configured, but contributors are free to choose whichever way they like. It might just require more setup work when not using VVV.
  • An easy way to make your IDE / editor aware of the WordPress coding standards regarding whitespace usage is to use the .editorconfig file that trunk contains. This file uses a common standard, and there are plugins available for almost all popular environments that automatically parse the file and adjust the whitespace settings for the project. Extensions can be found at on the website of the project. Some IDEs like PHPStorm already come with built-in tools for the WordPress coding standards.
  • While every new change in WordPress requires unit tests to verify its correct behavior (except for wording or docs changes, or those that are too complex to test for other reasons), it is not required that the person who writes a patch also needs to provide unit tests for it. It would be nice, but if someone doesn’t feel comfortable enough for the time being or first would like to get the patch reviewed, that’s perfectly fine as well.

Tickets Discussed:

  • #41370 is a good-first-bug ticket that could use some attention and work. It belongs to the REST API focus, so is likely to get reviewed and also merged quickly once ready. The goal of the ticket is to figure out why creating a term that already exists results in a 500 error, and change that to a more meaningful 400 or 409 error. Please have a look if you are interested in the REST API.
  • #41318 is another ticket that could use some work, particularly unit tests to ensure the existing patch works correctly.

First Props:

From this week on, we’ll highlight new contributors with their first props in this post. Props is what you get when a changeset lands in core where you have significantly helped with, for example through a patch, unit tests or something else. Please let us know about your first props when you get them. You can easily get an overview of your props at this URL: https://core.trac.wordpress.org/search?q=props+USERNAME&noquickjump=1&changeset=on (replacing USERNAME with your actual wordpress.org username)

This week, @xkon received his first props. Congrats! 🎉

Next week’s Meeting:

The next meeting will take place in the #core slack channel on Wednesday, August 2, 19:00 UTC. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended! As always, please feel free to leave a comment below or reach out to any of the moderators with questions on Slack.

#new-contributors, #summary

New Contributors Meeting Recap – July 19

Last week’s New Contributors Meeting was held on Wed July 19th at 19:00. Once again, there were lots of great questions asked in the #core channel. Read the full chat archive here.

Discussion Highlights:

Tickets Discussed:

  • #41155 – WordPress 4.8 Admin Sidebar Sub Menu Navigation Issue
  • #41317 – Consistent sub menu item spacing when count indicator is present
    • Congrats to @JDTrower for pushing it along and getting it in the 4.9 Milestone!
  • #41314 – If the required fields are not set on user profile’s save, every field’s value will be dropped

The next meeting will take place in the #core slack channel on Wed, July 26th at 19:00. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended! As always, please feel free to leave a comment below or reach out to any of the moderators with questions on Slack.

Moderators: @flixos90, @welcher, @stevenkword, @desrosj

#new-contributors, #summaries

New Contributors Meeting Recap – July 12

This week’s New Contributors Meeting was held on Wed July 12th at 19:00. Once again, there were lots of great questions asked in the #core channel. Read the full chat archive here.

Discussion Highlights:

Tickets Discussed:

  • #40921 – Inconsistent Handling of mp4 by Audio Widget
  • #40138 – Bundled themes: the tag cloud widget should output a list
  • #22669 – iPad: Can’t Scroll Plugins Modal
  • #41168 – Identify the active theme when editing a site’s themes

The next meeting will take place in the #core slack channel on Wed, July 19th at 19:00. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended and please feel free to leave a comment below or reach out to any of the moderators with questions.

Moderators: @flixos90, @welcher, @stevenkword, @desrosj

#new-contributors, #summaries