Bug#546525: check for Maintainer field mismatches between *.changes and debian/control
Stefano Zacchiroli <zack@debian.org> writes:
> The reason of the mistake, not terribly relevant, was a particular
> setting in pbuilder/cowbuilder (the $DEBEMAIL variable) which, when set,
> invokes dpkg-genchanges setting explicitly the maintainer, hence
> overriding the package default.
I suspect most Debian developers leave DEBEMAIL set all the time. I
certainly do. If setting that variable causes pbuilder/cowbuilder to
produce erroneous *.changes files, we probably should fix that bug, since
otherwise this is going to affect a ton of people.
Looking at the source code to both pbuilder and dpkg-genchanges, it looks
like the problem is that pbuilder is using -m when it should be using -e.
Have you already filed a bug against it? Ah, I see #546531. I'll follow
up to that.
> That being easily fixable, I believe that lintian can easily shield
> against this error pattern by checking whether there is a mismatch
> between the Maintainer field in debian/control and the very same field
> in the *.changes file being lintian-checked (if given, which is usually
> the case).
There currently is no way for Lintian to perform such a test. No part of
Lintian knows about both the *.changes file and the source package at the
same time. The two have very little connection to each other in Lintian.
That's a feature deficit in Lintian, to be sure, but changing it will be
a substantial amount of work. #513663 is related, although it concerns
the relationship between source and binary packages rather than changes
files and source packages.
> /me wonders how many people have set that variable, hence providing not
> terribly telling *.changes files
Well, that isn't what the variable means, and setting it is not wrong.
This is really a pbuilder bug.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: