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