GeoTools

OSGeo

Friday, October 2, 2020

GeoTools 23.3 released

 The GeoTools team is pleased to share the availability of   GeoTools 23.3 :

This release is published to the osgeo maven repository, and is made in conjunction with  GeoServer 2.17.3. This is a stable release and is a recommended upgrade for all users of the GeoTools library.

We would like to thank everyone who contributed to this release. The large number of fixes this release are in part to participation in a bug fix sprint organized by GeoSolutions.

Improvements and Fixes

From our issue tracker  release-notes :
  • The ImageMosaic single granule harvest has been optimized so that it only checks the files it really need to harvest (used to cause a full mosaic directory scan). The mosaic has also been optimized to better use the SuggestedFormat setting, avoiding potentially expensive format lookups.
  • The StandardDeviationClassificationFunction can now include class percentages as well
  • SAP HANA spatial filtering reiceived fixes to be used more consistently
  • The Jiffle process is now faster, avoiding raster resampling when not necessary, and can produce multi-band outputs
  • And more, read the release notes for more details.

About GeoTools 23 Series

GeoTools 23:For more information see the release notes ( 23.2 | 23.1 | 23.0 |  23-RC )

Sunday, September 20, 2020

GeoTools 24.0 Released

 The GeoTools team is pleased to share the availability GeoTools 24.0:

This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.18.0, GeoWebCache 1.18.0 and JTS 1.17.1.

This release was carried out by Ian Turton of Astun Technology, with thanks to the support of UKHO.

Visuals and Rendering

New capabilities have been added:
  • Add a ProjectionHandler for Homolosine
  • WrappingProjectionHandler can now handle a rotated polar fitted Coordinate System
  • Implement Polyconic spherical case (as used by US Census TIGER dataset)

Add functionality to GeoPackage with GeoPkgExtension

Read/write support of GeoPackage has been available as a GeoTools DataStore for some time, this release Andrea (GeoSolutions) has really upped our game defining a GeoPkgExtension for modules to hook in and provide additional functionality:
  • GeoPkgMetadataExtension: Supports the GeoPackage metadata extension, defined as a "registered extension" in the GeoPackage standard .
  • GeoPkgSchemaExtension: Allowing to declare more information about columns and eventually express constraints on them.
  • This approach is already opening up a host of possibilities, with GeoServer experimenting with including styling and semantic annotations.
The GeoPackage module is under active development with new support for Support compact enumerations, speed improvements when adding content, and

Mapbox Style Dynamic Expressions

The MBStyle Extension continues to be improved with this release adding support for dynamic expressions.
Expressions allow Mapbox Style to dynamically style features using attribute values ( [ "get","attribute"] ), and respond to changes of scale ( ["zoom"] ), and make use of functions (["rgb",255,0,0] ):
{ "circle-radius": [
    "interpolate", ["linear"], ["zoom"],
    0, ["get", "rating"],
    10, ["*", 4, ["get", "rating"]]
  ]
}
The previous, now deprecated, function stop approach remains supported:
{ "circle-color": {
    "property": "temperature",
    "stops": [[0, 'blue'],[100, 'red']]
  }
}
Thanks to Jody (GeoCat) for this improvement offering greater Mapbox.GL parity. For more information see user guide on Expressions .

Updated Libraries

Each major release is an opportunity to update the libraries that GeoTools uses:
  • Bump no.ecc.java-vector-tiles to 1.3.10
  • Update to JSR-385 units 2.0
  • Update to Oracle 19.7.0.0 JDBC driver (now available as maven dependency)
  • Upgrade FlatGeobuf library to 3.3.0
  • Upgrade from Apache Commons Collections v3 to Apache Commons Collections v4
  • Upgrade NetCDF to 4.6.15
  • Update to SQL Server 8.2.2.jre8 driver
  • Upgrade SnakeYAML to 1.26
  • Upgrade to JTS Topology Suite 1.17.1
  • Upgrade to sqlite-jdbc 3.31.1
  • Upgrade to jgridshift 1.3
  • Upgrade to commons-beanutils from 1.9.2 to 1.9.4
Please note if you have made use of the JSR-385 units library change your imports from "import tec.uom.se.*"  to "import tech.units.indriya.*". For additional information on upgrading your application see our User Manual "upgrading" page.

