Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java 11 build not available due to gradle version being so old #65

Closed
giohappy opened this issue Jul 5, 2023 · 14 comments · Fixed by geosolutions-it/MapStore2#9453
Closed

Comments

@giohappy
Copy link

giohappy commented Jul 5, 2023

Cross-referencing mapfish/mapfish-print-v2#11

GeoTools now requires Java 11, and as part OpenGIS Harmonization we need to change some package names in GeoTools requiring a new release of mapfish-print-v2 for downstream projects GeoServer and GeoNode.

  • Presently: gradle version 3, works with Java 8 (not Java 11) and uses plugins jetty and maven
  • Minimim: gradle version 5, works with Java 11, requires upgrade to plugins getty and maven-plublish

@tdipisa are you aware of this? Is it something that has been already discussed?
@aaime might add more details.

@aaime
Copy link
Member

aaime commented Jul 5, 2023

That ticket was the first communication towards the community.
I've also reported in private to @giohappy on Monday July 2nd.

The details in that ticket are all we know, but we can set up a meeting to discuss it better if you want.
In short:

  • GeoServer depends on GeoTools, whose public API is going to change significantly to avoid Martin Desriusseaux/OGC to use us for using the org.opengis Java package
  • MapFish v2 also depends on GeoTools, a very old version of it. We need to upgrade it t the latest, or it won't work anymore with the more recent GeoTools version with different package names, but the old project does not even build against it, because it cannot build with Java 11. (it's working in the current version of GeoServer just because of a lucky accident).
graph TD;
    GeoServer-->MapfishPrintV2;
    GeoServer-->GeoTools
    MapfishPrintV2-->GeoTools;

The mapfish-print version used directly by MapStore is likely not affected, as MapStore does not have a GeoTools dependency of its own (as far as I know, at least).

@jodygarnett
Copy link

jodygarnett commented Aug 25, 2023

Please see mapfish/mapfish-print-v2#12 branch which merges all the work here into something that can be updated for geotools refactor.

I worked very hard @aaime with and @sebr72(camptocamp) at the code sprint to try and come up with a solution that would satisfy GeoNode community and be support out-of-the box by gs-printing module.

@tdipisa
Copy link
Member

tdipisa commented Sep 12, 2023

More info also here for internal coordination ad testing purposes.

@giohappy
Copy link
Author

@tdipisa let me know when tests on your side are done, then I will setup the tasks to upgrade GeoNode to the new mapfish print libs.

@jodygarnett
Copy link

Thanks, we want the GeoNode community to be happy out-of-the-box before making this GeoServer release.

@jodygarnett
Copy link

More info also here

I cannot see that issue, perhaps it is a private repository.

@tdipisa
Copy link
Member

tdipisa commented Sep 13, 2023

More info also here

I cannot see that issue, perhaps it is a private repository.

That's only for internal coordination for testing purposes @jodygarnett

@tdipisa
Copy link
Member

tdipisa commented Sep 13, 2023

@offtherailz the new artifact is now ready on GS MVN repo to be used for MS dev. @ElenaGallo will be involved for functional tests there.

@jodygarnett
Copy link

That's only for internal coordination for testing purposes @jodygarnett

That was my subtle reminder that you are on a public communication channel :)

@jodygarnett
Copy link

Note that use of https://maven.geo-solutions.it/org/mapfish/print/print-lib/2.3-SNAPSHOT/ is not going to work well for anyone as there is a conflict between this and repo.osgeo.org for the same artifact coordinate. If you wish to have a fork use a different classifier or group id etc….

The correct org.mapfish.print:print-lib:2.2-SNAPSHOT is already available from build.geoserver.org nightly builds packaged in geosever printing extension and ready to use.

@tdipisa
Copy link
Member

tdipisa commented Sep 19, 2023

@jodygarnett @aaime @giohappy
The updated print-lib has been integrated in MS master branch through geosolutions-it/MapStore2#9453 and tested in DEV environment by comparing the output with the one of QA (that provides the old print-lib version from the GeoSolutions fork).

The test has been performed using this map with the MapStore printing tool. All layout combinations provided by that tool have been tested as well as other available options such as:

  • output format
  • legend options
  • coordinate system

Test result

Comparing prints between DEV and QA using the same options, the outputs are the same. There are therefore no regressions from tested use cases.

Printing outputs derived from the tests are available here.

The only issue found during tests is captured by geosolutions-it/MapStore2#9459 and need to be further investigated. It doesn't seems anyway connected with printing capabilities.

The new print-lib version will be anyway available for the next major version of MapStore v2024.01.00. In the meantime it will remain in MS master branch for further tests during next months.

@giohappy
Copy link
Author

@giohappy so we can proceed with the upgrade of the print-lib in Geoserver for GeoNode, right @tdipisa?

@tdipisa
Copy link
Member

tdipisa commented Sep 19, 2023

yes, @giohappy

@giohappy
Copy link
Author

FYI A task for testing the new plugin in GeoNode has been created GeoNode/geoserver-geonode-ext#175

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants