Making preparations for 3.8

As mentioned previously, 3.8 development officially opens shortly after 3.7 ships. With the first beta of 3.7 behind us and the final release scheduled for mid-October, it’s time to talk about what’s expected of feature plugins.

@nacin mentioned at last week’s dev chat that 3.7 will likely branch at the WordCamp Europe contributor day, on October 7. At this point, most coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. developer focus will be on shipping 3.7. However, feature plugins that want to be considered for 3.8 should be ready by October 14 to give everyone time to review them.

What does being ready mean? Here’s what will be examined:

  • a strong and well-tested user experience
  • fully-baked design
  • positive feedback from the community
  • core-quality code
  • no major bugs or issues
  • a belief that the feature belongs in WordPress core

Some of the above is subjective and will vary from feature to feature. If you have questions, look to a lead developer for guidance.

Of the feature plugins listed, the furthest along are MP6 and global admin search, with Dash not far behind. Plugins in the “feedback” stage should be prepared to answer the question “Why should we include this in core?” As of today, they should prepare their code for core, removing anything unnecessary and making the feature into 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. that can be easily merged with core.

tl;dr

  • Feature plugins wanting consideration for 3.8 should be ready for presentation and inclusion by October 14.
  • Feature plugins will undergo review shortly after 3.7 ships.
  • Plugins must be ready to merge when the merge window opens.

#3-8, #core-plugins

WordPress 3.8 agenda for tomorrow

Our next WordPress 3.8 chat is tomorrow, August 28 at 21:00 UTC, following the 3.7 dev chat. Here’s our agenda:

  • Answer questions/comments about the features as plugins process (see yesterday’s post).
  • Review projects with no lead or weekly chat.
  • New feature presentations. Is there a new feature you want to work on that’s not being tracked? Now’s the time to present it. Bring as much information as possible and comment on this post beforehand.
  • Office hours.

Hope to see all of you tomorrow!

#3-8, #agenda

Features, Plugins, and WordPress 3.8

At the dev chat last week, we talked a bit about WordPress 3.8 and the features-as-plugins process. Here’s a recap of what was discussed:

Expectations

A lot of features are in development right now, at varying stages. Given the huge list of new features, there’s no way they’ll all be in WordPress 3.8. That’s okay, and it’s by design.

The features-as-plugins model makes it easy to wait for a feature to be ready before including it in a release. It also allows for a lot of experimentation. Some ideas might not otherwise be developed into potential features, while others are large and complex, and might take multiple cycles to complete. But experimentation can lead to a fully scoped or even fully developed feature that never makes it into coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. because, after hashing out the details, it’s realized it isn’t something that belongs in core. Don’t let that discourage you — trial and error is part of the process and will result in better features and a better WordPress. Features that don’t get included in core can continue to live on as awesome plugins, and the whole ecosystem benefits. In the past, the core team would have suggested that a feature start as a 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 anyway; this formalizes that process.

Ultimately, the decision on whether a feature makes it into core rests in the hands of the core team. To ensure you’re on the right track, keep in contact with the next release’s lead and the lead developers. The release leadRelease Lead The community member ultimately responsible for the Release. should understand what problem you’re trying to solve and why the direction you chose is the appropriate one to solve that problem.

Timeline

For features to be included in a release, they must be ready for the release’s first meeting — that is, day one when the development period begins. At that point, the release lead will review current projects, and along with core developers, determine if they’re fully baked and ready for merging into core.

They’ll be looking for a number of things, including a strong and well-tested user experience, fully-baked design, positive feedback from the community, core-quality code, no major bugs or issues, and a belief that the feature belongs in WordPress core. Every feature is different, so “ready” will mean different things depending on the specific feature, but a release lead must feel comfortable taking on primary responsibility for a feature and the core team must be comfortable taking on responsibility for the long term.

If the core developers decide a feature isn’t ready for core, they’ll let the feature lead know why and what can be done to prepare the feature for a future release.

Features that have been approved for inclusion will have a merge window of about two weeks (timeline still being decided) to get their code into core and wrestle with any latent issues getting it merged. However, as stated above, features must be ready for merging at the start of the merge window.

Who’s responsible for features?

After a feature gets merged into core, the feature team remains responsible for the feature, with added support from the core team. As with any part of WordPress, feedback comes from the entire community. However, after merging into core, a feature will receive a lot more visibility than in the plugin phase. Focus is important to ensure the feature ships.

Keep in mind that while the team remains responsible for the feature in core, ultimate decision-making rests in the hands of the core team, as with any part of core. The release lead will obviously work closely with the feature lead and entire team.

tl;dr

  • Sometimes features won’t end up in core. That’s okay! Not everything belongs in core. It’d still be a great, community-built plugin that helps to improve the ecosystem. Maybe it serves as a prototype, or lessons learned, or even a base for a future initiative.
  • Don’t expect your feature to make it for 3.8. These are features being built with the potential for inclusion in a future version of WordPress. They are not “3.8 features.”
  • To be included in 3.8, features must be “ready,” as defined by the core team, at the start of 3.8 development, shortly after 3.7. Be sure to keep in close contact with the release lead.

Questions? Comments? Ask away!

#3-8, #core-plugins

WordPress 3.8 Chat Wrap Up

The WordPress 3.8 chat ran a bit long today, but we got a ton of information on the projects people are interested in. I’ve compiled a list of features-as-plugins from the chat today to get a better handle on the status of each project. I may have missed some details, so let me know and I’ll update that page.

If your group hasn’t already, do the following things before next week’s chat:

  • Setup a weekly IRCIRC Internet 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. chat – ideally these should occur before the weekly 3.8 chat.
  • Use your weekly chat to select a lead. Keep in mind that your lead can change later if it needs to, just as MP6 has switched hands.
  • Create a wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ 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 use that page to list your group’s members, what you’ll be working on, and a link to all the relevant docs (including mockups). Add “wordpressdotorg” as a contributor to your project.
  • If you’re not yet at the stage where it makes sense to create a wordpress.org plugin, make sure you create a thorough overview document.
  • Each week you’ll want to post the status of your project to the relevant make P2P2 A free theme for WordPress, known for front-end posting, used by WordPress for development updates and project management. See our main development blog and other workgroup blogs..

Other than that, see you August 22 at 18:00 UTC for the next 3.8 chat.

#3-8

Present your 3.8 feature idea at tomorrow’s meeting

Tomorrow’s WordPress 3.8 meeting at Thursday 18:00 UTC is a great time to present your feature idea to the community. Many groups have already started forming around different ideas.

Comment on this post with a group name to add your group to the list of projects presenting tomorrow. Make sure you bring the following things with you:

  • What problem(s) are you trying to solve?
  • What proposal solution(s) are you interested in exploring?
  • When and where is your group communicating?
  • Who has joined your group so far?
  • If you’ve selected someone to lead your group, who is your lead?
  • If you’ve already started work on your 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, bring a link to your plugin page.

See you tomorrow!

#3-8, #agenda, #core-plugins