LWN.net Logo

When developers go MIA

By Rebecca Sobol
December 12, 2007
MIA means "Missing in Action". When a project is built by volunteers, as is the case with most Linux distributions, sometimes packages with bugs linger and are not fixed for long periods of time. The developer is MIA. There are many reasons that a developer might have for not taking care of their packages as promised. There will be times with the demands of work, school, family, or whatever will take precedence over volunteer work. In an ideal case the person will tell someone that they won't be around for a while. They might even find someone else to take over for them while they are gone. All too often though they don't do anything at all and thereby become MIA.

Both Debian and Fedora have made proposals for dealing with MIA developers this week so we wanted to take a closer look at how these projects are dealing with this problem. Keep in mind that Fedora and Debian are different projects, with different goals. Fedora is fast paced, with a release every six months. They can't allow buggy packages to linger for long. Debian's release cycle is long, but they have large number of packages to maintain and a large number of developers to keep track of.

Debian's Bits from the MIA team goes beyond a proposal and outlines what is now the current policy for dealing with MIA maintainers. The MIA team met recently in Spain to flesh out the details. The MIA team is a small group of people who are tasked with identifying and attempting to contact maintainers who no longer seem to be active.

Team members have access to several MIA scripts which can be used to identify unresponsive maintainers. "The most important tool is "mia-query" where you can see the history from the person, which packages he/she maintains and the last-activity." The process is lengthy, allowing 15 days after each attempted contact before proceeding to the next stage. After sixty days the maintainer's packages will be orphaned so that some other maintainer might adopt them. Only after ninety days will the person be subject to removal from the keyring, if they are Debian Developers (DD) or Debian Maintainers (DM). For packages that are team maintained the missing person will be removed from the Uploaders/Maintainers-field after sixty days.

Fedora's proposal is still the initial stages. The idea is to automate the process as much as possible. "This proposal aims to create a framework for automating the detection and processing of MIA maintainers. The framework will touch upon bugzilla, pkgdb, koji, and various automated QA efforts. It will tie into the (new) policy of automatically cleaning up orphans created during a release at the start of the next development cycle."

A scheduled process will query bugzilla, looking for a certain class of bugs. If the maintainer reaction time meets a certain criteria, the maintainer will be marked as MIA.

How these bugs are identified in Bugzilla remains to be solved. Several automated QA tasks identified so far include: broken dependencies tests, rebuild tests, package/file conflict tests, and upgrade path violation tests. "Most of these tasks will need to grow the ability to file bugs for the issues discovered, with the logic to prevent multiple filings for the same issue. As stated above, a keyword or a flag or something will be added to the bug so that it can be easily identified at a later time."

Many details remain in this proposal, such as the particular allotment of times for responses, the method that will be used in bugzilla to mark a bug for MIA detection, who will make use of that method, who will work on the detection/processing tool, who will be notified of a maintainer going MIA, whether all packages owned by the MIA maintainer get orphaned, and so on.

A truly automated system for identifying MIA maintainers will likely be of interest to other projects, especially if it can be adapted to other infrastructures.


(Log in to post comments)

When developers go MIA

Posted Dec 14, 2007 4:23 UTC (Fri) by tbm (subscriber, #7049) [Link]

Note that I published a paper about the problems of maintainers in Debian who are MIA back in
2004 when I stated to systematically approach this problem:
http://www.cyrius.com/publications/michlmayr-mia.pdf
The tools have all been rewritten by the folks in Debian who do MIA tracking nowadays, but
many of the issues discussed in the paper are still the same.

Copyright © 2007, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds