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

lintian: r943 - in trunk: checks debian testset testset/relations/debian



Author: rra
Date: 2007-08-05 20:41:47 +0200 (Sun, 05 Aug 2007)
New Revision: 943

Modified:
   trunk/checks/common_data.pm
   trunk/checks/fields
   trunk/checks/fields.desc
   trunk/debian/changelog
   trunk/testset/relations/debian/control
   trunk/testset/tags.relations
Log:
  + [RA] Add %known_obsolete_emacs.
* checks/fields{.desc,}:
  + [RA] Tag packages listing emacs21 as the preferred Emacs flavor in a
    dependency.  Thanks, Tatsuya Kinoshita.  (Closes: #434978)

Modified: trunk/checks/common_data.pm
===================================================================
--- trunk/checks/common_data.pm	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/checks/common_data.pm	2007-08-05 18:41:47 UTC (rev 943)
@@ -8,7 +8,7 @@
    %known_archs %known_sections %known_non_us_parts %known_archive_parts
    %known_prios %known_source_fields %known_binary_fields %known_udeb_fields
    %known_obsolete_fields %known_essential %known_build_essential
-   %known_obsolete_packages %known_virtual_packages
+   %known_obsolete_packages %known_obsolete_emacs %known_virtual_packages
    %known_libstdcs %known_tcls %known_tclxs %known_tks %known_tkxs
    %known_libpngs %known_x_metapackages
    %non_standard_archs %all_cpus %all_oses
@@ -21,7 +21,7 @@
   %known_archs %known_sections %known_non_us_parts %known_archive_parts
   %known_prios %known_source_fields %known_binary_fields %known_udeb_fields
   %known_obsolete_fields %known_essential %known_build_essential
-  %known_obsolete_packages %known_virtual_packages
+  %known_obsolete_packages %known_obsolete_emacs %known_virtual_packages
   %known_libstdcs %known_tcls %known_tclxs %known_tks %known_tkxs
   %known_libpngs %known_x_metapackages
   %non_standard_archs %all_cpus %all_oses
@@ -116,8 +116,12 @@
 %known_obsolete_packages = map { $_ => 1 }
     ('libstdc++2.8', 'ncurses3.4', 'slang0.99.38', 'newt0.25', 'mesag2',
      'libjpegg6a', 'gmp2', 'libgtop0', 'libghttp0', 'libpgsql', 'tk4.2',
-     'tcl7.6', 'libpng0g', 'xbase', 'xlibs-dev', 'debmake', 'gcc-2.95' );
+     'tcl7.6', 'libpng0g', 'xbase', 'xlibs-dev', 'debmake', 'gcc-2.95');
 
+# Still in the archive but shouldn't be the primary Emacs dependency.
+%known_obsolete_emacs = map { $_ => 1 }
+    ('emacs21');
+
 # Used only (at least lintian 1.23.1) for giving a warning about a
 # virtual-only dependency
 %known_virtual_packages = map { $_ => 1 }

Modified: trunk/checks/fields
===================================================================
--- trunk/checks/fields	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/checks/fields	2007-08-05 18:41:47 UTC (rev 943)
@@ -398,6 +398,10 @@
 				    if ($known_virtual_packages{$alternatives[0]->[0]}
 					&& ($field eq "depends" || $field eq "pre-depends"));
 
+                                # Check defaults for transitions.  Here, we only care that the first alternative is current.
+                                tag "depends-on-old-emacs", "$field: $alternatives[0]->[0]"
+                                    if (&$is_dep_field($field) && $known_obsolete_emacs{$alternatives[0]->[0]});
+
 				for my $part_d (@alternatives) {
 					my ($d_pkg, $d_version, $d_arch, $rest, $part_d_orig) = @$part_d;
 
@@ -415,7 +419,7 @@
 
 					tag "bad-version-in-relation", "$field: $part_d_orig"
 					    if ($d_version->[0] && ! defined((_valid_version($d_version->[1]))[1]));
-					
+
 					tag "package-relation-with-self", "$field: $part_d_orig"
 					    if ($pkg eq $d_pkg) && ($field ne 'conflicts');
 

Modified: trunk/checks/fields.desc
===================================================================
--- trunk/checks/fields.desc	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/checks/fields.desc	2007-08-05 18:41:47 UTC (rev 943)
@@ -370,6 +370,17 @@
 Type: error
 Info: The package build-depends on a package that has been superseded.
 
+Tag: depends-on-old-emacs
+Type: warning
+Info: The package lists an old version of Emacs as its first dependency.
+ It should probably be updated to support the current version of Emacs
+ in the archive and then list that version first in the list of Emacs
+ flavors it supports.
+ .
+ If the package intentionally only supports older versions of Emacs (if,
+ for example, it was included with later versions of Emacs), add a lintian
+ override.
+
 Tag: depends-on-x-metapackage
 Type: error
 Info: Packages that are not themselves metapackages must not depend on X

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/debian/changelog	2007-08-05 18:41:47 UTC (rev 943)
@@ -3,6 +3,7 @@
   * checks/common_data.pm:
     + [CW] Add automaken as a known virtual package.
     + [CW] Update architectures to dpkg 1.14.5, adding solaris-* and lpia.
+    + [RA] Add %known_obsolete_emacs.
   * checks/cruft{.desc,}:
     + [RA] Check for .git directories in source packages.  Thanks, Julien
       Cristau.  (Closes: #433516)
@@ -19,6 +20,9 @@
     + [RA] Removed, incorporated into checks/cruft.
   * checks/debian-readme:
     + [RA] Replace all uses of tag_error and tag_warn with just tag.
+  * checks/fields{.desc,}:
+    + [RA] Tag packages listing emacs21 as the preferred Emacs flavor in a
+      dependency.  Thanks, Tatsuya Kinoshita.  (Closes: #434978)
   * checks/files{.desc,}:
     + [RA] Check for .git directories in binary packages.
   * checks/menu-format{.desc,}:
@@ -66,7 +70,7 @@
   * man/lintian.1:
     + [RA] Remove the mention of the debdiff check script.
 
- -- Russ Allbery <rra@debian.org>  Wed, 01 Aug 2007 03:26:14 -0700
+ -- Russ Allbery <rra@debian.org>  Sun, 05 Aug 2007 11:21:46 -0700
 
 lintian (1.23.32) unstable; urgency=low
 

Modified: trunk/testset/relations/debian/control
===================================================================
--- trunk/testset/relations/debian/control	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/testset/relations/debian/control	2007-08-05 18:41:47 UTC (rev 943)
@@ -23,6 +23,7 @@
            gnuwdf,
 Optional: everything
 Suggests: alpha, gnu (>= 44-3-4-8-11.4) | ung (<< 89beta) | nug | ngu, beta
+Recommends: emacs21 | emacsen
 Description: Strange dependency relationships
  This package declares relationships designed to tickle lintian's "fields"
  check.  It should generate a number of tags for these.

Modified: trunk/testset/tags.relations
===================================================================
--- trunk/testset/tags.relations	2007-08-05 18:02:39 UTC (rev 942)
+++ trunk/testset/tags.relations	2007-08-05 18:41:47 UTC (rev 943)
@@ -4,7 +4,7 @@
 E: relations source: build-depends-on-essential-package-without-using-version build-depends-indep: bash
 E: relations source: build-depends-on-essential-package-without-using-version build-depends: findutils
 E: relations source: build-depends-on-obsolete-package build-depends-indep: debmake
-E: relations source: debian-control-with-duplicate-fields provides: 37, 38
+E: relations source: debian-control-with-duplicate-fields provides: 38, 39
 E: relations source: depends-on-build-essential-package-without-using-version libc6-dev [build-depends: libc6-dev]
 E: relations source: depends-on-build-essential-package-without-using-version make [build-depends-indep: make]
 E: relations source: invalid-arch-string-in-source-relation test [build-conflicts: bar [alpha test]]
@@ -45,6 +45,7 @@
 W: relations-multiple-libs: description-synopsis-might-not-be-phrased-properly
 W: relations-multiple-libs: redundant-bugs-field
 W: relations-multiple-libs: redundant-origin-field
+W: relations: depends-on-old-emacs recommends: emacs21
 W: relations: package-has-a-duplicate-relation depends: relations, relations (<< 3)
 W: relations: package-relation-with-self depends: relations
 W: relations: package-relation-with-self depends: relations (<< 3)



Reply to: