Update.

I said the first choice was: "(a) turn off fatal warnings for Java and
Scala compilation when compiling with Java 21."

Turns out, one can do "-Xlint:-options" to suppress warnings about command
line options only.

So choice (a) becomes:

(a) turn off "--release 8 " warnings for Java and Scala compilation when
compiling with Java 21.

This is a more attractive alternative now.


On Tue, Oct 3, 2023 at 10:16 AM Mike Beckerle <mbecke...@apache.org> wrote:

>
> So Java 21 deprecates, but does not eliminate, Java 8 compatibility.
>
> You get an unavoidable warning. To support Java 21, a LTS Java release, we
> either need to
>
> (a) turn off fatal warnings for Java and Scala compilation when compiling
> with Java 21.
> or
> (b) we need to set the release compatibility higher. Our choices here are
> Java 11, 17, or 21.
> or
> (c) don't support Java21 officially yet
>
> I suggest (c) is the right thing, but our next release should be Daffodil
> 4.0.0 and it should require Java 11 across the board, eliminating Java 8.
>
> Java 8 is still in use by some, but is clearly past what anyone wants to
> support any more.
>
> A few comments people can agree or disagree with.
>
> 1) We should avoid Daffodil releases that require two different sets of
> Class files - one for say, Java 8, and one for a more modern JVM.
>
> 2) Requiring a new JVM beyond Java 8 is a big deal, and motivates a bump
> to version 4.0.0 of Daffodil.
>
> 3) Java 21 is new now, so while we can put in changes to eventually
> support it, we are not forced to support it yet. It also requires Scala
> 2.12.18 for example, which we're now compiling with.
>
> 4) In general, I think we've not moved major versions often enough to
> signal the incompatibilities. Support for Java 17 required using Scala
> 2.12.15 at least, and that was probably enough to motivate a major release
> number bump. Certainly the package renaming from Daffodil 3.4.0 to Daffodil
> 3.5.0 was a mistake and should have been a bump of major version to 4.0.0
>
> 5) We should "in effect" deprecate 3.5.0 and suggest people jump to 4.0.0
> instead, and that means releasing 4.0.0 very soon. 3.5.0 should be our last
> release which supports Java 8 JVMs.
>
> Thoughts?
>
> Mike Beckerle
> Apache Daffodil PMC | daffodil.apache.org
> OGF DFDL Workgroup Co-Chair | www.ogf.org/ogf/doku.php/standards/dfdl/dfdl
> Owl Cyber Defense | www.owlcyberdefense.com
>
>
>

Reply via email to