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

Re: Bug#786895: lintian: incompatible-java-bytecode-format warning needs update for Java 1.7



Hi,

Markus Koschany wrote:
> I think it is time to adjust the lintian warning about
> "incompatible-java-bytecode-format". The current version of Lintian
> still warns about Java 1.7 bytecode, however Java 1.7 is the default
> in Jessie and it is reasonable to update the check now.
> 
> It seems to be sufficient to change the value of
> "max-bytecode-version" in data/java/constants from 50 to 51.

There is a related bug report against lintian at
https://bugs.debian.org/783815 (Using oracle java 8 in a package
generate unknow-java-class-version).

I'm actually unsure about the semantics of max-bytecode-version.
Citing from my (still unanswered) mail to the above bug-report:

The code introduced in 2.5.23 may have an off-by-one error, but it
also may be on purpose (the changelog entry sys "Catch uses of Java8
byte code"):

            if (   $mver <= $MAX_BYTECODE->value('min-bytecode-version') - 1
                or $mver
                >= $MAX_BYTECODE->value('max-bytecode-existing-version')) {
                # First public major version was 45 (Java1), latest
                # version is 52 (Java8).
                tag 'unknown-java-class-version', $jar_file,
                  "($class -> $mver)";

The ">=" in there likely should be just a ">" if Java 8 byte code
(i.e. for use with openjdk-8 from experimental) is fine. Or am I
misunderstanding the semantics of max-bytecode-existing-version?

		Regards, Axel
-- 
 ,''`.  |  Axel Beckert <abe@debian.org>, http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-    |  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE


Reply to: