very helpful lioness

Main menu

You are here

Hit-list for top Drupal 7 module stabilization

Fri, 11/11/2011 - 00:27 -- webchick

Back in September, http://drupalcontribstatus.com/ was launched to track the porting status of the top 60 contributed projects to Drupal 7. Since then, we've whittled the list down to just 20 projects remaining, as well as tons of progress on the rest! YEAH!

I contacted each of the maintainer(s) of those remaining projects and have come up with a list of next steps for each. Your help is needed if we want to get that graph up to 100% by year's end. (Just in time for Drupal 7's first birthday! :))

As a general rule, help is needed in the following areas:

Issue queue triage (Difficulty: Novice): Going through the issue queues of these modules and doing things like closing duplicate reports, verifying that bug reports are valid, and so on. None of this is particularly difficult work, but time that maintainers have to spend doing it is time they can NOT spend porting their modules to Drupal 7.

Reviewing patches (Difficulty: Intermediate): Going through the issues in the queue marked "needs review" and making sure patches still apply, then testing to make sure that they still work, then reporting on the results of your testing are all critical things that really help save maintainers time, and ensure that any actionable issues are escalated to their attention.

Experience in various core sub-systems (Difficulty: Intermediate to Advanced): If you know how to write automated tests, are familiar with how the render API works, can answer questions about the new Field API or File API, there are several issues identified that could use YOUR help! Note that you don't necessarily need to be in MAINTAINERS.txt to provide this help, either; if you've already started building Drupal 7 sites and modules, you likely know enough to be helpful!

Co-maintainership (Difficulty: Intermediate) Many of these projects are seeking co-maintainers. If you or your business/customers depend on any of these modules, investing solid time in the issue queue to help review and roll patches for issues in need would be of tremendous benefit, and would help position yourself to ask for commit rights so that you can ensure these modules stay solid going forward.

JavaScript knowledge! (Difficulty: Intermediate to Advanced) Seriously. We are, generally speaking, a bunch of PHP nerds. If you know JavaScript, you can be helpful on a number of different (and important) fronts.

So, without further ado, here are some specifics on how you can help Drupal 7, and the maintainers whose code you rely on!

Didn't get a response from this maintainer, but the list of blocker issues appears to be valid. While some seem to require a pretty deep understanding of menu system innards, others up for the taking are JavaScript-oriented or dealing with integration with other modules such as Views or Shortcut. Several issues have proposed solutions already, but need review.

The list of blocker issues above is valid. Most relate to entity and field API. Alan is planning to put some solid work into this module over the next couple of weeks, as he needs it for a D7 project of his own. So any helpers in the issue queue should see quick response times!

Did not hear back from these maintainers, but the list of stable release blockers includes several form-related issues. If you have experience with Drupal's form API, you may be able to help! CAPTCHA module is also currently seeking co-maintainers.

Drupal 7 generates HTML code at the very last moment instead of what was done in Drupal 6 and earlier → Render arrays in Drupal 7
A ready to render array can be generated from the $node object via the node_view function → Drupal API : node_view
Should Contemplate give you a render array (instead of the $node object) in which you could create/modify/delete elements letting the rendering to the theme ?
Or is it up to you to render each elements via node_view and render in the template, thus generating HTML ?
Could Contemplate rely on token or dedicated data structure instead of internal Drupal structure ?

If anyone can provide insight on these questions, the module maintainers would love you to pieces. :) Without help, this module may be forced to become deprecated in Drupal 7. :(

Immediate needs are issue queue triage. http://drupal.org/project/issues/ctools?version=691544 has about 150 issues in it. Needs folks to go through and identify issues which are either:
a) Low-hanging fruit / Quick fixes
b) Really nasty things that ought to be cleared up before a 1.0 release
Earl has a spreadsheet at https://docs.google.com/spreadsheet/ccc?key=0At8yUf1kZmCldC01RUxwUnFsczR... where he's tracking things that need his immediate attention. Hint: The fewer issues in here, the faster it comes out, so please be picky about what things you escalate. :)
Beyond that, Earl doesn't think there are any release blocker issues, and he should be able to get a release out by year's end. Yay!

General issue queue triage to weed out duplicate/invalid issues would be of tremendous help.

Automated tests for various Date widget/formatter interactions. Spending time here will help greatly to speed up managing other issues.

More thorough reviews. Please, when reviewing, don't just test whether it works for your particular situation but also that it works with all types of date fields and widgets. Automated tests should help with this, but in the meantime testing can also be done manually.

Several UX-related issues, some of which need someone with JavaScript chops.

Date tokens are blocked on one of the remaining issues in the Token module queue. Helping to get Token ported will help Date module! :)

There are a number of issues around translations that need attention by someone who understands the translation system.

However, if I had to guess, I'd say issue queue triage would be your best shot at getting a release of this out sooner. And if you're savvy with JavaScript, this might be a great project for you to sink your teeth into.

For the most part, major development efforts for Meta tags is now complete, and Dave is now onto code clean-up and stabilization.

There's one remaining architectural issue which could use hashing out. Meta tags currently puts its information in the $content array so that it can be cached. However, that only works if themes are using print render($content), which it seems many custom conversions from Drupal 6 are not. If you have thoughts on this, or otherwise have performance / Render API experience, please talk to Dave. He's looking for validation on the approach.

A stable release of Panels is blocked on a stable CTools release, so helping with issues in the CTools issue queue will help Panels.

The biggest thing Panels needs at the moment is issue queue triage, to try and sort through the issues there, close invalid issues, and of the valid issues, determine whether or not they're Panels bugs or actually CTools bugs. If the issue queue gets cleaned up, that'll greatly help Earl to determine what, if any, of the outlier bugs are blockers once CTools 1.0 comes out.

Major development on Redirect module is pretty much done. Woohoo! However, there are still a few issues remaining issues in the blocker queue that need reviews from folks, particularly the Path redirect -> Redirect upgrade path issue.

This module's in pretty good shape, with a few, mostly minor to-dos. Reviews and testing would be helpful on patches in the queue.

One problem that could use help is the print_node.tpl.php template file isn't getting picked up for some reason, so print_preprocess_print_node. This is probably something easy, so if you're familiar with writing theme hooks and theme suggestions in Drupal 7, João could use some assistance!

List of release blockers is valid. Here's what's needed:
- Support for nested tokens is a hot-button issue that blocks many contributed modules.
- If you are JavaScript-inclined, the upstream https://github.com/ludo/jquery-treetable library needs accessibility and performance improvements.
- Automated tests for basic token support would help ensure a healthy base from which to fix other issues.

Daniel "dereine" Wehner is leading maintainership efforts on Views currently. Currently, the best place to help out is in helping out with issues from the two lists of blocking issues above. Those remaining issues largely center on problems with the views override system.

If that sounds terrifying to you but you still want to help, the Views Bug Squad is always looking for hands. Members of the Views Bug Squad are Drupal contributors who have committed to spending a few hours a week doing basic triage the Views issue queue. Find out more at http://drupal.org/node/940718!

Rewrite fields.action.inc is the primary blocker for this module. Bojan is about 50% done, and hopes to post it for review within the next few days. Then, the best thing the community can do is provide feedback, so that we can figure out the best way it should look and work. Bojan has some availability in November, so now's the time if you'd like to help drive this module home!

This module primarily needs two things:
1) An active co-maintianer; Dave is currently single-handedly maintaining about 5 of the top 60 modules, and this is one he wouldn't mind having off his plate.
2) Lots and lots of issue queue triage. Because this module is so popular, there are tons of duplicate/invalid issues and Dave could really use some help weeding them down, to help get a clear sense of what's there in terms of release-blockers.

That's a wrap!

Whew! Hopefully you found something in that list that either you or someone you know can help crank on. If not, there's always the full list of all D7 stable release blockers for your hacking and triaging pleasure! If you're headed to a DrupalCamp over the next few weeks, consider holding a sprint to hack on these important issues.

The link that you have included here to all the issues tagged as D7 stable release blockers (contrib) is really important, and would be surely useful in the Contributor Links section of the drupal.org dashboard.