update-maintainer mangles debian/control at the slightest provocation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ubuntu-dev-tools (Ubuntu) |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Binary package hint: ubuntu-dev-tools
Recent versions of update-maintainer seem to use some sort of parser for debian/control instead of doing a simple substitution into the file. This is a problem because the parser is buggy - in particular it seems to fail on stanzas separated by a line containing spaces rather than a blank line, which is allowed by policy (if discouraged). This manifests as entire binary packages disappearing from the file because they were merged with the preceding section and normalized to only contain copy of each field!
Whatever parser update-maintainer is using should be fixed to conform with policy; it should also be fixed to abort when invalid input is detected. But I'm filing this against update-maintainer because I think a validating parser for debian/control is fundamentally the wrong way to handle this file. update-maintainer should only ever care about two lines, the X-Orig-Maintainer and the Maintainer, and touching anything else (as this parser does) is wrong.
ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: ubuntu-dev-tools 0.120
ProcVersionSign
Uname: Linux 2.6.38-8-generic x86_64
Architecture: amd64
Date: Sun Apr 10 00:47:57 2011
InstallationMedia: Ubuntu 10.04.1 LTS "Lucid Lynx" - Release amd64 (20100816.1)
PackageArchitec
ProcEnviron:
LANGUAGE=en_US:en
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: ubuntu-dev-tools
UpgradeStatus: Upgraded to natty on 2011-03-24 (16 days ago)
Changed in ubuntu-dev-tools (Ubuntu): | |
status: | New → Fix Committed |
This bug was fixed in the package ubuntu-dev-tools - 0.121
---------------
ubuntu-dev-tools (0.121) unstable; urgency=low
[ Daniel Holbach ]
* harvest, setup.py: install tool that queries Harvest for information
about open opportunities for a given source package.
[ Stefano Rivera ] archive. rmadison: suite can be None, handle this correctly. debdiff: Convert distance to an integer, so it works when
* ubuntutools.
* pull-debian-
specified.
* sponsor-patch, doc/sponsorpatch.1: Clarify that --upload or --workdir is
required. (LP: #712721)
* Drop Breaks: ${python:Breaks}, no longer used by dh_python2.
[ Benjamin Drung ] update- maintainer: Do not use python-debian to parse packaging- environment. 1: Fix typo. extras- static from alternative suggests.
* ubuntutools.
debian/control to avoid mangling this file (LP: #756373). The new
simplified parser has no problems with comments in debian/control
(LP: #701487, #713827).
* doc/setup-
* Bump Standards-Version to 3.9.2 (no changes required).
* Drop transitional qemu-kvm-
[ Ted Gould ]
* lp-project-upload: Use a milestone that already exists if there is
one to use.
-- Benjamin Drung <email address hidden> Tue, 19 Apr 2011 13:05:30 +0000