Web interface: https://salsa.debian.org/lintian/lintian
Mailing list: <debian-lint-maint AT lists DOT debian DOT org> lists
Unix group: lintian
Services handled by the team:
- /srv/lintian.debian.org on host lintian-01.debian.org
Interacting with the team
Email contact: <lintian-maint AT debian DOT org>
IRC: #debian-qa on irc.debian.org (OFTC Network)
Bug tracker: http://bugs.debian.org/src:lintian
Issue tracker: https://salsa.debian.org/groups/lintian/-/issues
Current contributors and usual roles
Bastien ROUCARIÈS (> 700 commits; since 2012): Features and bug fixes.
Axel Beckert (abe, ~ 250 commits, since 2014): tries to keep Lintian in shape and up with the current development, provides bug fixes and occasional feature implementations.
Former main contributors
- Christian Schwarz (schwarz, 1998, 0.1.0-0.4.2): Initial author of Lintian
- Richard Braak (1998-1999, 0.4.3-1.10): Second Maintainer of Lintian
Some contributors are probably missing in here because contributions before 2004 were not tracked in Git; see Lintian's debian/copyright and debian/changelog file for older contributions.
Niels Thykier (nthykier, > 3600 commits, 2010-2019): commited patches, fixes bugs, and does infrastructure development, and watched over the version on lilburn.debian.org for http://lintian.debian.org/
Felix Lechner (lechner, > 3200 commits, 2017-2022): did a lot of refactoring, rewrites, made lintian.debian.org show a history of tags, worked on normalization of lintian tag parameters, etc.
Chris Lamby (lamby, > 2000 commits, 2008-2021): Implemented tons of bug fixes, did many Lintian releases.
- Jakub Wilk (~ 700 commits, 2011-2016): Many small bug fixes, test suite maintenance
Raphael Geissert (geissert, ~ 500 commits, 2008-2017): commited patches, fixes bugs, and did infrastructure development
Adam D. Barratt (adsb, > 450 commits, 2008-2019): commited patches, fixes bugs, and did infrastructure development
Frank Lichtenheld (djpig, > 450 commits, 2004-2009): did bug fixing and commits
Other formerly active contributors
- Marc 'HE' Brockschmidt (he, ~ 100 commits, 2004-2008): did some bug fixing and commits and was the Google Summer of Code mentor
- Colin Watson (cjwatson, ~ 50 commits since 2004, 2000-2017): kept and maybe still keeps an eye on Ubuntu integration and man page checks
- Paul Wise (pabs, ~ 500 commits, 2011-2021): Contributed mainly to the spelling dictionary, some other small bug fixes.
Lintian is a comprehensive package checker for Debian packages. It primarily tries to check for Debian Policy violations and violations of various sub-policies, but it also checks for best practices, common mistakes, and problems that maintainers like to catch before uploads.
Lintian by design only performs checks internal to a single source package (and binaries built from that source) which can be done without external information other than Lintian itself. This allows stability of output: Lintian will produce the same report for a given package and a given version of Lintian each time it's run. Cross-repository checks and checks for consistency and linkages between packages should be done by other tools.
The team also maintains http://lintian.debian.org/ as a presentation of the results of running Lintian on the entire archive. Currently, due to limitations in both disk space and available CPU, as well as limitations in Lintian's archive-wide configuration abilities, these checks are only done for arch: i386, arch: amd64 and arch: all packages in sid and experimental.
Have a look at /HackersGuide for hints.
- Pick a fully specified wishlist bug for a Lintian check and implement it.
- Look at t/COVERAGE and write a test case for a tag that's not currently tested.
- Edit all tag descriptions for consistency and add appropriate markup.
- Rewrite the Lintian manual. It is somewhat out of date.
- Add documentation of what Lintian extracts into the laboratory. A rewritten Lintian manual would be a good place to put this information.
Help the team with refactoring the existing code to share more common modules. (Please discuss this on the team list before starting. RussAllbery has some ideas for what could be done.)
This is a somewhat random collection of additional notes about Lintian, mostly from the DebConf7 Lintian BOF.
- Role of lintian: package checker without external dependencies besides lintian (and its Depends) and the package. Does not look at other packages (except if they are built from the same source), the rest of the archive, external web sites like the BTS, and so forth, so that if neither lintian nor the package have changed, the results will be the same as the last time the check was run.
- lintian wontfix bugs accumulate ideas for archive-wide checks that are outside lintian's scope but may be interesting for other tools.
- lintian's architecture uses collect scripts to unpack and analyze the package. The results are stored on the disk and accessed via the Lintian::Collect modules (which caches the data where possible). Some checks still accesses the collected data directly, but this access method is deprecated.
- Manoj has some ideas for more closely integrating package checking with Policy and putting checking pseudocode into Policy as part of the Policy constraint. Some of the program analysis and proof languages may be useful for doing something like this, but it needs someone interested in this sort of thing to work on it.
When submitting a request for a Lintian auto-reject tag against ftp.debian.org, please use the following usertags:
- Usertags: lintian