Added lots more modules from lintian. Maemian appears to work.
[maemian] / checks / patch-systems.desc
1 Check-Script: patch-systems
2 Author: Marc Brockschmidt <he@debian.org>
3 Abbrev: pat
4 Type: source
5 Unpack-Level: 1
6 Info: This script checks for various possible problems when using patch systems
7 Needs-Info: debfiles, diffstat
8
9 Tag: dpatch-build-dep-but-no-patch-list
10 Severity: normal
11 Certainty: certain
12 Info: Using dpatch requires you to explicitly list all patches you want
13  to apply in debian/patches/00list. This package build-depends on dpatch,
14  but does not provide a patch list.  You should either remove the dpatch
15  build dependency or add a patch list.
16  .
17  Note that an empty file cannot be represented in the Debian diff, so an
18  empty patch list will disappear in the source package.  If you intended
19  for the series file to be empty, add a comment line.
20
21 Tag: dpatch-index-references-non-existent-patch
22 Severity: important
23 Certainty: certain
24 Info: In the 00list file listing all your dpatches, you referenced a file
25  that does not exist. This will lead to a fatal error when calling dpatch.
26
27 Tag: dpatch-missing-description
28 Severity: wishlist
29 Certainty: certain
30 Info: dpatch files should carry a description of the included patch.
31  Description lines start with "## DP:".
32  .
33  As well as a description of the purpose and function of the patch, the
34  description should ideally contain author information, a URL for the bug
35  report (if any), Debian or upstream bugs fixed by it, upstream status,
36  the Debian version and date the patch was first included, and any other
37  information that would be useful if someone were investigating the
38  patch and underlying problem.
39
40 Tag: quilt-build-dep-but-no-series-file
41 Severity: normal
42 Certainty: certain
43 Info: Using quilt requires you to explicitly list all patches you want
44  to apply in debian/patches/series.  This package build-depends on quilt,
45  but does not provide a patch list.  You should either remove the quilt
46  build dependency or add a series file.
47  .
48  Note that an empty file cannot be represented in the Debian diff, so an
49  empty series file will disappear in the source package.  If you intended
50  for the series file to be empty, add a comment line.
51
52 Tag: quilt-series-but-no-build-dep
53 Severity: normal
54 Certainty: possible
55 Info: The package contains a debian/patches/series file usually used by
56  quilt to apply patches at build time, but quilt is not listed in the
57  build dependencies.
58  .
59  You should either remove the series file if it's effectively not useful
60  or add quilt to the build-dependencies if quilt is used during the build
61  process.
62  .
63  If you don't need quilt during build but only during maintenance work,
64  then you can override this warning.
65
66 Tag: quilt-patch-with-non-standard-options
67 Severity: normal
68 Certainty: certain
69 Info: The quilt series file contains non-standard options to apply some of
70  the listed patches. Quilt uses '-p1' by default if nothing is specified
71  after the name of the patch and the current series file specify something
72  else for some of the patches listed.
73  .
74  For compatibility with the source "3.0 (quilt)" source package format,
75  you should avoid using any option at all and make sure that your patches
76  apply with "-p1". This can be done by refreshing all patches like this:
77  quilt pop -a; while quilt push; do quilt refresh -pab; done
78
79 Tag: quilt-series-references-non-existent-patch
80 Severity: important
81 Certainty: certain
82 Info: In the series file listing all your quilt patches, you referenced a
83  file that does not exist. This will lead to a fatal error when calling quilt.
84
85 Tag: quilt-patch-missing-description
86 Severity: wishlist
87 Certainty: certain
88 Info: quilt patch files should start with a description of patch.  All
89  lines before the start of the patch itself are considered part of the
90  description.  You can edit the description with <tt>quilt header -e</tt>
91  when the patch is at the top of the stack.
92  .
93  As well as a description of the purpose and function of the patch, the
94  description should ideally contain author information, a URL for the bug
95  report (if any), Debian or upstream bugs fixed by it, upstream status,
96  the Debian version and date the patch was first included, and any other
97  information that would be useful if someone were investigating the
98  patch and underlying problem.
99
100 Tag: patch-modifying-debian-files
101 Severity: important
102 Certainty: certain
103 Info: A patch stored in debian/patches/ should never modify files
104  in the debian directory (even when it's only creating new files) because
105  the debian directory is always directly provided by the Debian packaging.
106  And you shouldn't have to modify what you choose to provide in the first
107  place.
108  .
109  If the patch provides a new file (say a manual page), place that file
110  in the upstream directory hierarchy as if it was ready to be submitted.
111
112 Tag: patch-system-but-direct-changes-in-diff
113 Severity: minor
114 Certainty: certain
115 Info: The package uses a patch system, but the Debian diff.gz contains
116  changes to files or creation of additional files outside of the
117  <tt>debian</tt> directory.  This often indicates accidental changes that
118  weren't meant to be in the package or changes that were supposed to be
119  separated out into a patch.  The package will also more easily support
120  possible future source package formats if all changes outside the
121  <tt>debian</tt> directory are stored as patches.
122
123 Tag: more-than-one-patch-system
124 Severity: minor
125 Certainty: certain
126 Info: The build-dependencies list more than one patch system and it's
127  unlikely that you need both at the same time.
128  .
129  Currently lintian knows only dpatch and quilt.
130
131 Tag: direct-changes-in-diff-but-no-patch-system
132 Severity: pedantic
133 Certainty: certain
134 Info: The Debian diff.gz contains changes to files or creation of additional
135  files outside the <tt>debian</tt> directory.  Keeping the changes as separate
136  patches under the control of a patch system allows for more fine grained
137  control over them.  The package will also more easily support  possible
138  future source package formats if all changes outside the <tt>debian</tt>
139  directory are stored as patches.