1 Check-Script: watch-file
2 Author: Patrick Schoenfeld <schoenfeld@in-medisa-res.com>
7 Info: Check debian/watch files in source packages.
9 Tag: debian-watch-file-is-missing
12 Ref: policy 4.11, uscan(1)
13 Info: This source package is not Debian-native but it does not have a
14 <tt>debian/watch</tt> file. This file is used for automatic detection of
15 new upstream versions by the Debian External Health Status project and
16 other project infrastructure. If this package is maintained upstream,
17 please consider adding a <tt>debian/watch</tt> file to detect new
20 If the package is not maintained upstream or if upstream uses a
21 distribution mechanism that cannot be meaningfully monitored by uscan
22 and the Debian External Health Status project, please consider adding a
23 <tt>debian/watch</tt> file containing only comments documenting the
26 Tag: debian-watch-file-declares-multiple-versions
30 Info: The <tt>debian/watch</tt> file in this package contains multiple
31 lines starting with <tt>version=</tt>. There should be only one version
32 declaration in a watch file, on the first non-comment line of the file.
34 Tag: debian-watch-file-unknown-version
38 Info: The <tt>version=</tt> line in the <tt>debian/watch</tt> file in this
39 package declares an unknown version. The currently known watch file
42 Tag: debian-watch-file-missing-version
46 Info: The <tt>debian/watch</tt> file in this package doesn't start a
47 <tt>version=</tt> line. The first non-comment line of
48 <tt>debian/watch</tt> should be a <tt>version=</tt> declaration. This
49 may mean that this is an old version one watch file that should be
50 updated to the current version.
52 Tag: debian-watch-file-should-mangle-version
55 Ref: uscan(1), http://wiki.debian.org/DEHS
56 Info: The version of this package contains <tt>dfsg</tt>, <tt>ds</tt>,
57 or <tt>debian</tt>, which normally indicates that the upstream source
58 has been repackaged to comply with the Debian Free Software Guidelines
59 (or similar reason), but there is no version mangling in the
60 <tt>debian/watch</tt> file. Since the <tt>dfsg</tt> string is not
61 part of the upstream version, the <tt>debian/watch</tt> file should
62 use the dversionmangle option to remove the <tt>dfsg</tt> before
63 version number comparison.
65 Tag: debian-watch-file-should-dversionmangle-not-uversionmangle
68 Ref: http://wiki.debian.org/DEHS
69 Info: The version of this package contains <tt>dfsg</tt>, <tt>ds</tt>,
70 or <tt>debian</tt>, but a misleading upstream version mangling occurs in
71 the <tt>debian/watch</tt> file. Since the <tt>dfsg</tt> string is not
72 part of the upstream version and its addition is Debian-specific, the
73 the <tt>debian/watch</tt> file should use the dversionmangle option to
74 remove, instead of adding in uversionmangle, the <tt>dfsg</tt> before
75 comparing version numbers.
77 Tag: debian-watch-file-in-native-package
80 Ref: http://wiki.debian.org/DEHS
81 Info: The package ships a watch file although it is a Debian native
82 package. DEHS does not process watch files in native packages based on
83 the reasoning that native packages do not have upstreams to check for new
86 Tag: debian-watch-file-uses-deprecated-sf-redirector-method
89 Info: The watch file seems to be passing arguments to the redirector
90 other than a path. Calling the SourceForge redirector with parameters like
91 <tt>project</tt> prevents uscan from generating working URIs to the files
92 and thus has been deprecated and is no longer supported by the redirector.
94 Tag: debian-watch-file-should-use-sf-redirector
98 Info: The watch file specifies a SourceForge download server directly.
99 This is not recommended; SourceForge changes their download servers
100 periodically, requiring watch files to be modified every time. Instead,
101 use the qa.debian.org redirector by using the magic URL:
103 http://sf.net/<project>/<tar-name>-(.+)\.tar\.gz
105 replacing <tt><project></tt> with the name of the SourceForge
106 project and <tt><tar-name></tt> with the name of the tarball
107 distributed within that project.
109 Tag: debian-watch-file-specifies-wrong-upstream-version
113 Info: The watch file specifies an upstream version which exactly matches
114 the version of a <tt>debian/changelog</tt> entry, this is not a
115 native package, and no version mangling is being done. The version
116 field in a watch file should specify the expected upstream version, not
117 the version of the Debian package. Any epochs and Debian revisions
118 should be removed first or mangled away.
120 Tag: debian-watch-file-specifies-old-upstream-version
123 Info: The watch file specifies an upstream version number which matches
124 the upstream portion of an old <tt>debian/changelog</tt> entry, and the
125 current <tt>debian/changelog</tt> entry specifies a newer upstream
126 version. The version number in the watch file is very likely to be
127 incorrect and probably should be replaced with the current expected
128 upstream version. Otherwise, DEHS and similar projects will think the
129 package is out of date even when it may not be.