Proposal: Rename “invalid”, “worksforme”, and “wontfix” ticket resolutions

Last year, during the core dev chat of May 29th, 2019, I proposed renaming the invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. and worksformeworksforme A resolution on the bug tracker (and generally common in software development) that indicates the bug reported cannot be reproduced. Trac ticket resolutions to something more friendly and less confusing. The reaction in the chat was unanimously positive, so this is now an official proposal for discussion.

The current interpretation of ticketticket Created for both bug reports and feature development on the bug tracker. resolutions, as per the Core Contributor Handbook:

Resolution: Upon one or more commits to the codebase, a ticket may be closed as fixed. Not all tickets result in a commit, however, and may be closed for other reasons:

  • duplicate: The ticket is a duplicate of an existing ticket, which will be referenced by the contributor closing the ticket.
  • invalid: The ticket is not 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., or is a support request.
  • worksforme: The bug reported in the ticket cannot be reproduced. Sometimes, an existing 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, hook, or feature may render the ticket moot, so the ticket can be closed without further action.
  • wontfixwontfix A resolution on the bug tracker (and generally common in software development) that indicates the ticket will not be addressed further. This may be used for acceptable edge cases (for bugs), or enhancements that have been rejected for core inclusion.: The ticket will not be addressed. Occasionally, bugs are considered to be acceptable edge cases, and will not be addressed further. This is sometimes used when a request for an enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. or feature has been rejected for coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. inclusion.
  • maybelater: Similar to wontfixmaybelater is used for a ticket that, while perhaps not outright rejected, has no current traction.
  • reported-upstream: The ticket is for an external library or component, has been reported in an upstream repository (e.g. 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/), and will be addressed there.

More than a few times I’ve seen someone closing a ticket as worksforme after testing a 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. because, well, it works for them. When that happens, the ticket has to be reopened with a comment that the patch still needs to be reviewed and committed.

Based on the above, I’d like to propose the following updates:

  • invalidnot-applicable
  • worksformenot-reproducible or cannot-reproduce
  • wontfixnot-implemented

On the technical side, any tickets that are currently closed should keep their existing resolutions, while tickets closed after the change is implemented should get the new resolutions. Some links and TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. reports might need an update to account for the changes.

Even if we move away from Trac at some point in the future, we’re not there yet, and I think clarifying these resolutions would be helpful for the time being. Any feedback appeciated!

Props @desrosj and @jeffpaul for pre-publication review.

#meta-tracdev, #trac, #triage, #triage-team

Dev Chat Summary: June 28th (4.8.1 week 2)

This post summarizes the dev chat meeting from June 28th (agendaSlack archive).

4.9 ideas

4.8.1 planning

  • #40951 & #40907 will be coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. to the 4.8.1 releaseRelease A release is the distribution of the final version of an application. A software release may be either public or private and generally constitutes the initial or new generation of a new or upgraded application. A release is preceded by the distribution of alpha and then beta versions of the software. being targeted around the last week of July
  • General 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 to be scheduled after the 4th of July holiday on the 4.8.1 milestone
  • Component maintainers please review your 4.8.1 milestone and puntpunt Contributors sometimes use the verb "punt" when talking about a ticket. This means it is being pushed out to a future release. This typically occurs for lower priority tickets near the end of the release cycle that don't "make the cut." In this is colloquial usage of the word, it means to delay or equivocate. (It also describes a play in American football where a team essentially passes up on an opportunity, hoping to put themselves in a better position later to try again.) to Future Release / 4.9 as necessary
  • Reminder that we are “approaching 4.8.1 tickets as more traditional 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. types of issues”

Editor update

Customize update

  • appreciate more people testing 40951.3.diff
  • also appreciate testing of the HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. 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. in trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. (see #40907)

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/. update

  • had a lot of new docs contributions at WCEU contributions day
  • have some momentum and hope to build upon it in coming weeks

Dev chat coordination

  • @jbpaul17 looking for 1-2 others out there to help run the weekly dev chats similar to how the Core Weekly Updates are split up
  • A great way for product/project management or otherwise non-engineers to help contribute to WordPress Core
  • 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.” @jbpaul17 if you have interest in helping out!

New contributor bug scrub/open office hours

  • idea is a weekly bug scrub/open office hours focused on new contributors
  • would include tickets tagged good-first-bug and any tickets new contributors wanted to work on
  • Likely to schedule for Wednesdays at 19:00 UTC
  • @adamsilverstein, @welcher, @stevenkword, & @flixos90 to help run the meetings
  • Please ping @adamsilverstein if you have interest in volunteering as well

General announcements

  • @m1tk00: looking for help with the Gallery Widget in the Customizer regarding the edit button
    • need to know how to send the already selected ID’s, when someone wants to edit the gallery
    • will ping @obenland or @timmyc in #core-customize for help
  • @enricosorcinelli: #21676 patched and awaiting review, how to get it more attention?
    • added needs-testing to the ticketticket Created for both bug reports and feature development on the bug tracker., will ping @obenland as Themes component maintainer to review
  • @pbiron: would like to start a “feature plugin” project to work on rewriting the exporter
    • would like to rework ALL of the XML related code in core (e.g., using XMLWriter instead of echo statements, etc)
    • using XMLWriter and with some pretty drastic changes to the WXR markup
    • should be putting the 1st version up on 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/ in few days
    • also written an XML Schema for WXR 1.2
    • will add the feature proposal as a comment to the 4.9 wishlist on last week’s dev chat summary
  • @flixos90: thinking about ways to improve TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. workflow
    • wondering whether it would be possible to automatically set a has-patch keyword once a 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. is uploaded?
    • It’s a bad experience for new contributors to search through tickets without a patch, but finding ones that already have one
    • will drop by #meta-tracdev to continue the conversation
  • @jnylen0@enricosorcinelli working on #39732 and #39730
    • 39732 is a sanity improvement and a follow-up to work done around 4.7 in the 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., should land soon for 4.9, but it would be good to get more eyes on it especially someone who has worked on comments before
    • 39730 may as well land at or around the same time as the above
  • @welcher: would love some eyes on Load word-count and do not allow our wp-utils script to clobber it

#4-8-1, #core, #dev-chat, #summary