Hi,

I think this is a good idea!

Some PRs (mostly by dependabot) are not merged because Avro needs to be JDK
8 compatible and the dependencies require a newer JDK...
I am not sure whether Avro 1.12.0 still needs to be JDK 8 compatible or not.

Martin

On Sat, Jan 6, 2024 at 5:55 PM Chad Preisler <chad.preis...@gmail.com>
wrote:

> Hello,
>
> I'm wondering if there is any interest in making Apache Avro a proper Java
> module? The following changes are required.
>
> - Add or generate the module-info.java file.
> - Change the POM file to build a multi-release jar.
> - Replace xerial Snappy with Apache commons-compress Snappy (see additional
> information below).
> - Update dependencies (like slf4) to the current versions.
> - Build with newer JDK. I'm using 21.
>
> Regarding the Snappy compressor, the next version of Apache
> commons-compress (1.25.1) can be swapped in for Xerial with no issues. All
> of the existing unit tests will work without changes. Xerial is not a
> proper Java module at this time, and it uses JNI which could make it tricky
> (especially if the goal is to use jlink).
>
> For me, the motivation here is to use Avro with modularized
> applications and custom runtime images using jlink.
>
> I currently have this working locally, and I can contribute my changes.
>
> Please let me know what you think.
>
> Thanks,
>
> Chad
>

Reply via email to