After a discussion on IRC, I came up with this proposal for a policy / handbook page. Before creating the page, let's discuss any problems or concerns with it.

How to handle broken and abandoned contributed modules

Drupal has a huge number of contributed modules. Some are well maintained and some aren't. In some cases, the maintainer wanted to share their code but then moved on. If the issue queue is full of unresolved issues and there is no sign of the maintainer, it may be abandoned. So what should be done about the module? There are a few possibilities:

If you would like to take over the module:

  1. File an issue in that module's queue stating your request to take over maintainership.
  2. Wait two weeks to give the maintainer time to respond.
  3. If there is no response or if the maintainer responds and gives the ok, move the issue to the infrastructure queue to bring it to the attention of someone with access to make the change.

If the module generally works but has some unresolved issues, appears abandoned, and you don't want to take it over:

  1. File an issue in that module's queue stating your request to have a note added to the project page.
  2. Wait two weeks to give the maintainer time to respond.
  3. If there is no response, move the issue to the infrastructure queue to bring it to the attention of someone with access to make the change.
  4. Someone with access can then add a note that the module is abandoned and looking for a maintainer.

If the module is completely unusable, appears abandoned, and you don't want to take it over:

  1. File an issue in that module's queue stating your reasons for wanting the module removed.
  2. Wait two weeks to give the maintainer time to respond.
  3. If there is no response or if the maintainer responds and gives the ok, move the issue to the infrastructure queue to bring it to the attention of someone with access to make the change.
  4. Someone other than the person who filed the issue should confirm that the module is, indeed, unusable.
  5. If there is agreement that the module is unusable, someone with access can then unpublish all of the releases and add a note to the project page stating that the module has been abandoned. If a replacement module is known, link to that project.

Another possibility mentioned for the third section is to add the note but leave the releases published for a few months just to be sure before unpublishing them. Since unpublishing releases causes update status to have fits, this should only be done if it is confirmed that the module is unsafe or unusable or if the maintainer agrees that it should not be available.

Once we have agreed on a policy, sepeck said this should be added as a child page of http://drupal.org/about

Michelle

Comments

michelle’s picture

I've given this some more thought and revised it a bit to simplify and clarify it.

[title] Dealing with abandoned projects

Drupal has thousands of contributed projects, each with one or more maintainer. While most maintainers continue to care for their projects after the initial release, some need to move on and leave the project in the care of the community. Ideally, maintainers will put up a note that the project is in need of a new maintainer so the work can continue uninterrupted. Occasionally, though, a maintainer will simply abandon the project without a word. While experienced Drupal users know to check the queue and the cvs commits to determine the health of a project, having broken and abandoned projects available can be confusing and off-putting for new users.

If you find a project that appears to be abandoned, please follow the procedure below:

If you would like to take over maintainership of the project:

  1. File an issue in that project's queue stating your request to take over maintainership.
  2. Wait two weeks to give the maintainer time to respond.
  3. If there is no response or if the maintainer responds and gives the ok, move the issue to the infrastructure queue to bring it to the attention of someone with access to make the change.

If you are unable to take over the project yourself:

  1. Review the issue queue and commit messages carefully to be reasonably sure the project is abandoned to avoid annoying a maintainer who may simply be busy.
  2. File an issue in that project's queue politely asking if it is still maintained. For the title, use something like "Is PROJECT_NAME still being maintained?" By putting the project name in the title, you can catch the attention of people reading via the global tracker.
  3. Wait two weeks to give the maintainer time to respond.
  4. If there is no response, move the issue to the infrastructure queue.
  5. Change the title to something like, "PROJECT_NAME appears to be abandoned" and list your reasons for this as well as noting that the maintainer has not responded. If you feel that the project is not only abandoned but badly broken (unusably so) or unsafe to use, mention that as well.
  6. A site maintainer (or higher) should review the project. If s/he agrees with the assessment, s/he can then add a note to the project page that the project is abandoned and in need of a new maintainer.
  7. If the project is badly broken or harmful and not reccomended to use, the maintainer should unpublish all of the releases as well. If a replacement project is known, link to that project. This should only be done if absolutely necessary as unpublishing the releases will cause update status to notify everyone currently using the project.

Any thoughts?

Michelle

JohnForsythe’s picture

This sounds reasonable to me.

michelle’s picture

Project: Drupal.org infrastructure » Documentation
Component: Other » Developer Guide

Ok, the book page has been created: http://drupal.org/node/251466

Webchick suggested this be linked to from http://drupal.org/node/59 and http://drupal.org/node/23789 as well. I'm about to head to bed so recording it here so it won't get forgotten.

Michelle

heather’s picture

Project: Documentation » Drupal core
Version: » 7.x-dev
Component: Developer Guide » documentation

Changed the component to reflect the new component categorization. See http://drupal.org/node/301443

heather’s picture

Project: Drupal core » Documentation
Version: 7.x-dev »
Component: documentation » Correction/Clarification

oops! my bad :) fixed my error here. (just in documentation sprint at drupalcon!)

Changed the component to reflect the new component categorization. See http://drupal.org/node/301443

add1sun’s picture

Title: Document procedure for handling abandoned modules » Cross-link the abandoned module page

Renaming to clarify the remaining task.

add1sun’s picture

Status: Active » Fixed

Appears to be gone now.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.