Hello Martin

Indeed, we use multi-release JAR files for other projects. But in Apache SIS case, upgrade from Java 8 to 11 implies changes pervasive enough to make uncertain that multi-release JAR would be easier than a branch. But anyway, the decision to bump the minimum Java version is up to the community, which includes the users. If a user (could be Sedona) objects against a future bump, this is taken in account.

One thing about the timing is that a migration (if desired) may require more work as time passes. For example a recent request on this mailing list was about fetching values in a GeoTIFF file. Apache SIS already supports that on GeoTIFF and netCDF among others, handling the CRS issues, in N-dimensions when the format supports it, and efficiently on large files when the format supports tilings (geospatial softwares do some big data on their own since they work with space agencies). Work developed on top of a different library would probably be done differently, making an eventual migration more unlikely.

Whether a migration would be desirable or not depends on the technical merits of libraries, but also licensing is maybe not a negligible aspect. Given that Sedona is all about bringing geospatial functionalities to Spark, it seems a little bit surprising that "referencing by coordinates" services and "grid coverages" (a.k.a. rasters) are not core to Sedona?

But anyway, I understand that for making a migration proposal receivable for consideration, we need a prototype that can be evaluated for functionalities and performances. I will not have the time to work on a Sedona branch for the next few months however (especially if acceptance is uncertain), but maybe in spring some experiment would be possible.

    Martin


Le 18/01/2023 à 15:37, Martin Andersson a écrit :

I think that Sedona and SIS joining forces would be great. But maybe the
timing isn't right.

I don't think a maintenance branch is going to work. Once the big data
community drops java 8, in a few years, and Sedona is ready to upgrade SIS
you will already be several java releases ahead and we'll be stuck on a new
maintenance branch.

If you are interested in joining the big data community I would advice you
to look into multi release jars and be very conservative when it comes to
bumping minimum java version.

Multi release jars would not only help you with backwards compatibility. It
would also help you take advantage of new java features, for those running
on newer runtimes, before you bump the minimum java version.

For instance jackson runs on java 8 but supports records on new java
runtimes. All from the same build and jar file.

Reply via email to