Control: tag -1 - help + moreinfo Hi Andreas,
thanks for the prompt feedback. Andreas Beckmann wrote: > On 2017-04-25 01:25, Axel Beckert wrote: > > Holger suggested recently on IRC to try get that patch of yours to > > Stretch. > > I've been running debsums with that patch on my piuparts instance since > I posted it, and it helped reducing weird errors (rerunning all the > strange logs) :-) > So I'm all for seeing it in stretch :-) Ok, will work towards that. > > Is the above an indicator for not doing so or rather showing how > > important it would be? Can't tell, sorry. > > It's a possible regression ... in a corner case and so far it only > happened in a buggy package. Maybe it even revealed that buggy package. > If it shows up elsewhere as a real regression, I'll dig further into it. Ok. Below is a suggested patch for a variant where the ignoring of obsolete conffiles can be disabled with a commandline option. I'd be very happy if you could test this patch on a known case and tell me A) if it is compatible with your patch (i.e. I didn't introduce a regression when adding the option) B) turning this setting off really works as documented. I'm currently doing these modifications in a feature branch at https://anonscm.debian.org/cgit/pkg-perl/packages/debsums.git/log/?h=ignore-obsolete-689508 (There you'll also find the updated man page.) The patch: diff --git a/debsums b/debsums index faee262..6043a1e 100755 --- a/debsums +++ b/debsums @@ -78,6 +78,7 @@ Options: is configured --no-prelink report changed ELF files even if prelink is configured + --no-ignore-obsolete don't ignore obsolete conffiles. --help print this help, then exit --version print version number, then exit EOT @@ -98,6 +99,7 @@ GetOptions ( 'locale-purge!' => \my $localepurge, 'prelink!' => \my $prelink, 'ignore-permissions' => \my $ignore_permissions, + 'ignore-obsolete!' => \my $ignore_obsolete, g => sub { $gen_opt = 'missing' }, help => sub { print $help; exit }, version => sub { print version_info(); exit }, @@ -206,6 +208,9 @@ if (!defined $prelink or $prelink) ($prelink) = grep -x, map +("$_.bin", $_), '/usr/sbin/prelink'; } +# default is to use ignore obsolete conffiles, see #689508 +$ignore_obsolete = 1 unless defined $ignore_obsolete; + $silent++ if $changed; my @debpath = '.'; @@ -262,7 +267,9 @@ my %replaced; $package_name{$field{"Package"}} = $field{"binary:Package"}; } $installed{$field{"binary:Package"}}{Conffiles} = { - map m!^\s*/(\S+)\s+([\da-f]+)!, split /\n/, $field{Conffiles} + map m!^\s*/(\S+)\s+([\da-f]+)!, + grep { not ($ignore_obsolete and / obsolete$/) } + split /\n/, $field{Conffiles} } if $field{Conffiles}; for (split /,\s*/, $field{Replaces}) Regards, Axel -- ,''`. | Axel Beckert <[email protected]>, http://people.debian.org/~abe/ : :' : | Debian Developer, ftp.ch.debian.org Admin `. `' | 4096R: 2517 B724 C5F6 CA99 5329 6E61 2FF9 CD59 6126 16B5 `- | 1024D: F067 EA27 26B9 C3FC 1486 202E C09E 1D89 9593 0EDE

