Skip to content

Upgrade to JTS 1.15

Jody Garnett edited this page Jul 3, 2018 · 20 revisions

Description

We would like to upgrade to the current version of JTS!

JTS 1.15 has migrated to LocationTech:

  • the package has changed to org.locationtech.jts
  • the license has changed to our choice of BSD or EPL, this proposal recommends we go with BSD

The project now has official releases at maven central (we are not sure who uploaded prior releases):

  • org.locationtech.jts.jts-core-1.15.1.jar
  • org.locationtech.jts.jts-io-common-1.15.1.jar

References:

Coordinated upgrade

GeoTools does not exist in isolation, as part of the FOSS4GNA code sprint Jim short listed a number of community projects which need to update in a coordinated fashion:

  1. geotools

  2. geoserver

    • https://osgeo-org.atlassian.net/browse/GEOS-8761

    • initial failure

      Failed tests:   testGetFeatureContent(org.geoserver.test.Gsml32BoreholeIntervalWfsTest): expected:<[#borehole.shape.GA.17322]> but was:<[]>
      
    • Failure was a regression in clone method, resolved with release of jts-1.15.1

    • ✅ PR #2945

  3. geowebcache

  4. jai-ext

  5. jaitools

    • long term functionality is moving to JAI-EXT above
    • PR #234
    • ✅ jody merged, James is deploying to maven central
  6. geodb

  7. hatbox

  8. java-vector-tile

    • PR to update to JTS 1.15.0 has been merged.
    • Version 1.3.1 is being released [here|https://github.com/ElectronicChartCentre/ecc-mvn-repo/tree/master/releases/no/ecc/vectortile/java-vector-tile/1.3.1]
    • Published to Boundless Repo (done)
    • ✅ ready
  9. Provide update instructions in GeoTools user guide

Status

Choose one of:

  • Under Discussion
  • In Progress
  • Completed
  • Rejected,
  • Deferred

Voting:

  • Andrea Aime: +1
  • Ben Caradoc-Davies: +1
  • Ian Turton: +1
  • Jody Garnett: +1
  • Simone Giannecchini: +0

Tasks

  1. Follow the migration guide to bulk search and replace pom.xml and java references
git grep -l com.vividsolutions | grep pom.xml | xargs sed -i "s/com.vividsolutions/org.locationtech.jts/g"
git grep -l com.vividsolutions | xargs sed -i "s/com.vividsolutions/org.locationtech/g"
  1. Run code formatter to fix order of imports

  2. Update User Guide examples? They should be captured by the sed command above ...

  3. Make a note in the geotools upgrade.rst instructions

API Change

Maven Dedependency

Before: com.vividsolutions jts-core 1.14.0

After: org.locationtech.jts jts-core ${jts.version}

(With ${jts.version} >= 1.15.0.)

Library Use

Before:

import com.vividsolutions.jts.*;

After:

import org.locationtech.jts.*;
Clone this wiki locally