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

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



* Russ Allbery <rra@debian.org>, 2011-08-31, 15:15:
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.

I would rather not do this. Just because debmake isn't around any more doesn't mean we may not run across old packages that were generated with it (when refreshing a package that had been removed from Debian to reintroduce it, for instance), and the warnings are still correct for such packages. I don't think keeping them adds much maintenance burden.

Okay, I attached a more conservative patch.

--
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,8 @@
 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';
+} elsif ($readme =~ m/^\s*-- [^<]*<([^> ]+.\@[^>.]*)>/m) {
+    tag 'readme-debian-contains-invalid-email-address', $1;
 }
 
 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,11 +27,11 @@
  template phrases.  If there is nothing to say in the file, it is best
  removed.
 
-Tag: readme-debian-contains-debmake-default-email-address
+Tag: readme-debian-contains-invalid-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.
+Info: The README.Debian file contains an invalid email address: the domain
+ needs at least one dot. This looks like a mistake.
 
 Tag: spelling-error-in-readme-debian
 Severity: minor
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -15,12 +15,16 @@
       - obsolete-field-in-dep5-copyright
       - out-of-date-copyright-format-uri
       - package-contains-no-arch-dependent-files
+      - readme-debian-contains-invalid-email-address
       - syntax-error-in-dep5-copyright
       - unknown-copyright-format-uri
       - unknown-paragraph-in-dep5-copyright
       - unused-license-paragraph-in-dep5-copyright
       - unversioned-copyright-format-uri
       - wiki-copyright-format-uri
+    + Removed:
+      - debian-changelog-file-contains-debmake-default-email-address
+      - readme-debian-contains-debmake-default-email-address
 
   * checks/*:
     + [NT] Dropped fields from Needs-Info, it is no longer needed.
@@ -30,6 +34,9 @@
       dctrl parsers (notably grep-dctrl).  (Closes: #639928)
     + [JW] Fix a number of broken references in the tag
       descriptions.  (Closes: #639923)
+  * checks/changelog-file{,.desc}:
+    + [JW] Remove debmake-specific tag in favour of more general
+      debian-changelog-file-contains-invalid-email-address.
   * checks/{conffile,etcfiles}{,.desc}:
     + [JW] Merged etcfiles into conffile.  (Closes: #637590)
   * checks/copyright-file{,.desc}:
@@ -40,6 +47,9 @@
       build.  This prevents false-positive "unneeded cdbs" warning.
     + [JW] Check for use of the obsolete dh_installmanpages debhelper
       program.  Thanks to Joey Hess for the report.  (Closes: #634112).
+  * checks/debian-readme{,.desc}:
+    + [JW] Replace debmake-specific tag with more general
+      readme-debian-contains-invalid-email-address.
   * checks/duplicate-files{,.desc}:
     + [NT] Replace the exception for "__init__.py" files by excluding
       all empty files from the check.  The bug (#632789) only requests
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/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,7 @@
 Version: 1.0
 Description: General tests for README.Debian
 Test-For:
- readme-debian-contains-debmake-default-email-address
+ readme-debian-contains-invalid-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,4 @@
-W: debian-readme-general: readme-debian-contains-debmake-default-email-address
+W: debian-readme-general: readme-debian-contains-invalid-email-address unknown@unknown
 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/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,4 @@
 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
+W: foo++: readme-debian-contains-invalid-email-address foo@unknown

Reply to: