Bug#730714: lintian: Tag openjdk-6-jdk and openjdk-6-jre as obsolete
Package: lintian
Version: 2.5.17
Severity: normal
Hello,
The attached patch tags openjdk-6-jdk, openjdk-6-jre and openjdk-6-jre-headless as obsolete (See #720911).
It is one of the goal for Jessie.
The patch also tags java-compiler as not recommended and propose the usage
of defaul-jdk.
Tests are provided in the patch
Thanks,
Sylvestre
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (600, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.2.0-3-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.23.52.20130828-1
ii bzip2 1.0.6-5
ii diffstat 1.55-3
ii file 1:5.14-2
ii gettext 0.18.3.1-1
ii hardening-includes 2.3
ii intltool-debian 0.35.0+20060710.1
ii libapt-pkg-perl 0.1.29+b1
ii libarchive-zip-perl 1.30-7
ii libclass-accessor-perl 0.34-1
ii libclone-perl 0.34-1+b1
ii libdpkg-perl 1.16.10
ii libemail-valid-perl 0.190-1
ii libfile-basedir-perl 0.03-1
ii libipc-run-perl 0.92-1
ii liblist-moreutils-perl 0.33-1+b2
ii libparse-debianchangelog-perl 1.2.0-1
ii libtext-levenshtein-perl 0.06~01-2
ii libtimedate-perl 1.2000-1
ii liburi-perl 1.60-1
ii man-db 2.6.5-2
ii patchutils 0.3.2-2
ii perl [libdigest-sha-perl] 5.18.1-3
ii t1utils 1.37-2
Versions of packages lintian recommends:
pn libperlio-gzip-perl <none>
ii perl-modules [libautodie-perl] 5.18.1-3
Versions of packages lintian suggests:
pn binutils-multiarch <none>
ii dpkg-dev 1.16.10
ii libhtml-parser-perl 3.71-1+b1
ii libtext-template-perl 1.45-2
ii xz-utils 5.1.1alpha+20120614-2
-- no debconf information
>From d40722fdedc92ad390754c4198719909ee02c102 Mon Sep 17 00:00:00 2001
From: Sylvestre Ledru <sylvestre.ledru@scilab-enterprises.com>
Date: Tue, 26 Nov 2013 16:17:28 +0100
Subject: [PATCH] Tag openjdk-6-jdk, openjdk-6-jre and openjdk-6-jre-headless
as obsolete (See ##720911). Detect when the package build dep on
java-compiler.
---
checks/fields.pm | 5 +++++
checks/java.desc | 6 ++++++
data/fields/obsolete-packages | 5 +++++
debian/changelog | 5 +++++
t/tests/fields-java/debian/debian/control.in | 2 +-
t/tests/fields-java/tags | 4 ++++
6 files changed, 26 insertions(+), 1 deletion(-)
diff --git a/checks/fields.pm b/checks/fields.pm
index 2d103fb..e41cccf 100644
--- a/checks/fields.pm
+++ b/checks/fields.pm
@@ -974,6 +974,11 @@ sub run {
$d_pkg;
}
+ if ( $d_pkg =~ m/^java-compiler$/o){
+ tag 'build-depends-on-an-obsolete-java-package',
+ $d_pkg;
+ }
+
if ( $d_pkg =~ m/^libdb\d+\.\d+.*-dev$/o
and &$is_dep_field($field)) {
tag 'build-depends-on-versioned-berkeley-db',
diff --git a/checks/java.desc b/checks/java.desc
index fc8f986..0302d19 100644
--- a/checks/java.desc
+++ b/checks/java.desc
@@ -109,3 +109,9 @@ Severity: normal
Certainty: certain
Info: The package contains a Jar file, but Lintian is unable to parse it.
It is possible that the Jar file is corrupt.
+
+Tag: build-depends-on-an-obsolete-java-package
+Severity: normal
+Certainty: certain
+Info: The package build-depends on an obsolete java dependency.
+ It should default-jdk instead.
diff --git a/data/fields/obsolete-packages b/data/fields/obsolete-packages
index c70a2a0..64595de 100644
--- a/data/fields/obsolete-packages
+++ b/data/fields/obsolete-packages
@@ -80,3 +80,8 @@ automake1.7
automake1.8
automake1.9
automake1.10
+
+# Deprecated in Jessie (#720911)
+openjdk-6-jdk
+openjdk-6-jre
+openjdk-6-jre-headless
diff --git a/debian/changelog b/debian/changelog
index 0b837e4..fd6e98f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,9 @@ lintian (2.5.20) UNRELEASED; urgency=low
license. (Closes: #724930)
+ [BR] Abstract sliding window algorithm and use it for
license check. (Closes: #720348)
+ * checks/fields.pm:
+ + [SL] Returns a warning when a package build-deps on java-compiler
+ instead of default-jdk.
* checks/files.desc
+ [BR] Improve description of pkg-config-multi-arch-wrong-dir
tag. Add debhelper > 9 on non multi-arched package as a likely
@@ -20,6 +23,8 @@ lintian (2.5.20) UNRELEASED; urgency=low
* data/fields/obsolete-packages:
+ [NT] Apply patch from Eric Dorland to mark various versions
of automake as obsolete.
+ + [SL] Tag openjdk-6-jdk, openjdk-6-jre and openjdk-6-jre-headless
+ as obsolete (See ##720911)
* data/fields/virtual-packages:
+ [NT] Refresh against sid. Thanks to Nicholas Breen for the
reminder. (Closes: #724866)
diff --git a/t/tests/fields-java/debian/debian/control.in b/t/tests/fields-java/debian/debian/control.in
index 2b8801d..5125554 100644
--- a/t/tests/fields-java/debian/debian/control.in
+++ b/t/tests/fields-java/debian/debian/control.in
@@ -3,7 +3,7 @@ Priority: extra
Section: java
Maintainer: {$author}
Standards-Version: {$standards_version}
-Build-Depends: debhelper (>= 9), openjdk-6-doc
+Build-Depends: debhelper (>= 9), openjdk-6-doc, openjdk-6-jdk, java-compiler
Package: lib{$source}-java
Architecture: all
diff --git a/t/tests/fields-java/tags b/t/tests/fields-java/tags
index 7080a0f..77ba9af 100644
--- a/t/tests/fields-java/tags
+++ b/t/tests/fields-java/tags
@@ -1,4 +1,8 @@
+E: fields-java source: build-depends-on-obsolete-package build-depends: openjdk-6-jdk
I: libfields-java-java: javalib-but-no-public-jars
+I: libfields-java-java: ored-depends-on-obsolete-package depends: openjdk-6-jre
+W: fields-java source: build-depends-on-an-obsolete-java-package java-compiler
W: fields-java source: build-depends-on-specific-java-doc-package openjdk-6-doc
+W: fields-java source: virtual-package-depends-without-real-package-depends build-depends: java-compiler
W: libfields-java-java-doc: depends-on-specific-java-doc-package recommends
W: libfields-java-java: needless-dependency-on-jre
--
1.8.4.rc3
Reply to: