On 22.04.2012 16:42, Josh Triplett wrote: > On Sun, Apr 22, 2012 at 04:13:22PM +0200, Michael Biebl wrote: >> On 22.04.2012 11:40, Josh Triplett wrote: >>> Package: systemd >>> Version: 44-1 >>> Severity: normal >>> File: /etc/bash_completion.d/systemctl-bash-completion.sh >>> >>> dpkg does not automatically remove conffiles on upgrade when a package >>> stops shipping them. systemd needs to clean up the obsolete conffile >>> /etc/bash_completion.d/systemctl-bash-completion.sh in its >>> maintainer scripts, using dpkg-maintscript-helper. Please see the >>> manpage of dpkg-maintscript-helper for details. >>> >> >> The systemd bash_completion file was renamed/moved and systemd already >> uses a dh_installdeb maintscript helper to move the conffile. >> >> See /var/lib/dpkg/info/systemd.p* > > However, I noticed something interesting: the mv_conffile operation in > the maintainer scripts uses version 37-1, so it'll only occur on > upgrades from that version or before, but 37-1.1 had the same conffile. > So, anyone who upgrades from 37-1 to 37-1.1 before upgrading to 43-1 or > later will not have the conffile migrated. > > I checked the history of systemd on my system via dpkg.log, and sure > enough I upgraded to 37-1.1 before upgrading to a later version.
That's an unpleasant side-effect of the dpkg-maintscript syntax. It uses mv_conffile oldconffile newconffile [priorversion [package]] Where priorversion is the last unfixed version. When 43-1 was uploaded to experimental, the last unfixed version was 37-1. Later on, *after* 43-1 had been uploaded, the version in experimental received another update, which broke the versioning information in the maintscript file. Personally, I would prefer, if dpkg-maintscript would use first-fixed-version instead of priorversion (i.e. < instead <=), as you know exactly the version when the conffile was (re)moved, but you can't be sure about value of priorversion, since this might change (e.g. by a binNMU). Raphael, what was the reasoning for choosing the current syntax? Maybe should have used 43-1~~ instead of 37-1. This is ugly, but it would have avoided this particular problem and it even would be backport-safe. Michael -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
signature.asc
Description: OpenPGP digital signature