GeoTools

OSGeo

Tuesday, October 20, 2026

GeoTools 33.7 Released

The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 33.7:

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

This release includes security fixes. Details will be shared once the associated advisories are published; we encourage everyone to update.

We are grateful to Peter Smythe (AfriGIS) for carrying out the release.

Release notes

See Release Notes from 33.7

Bug

GEOT-7975 Validate schema imports and includes consistently under strict parsing

Improvement

GEOT-7938 Improve redirect-following checks in PreventLocalEntityResolver

GEOT-7971 Styling: do not build a fill, stroke or graphic that the symbolizer constructor replaces

Task

GEOT-7956 SchemaCache checks and logging

GeoTools 34.6 Released

The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 34.6:

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

This release includes security fixes. Details will be shared once the associated advisories are published; we encourage everyone to update.

We are grateful to Peter Smythe (AfriGIS) for carrying out the release.

Release notes

See Release Notes from 34.6

Bug

GEOT-7920 JDBCDataStore visitor optimization logs a stack trace and falls back on direct record visit when the filter matches no records

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

GEOT-7960 MySQL 8 geographic SRS geometries are read/written with swapped axis order

GEOT-7963 Measured geometry types lead to faulty GML output

GEOT-7966 ZonalStatistics return unexpected values when no pixel has been matched

GEOT-7970 CQL can throw unwrapped exceptions that can cause issues for downstream users

GEOT-7974 Vector graphic fills are not aligned across adjacent tiles

GEOT-7975 Validate schema imports and includes consistently under strict parsing

Improvement

GEOT-7938 Improve redirect-following checks in PreventLocalEntityResolver

GEOT-7969 Support GDAL 3.12+ new Raster Attribute Table data types

GEOT-7971 Styling: do not build a fill, stroke or graphic that the symbolizer constructor replaces

Task

GEOT-7919 DuckDB: Update to version 1.5.3

GEOT-7956 SchemaCache checks and logging

GEOT-7964 Bump imageio-ext

GeoTools 35.2 Released

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

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

This release includes security fixes. Details will be shared once the associated advisories are published; we encourage everyone to update.

We are grateful to Jody Garnett (GeoCat) for carrying out the release.

Release notes

See Release Notes from 35.2

Bug

GEOT-7920 JDBCDataStore visitor optimization logs a stack trace and falls back on direct record visit when the filter matches no records

GEOT-7924 Cascaded WMS regression on unencoded UTF-8 characters in the capabilities URLs

GEOT-7954 interoperability issue with gt-geojson-core 35.0 and Jackson module auto-discovery

GEOT-7960 MySQL 8 geographic SRS geometries are read/written with swapped axis order

GEOT-7963 Measured geometry types lead to faulty GML output

GEOT-7965 Javadoc error in gt-coverage

GEOT-7966 ZonalStatistics return unexpected values when no pixel has been matched

GEOT-7970 CQL can throw unwrapped exceptions that can cause issues for downstream users

GEOT-7974 Vector graphic fills are not aligned across adjacent tiles

GEOT-7975 Validate schema imports and includes consistently under strict parsing

Improvement

GEOT-7938 Improve redirect-following checks in PreventLocalEntityResolver

GEOT-7955 Merge adjacent/touching H3Cell ranges before spitting out BETWEEN filters

GEOT-7969 Support GDAL 3.12+ new Raster Attribute Table data types

GEOT-7971 Styling: do not build a fill, stroke or graphic that the symbolizer constructor replaces

GEOT-7976 Update to imageio-ext 2.1.4

Task

GEOT-7919 DuckDB: Update to version 1.5.3

GEOT-7951 ImageN 0.9.3 Update

GEOT-7956 SchemaCache checks and logging

GEOT-7964 Bump imageio-ext