GeoTools

OSGeo

Friday, August 14, 2026

GeoTools 35.1 Released

The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 35.1:

This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 3.0.1 and GeoWebCache 2.0.1.

This release addresses security vulnerability CVE-2026-76904 (PostGIS SQL injection in the jsonArrayContains function); we encourage everyone to update.

We are grateful to Andrea Aime (GeoSolutions) for carrying out the release.

Release notes

See Release Notes from 35.1

Bug

GEOT-7915 Rendering can fail on ND Geometries (N>2, i.e. MultiLineStringZM) when the store is not honoring FEATURE_2D hint

GEOT-7917 PropertyCoordinateOperationFactory not properly handling the inverse case

GEOT-7921 GeoJSONDataStoreFactory uses wrong class name to determine if available

GEOT-7922 PreventLocalEntityResolver disallows entity resolution on DescribeFeatureType schema url

GEOT-7923 PolygonLabeler returns the wrong datatype and thus gives a null

GEOT-7930 PMTiles reads a zoom level too deep compared to on screen display

GEOT-7931 Geometry type mismatch in GML 3.2

GEOT-7932 Allow caching small images used by ImageMosaic in memory

GEOT-7933 Upgrading to current versions of HttpComponents 5 throws ZipException: Not in GZIP format on compressed response

GEOT-7937 DGGSFeatureCollection.accepts continues processing after delegating geometryless visitors

GEOT-7940 DGGS feature collection may not return features when both bbox and properties selections are on the query

GEOT-7942 Coordinate Frame Rotation datum shift negates the wrong parameter

GEOT-7943 PropertyCoordinateOperationFactory does not use the EPSG predefined operations

GEOT-7944 Resample2D and some vector reprojecting code paths do not use all referencing authorities

Improvement

GEOT-7918 Add GeoParquet/DuckDB S3 Endpoint and Resource Limit Configuration

GEOT-7935 GeoParquet: make primary key detection optional when no id column exists

GEOT-7945 Accurate resolution computation in raster rendering should be tolerant to projection exceptions

GEOT-7946 Reduce allocation and regex cost in geostationary valid area cache

GEOT-7947 Reduce contention over Coverage Processor

GEOT-7948 Mosaic/Crop reduction

GEOT-7950 Update ImageIO-Ext to 2.1.1

Task

GEOT-7919 DuckDB: Update to version 1.5.3

GEOT-7951 ImageN 0.9.3 Update

GEOT-7958 Increase FiltertoSqlHelper test coverage

GEOT-7959 [CVE-2026-76904] PostGIS SQL Injection int the jsonArrayContains Function