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

Bug#698656: ITP: adequate -- Debian package quality testing tool

* Benjamin Drung <bdrung@debian.org>, 2013-01-21, 21:16:
* Package name    : adequate
 Version         : 0.3
 Upstream Author : Jakub Wilk <jwilk@debian.org>
* URL             : http://jwilk.net/software/adequate
* License         : Expat
 Programming Lang: Perl
 Description     : Debian package quality testing tool

adequate checks quality of installed packages.

The following checks are currently implemented:

What's the advantage of adequate over lintian?

They have different scopes:
- Lintian is a static analysis tool;
- adequate examines the system on which the tested package has been already installed to see if everything is in order.

That said, many of the Lintian checks could be re-implemented in adequate. However, I specifically avoided implementing anything that could be adequately (no pun intended) done by Lintian.

Let me go through the list of the checks:

  * broken symlinks;

Lintian's package-contains-broken-symlink implementation is prone to tons of false positive; this is unfixable because Lintian lacks information about foreign packages.

  * missing copyright file;

no-copyright-file is emitted by Lintian only if the copyright file is shipped in the binary package. But Lintian can't possibly know that /usr/share/doc/$pkg/ will disappear on upgrade.

  * obsolete conffiles;

Lintian can't possibly catch this.

  * Python modules not byte-compiled;

lintian4python has a check for this, which works reasonably well, but only under assumptions that 1) the packages use helpers for byte-compilation and 2) the helpers actually do their job correctly.

  * /bin and /sbin binaries requiring /usr/lib libraries;
  * underlinked binaries or libraries.

Lintian lacks information about foreign packages to perform these checks.

I hope this answers your question. :)

Jakub Wilk

Reply to: