2 Author: Sean 'Shaleh' Perry <shaleh@debian.org>
6 Info: This looks for cruft in Debian packaging or upstream source
7 Needs-Info: debfiles, diffstat, file-info
9 Tag: native-package-with-dash-version
12 Info: Native packaging should only be used if a piece of software was
13 written specifically to be turned into a Debian package. In this case,
14 the version number should not contain a Debian revision part.
16 Native source packages are sometimes created by accident. In most cases
17 the reason is the location of the original source tarball. dpkg-source
18 searches for this in ../package_upstream-version.orig.tar.gz.
20 Tag: documentation-package-not-architecture-independent
23 Info: Documentation packages usually shouldn't carry anything that requires
24 recompiling on various architectures, in order to save space on mirrors.
26 Tag: debian-files-list-in-source
29 Info: Leaving <tt>debian/files</tt> causes problems for the autobuilders,
30 since that file will likely include the list of .deb files for another
31 architecture, which will cause dpkg-buildpackage run by the buildd to fail.
33 The clean rule for the package should remove this file.
36 Tag: diff-contains-cmake-cache-file
39 Info: The Debian diff contains a CMake cache file. These files embed the
40 full path of the source tree in which they're created and cause build
41 failures if they exist when the source is built under a different path,
42 so they will always cause errors on the buildds. The file was probably
43 accidentally included. If it is present in the upstream source, don't
44 modify it in the Debian diff; instead, delete it before the build in
45 <tt>debian/rules</tt>.
47 Tag: diff-contains-cvs-control-dir
50 Info: The Debian diff or native package contains files in a CVS directory.
51 These are usually artifacts of the revision control system used by the
52 Debian maintainer and not useful in a diff or native package. Passing
53 <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the equivalent will
54 automatically exclude them.
56 Tag: source-contains-cvs-control-dir
59 Info: The upstream source contains a CVS directory. It was most likely
60 included by accident since CVS directories usually don't belong in
61 releases. When packaging a CVS snapshot, export from CVS rather than use
62 a checkout. If an upstream release tarball contains CVS directories, you
63 usually should report this as a bug to upstream.
65 Tag: diff-contains-svn-control-dir
68 Info: The Debian diff or native package contains files in an .svn
69 directory. These are usually artifacts of the revision control system
70 used by the Debian maintainer and not useful in a diff or native package.
71 Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the equivalent will
72 automatically exclude them.
74 Tag: source-contains-svn-control-dir
77 Info: The upstream source contains an .svn directory. It was most likely
78 included by accident since Subversion version control directories
79 usually don't belong in releases. When packaging a Subversion snapshot,
80 export from subversion rather than checkout. If an upstream release
81 tarball contains .svn directories, this should be reported as a bug to
82 upstream since it can double the size of the tarball to no purpose.
84 Tag: diff-contains-bzr-control-dir
87 Info: The Debian diff or native package contains files in a .bzr
88 directory. These are usually artifacts of the revision control system
89 used by the Debian maintainer and not useful in a diff or native package.
90 Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the equivalent will
91 automatically exclude them.
93 Tag: source-contains-bzr-control-dir
96 Info: The upstream source contains a .bzr directory. It was most likely
97 included by accident since bazaar-ng version control directories usually
98 don't belong in releases and may contain the entire repository. When
99 packaging a bzr snapshot, use bzr export to create a clean tree. If an
100 upstream release tarball contains .bzr directories, you should usually
101 report this as a bug upstream.
103 Tag: diff-contains-arch-control-dir
106 Info: The Debian diff or native package contains files in an {arch} or
107 .arch-ids directory or a directory starting with <tt>,,</tt> (used by baz
108 for debugging traces). These are usually artifacts of the revision
109 control system used by the Debian maintainer and not useful in a diff or
110 native package. Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the
111 equivalent will automatically exclude them.
113 Tag: source-contains-arch-control-dir
116 Info: The upstream source contains an {arch} or .arch-ids directory or a
117 directory starting with <tt>,,</tt> (used by baz for debugging traces).
118 It was most likely included by accident since Arch version control
119 directories usually don't belong in releases. If an upstream release
120 tarball contains these directories, you should usually report this as a
123 Tag: diff-contains-git-control-dir
126 Info: The Debian diff or native package contains files in a .git
127 directory. These are usually artifacts of the revision control system
128 used by the Debian maintainer and not useful in a diff or native package.
129 Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the equivalent will
130 automatically exclude them.
132 Tag: source-contains-git-control-dir
135 Info: The upstream source contains a .git directory. It was most likely
136 included by accident since git version control directories usually don't
137 belong in releases and may contain a complete copy of the repository. If
138 an upstream release tarball contains .git directories, you should usually
139 report this as a bug upstream.
141 Tag: diff-contains-hg-control-dir
144 Info: The Debian diff or native package contains files in a .hg
145 directory. These are usually artifacts of the revision control system
146 used by the Debian maintainer and not useful in a diff or native package.
147 Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the equivalent will
148 automatically exclude them.
150 Tag: source-contains-hg-control-dir
153 Info: The upstream source contains a .hg directory. It was most likely
154 included by accident since hg version control directories usually don't
155 belong in releases and may contain a complete copy of the repository. If
156 an upstream release tarball contains .hg directories, you should usually
157 report this as a bug upstream.
159 Tag: diff-contains-bts-control-dir
162 Info: The Debian diff or native package contains files in a directory
163 used by a bug tracking system, which are not useful in a diff or native
164 package. Passing <tt>-i</tt> to <tt>dpkg-buildpackage</tt> or the
165 equivalent will automatically exclude them.
167 Tag: source-contains-bts-control-dir
170 Info: The upstream source contains a directory used by a bug tracking
171 system. It was most likely included by accident since bug tracking system
172 directories usually don't belong in releases.
174 Tag: diff-contains-svn-commit-file
177 Info: The Debian diff or native package contains an
178 <tt>svn-commit(.NNN).tmp</tt>, almost certainly a left-over from a failed
179 Subversion commit by the Debian package maintainer.
181 Tag: source-contains-svn-commit-file
184 Info: The upstream source contains an <tt>svn-commit(.NNN).tmp</tt>,
185 almost certainly a left-over from a failed Subversion commit. You may
186 want to report this as an upstream bug.
188 Tag: diff-contains-svk-commit-file
191 Info: The Debian diff or native package contains an
192 <tt>svk-commitNNN.tmp</tt>, almost certainly a left-over from a failed
193 svk commit by the Debian package maintainer.
195 Tag: source-contains-svk-commit-file
198 Info: The upstream source contains an <tt>svk-commitNNN.tmp</tt>,
199 almost certainly a left-over from a failed Subversion commit. You may
200 want to report this as an upstream bug.
202 Tag: diff-contains-arch-inventory-file
205 Info: The Debian diff or native package contains an
206 <tt>.arch-inventory</tt> file. This is Arch metadata that should
207 normally not be distributed.
209 Tag: source-contains-arch-inventory-file
212 Info: The upstream source contains an <tt>.arch-inventory</tt> file. This
213 is Arch metadata that should normally not be distributed. You may want
214 to report this as an upstream bug.
216 Tag: diff-contains-hg-tags-file
219 Info: The Debian diff or native package contains an <tt>.htgags</tt>
220 file. This file is Mercurial metadata that should normally not be
221 distributed. It stores hashes of tagged commits in a Mercurial
222 repository and isn't therefore useful without the repository.
224 Tag: source-contains-hg-tags-file
227 Info: The upstream source contains an <tt>.htgags</tt> file. This file is
228 Mercurial metadata that should normally not be distributed. It stores
229 hashes of tagged commits in a Mercurial repository and isn't therefore
230 useful without the repository. You may want to report this as an
233 Tag: diff-contains-cvs-conflict-copy
236 info: The Debian diff or native package contains a CVS conflict copy.
237 These have file names like <tt>.#file.version</tt> and are generated by
238 CVS when a conflict was detected when merging local changes with updates
239 from a source repository. They're useful only while resolving the
240 conflict and should not be included in the package.
242 Tag: source-contains-cvs-conflict-copy
245 info: The upstream source contains a CVS conflict copy. These have file
246 names like <tt>.#file.version</tt> and are generated by CVS when a
247 conflict was detected when merging local changes with updates from a
248 source repository. They're useful only while resolving the conflict and
249 were probably included by accident. You may want to report this as an
252 Tag: diff-contains-svn-conflict-file
255 info: The Debian diff or native package contains a file that looks like a
256 Subversion conflict file. These are generated by Subversion when a
257 conflict was detected while merging local changes with updates from a
258 source repository. Use <tt>svn resolved</tt> to remove them and clear
259 the Subversion conflict state after you have resolved the conflict.
261 Tag: source-contains-svn-conflict-file
264 info: The upstream source contains a file that looks like a Subversion
265 conflict file. These are generated by Subversion when a conflict was
266 detected while merging local changes with updates from a source
267 repository. They're useful only while resolving the conflict and
268 were probably included by accident. You may want to report this as an
271 Tag: diff-contains-patch-failure-file
274 Info: The Debian diff or native package contains a file that looks like
275 the files left behind by the <tt>patch</tt> utility when it cannot
276 completely apply a diff. This may be left over from a patch applied by
277 the maintainer. Normally such files should not be included in the
280 Tag: diff-contains-editor-backup-file
283 Info: The Debian diff or native package contains a file ending in
284 <tt>~</tt> or of the form <tt>.xxx.swp</tt>, which is normally either an
285 Emacs or vim backup file or a backup file created by programs such as
286 <tt>autoheader</tt> or <tt>debconf-updatepo</tt>. This usually causes no
287 harm, but it's messy and bloats the size of the Debian diff to no useful
290 Tag: diff-contains-substvars
293 Info: Maemian found a substvars file in the Debian diff for this source
294 package. The debian/substvars file is usually generated and modified
295 dynamically by debian/rules targets, in which case it must be removed by
299 Tag: empty-debian-diff
302 Info: The Debian diff of this non-native package appears to be completely
303 empty. This usually indicates a mistake when generating the upstream
304 tarball, or it may mean that this was intended to be a native package and
305 was built non-native by mistake.
307 If the Debian packaging is maintained in conjunction with upstream, this
308 may be intentional, but it's not recommended best practice. If the
309 software is only for Debian, it should be a native package; otherwise,
310 it's better to omit the <tt>debian</tt> directory from upstream releases
311 and add it in the Debian diff. Otherwise, it can cause problems for some
312 package updates in Debian (files can't be removed from the
313 <tt>debian</tt> directory via the diff, for example).
315 Tag: configure-generated-file-in-source
318 Info: Leaving config.cache/status causes autobuilders problems.
319 config.cache and config.status are produced by GNU autoconf's configure
320 scripts. If they are left in the source package, autobuilders may pick
321 up settings for the wrong architecture.
323 The clean rule in <tt>debian/rules</tt> should remove this file. This
324 should ideally be done by fixing the upstream build system to do it when
325 you run the appropriate cleaning command (and don't forget to forward the
326 fix to the upstream authors so it doesn't happen in the next release). If
327 that is already implemented, then make sure you are indeed cleaning it in
328 the clean rule. If all else fails, a simple rm -f should work.
330 Note that Maemian cannot reliably detect the removal in the clean rule,
331 so once you fix this, please ignore or override this warning.
333 Tag: ancient-autotools-helper-file
336 Info: The referenced file has a time stamp older than year 2004 and the
337 package does not build-depend on autotools-dev or automake and therefore
338 apparently does not update it. This usually means that the source
339 package will not build correctly on all currently released architectures.
341 Read /usr/share/doc/autotools-dev/README.Debian.gz (from the
342 autotools-dev package) for information on how to fix this problem. cdbs
343 will automatically update these files if autotools-dev is installed
344 during build, but the build dependency on autotools-dev is still
347 Tag: outdated-autotools-helper-file
350 Info: The referenced file has a time stamp older than June of 2006 and the
351 package does not build-depend on autotools-dev or automake and therefore
352 apparently does not update it. This usually means that the source
353 package will not build correctly on AVR32, for which a Debian port is
354 currently in progress, and may not support other newer architectures.
356 Read /usr/share/doc/autotools-dev/README.Debian.gz (from the
357 autotools-dev package) for information on how to fix this problem. cdbs
358 will automatically update these files if autotools-dev is installed
359 during build, but the build dependency on autotools-dev is still
365 Info: The referenced file seems to be from a libtool version
366 older than 1.5.2-2. This might lead to build errors on some
367 newer architectures not known to this libtool.
369 Please ask your upstream maintainer to re-libtoolize the
370 package or do it yourself in case there is no active upstream
371 anymore. Beware that might mean you need to update autoconf, too,
372 if you use a very old version there as well.
374 If you have not updated the file but fixed architecture-specific
375 issues with minimal patches and verified that it builds correctly
376 please override this tag. lintian will not be able to verify that.
378 Tag: source-contains-prebuilt-binary
381 Info: The source tarball contains a prebuilt ELF object. They are usually
382 left by mistake when generating the tarball by not cleaning the source
383 directory first. You may want to report this as an upstream bug, in case
384 there is no sign that this was intended.
386 Tag: source-contains-prebuilt-windows-binary
389 Info: The source tarball contains a prebuilt binary for Microsoft Windows.
390 They are usually left by convenience for end users, although it is possible
391 that upstream also provides tarballs source-only tarballs which you can use.
392 These files usually just take up space in the tarball and are of no use in
393 Debian. You may want to ask upstream to provide source-only tarballs.
395 Tag: tar-errors-from-source
397 Certainty: wild-guess
398 Info: tar produced an error while unpacking this source package. This
399 probably means there's something broken or at least strange about the way
400 the upstream tar file was constructed. You may want to report this as an