Improvements and Fixes

Public service announcement:
  • The imagemosaic-jdbc module (storing rasters in the database) does not have an active developer and has been downgraded to unsupported status.
  • The unmaintained ogr-bridj module has been removed.
  • GeoTools code of conduct pledge, following OSGeo policy.
From our issue tracker release-notes:
  • Ensure PostGIS DataStore respects force2D hint, applying ST_Force2D function to allow rendering of 3D Geometry
  • Address GeoPackage data store aggregates performance regression introduced when adding temporal support
  • Updates to MapBox Style Specification in GeoTools User Manual, now linked to by the GeoServer extension documentation to avoid duplication.
  • Image mosaic configuration now checks suggested image format will work, and makes a note of the format used for subsequent harvesting.
  • Preventing several failures during image mosaic harvesting encountered when working with multiple files in different coordinate reference systems.
  • Improve GeoJSONDataStore parameter checks when working with a provided URL.
  • New array function to allow literal array creation
  • Add support for restricting an attribute to a fixed set of valid values
  • Rendering speed improved with MemoryFilterOptimizer converting slow OR expressions into faster IN functions when possible.
  • Fix for SAP-HANA-datastore when working with views and no SRID found
  • PostGIS datastore option to simplify using ST_SimplifyPreserveTopology function
  • Shapefile now supports Charset coding in the DBF file header, so attribute names are no longer restricted to "iso-8859-1" names.
  • Ian Turton fixed a very frustrating Shapefile java.lang.NoSuchMethodError: java.nio.ByteBuffer.clear() error when working with Java 11
  • Change to user-agent "Geotools HTTP client" to restore programatic access OSM tiles
  • WMTS client support for longitude first coordinate reference systems
  • A fix for OracleDatastore allowing use of reserved words as column names
Many of these fixes were made after testing of our 24-RC release, we would like to thank Mark Prins and Jody Garnett for testing.

Research and Development Updates

Our "unsupported" module area is provided for the developer community to collaborate on research and development. We invite developers to contribute to the following work-in-progress:
  • A new DataStore to access ogc-api features
  • A new module supporting Esri compact cache TPK format
  • ElasticGeo continutes to improve with support for aliasing / short names,
  • For additional topics check out the "unsupported" page in our User guide.
If you are interested in contributing to these modules, or starting your own research and development activity, please see our developers guide for details.

About GeoTools 24 Series

For more information see the release notes ( 24.0 | 24-RC ).

Friday, September 4, 2020

GeoTools 24-RC Release Candidate

The GeoTools team is pleased to share the availability GeoTools 24-RC :
This release candidate is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.18-RC and JTS 1.17.1.

Please Test this Release Candidate

A release candidate is your chance to both try out new features and contribute to the project with valuable feedback right when we need it most.
This release is an easy upgrade with only API additions! Please test this release and let us know of any regression before we release GeoTools 24 later this month  

Visuals and Rendering

New capabilities have been added:
  • Add a ProjectionHandler for Homolosine
  • WrappingProjectionHandler can now handle a rotated polar fitted Coordinate System
  • Implement Polyconic spherical case (as used by US Census TIGER dataset)

Add functionality to GeoPackage with GeoPkgExtension

Read/write support of GeoPackage has been available as a GeoTools DataStore for some time, this release Andrea (GeoSolutions) has really upped our game defining a GeoPkgExtension for modules to hook in and provide additional functionality:
  • GeoPkgMetadataExtension: Supports the GeoPackage metadata extension, defined as a "registered extension" in the GeoPackage standard .
  • GeoPkgSchemaExtension: Allowing to declare more information about columns and eventually express constraints on them.
  • This approach is already opening up a host of possibilities, with GeoServer experimenting with including styling and semantic annotations.
The GeoPackage module is under active development with new support for Support compact enumerations, speed improvements when adding content, and

Mapbox Style Dynamic Expressions

