[SCM] Debian package checker branch, master, updated. 2.4.3-78-gbdf93c8

2010-12-29 Thread Niels Thykier
The following commit has been merged in the master branch:
commit 0c69de90bb8f37774e9c35a418b76080804d0157
Author: Niels Thykier ni...@thykier.net
Date:   Wed Dec 29 19:08:10 2010 +0100

Add check for needless dependency on JRE/JDK for java libraries.

  * Summary of tag changes:
+ Added:
  - needless-dependency-on-jre

  * checks/fields{,.desc}:
+ [NT] Added needless-dependency-on-jre tag.

diff --git a/checks/fields b/checks/fields
index 09d8a6f..0730725 100644
--- a/checks/fields
+++ b/checks/fields
@@ -123,6 +123,15 @@ our %known_tkxs = map { $_ = 1 }
 our %known_libpngs = map { $_ = 1 }
 ( 'libpng12-0', 'libpng2', 'libpng3', );
 
+our @known_java_pkg = map { qr/$_/ }
+('default-jre(?:-headless)?', 'default-jdk', # default java
+ 'java\d*-runtime(?:-headless)?', # java-runtime and javaX-runtime 
alternatives (virtual)
+ '(openjdk-|sun-java)\d+-jre(?:-headless)?', '(openjdk-|sun-java)\d+-jdk', 
# openjdk-X and sun-javaX
+ 'gcj-(?:\d+\.\d+-)?jre(?:-headless)?', 'gcj-(?:\d+\.\d+-)?jdk', # gcj
+ 'gij', 'java-compat(?:-dev|-headless)?', # deprecated/transitional 
packages
+ 'kaffe', 'cacao', 'jamvm', 'classpath', # deprecated packages (removed in 
Squeeze)
+);
+
 # Mapping of package names to section names
 my @NAME_SECTION_MAPPINGS = (
 [ qr/-docs?$/  = 'doc'  ],
@@ -518,10 +527,13 @@ if ($type eq 'binary') {
 }
 if (($type eq binary) || ($type eq 'udeb')) {
my (%deps, %fields, %parsed);
+   my $javalib = 0;
+   $javalib = 1 if($pkg =~ m/^lib.*-(?:java|gcj)$/o);
for my $field (qw(depends pre-depends recommends suggests conflicts 
provides enhances replaces breaks)) {
next unless defined $info-field($field);
#Get data and clean it
my $data = $info-field($field);;
+   my $javadep = 0;
unfold($field, \$data);
$fields{$field} = $data;
 
@@ -645,6 +657,17 @@ if (($type eq binary) || ($type eq 'udeb')) {
tag depends-on-specific-java-doc-package, 
$field
if($is_dep_field($field)  $pkg ne 
'default-jdk-doc'
($d_pkg eq 'classpath-doc' || $d_pkg 
=~ m/openjdk-\d+-doc/o));
+
+
+   if($javalib  $field eq 'depends'){
+   foreach my $reg (@known_java_pkg){
+   if($d_pkg =~ m/$reg/){
+   $javadep++;
+   last;
+   }
+
+   }
+   }
}
 
for my $pkg (@seen_obsolete_packages) {
@@ -655,6 +678,11 @@ if (($type eq binary) || ($type eq 'udeb')) {
tag ored-depends-on-obsolete-package, 
$field: $pkg;
}
}
+
+   # Only emit the tag if all the alternatives are 
JVM/JRE/JDKs
+   # - assume that some-lib | openjdk-6-jre-headless 
makes sense for now.
+   tag needless-dependency-on-jre
+   if (scalar(@alternatives) == $javadep);
}
tag package-depends-on-multiple-libstdc-versions, 
@seen_libstdcs
if (scalar @seen_libstdcs  1);
diff --git a/checks/fields.desc b/checks/fields.desc
index 672b9d2..ce6b9b3 100644
--- a/checks/fields.desc
+++ b/checks/fields.desc
@@ -1007,3 +1007,15 @@ Info: The package should use default-jdk-doc instead of 
classpath-doc
  or openjdk-X-doc to ease transitions when the providing doc package
  is replaced (e.g. openjdk-6-doc being replaced by openjdk-7-doc).
 
+Tag: needless-dependency-on-jre
+Severity: normal
+Certainty: possible
+Info: The package appear to be a Java library and depending on one
+ or more JRE/JDK packages. As of 05 Apr 2010, the Java Policy no
+ longer mandates that Java libraries depend on Java Runtimes.
+ .
+ If there is a valid reason for this dependency, please override
+ the tag.
+Ref: http://packages.qa.debian.org/j/java-common/news/20100405T221415Z.html,
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=227587
+
diff --git a/debian/changelog b/debian/changelog
index 3bfd7b6..c73136d 100755
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,7 @@ lintian (2.4.4) UNRELEASED; urgency=low
   - depends-on-specific-java-doc-package
   - unneeded-build-dep-on-quilt
   - description-synopsis-starts-with-article
+  - needless-dependency-on-jre
 
   * checks/*:
 + [NT] Use the new pre-sorted file {index,info} when iterating over files.
@@ -30,6 +31,7 @@ lintian (2.4.4) UNRELEASED; urgency=low
   classpath-doc instead of the default-jdk-doc metapackage.
   (Closes: #593837)
 + [NT] Fixed spelling 

[SCM] Debian package checker branch, master, updated. 2.4.3-78-gbdf93c8

2010-12-29 Thread Niels Thykier
The following commit has been merged in the master branch:
commit bdf93c8db99fadad852964a456bd817aba9feac9
Author: Niels Thykier ni...@thykier.net
Date:   Wed Dec 29 19:11:06 2010 +0100

Updated changelog to reflect changes made by commit ad4876b.

  * data/spelling/corrections:
+ [NT] Added more corrections.

diff --git a/debian/changelog b/debian/changelog
index c73136d..38a0922 100755
--- a/debian/changelog
+++ b/debian/changelog
@@ -65,6 +65,8 @@ lintian (2.4.4) UNRELEASED; urgency=low
   * data/fields/obsolete-packages:
 + [NT] Added default-jdk-builddep.  See README.gcj-native-transition
   in java-common for the replacement.
+  * data/spelling/corrections:
++ [NT] Added more corrections.
 
   * debian/control:
 + [RA] Add the build dependencies required to run the test suite

-- 
Debian package checker


-- 
To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1py0xb-000231...@alioth.debian.org