Debian Bug report logs - #398658
lintian: Detect unconditional use of non-essential packages during purge

Package: lintian; Maintainer for lintian is Debian Lintian Maintainers <[email protected]>; Source for lintian is src:lintian (PTS, buildd, popcon).

Reported by: Justin Pryzby <[email protected]>

Date: Tue, 14 Nov 2006 20:48:01 UTC

Severity: wishlist

Fix blocked by 629247: lintian: Please use a decent shell script parser

Reply or subscribe to this bug.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to [email protected], [email protected], Debian Lintian Maintainers <[email protected]>:
Bug#398658; Package lintian. (full text, mbox, link).


Acknowledgement sent to Justin Pryzby <[email protected]>:
New Bug report received and forwarded. Copy sent to [email protected], Debian Lintian Maintainers <[email protected]>. (full text, mbox, link).


Message #5 received at [email protected] (full text, mbox, reply):

From: Justin Pryzby <[email protected]>
To: [email protected]
Subject: lintian: Please detect unconditional use of some nonessential pkgs during purge
Date: Tue, 14 Nov 2006 15:35:19 -0500
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



Information forwarded to [email protected], Debian Lintian Maintainers <[email protected]>:
Bug#398658; Package lintian. (full text, mbox, link).


Acknowledgement sent to Russ Allbery <[email protected]>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <[email protected]>. (full text, mbox, link).


Message #10 received at [email protected] (full text, mbox, reply):

From: Russ Allbery <[email protected]>
To: [email protected], [email protected]
Subject: Re: Bug#398658: lintian: Please detect unconditional use of some nonessential pkgs during purge
Date: Tue, 14 Nov 2006 18:18:16 -0800
Justin Pryzby <[email protected]> writes:

> 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.

"etc." is going to be read as if it wasn't present unless someone spells
it out for me, I'm afraid.  I don't know what is supposed to go into
"etc." that is causing problems in practice.  If anyone has a specific
list of additional programs for which this is a problem, appending them to
the lintian bug would be nice.  (Bug#398658)

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

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

Please don't combine multiple issues in a single bug report.  (Although
you already reported this a while back as Bug#376183.)

These and several other requests for lintian (such as Bug#397785) are
currently not being worked on largely because lintian does not have good
facilities for doing complex analysis of maintainer scripts and most of
these requests ideally require a fair amount of state tracking and context
awareness to avoid false positives and false negatives.  Any suggestions
and (ideally) contributions towards solving this would be greatly
appreciated.  I'm starting to think that in order to do a good job with
these sorts of problems, lintian is going to have to acquire at least a
minimalist understanding of Bourne shell syntax so that it can do lexical
analysis of maintainer scripts.

-- 
Russ Allbery ([email protected])               <http://www.eyrie.org/~eagle/>



Changed Bug title to `[checks/scripts] detect unconditional use of some non-essential packages during purge' from `lintian: Please detect unconditional use of some nonessential pkgs during purge'. Request was from Russ Allbery <[email protected]> to [email protected]. (Sun, 11 Jan 2009 04:09:16 GMT) (full text, mbox, link).


Information forwarded to [email protected], Debian Lintian Maintainers <[email protected]>:
Bug#398658; Package lintian. (Sat, 04 Jun 2011 17:24:03 GMT) (full text, mbox, link).


Acknowledgement sent to Niels Thykier <[email protected]>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <[email protected]>. (Sat, 04 Jun 2011 17:24:03 GMT) (full text, mbox, link).


Message #17 received at [email protected] (full text, mbox, reply):

From: Niels Thykier <[email protected]>
To: [email protected], [email protected]
Subject: Re: Bug#398658: lintian: Please detect unconditional use of some nonessential pkgs during purge
Date: Sat, 04 Jun 2011 19:18:51 +0200
Hey,

Perhaps we should mark this as wontfix and leave this to piuparts?  I
admit that Lintian is probably more used than piuparts by developers
(and it would catch this issue pre-upload).  Nevertheless we have not
done anything about this for 4+ years and alternatives exists.

~Niels





Message sent on to Justin Pryzby <[email protected]>:
Bug#398658. (Sat, 04 Jun 2011 17:24:04 GMT) (full text, mbox, link).


Information forwarded to [email protected], Debian Lintian Maintainers <[email protected]>:
Bug#398658; Package lintian. (Sat, 04 Jun 2011 18:51:03 GMT) (full text, mbox, link).


Acknowledgement sent to Russ Allbery <[email protected]>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <[email protected]>. (Sat, 04 Jun 2011 18:51:03 GMT) (full text, mbox, link).


Message #25 received at [email protected] (full text, mbox, reply):

From: Russ Allbery <[email protected]>
To: [email protected], [email protected]
Subject: Re: Bug#398658: lintian: Please detect unconditional use of some nonessential pkgs during purge
Date: Sat, 04 Jun 2011 11:49:28 -0700
Niels Thykier <[email protected]> writes:

> Perhaps we should mark this as wontfix and leave this to piuparts?  I
> admit that Lintian is probably more used than piuparts by developers
> (and it would catch this issue pre-upload).  Nevertheless we have not
> done anything about this for 4+ years and alternatives exists.

I think we could do a better job of this than puiparts, since we can check
all the various branches and alternatives, not just the default case.
This is one of those open wishlist bugs that I was considering sort of
"soft-blocked" on the long-term, major project of integrating a real shell
parser into Lintian.

-- 
Russ Allbery ([email protected])               <http://www.eyrie.org/~eagle/>




Message sent on to Justin Pryzby <[email protected]>:
Bug#398658. (Sat, 04 Jun 2011 18:51:20 GMT) (full text, mbox, link).


Information forwarded to [email protected], Debian Lintian Maintainers <[email protected]>:
Bug#398658; Package lintian. (Sat, 04 Jun 2011 20:36:03 GMT) (full text, mbox, link).


Acknowledgement sent to Niels Thykier <[email protected]>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <[email protected]>. (Sat, 04 Jun 2011 20:36:03 GMT) (full text, mbox, link).


Message #33 received at [email protected] (full text, mbox, reply):

From: Niels Thykier <[email protected]>
To: [email protected]
Subject: Re: Bug#398658: lintian: Please detect unconditional use of some nonessential pkgs during purge
Date: Sat, 04 Jun 2011 22:31:01 +0200
block 398658 by 629247
thanks

On 2011-06-04 20:49, Russ Allbery wrote:
> Niels Thykier <[email protected]> writes:
> 
>> Perhaps we should mark this as wontfix and leave this to piuparts?  I
>> admit that Lintian is probably more used than piuparts by developers
>> (and it would catch this issue pre-upload).  Nevertheless we have not
>> done anything about this for 4+ years and alternatives exists.
> 
> I think we could do a better job of this than puiparts, since we can check
> all the various branches and alternatives, not just the default case.
> This is one of those open wishlist bugs that I was considering sort of
> "soft-blocked" on the long-term, major project of integrating a real shell
> parser into Lintian.
> 

I feared that might be the reason; indeed static analysis would yield
better code coverage in this case, but it does not help me with cleaning
up the tracker! :P

Anyhow, opened a bug for the shell parser that I will use as blocker for
bugs depending on said shell parser.  Hopefully, someone will get tried
of that bug and fix it and this one along with it. :D

~Niels





Added blocking bug(s) of 398658: 629247 Request was from Niels Thykier <[email protected]> to [email protected]. (Sat, 04 Jun 2011 20:36:04 GMT) (full text, mbox, link).


Changed Bug title to 'lintian: Detect unconditional use of non-essential packages during purge' from '[checks/scripts] detect unconditional use of some non-essential packages during purge'. Request was from Chris Lamb <[email protected]> to [email protected]. (Mon, 29 Jan 2018 13:48:19 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <[email protected]>. Last modified: Tue May 13 09:30:22 2025; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU General Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.