The MBStyle Extension   continues to be improved with this release adding support for dynamic expressions.
Expressions allow Mapbox Style to dynamically style features using attribute values ( [ "get","attribute"] ), and respond to changes of scale ( ["zoom"] ), and make use of functions ( ["rgb",255,0,0] ):
{ "circle-radius": [
    "interpolate", ["linear"], ["zoom"],
    0, ["get", "rating"],
    10, ["*", 4, ["get", "rating"]]
  ]
}
The previous, now deprecated, function stop approach remains supported:
{ "circle-color": {
    "property": "temperature",
    "stops": [[0, 'blue'],[100, 'red']]
  }
}
Thanks to Jody (GeoCat) for this improvement offering greater Mapbox.GL parity. For more information see user guide on Expressions .

Updated Libraries

Each major release is an opportunity to update the libraries that GeoTools uses:
  • Bump no.ecc.java-vector-tiles to 1.3.10
  • Remove un-maintained ogr-bridj module
  • Update to JSR-385 units 2.0
  • Update to Oracle 19.7.0.0 JDBC driver (now available as maven dependency)
  • Upgrade FlatGeobuf library to 3.3.0
  • Upgrade from Apache Commons Collections v3 to Apache Commons Collections v4
  • Upgrade NetCDF to 4.6.15
  • Update to SQL Server 8.2.2.jre8 driver
  • Upgrade SnakeYAML to 1.26
  • Upgrade to JTS Topology Suite 1.17.1
  • Upgrade to sqlite-jdbc 3.31.1
  • Upgrade to jgridshift 1.3
Please note if you have made use of the JSR-385 units library change your imports from "import tec.uom.se.*"  to "import tech.units.indriya.*". For additional information on upgrading your application see our User Manual "upgrading" page.

Improvements and Fixes

Public service announcement:
  • The imagemosaic-jdbc module (storing rasters in the database) does not have an active developer and has been downgraded to unsupported status.
  • The unmaintained ogr-bridj module has been removed.
From our issue tracker release-notes:
  • New array function to allow literal array creation
  • Add support for restricting an attribute to a fixed set of valid values
  • Rendering speed improved with MemoryFilterOptimizer converting slow OR expressions into faster IN functions when possible.
  • Fix for SAP-HANA-datastore when working with views and no SRID found
  • PostGIS datastore option to simplify using ST_SimplifyPreserveTopology function
  • Shapefile now supports Charset coding in the DBF file header, so attribute names are no longer restricted to "iso-8859-1" names.
  • Ian Turton fixed a very frustrating Shapefile java.lang.NoSuchMethodError: java.nio.ByteBuffer.clear() error when working with Java 11
  • Change to user-agent "Geotools HTTP client" to restore programatic access OSM tiles
  • WMTS client support for longitude first coordinate reference systems
  • A fix for OracleDatastore allowing use of reserved words as column names

Research and Development Updates

Our "unsupported" module area is provided for the developer community to collaborate on research and development. We invite developers to contribute to the following work-in-progress:
  • A new DataStore to access ogc-api features
  • A new module supporting Esri compact cache TPK format
  • ElasticGeo continutes to improve with support for aliasing / short names,
  • For additional topics check out the "unsupported" page in our User guide.
If you are interested in contributing to these modules, or starting your own research and development activity, please see our developers guide for details.

About GeoTools 24 Series

For more information see the release notes ( 24-RC ).

Tuesday, July 21, 2020

GeoTools 23.2 Released

The GeoTools team is pleased to share the availability of   GeoTools 23.2 :
This release is published to the osgeo maven repository, and is made in conjunction with  GeoServer 2.17.2 . This is a stable release and is a recommended upgrade for all users of the GeoTools library.

We would like to thank everyone who contributed to this release. The large number of fixes this release are in part to participation in a bug fix sprint organized by GeoSolutions.

Improvements and Fixes

Public service announcement:
  • The ogr-bridj module has been removed, it had not been released for sometime.
From our issue tracker  release-notes :
  • New! ImageMosaic can now be used with SQL Server index
  • New! PostgreSQL translate jsonPointer function directly SQL
  • GeoPackage support for long integers, and raster tables with special characters in the name
  • Rendering fix when using high oversample combined with reprojection and rendering transformations
  • Rendering fix for composition when when of the layers has a null image
  • WMTS scale fix when requesting tiles
  • WKB FootprintLoader fix when being used by multiple concurrent requests
  • Fix wfs client to avoid duplicate SRS entries for WFS 2.0.0 Layer
  • Fix 16 bits colormap to RGB expansion results for better PNG24 bit encoding
  • WMTS client fix replacing {style} placeholder in getCapabilties document, also more forgiving when parsing ContactInfo and Internationalized Strings.
  • DecoratingFeatureCollection now delegates visitors to wrapped FeatureCollection
  • Shapefile write fails now handles MULTIPOLYGON EMPTY geometries
  • WrappingProjectionHandler::accumulate method fixed to support mixed Geometry typed GeometryCollection
  • WFS-NG GetFeature GET request URL encoding no longer assumed to be UTF-8.
  • Image mosaic STACK merge mode restored
  • Addressed a performance issue with the URL converter "data:" protocol converter accepts any schema without validation
  • Updated versions forEMF, PostgreSQL JDBC Driver, and MongoDB Driver.

About GeoTools 23 Series

GeoTools 23: For more information see the release notes ( 23.2 | 23.1 | 23.0 |  23-RC )

Monday, July 6, 2020

GeoTools 22.4 released

The GeoTools team is pleased to announce the release of GeoTools 22.4:
GeoTools 22.4 is a stable release and is recommended for new development and production systems. This release is made in conjunction with GeoServer 2.16.4.

What's new

Improvements:
  • The ImageMosaic plugin supports storing the index in SQL Server
  • The PostgreSQL JDBC driver has been updated to the latest release, as well as the MongoDB connector
  • New filter function, "mapGet", retrieves an entry from a Map (useful when your simple features do contain a map, e.g., when using a hstore column in PostgreSQL).
Other assorted fixes can be found in release notes.

About GeoTools 22 Series




Monday, June 8, 2020

GeoTools 23.1 Released

The GeoTools team is pleased to share the availability GeoTools 23.1:
This release is published to the osgeo maven repository, and is made in conjunction with GeoServer 2.17.1. This is a stable release and is a recommended upgrade for all users of the GeoTools library.

Improvements and Fixes

Public service announcement:
  • The spatialite data store has been removed, it had not been released for sometime.
From our issue tracker release-notes:
  • New! Classification functions can now be used to compute a percentage of elements per class
  • Fix for GeoPackage spatial index creation, was failing when feature type name was an SQL resurveyed word.
  • GeoJSON can now read from any URL and no longer checks for a json extension.
  • Several fixes to improve transparency fill was previously restricted to byte data, and one line transparent stripes
  • Geometry clipper now accounts for cases where a multi-polygon is produced
  • Shapefile fixed to read polygon z shape files into PackedCoordinateSequence
  • MongoDB DataStore fixed handling of $not operator

Research and Development Updates

Our "unsupported" module area remains a hot-bed of research and development. We invite developers to contribute to the following work-in-progress:
  • The MBTiles DataStore now supports geometry generalization
If you are interested in contributing to these modules, or starting your own research and development activity, please see our developers guide for details.

About GeoTools 23 Series

GeoTools 23:
For more information see the release notes (23.1,23.023-RC)

Thursday, May 21, 2020

GeoTools 22.3 released

The GeoTools team is pleased to announce the release of GeoTools 22.3:
GeoTools 22.3 is a stable release and is recommended for new development and production systems. This release is made in conjunction with GeoServer 2.16.3.

Fixes and Improvements

Improvements:
  • Maven Repository switched to https://repo.osgeo.org/repository/release/
  • Preferred image format setting for WMS cascading
  • Upgraded SQL Server module to the latest open source JDBC driver by Microsoft
  • Heterogeneous CRS mosaics can now produce output in the native CRS, when a single granule is requested.
  • MarkAlongLine vendor option allowing to continuously drape a linear symbol along a line
  • Support for curves in SQL Server driver
  • Extended SLD to support background fill
  • Classifier filter functions can now add a percentage of occupation in resulting classes
  • Allow to place a text symbolizer Graphic at an offset vs its own label
Fixes:
  • Raster to vector rendering transformations now supporting continuous map wrapping
  • Various small fixes in the SAP HANA store and GeoPackage one
  • PostGIS store not requesting point data when using TWKB along with prepared statements
Get all details in the release notes.

About GeoTools 22 Series