The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA 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.?Create a ticket in the bug tracker.
The time to document ALL THE HOOKSHooksIn 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. used throughout coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. is nigh.
We’ve hashed out the process in a couple of different meetings in #wordpress-dev, and we’ve added a new page to the Core Contributor Handbook that covers the broader PHPDoc standards, as well as the specific hook documentation standards (the praise for the bulk of that work should go to @kpdesign and @drewapicture, by the way).
At the bottom is a list of every file in core that has a call to either do_action() or apply_filters(). Files with a checkmark have been patched and are considered completed. Files marked with (username #xxxxx) are already claimed, and being worked on.
Directly below is the process we’re attempting to make sure each of these files can get patched swiftly with no duplicated nor wasted efforts.
How to contribute:
Check the list first to make sure the file you want to work on hasn’t already been claimed.
Update your local WordPress SVN or GitGitGit is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance. Most modern plugin and theme development is being done with this version control system. https://git-scm.com/. repo (use git pull) to the latest version of WordPress trunktrunkA 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. (currently 3.9-alpha).
Format the title as “Hooks Docs: path/to/file.php”.
The Type should be “defect (bugbugA 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.)”.
Assign the ticketticketCreated for both bug reports and feature development on the bug tracker. to the component the file is associated with.
Leave the Version blank.
Add the docs focus.
Edit the file, and make a patchpatchA 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.. Please make sure you create the patch from the root directory of your WordPress SVNSVNSubversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. or Git checkout.
Upload your patch to the TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. ticket you created, and add the keyword “has-patch”.
*Note: We strongly encourage you to work on very few files at a time. In many cases, one at a time is probably best. In some cases it may make sense to tackle several at once. The important thing is that you realize your edits should be made and patched swiftly so that they aren’t invalidated by (or don’t invalidate) another patch. It’s also important to note that we’re working with a small time-table, and need to be able to claim, edit, patch quickly — which is hard to do if someone were to lay claim to 20 files at a time, and then sit on them for a few days.
Determining the since version for hooks
The recommended tool to use when searching for the version something was added to WordPress is svn blame. An additional resource for hooks is the WordPress Hooks Database. If, after using these tools, the version number cannot be determined, use @since Unknown.
Note: All @since tags should follow the three digit x.x.x format, unless it was ported from MU. Anything ported over from WPMU should use @since MU. Existing @since MU tags should not be changed.
Keeping Discussions Focused:
Any discussion about the specifics of a patch itself should happen on Trac. Any discussion about the broader scope of what we’re trying to do should take place during the weekly Inline Docsinline docs(phpdoc, docblock, xref) meeting on Wednesdays at 19:00 UTC in #wordpress-sfd.
Files needing patches:
Checked files are completed, marked files are claimed
wp-admin/edit-tagtagA 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.)-form.php (props @nicolealleyinteractivecom, @kpdesign)
wp-admin/includes/class-wp-pluginPluginA 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-install-list-table.php (props @naomicbush)
wp-admin/includes/metaMetaMeta 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.-boxes.php (props @SpencerFinnell, @drewapicture)
wp-includes/categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.-template.php (props @drewapicture, @kpdesign)
Today’s #wordpress-dev developer meeting (20:00 UTC) should be fairly brief. Let’s do a quick status report on different 3.7 tasks and then hammer on any TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. tickets (especially complex ones or ones that need a decision, since many coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. developers will be present).
Please suggest any items for discussion, or any tickets we should consider.
After this meeting, at 21:00 UTC, will be a 3.8 office hours meeting (like last week) in #wordpress-core-plugins in IRCIRCInternet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net..
It’s been awhile since you’ve heard from any of us about the inline-docs initiative for 3.7. We’ve been getting our ducks in a row, so to speak, and we’d like to start pounding pavement this week.
We’re going to hold an office-hours meeting on Wednesday, September 4 at 18:00 UTC in #wordpress-dev. We’ll review where we left off last meeting, cover the details on how we want to proceed, and make sure the details about getting involved really do show up here on Make/CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress..
This meeting is mostly to help us on the planning team make sure we’re on the same page, but all are welcome. As I said, the next action steps for interested parties will get posted back here.
Thanks, too, for all of the encouragement around this. We’re pretty excited about it!
One of the goals of WordPress 3.7 is to start automatically updating WordPress for minor releases. So, if you are running 3.7, you’ll be automatically updated to 3.7.1. @pento has worked on a pluginPluginA 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 for this called Automatic Updater. It actually does a lot more than we need, like supporting nightly builds, SVNSVNSubversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. checkouts, and such. Based on some conversations with @dd32, here’s what we need to do for updates in 3.7:
Automatically update WordPress when we can. #22704
Verify the sanity of our download package, which includes package signing, SSLSSLSecure Sockets Layer. Provides a secure means of sending data over the internet. Used for authenticated and private actions., etc., and only updating automatically if we are sure we are secure. #18577#25007#20074
Verify that files were copied over, to increase stability. #18201
It looks like we’ve closed more than 800 tickets since 3.7 started. We increasingly need to develop some patterns here so we can sustain this. Let’s talk about how we can start targeting individual components, keywords, ticketticketCreated for both bug reports and feature development on the bug tracker. statuses; and also we need to start to getting the 3.7 report in shape.
Discuss a timeline for the release. When should we have stuff ready for a betaBetaA 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, when should we hit RCrelease candidateOne 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)., and when should we aim to release? What should we done for beta 1, versus what must be done for RC1?
The JavaScriptJavaScriptJavaScript 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/. working group decided on QUnit as our JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. testing framework. There is an initial patchpatchA 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., which necessitates we move our PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher tests into a directory. Quick discussion and decision on where it goes.
Approve a TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. organization plan to use milestones for features-as-plugins and for Twenty Fourteen.
Work is starting on upgrades. We need to build out a proper task list and see where people are willing to help. (More on that in this blog post.)
Version 3.6.1 discussion and triagetriageThe act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors.. It’s been four weeks, we should get things ready.
Review why/how we’re doing features-as-plugins for post-3.7 releases (@samuelsidler)
Start cranking on tickets, discuss any major tickets we need to discuss, check if anyone is stuck or wants something to work on (@duck_)
A number of people are working on make/coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. posts to kick off some 3.7 initiatives (updates, language packs, inline docsinline docs(phpdoc, docblock, xref), develop.svn ideas list) or jumpstart conversations for future dev meetings (CSSCSSCascading Style Sheets. preprocessor pros/cons) — let’s aim to get these done this week.
This meeting will be followed by 3.8 office hours at 21:00 UTC. There is no 3.8 meeting tomorrow — postponed for this week.
Also, the JavaScriptJavaScriptJavaScript 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/. meeting (IRC logs) went great:
@kadamwhite and @carldanley will be enumerating JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. style preferences and working on a jshintrc
JavaScriptJavaScriptJavaScript 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/. meeting on Monday.@koop@azaozz @carldanley @adamsilverstein @kadamwhite will be meeting on Monday at 9 p.m. EDT (Tuesday, August 20 at 01:00 GMT) in the #wordpress-devIRCIRCInternet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net. channel. I’ll let them build out an agenda in the comments, but here’s some potential topics I know they’ve been kicking around:
JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. style, structure, and design patterns, and what new code should look like
JS unit testing, including candidate frameworks and where to start
APIs, such as WP-style hooksHooksIn 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. (actions/filters), what form they should take if they should exist
Which areas of our JS need refactoring and overhauls, and what that might look like
Which JS-heavy features need eventual iteration (often “version 2”)
What action items could be done for WP 3.7 and 3.8
Twice-daily ticketticketCreated for both bug reports and feature development on the bug tracker.triagetriageThe act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. / bugbugA 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. scrubs start today. For WordPress 3.7 we’re going to structure two daily IRCIRCInternet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net. gatherings — at 13:00 GMT and 20:00 GMT, or 9:00 a.m. and 4 p.m. EDT. These will take place weekdays in #wordpress-dev on freenode. (Note, the second meeting on Wednesday is actually the weekly developer meeting instead.)
A number of core contributorsCore ContributorsCore contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. are always in #wordpress-dev to provide feedback and look at tickets, but we’re hoping some structure here can also set some “office hours”-style expectations and ensure rapid feedback. At least one committercommitterA developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component. will aim to be at each of these (often it will be many more). If no one brings up specific tickets for attention, discussion, and feedback, it’ll revert to a fairly standard bug scrub that would include looking over recent TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. activity, clearing older tickets, and looking through the 3.7 ticket report.