Hi people, I made some changes to qa.sgml, basically merging my (Vincent's) old document into SGML. Because some of those guidelines (the time frames etc) may cause some controversy in some conservative minds, I've marked the proposalness of the document better :)
I also made some grammar/spelling/style fixes in the text, and separated the paragraphs more. And some other cosmetics :) Hope you like it... http://qa.debian.org/documentation/qa.html/ Or read the wdiff (word diff) I'm attaching to this mail. P.S. some files in the qa.d.o directory on pandora didn't have the write bit set for the qa-ctte group, including these, so I got that fixed, too... -- enJoy -*/\*- don't even try to pronounce my first name
<!doctype debiandoc system> <book> | <titlepag> | <title>Quality Assurance in Debian [proposal] | <author><name>Raphaƫl Hertzog</name> <email/[EMAIL PROTECTED]/ | <author><name>Christian Kurz</name> <email/[EMAIL PROTECTED]/ | <author><name>Vincent Renardias</name> <email/[EMAIL PROTECTED]/ | <author><name>Martin (Joey) Schulze</name> <email/[EMAIL PROTECTED]/ | <author><name>Josip Rodin</name> <email/[EMAIL PROTECTED]/ | <version>version 0.3, February 2000.</version> <abstract> With the growing number of developers working on Debian (>500 registered developers at the moment), the increasing number of packages (>3500 already) and the large number of bugs (about 10000) Quality Assurance (QA) is urgently needed. This document explains a proposed solution for Debian about the quality assurance issue. | </abstract> | | <copyright> | <copyrightsummary> | Copyright 1997-2000 the Debian Project | </copyrightsummary> <p>This text is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. <p>This is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. <p>A copy of the GNU General Public License is available as /usr/share/common-licenses/GPL in the Debian GNU/Linux distribution. | </copyright> | | </titlepag> | | <toc detail="sect"> | | <chapt id="why">Why do we need Quality Assurance ? | <sect id="facts">Some facts | <p><list> <item>The number of bugs is growing as is the number of packages. <item>Some packages have many bugs because the maintainer left Debian without orphaning his packages. <item>Some maintainers can't manage all their packages and accept to live with buggy packages. <item>Some bugs are sometimes too difficult to correct for the maintainer. <item>There's also period during which some maintainers can't work at all for Debian, but their packages may still need some attention. <item>In general, the quality of Debian can be improved in various way. There are still lots of packages not using all the suggested tools and integration utilities (menu files, doc-base files, alternatives, proper section/priorities, ...). </list> | <sect id="goal">Goal of the proposed organization <p>Working on Quality Assurance is a big job, in fact it should not be the job of some volunteers only. Each Debian developer should take care of the quality of his packages. | <p>However, this cannot be enforced with rules, because quality is sometimes a point of view. Therefore this document won't define strict rules for the | packages (the Debian policy already dictates the rules), but a global organization so that every volunteer can help by doing things that will concretely improve the quality of Debian. | <p>One of the main points here is scalability, meaning many people must be able to work together on quality assurance without interfering too much. | <chapt id="overview">Overview | <p>The work is coordinated on <email/debian-qa@lists.debian.org/, and the | QA Committee can be reached at <email/[EMAIL PROTECTED]/. | That's an official committee which is in charge of leading the volunteers that want to help with QA issues. There's also a QA core team (composed of regular QA workers) that can do NMU when the committee request it. | <p>Here are some common tasks for people to do: <list> <item>provide help/patches for particular bug reports (reducing the number of bugs in buggy packages). <item>check if release critical bugs are corrected rapidly, if after 2 weeks one is not corrected, they may contact the maintainer and ask him if he wants help or NMU ... <item>help for mass update, maintain list of updated packages, send mail to the maintainers, allow NMU after X weeks without response. <item>check if all packages providing user programs (X11 or not) come with menu files. <item>check that all packages that provide documentation register it with doc-base. <item>check if package are policy conforming (lintian is very useful for this). <item>provide more documentation where it's lacking. <item>check if old packages (ie without recent upload) still work and if they are still maintained. <item>check if the informations provided by the packages are accurate (dependencies, sections, priorities, description, ...). <item>check if all the packages are linked against the proper libraries (so that old libraries may be dropped in favour of most recent ones). <item>check that we have the latest upstream version. <item>any other useful (QA related) job. </list> | <chapt id="organize">QA Group organization | | <sect id="ctte">The QA committee | <p>The Quality Assurance committee is a group of experienced Debian | developers who have volunteered to spend most time doing QA for Debian. | It consists of the leader, and the members, 15 people at most. | | <p>The members manage a database of QA related tasks. They lead the QA core team and the QA members. They contact maintainers which could benefit from | some help because they have buggy (or difficult) packages. They offer their assistance of the QA members. | <p>The QA committee is also in charge of or tightly connected to the WNPP | (Work Needed and Prospective Packages) list maintenance, regarding the | orphaned and similar packages. | <footnote> | WNPP page maintainer e-mail is [EMAIL PROTECTED], and the web page location is: | http://www.debian.org/doc/prospective-packages.html, or | http://qa.debian.org/wnpp.html. | Web page containing more information on the packages that were withdrawn | from the distribution is: http://www.debian.org/doc/withdrawn-packages.html | </footnote> | | <sect id="core">The QA core team | <p>The Quality Assurance core team consists of experienced Debian developers | actively involved in QA for some time, and appointed by the QA committee. | | <p>Being member of the QA core team doesn't give you many powers, but it | gives you certain feeling of proudness, and obligation to respond when the | QA committee members request that someone does a non-maintainer upload (NMU) | of a problematic package. | | <sect id="members">The QA members | <p>Everybody who is subscribed to <email/debian-qa@lists.debian.org/ and is | doing some work on QA issues in Debian, is considered to be a QA member. | The more QA members the better, and people don't have to be official Debian | developers to be QA members. | | <p>Current task list will be posted to debian-qa mailing list by a committee | member once or twice a week, the QA member are encouraged to work on the problems submitted by the committee. A QA member who has worked a lot in | this area can ask the committee to become a QA core team member. | | <chapt id="rules">Rules for handling packages | | <sect id="orphaned">Orphaned packages | | <p>One of the more user-visible tasks of the QA group is to maintain | orphaned packages, until they get adopted or withdrawn. | | <p>When a package is orphaned, one of the QA Group members will make a call | for a new maintainer on the general developer mailing list, and inform | Work Needing and Prospective Packages (WNPP) list maintainer to list the | package as orphaned by the maintainer (if that was not already done). | | <p>If nobody applies for the maintainership of the package after one month, | we shall proceed depending on the importance of the involved package: | | <list> | <item>Important package (Priority: standard or higher) | <p>The package will be maintained by QA Group members until a new | maintainer for it/them is found. They will be listed on the WNPP page as | orphaned. We shall consider lowering the priority of those important | packages that don't get a maintainer within three months, and after that | treat them as those from the second group, | <item>Not so important package | <p>If there's still nobody volunteering to take care of them after this | delay, they will be withdrawn from the unstable distribution and put in | the directory 'project/orphaned' on the FTP site. They will be listed on | the WNPP page as withdrawn. Packages that don't get a maintainer for one | year or two Debian releases will be withdrawn completely from the | distribution and the FTP site. They will, however, stay archived | together with the releases they were in, and mentioned on the withdrawn | packages' webpage (see ref id="links"). | </list> | | <p>QA Group members are in constant search for bugs, inconsistancies and | room for improvement in all of our packages. When they find a problem | and a way to fix it in an orphaned package, they will be able to do | a bugfix upload whenever it is neccessary to do so. | | <p>As noted before, any other interested maintainer who is willing to do an | upload of an orphaned package is welcome to ask on the QA Group list for | permission to do so, on behalf of his or the Group's. The permission is | considered granted if there are no objections in one week. | | <sect id="maintained">Bugfixes in maintained packages | | <p>When QA Group members find problems in maintained packages (packages that | have an active maintainer), they will send fixes to their maintainers | through the Debian bug tracking system (BTS). The QA Group member should | offer himself for doing the NMU if he is a developer. If after some time | period no upload is made by the maintainer for no apparent reason, the | member will inform the QA committee, who will then appoint a core team | member to investigate and eventually upload a NMU of the fixed package. | | <p>In the normal development period (when only unstable and stable | distributions exist), delays between submitting the bug report, and | asking the QA committee for help, are as follows: | <list> | <item> fix for a release-critical bug: 10 days | <item> fix for a bug of normal severity: 30 days | <item> cosmetic fix or a wish implementation: 90 days | </list> | Note: the second two types may only be uploaded to unstable. | | <p>The above delays are reduced by a factor of 2 in the month preceding a | freeze. During a freeze (when there is a stable, frozen, and unstable | distribution), delays are as follows: | <list> | <item> fix for a very critical bug: 1 day | <item> release-critical bug fix: 7 days | <item> any other bug fix: 14 days | </list> | Note: any of these may be uploaded before the deadline if the freeze is | coming to an end. | | <p>The QA Group members making bugfix uploads will need not only to respect | the delays above, but will also have to announce their intent to upload the | NMU on our mailing list, CC:ing the maintainer of the related package, at | least 2 days (one day during freeze) before doing the upload. They will have | to say which package and of which version and distribution will they upload, | naming the exact bug reports that will be marked as fixed after the upload. | | <p>However, if QA committee takes part in two consecutive bugfix uploads | within two months, with still no action from the actual package maintainer, | then the package will be marked orphaned, and the 'Maintainer' field of the | package will be set to "Debian QA Group <debian-qa@lists.debian.org>". | | <p>This will be announced on the developers mailing list, | <email/debian-devel@lists.debian.org/, and sent to the WNPP list maintainer. </book> | </debiandoc>