[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#398658: lintian: Please detect unconditional use of some nonessential pkgs during purge



Package: lintian
Severity: wishlist

On Tue, Nov 14, 2006 at 03:13:42PM -0500, Justin Pryzby wrote:
> On Tue, Nov 14, 2006 at 08:07:27PM +0100, Frank Lichtenheld wrote:
> > On Tue, Nov 14, 2006 at 06:44:38PM +0100, Lucas Nussbaum wrote:
> > > Here is a list of packages that fail when all packages except essential
> > > ones, apt and debfoster wxhere removed, but didn't fail when all
> > > important&required packages were kept. This indicates a missing
> > > dependency on an important or required package, and is considered an RC bug.
> > > Packages from the list above were removed from that list, so all of them
> > > should be RC bugs (pending confirmation from the release team, of course).
> > 
> > Here some preliminary investigation of these to give a better feel
> > for the reasons behind the failures.
> 
> The package needs to check for the existence of the dependency before making
> use of it, right?
Please detect the unconditional use of debconf, adduser, update-inetd, etc
inside "purge" conditional or case, or at the top of a script, before
conditionals or cases.  

> This is at least true for the "debconf" errors; since "debconf is a cache", it
> isn't useful to fail when the cache has already been removed.  I guess this is
> why some packages use:

Please also detect this:
> 
>    . /usr/share/debconf/confmodule || true

> They should really use 
> 
>    f=/usr/share/debconf/confmodule
>    [ ! -e $f ] || . $f;

> For the "adduser" errors, it might be reasonable to intentionally fail, as a
> mechanism to alert the admin that "the user hasn't and can't be removed".  Same
> for update-inetd.  Is that the intent?

> Justin



Reply to: