Package: lintian Version: 2.5.22.1 Severity: wishlist Hello,
The attached patch disables missing-classpath when dealing with a Java binaries (or non java library). We had this false positive with visualvm. Thanks sylvestre -- System Information: Debian Release: jessie/sid APT prefers testing APT policy: (900, 'testing'), (600, 'unstable'), (500, 'stable-updates'), (500, 'stable'), (300, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.13-1-amd64 (SMP w/4 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages lintian depends on: ii binutils 2.24-4 ii bzip2 1.0.6-5 ii diffstat 1.58-1 ii file 1:5.17-1 ii gettext 0.18.3.2-1 ii hardening-includes 2.5 ii intltool-debian 0.35.0+20060710.1 ii libapt-pkg-perl 0.1.29+b1 ii libarchive-zip-perl 1.37-2 ii libclass-accessor-perl 0.34-1 ii libclone-perl 0.36-1 ii libdpkg-perl 1.17.6 ii libemail-valid-perl 1.192-1 ii libfile-basedir-perl 0.03-1 ii libipc-run-perl 0.92-1 ii liblist-moreutils-perl 0.33-2 ii libparse-debianchangelog-perl 1.2.0-1 ii libtext-levenshtein-perl 0.06~01-2 ii libtimedate-perl 2.3000-1 ii liburi-perl 1.60-1 ii man-db 2.6.6-1 ii patchutils 0.3.2-3 ii perl [libdigest-sha-perl] 5.18.2-2+b1 ii t1utils 1.37-2 Versions of packages lintian recommends: pn libperlio-gzip-perl <none> ii perl-modules [libautodie-perl] 5.18.2-2 Versions of packages lintian suggests: pn binutils-multiarch <none> ii dpkg-dev 1.17.6 ii libhtml-parser-perl 3.71-1+b1 pn libtext-template-perl <none> pn libyaml-perl <none> ii xz-utils 5.1.1alpha+20120614-2 -- no debconf information
>From e125d9661cc803ed7be6e3c56c7f1dc4ea32eaab Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru <sylves...@debian.org> Date: Fri, 2 May 2014 14:52:52 +0200 Subject: [PATCH] [SL] missing-classpath should be disabled on Java binaries --- checks/java.pm | 2 +- debian/changelog | 1 + t/tests/java-classpath/debian/debian/binary-using-java.jlibs | 1 + t/tests/java-classpath/debian/debian/control.in | 11 +++++++++++ t/tests/java-classpath/debian/debian/rules | 1 + 5 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 t/tests/java-classpath/debian/debian/binary-using-java.jlibs diff --git a/checks/java.pm b/checks/java.pm index 5e7eac1..c815c18 100644 --- a/checks/java.pm +++ b/checks/java.pm @@ -231,7 +231,7 @@ sub run { } } - if ($has_jars && $need_cp) { + if ($has_jars && $need_cp && $pkg =~ /^lib[^\s,]+-java$/) { # Only tag if there is at least one jar file and one strong # java dependency and no classpath/osgi. Technically there # should be no reason to have a strong relation with a java diff --git a/debian/changelog b/debian/changelog index 0d70935..a55f0dc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -30,6 +30,7 @@ lintian (2.5.23) UNRELEASED; urgency=medium + [SL] Catch uses of Java8 byte code. (Closes: #743384). + [SL] Warn that the suggests/recommends on libservlet[\d\.]+-java is needless (Closes: #743453) + + [SL] missing-classpath should be disabled on Java binaries + [NT] Exclude some jar files from "codeless-jar" tag based on the basename of the jar file. This is intended to reduce the number of codeless jars for source/doc jars in diff --git a/t/tests/java-classpath/debian/debian/binary-using-java.jlibs b/t/tests/java-classpath/debian/debian/binary-using-java.jlibs new file mode 100644 index 0000000..5e5f31e --- /dev/null +++ b/t/tests/java-classpath/debian/debian/binary-using-java.jlibs @@ -0,0 +1 @@ +cp-missing-2.jar diff --git a/t/tests/java-classpath/debian/debian/control.in b/t/tests/java-classpath/debian/debian/control.in index 115ceaf..b1231c7 100644 --- a/t/tests/java-classpath/debian/debian/control.in +++ b/t/tests/java-classpath/debian/debian/control.in @@ -24,3 +24,14 @@ Description: {$description} - relative installed. . Test for relative classpaths. + + +Package: binary-using-java +Architecture: {$architecture} +Depends: $\{misc:Depends\}, libdepends-java +Description: {$description} - binary + This is a test package designed to test various aspects of the + java-related QA code in lintian. This package should not be + installed. + . + Test for classpaths in binary. diff --git a/t/tests/java-classpath/debian/debian/rules b/t/tests/java-classpath/debian/debian/rules index 17a2e14..1d7125d 100755 --- a/t/tests/java-classpath/debian/debian/rules +++ b/t/tests/java-classpath/debian/debian/rules @@ -5,3 +5,4 @@ override_jh_build: jh_build --javacopts='-target 1.4' --javacopts='-source 1.4' + cp cp-missing.jar cp-missing-2.jar -- 2.0.0.rc0