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

Bug#639946: lintian: let's get rid of (most) *-debmake-* tags



Package: lintian
Version: 2.5.2
Severity: wishlist
Tags: patch

debmake was removed from Debian before the lenny release. Lintian is carrying a few tags to detect debmake boilerplate, but only one of them (readme-debian-contains-debmake-template) is still being triggered by packages in the archive. The attached patch gets rid of the remaining *-debmake-* tags.

--
Jakub Wilk
diff --git a/checks/changelog-file b/checks/changelog-file
--- a/checks/changelog-file
+++ b/checks/changelog-file
@@ -270,9 +270,7 @@
     my %versions;
     for my $entry (@entries) {
 	if ($entry->Maintainer) {
-	    if ($entry->Maintainer =~ /<([^>\@]+\@unknown)>/) {
-		tag 'debian-changelog-file-contains-debmake-default-email-address', $1;
-	    } elsif ($entry->Maintainer =~ /<([^>\@]+\@[^>.]*)>/) {
+	    if ($entry->Maintainer =~ /<([^>\@]+\@[^>.]*)>/) {
 		tag 'debian-changelog-file-contains-invalid-email-address', $1;
 	    }
 	}
diff --git a/checks/changelog-file.desc b/checks/changelog-file.desc
--- a/checks/changelog-file.desc
+++ b/checks/changelog-file.desc
@@ -144,12 +144,6 @@
  .
  (setq debian-changelog-mailing-address "userid@debian.org")
 
-Tag: debian-changelog-file-contains-debmake-default-email-address
-Severity: important
-Certainty: certain
-Info: The changelog file contains an email address (&lt;..@unknown&gt;)
- that was not updated to the maintainer's real address.
-
 Tag: debian-changelog-file-contains-invalid-email-address
 Severity: important
 Certainty: certain
diff --git a/checks/debian-readme b/checks/debian-readme
--- a/checks/debian-readme
+++ b/checks/debian-readme
@@ -49,8 +49,6 @@
 my $regex = join ('|', @template);
 if ($readme =~ m/$regex/io) {
     tag 'readme-debian-contains-debmake-template';
-} elsif ($readme =~ m/^\s*-- [^<]*<[^> ]+.\@unknown>/m) {
-    tag 'readme-debian-contains-debmake-default-email-address';
 }
 
 check_spelling('spelling-error-in-readme-debian', $readme, undef, { $pkg => 1 });
diff --git a/checks/debian-readme.desc b/checks/debian-readme.desc
--- a/checks/debian-readme.desc
+++ b/checks/debian-readme.desc
@@ -27,12 +27,6 @@
  template phrases.  If there is nothing to say in the file, it is best
  removed.
 
-Tag: readme-debian-contains-debmake-default-email-address
-Severity: normal
-Certainty: certain
-Info: The README.Debian file contains an email address (&lt;..@unknown&gt;)
- that was not updated to the maintainer's real address.
-
 Tag: spelling-error-in-readme-debian
 Severity: minor
 Certainty: certain
diff --git a/checks/description b/checks/description
--- a/checks/description
+++ b/checks/description
@@ -72,9 +72,7 @@
     if ($synopsis =~ m/\t/) {
 	tag 'description-contains-tabs' unless $tabs++;
     }
-    if ($synopsis =~ m/^missing\s*$/i) {
-	tag 'description-is-debmake-template' unless $template++;
-    } elsif ($synopsis =~ m/<insert up to 60 chars description>/) {
+    if ($synopsis =~ m/<insert up to 60 chars description>/) {
 	tag 'description-is-dh_make-template' unless $template++;
     }
 
@@ -159,9 +157,7 @@
 	if (m/^ \s/o) {
 	    tag 'description-starts-with-leading-spaces';
 	}
-	if (m/^\s*missing\s*$/oi) {
-	    tag 'description-is-debmake-template' unless $template++;
-	} elsif (m/<insert long description, indented with spaces>/) {
+	if (m/<insert long description, indented with spaces>/) {
 	    tag 'description-is-dh_make-template' unless $template++;
 	}
     }
diff --git a/checks/description.desc b/checks/description.desc
--- a/checks/description.desc
+++ b/checks/description.desc
@@ -93,12 +93,6 @@
  word-wrap these lines otherwise).
 Ref: policy 5.6.13
 
-Tag: description-is-debmake-template
-Severity: important
-Certainty: certain
-Info: The synopsis or the extended description just says "Missing",
- which is a template provided by debmake.
-
 Tag: description-is-dh_make-template
 Severity: serious
 Certainty: certain
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -19,6 +19,10 @@
       - unused-license-paragraph-in-dep5-copyright
       - unversioned-copyright-format-uri
       - wiki-copyright-format-uri
+    + Removed:
+      - debian-changelog-file-contains-debmake-default-email-address
+      - description-is-debmake-template
+      - readme-debian-contains-debmake-default-email-address
 
   * checks/*:
     + [NT] Dropped fields from Needs-Info, it is no longer needed.
@@ -28,6 +32,10 @@
       dctrl parsers (notably grep-dctrl).  (Closes: #639928)
   * checks/{conffile,etcfiles}{,.desc}:
     + [JW] Merged etcfiles into conffile.  (Closes: #637590)
+  * checks/{changelog-file,debian-readme,description}{,.desc}:
+    + [JW] Remove most tags related to debmake boilerplate.  debmake has been
+      removed from Debian and there are no known packages triggering the tags
+      at the moment.
   * checks/copyright-file{,.desc}:
     + [JW] Check for CRLF line endings in copyright files.
       (Closes: #634191)
diff --git a/t/COVERAGE b/t/COVERAGE
--- a/t/COVERAGE
+++ b/t/COVERAGE
@@ -1,5 +1,5 @@
-Last generated 2011-08-22
-Coverage: 712/930 (76.56%), w. legacy tests: 835/930 (89.78%)
+Last generated 2011-08-31
+Coverage: 712/929 (76.64%), w. legacy tests: 834/929 (89.77%)
 
 The following tags are not tested by the test suite:
 
@@ -122,7 +122,6 @@
 binaries unstripped-binary-or-object
 
 changelog-file changelog-file-missing-in-native-package
-changelog-file debian-changelog-file-contains-invalid-email-address
 changelog-file debian-changelog-file-missing-or-wrong-name
 changelog-file wrong-name-for-debian-news-file
 
@@ -365,7 +364,6 @@
   changelog-should-mention-qa
   config-does-not-load-confmodule
   debconf-config-not-executable
-  debian-changelog-file-contains-invalid-email-address
   init.d-script-not-included-in-package
   init.d-script-not-marked-as-conffile
   maintainer-script-calls-deprecated-wm-menu-config
diff --git a/t/tests/changelog-file-general/desc b/t/tests/changelog-file-general/desc
--- a/t/tests/changelog-file-general/desc
+++ b/t/tests/changelog-file-general/desc
@@ -5,7 +5,7 @@
 Description: General tests for changelog-file tags
 Test-For:
  changelog-not-compressed-with-max-compression
- debian-changelog-file-contains-debmake-default-email-address
+ debian-changelog-file-contains-invalid-email-address
  debian-changelog-file-contains-obsolete-user-emacs-settings
  debian-changelog-line-too-long
  improbable-bug-number-in-closes
diff --git a/t/tests/changelog-file-general/tags b/t/tests/changelog-file-general/tags
--- a/t/tests/changelog-file-general/tags
+++ b/t/tests/changelog-file-general/tags
@@ -1,4 +1,4 @@
-E: changelog-file-general: debian-changelog-file-contains-debmake-default-email-address unknown@unknown
+E: changelog-file-general: debian-changelog-file-contains-invalid-email-address unknown@unknown
 E: changelog-file-general: possible-missing-colon-in-closes Closes #555555
 W: changelog-file-general: changelog-not-compressed-with-max-compression changelog.Debian.gz
 W: changelog-file-general: debian-changelog-file-contains-obsolete-user-emacs-settings
diff --git a/t/tests/debian-readme-general/debian/debian/README.Debian b/t/tests/debian-readme-general/debian/debian/README.Debian
--- a/t/tests/debian-readme-general/debian/debian/README.Debian
+++ b/t/tests/debian-readme-general/debian/debian/README.Debian
@@ -8,4 +8,4 @@
 and.  In general, possible acronyms like COMIT should be ignored.  But
 only to a certain length; CHNAGES is still wrong.
 
- -- Unknown <unknown@unknown>
+ -- J. Random Developer <j.r.developer@example.com>
diff --git a/t/tests/debian-readme-general/desc b/t/tests/debian-readme-general/desc
--- a/t/tests/debian-readme-general/desc
+++ b/t/tests/debian-readme-general/desc
@@ -3,7 +3,6 @@
 Version: 1.0
 Description: General tests for README.Debian
 Test-For:
- readme-debian-contains-debmake-default-email-address
  readme-debian-mentions-usr-doc
  spelling-error-in-readme-debian
 References: Debian Bug#556456
diff --git a/t/tests/debian-readme-general/tags b/t/tests/debian-readme-general/tags
--- a/t/tests/debian-readme-general/tags
+++ b/t/tests/debian-readme-general/tags
@@ -1,4 +1,3 @@
-W: debian-readme-general: readme-debian-contains-debmake-default-email-address
 W: debian-readme-general: readme-debian-mentions-usr-doc line 4
 W: debian-readme-general: spelling-error-in-readme-debian CHNAGES CHANGES
 W: debian-readme-general: spelling-error-in-readme-debian accidentaly accidentally
diff --git a/t/tests/description-general/debian/debian/control.in b/t/tests/description-general/debian/debian/control.in
--- a/t/tests/description-general/debian/debian/control.in
+++ b/t/tests/description-general/debian/debian/control.in
@@ -9,7 +9,6 @@
 Architecture: {$architecture}
 Depends: $\{shlibs:Depends\}, $\{misc:Depends\}
 Description: {$srcpkg} is a package which tests lintian's description checks.
- missing
  The the synopsis should not start with the package's name. Moreover,
  the long	description
 	should
diff --git a/t/tests/description-general/desc b/t/tests/description-general/desc
--- a/t/tests/description-general/desc
+++ b/t/tests/description-general/desc
@@ -9,7 +9,6 @@
  description-contains-homepage
  description-contains-invalid-control-statement
  description-contains-tabs
- description-is-debmake-template
  description-starts-with-leading-spaces
  description-starts-with-package-name
  description-synopsis-is-duplicated
diff --git a/t/tests/description-general/tags b/t/tests/description-general/tags
--- a/t/tests/description-general/tags
+++ b/t/tests/description-general/tags
@@ -4,7 +4,6 @@
 E: description-general-empty: extended-description-is-empty
 E: description-general: description-contains-invalid-control-statement
 E: description-general: description-contains-tabs
-E: description-general: description-is-debmake-template
 E: description-general: description-starts-with-package-name
 I: description-general-3: using-first-person-in-description line 5: I
 I: description-general-4: capitalization-error-in-description debian Debian
diff --git a/testset/tags.foo++ b/testset/tags.foo++
--- a/testset/tags.foo++
+++ b/testset/tags.foo++
@@ -9,7 +9,7 @@
 E: foo++ source: uploader-name-missing Yama@gotchi
 E: foo++ source: wrong-debian-qa-address-set-as-maintainer Lintian Maintainer <debian-qa@lists.debian.org>
 E: foo++-helper: wrong-debian-qa-address-set-as-maintainer Lintian Maintainer <debian-qa@lists.debian.org>
-E: foo++: debian-changelog-file-contains-debmake-default-email-address he@unknown
+E: foo++: debian-changelog-file-contains-invalid-email-address he@unknown
 E: foo++: debian-changelog-file-uses-obsolete-national-encoding at line 11
 E: foo++: no-copyright-file
 E: foo++: wrong-debian-qa-address-set-as-maintainer Lintian Maintainer <debian-qa@lists.debian.org>
@@ -24,4 +24,3 @@
 W: foo++ source: uploader-not-full-name Frank
 W: foo++ source: uploader-not-full-name Josip
 W: foo++: latest-debian-changelog-entry-without-new-date
-W: foo++: readme-debian-contains-debmake-default-email-address

Reply to: