GeoTools / GeoServer PMC meeting - 2020-12-22Attending

Torben Barsballe

Kevin Smith

Ian Turton

Jody Garnett

Andrea Aime

Jukka Rahkonnen

Alessandro Parma

Jim Hughes

Nuno Oliveira

Actions from last meeting:

   -

   [DONE] Thank Brad and Mark for the migration work :)

Agenda

   1.

   JTS 1.18 Upgrade
   2.

   CITE Test contract
   3.

   Remaining 2020 budget
   4.

   HTTP client in GeoTools
   5.

   GeoServer Docker image alternatives
   6.

   More codebase cleanups

Actions

   -

   Jody: Start email PSC vote this year to pay out of our 2020 budget for
   CITE test contract, and then send authorization to treasurer when work is
   complete
   -


JTS 1.18 Upgrade

JTS 1.18 upgrade, featuring Overlay NG (robust etc…)

   -

   New in 1.18
   -

   Setting to turn off / on (usual geotools system property setting)
   -

   Performance improvements
   -

   Address topology exceptions (stability)
   -

      Such improvement it is used always for precision sensitive operations
      like GeometryPrecisionReducer

James:

   -

   Testing against GeoTools / GeoServer build chain before release
   -

   Some ZM handling for a unit test involving shapefiles
   -

   Testing on https://gitter.im/locationtech/jts later today
   -

   Git branch is https://github.com/jnh5y/geotools/tree/jts1.18.0


Discussion:

   -

   Approach: enable “ng” on master, disable on “stable”, …
   -

   Flag is jts.overlay=ng is jts.overlay=old
   -

   Backporting dependency changes can be troublesome, had some recent
   experience with GeoTools being affected by linear rings api change

CITE Test contract

Are we coming up to the end 2020 budget for this activity?

   -

   What do we want to do? With respect to payment out of 2020 budget …
   -

      Action: Start email PSC vote this year … to pay out of our 2020
      budget, and then send authorization to treasurer when work is complete
      -

   Work is still in progress, some delays (see 2020 :) )
   -

      Anything we can do to help? Not really …

Remaining 2020 Budget:

Other discussion:

   -

   Essential software ranking? Migrate from jira to github to improve
   score….
   -

      GeoTools at position 70
      -

      https://github.com/ossf/criticality_score
      -


      https://commondatastorage.googleapis.com/ossf-criticality-score/index.html

      -

   Windows installer?
   -

      GeoCat may be interested in a contract?
      -

   MacOS installer?
   -

      Amazon now rents a mac mini if you needed it :P


If you wish to take action, please send a motion to the appropriate
developer list?
HTTP client in GeoTools

Q: What is the story with this? Roar Brænden

GeoTools HTTPClient interface:

   -

   Java implementation
   -

   Multithreaded using http commons


Got a few threads that clients are difficult to find, generally useful,
duplication gt-wms and gt-wfs both implement…

Someone implemented a PR: https://github.com/geotools/geotools/pull/3256

   -

   Move to gt-main? Not a good idea as we would get dependency on apache
   commons ...
   -

   Isolate into a single interface
   -

   Build a new implementation using apache http commons (replace http
   commons)
   -

   Implement Java 11 (but we cannot do java 11 only code)
   -

   Additional ideas, example async


Action:

   -

   Jody: Will write it up as a proposal library/gt-http and
   plugin/gt-http-components and send it to email for vote?

GeoServer Docker image alternatives

Existing activity: https://github.com/geoserver/docker

   -

   What happened here? There is one PR waiting on feedback …
   -

   This sets up at runtime ...


Alsandro would like to propose an alternative approach:

   -

   Rather than setup at runtime (the above approach), repare a webapp at
   build time, and then pull into docker, …
   -

   GeoCat does this with maven builds and war overlay (maven) and then
   packages result into Docker
   -

   GeoSolutions does this with DockerHub downloading source forge war,
   monitor and control-flow
   -

      Dockerhub build:
      
https://hub.docker.com/r/geosolutionsit/geoserver/tags?page=1&ordering=last_updated&name=test-



Discussion notes:

   -

   The two approaches could be used together, you could always add more
   extensions by hand after if needed.
   -

   How to include this stuff in the geoserver release chain?
   -

      Edit a text file in the repository used by DockerHub, trigger rebuild
      and publish of docker?
      -

      Would I need to add this to the release process?
      -

   Advantage is that you do not have a delay each time you run the
   container ...


If you want to change the extensions, you need to build locally, with
different list extensions

   -

   See custombuild.sh used to make a war (requires linux)


Discussion

   -

   How to include gdal (g-dal / or goo-dle for italians) native binaries,
   built custom gdal to get java bindings …
   -

      See link from torben here:
      
https://github.com/planetlabs/stratus/blob/master/build/docker/amazonlinux-gdal-py-java11/Dockerfile
      -

         Uses Gdal 2.3.2 on amazon-linux, likely needs some tuning for
         other builds
         -

   Also libjpegturbo
   -

      Already included
      -

   How to include community modules? Would have to download from nexus
   repository, or modify custombuild.sh
   -

   Can we have the docker image:
   -

      1. Download everything (static docker image) from source forge or
      nexus
      -

      2. Then use runtime to copy that is requested into position on
      container startup


Action:

   -

   Make a PR to start this repository going

More codebase cleanups

GeoTools samples:

   -

   Unnecessary casts, merged: https://github.com/geotools/geotools/pull/3257
   -

   Diamond, pending: https://github.com/geotools/geotools/pull/3264
   -

   For / loops with iterators: IntelliJ inspection to clean up
   -

   Cleaning JUnit 3 → JUnit 4
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to