GeoTools

OSGeo

Wednesday, June 10, 2026

GeoTools 35.0 released

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

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

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

Release notes

See Release Notes from 35.0

Bug

GEOT-5824 Cannot store a image mosaic index in a geopackage

GEOT-7625 SSL mode property is passed incorrectly in jdbc-postgis

GEOT-7645 Fallback method getDimensionFromFirstGeo() from PostGIS Dialect doesn't return the coordinate dimension

GEOT-7827 String literal enum value not wrapped in single quotes for SQL

GEOT-7835 Cannot read a GeoPackage with incomplete transaction from a readonly filesystem

GEOT-7840 ImageWorker addBands is not including the original source image

GEOT-7843 String literal enum values not wrapped in single quotes for filter chains

GEOT-7853 DateTimeParser uses 'mm' to select Month precison in long list of 'else if'

GEOT-7854 Support feature types without a CRS in the geometry column

GEOT-7863 MBStyle line-dasharray with zoom-interpolated line-width causes Java2D crash

GEOT-7874 ImageWorker is clipping nodata on rescale operation

GEOT-7876 CircularArc.linearize(...) can emit Infinity/NaN for collinear and near-collinear arcs

GEOT-7877 Fix json nested property access

GEOT-7891 Close the opened HTTP connection if the initialization of the WFSFeatureReader fails

GEOT-7894 NPE on GeoJSonDataStore#getFeatureSource() when schema is set, but typeName is null

GEOT-7899 Allow SimpleFeaturePropertyAccessorFactory to access any attribute in a simple feature

GEOT-7908 GeoTIFFWriter should provide a reference image when building the image output stream

GEOT-7912 Overview decimation bug in heterogeneous CRS mosaic with direct reproject path

Improvement

GEOT-7810 Migrate to ImageN

GEOT-7829 Using external datastore with app-schema

GEOT-7830 Support optional fixed "resolution" in DGGS datastores

GEOT-7849 Make WKTP optional for CSV encoding with WKTStrategy

GEOT-7850 Support common parameters in VectorMosaic for DGGS datastore wrapping delegate params

GEOT-7851 Support BLOB columns in GeoPackages

GEOT-7852 Refactor long list of 'if/else if' construct in GeoPkgDialect

GEOT-7855 Mosaic cleanup should remove wrapper config files and geopackage indexes

GEOT-7856 Errors from the chart plugin disappear.

GEOT-7857 Supporting Numeric zone identifier in DGGS.

GEOT-7858 Speed up GeoPackage setup and tests

GEOT-7859 Migrating to Jackson 3 for serializing geometric objects

GEOT-7865 ImageMosaic Supporting PamDataset stored in TIFFMetadata

GEOT-7871 GeoParquet: Rely on Covering bbox metadata for bbox filtering.

GEOT-7875 Support abs, ceil, floor, round Mapbox math expressions in mbstyle module

GEOT-7887 Register ImageN registry classes via RegistryAllowListProvider SPI for allowlist-based startup

GEOT-7895 Avoid not needed casts for JSON in jdbc-postgis plugin

GEOT-7897 Reduce thread contention while laying out labels

GEOT-7904 Clean up gt-arcgisrest dependencies

GEOT-7909 Improve PAM dataset merge handling for partial or inconsistent PAM inputs

New Feature

GEOT-7834 Update GeoPackage reader to support curved geometry types

GEOT-7847 Add AWS credential chain authentication support for GeoParquet S3 access

GEOT-7881 App-Schema: Add inter-schema support for JDBC joinning feature chaining and nested filtering

GEOT-7883 DefaultEntityResolver

Task

GEOT-6101 Upgrade SOLR dependency to latest stable (10.0.0)

GEOT-7825 Update MSSQL driver from 9.4.0.jre8 to 13.2.1.jre11

GEOT-7826 Update MySQL driver from 9.1.0 to 9.4.0

GEOT-7828 Migrate GeoTools to Jakarta EE 10

GEOT-7832 Migrate to ImageN 0.9.1 including renaming registryFile.jai to registryFile.imagen

GEOT-7833 Parse null valued GeoJSON properties to null instead of some default primitive values

GEOT-7836 Update PostgreSQL JDBC Driver from 42.7.7 to 42.7.8

GEOT-7838 Use SPDX license identifier in pom file

GEOT-7848 Move image mosaic over to GeoPackage

GEOT-7860 Update 'com.google.code.gson' dependency version

GEOT-7861 Update 'commons-jxpath' dependency version

GEOT-7868 Update ElasticSearch client to 9.3.0

GEOT-7878 Update PostgreSQL JDBC version to 42.7.10

GEOT-7879 Update Oracle JDBC driver to 23.26.1.0.0

GEOT-7880 Update MySQL JDBC driver to 9.6.0

GEOT-7886 Remove H2/DB based index and binary index from CoverageMultidim/NetCDF stores.

GEOT-7889 Remove gt-jdbc-h2

GEOT-7890 Upgrade to ImageIO-Ext 2.1.0 and ImageN 0.9.2

GEOT-7896 Update Jackson to 2.21.0

GEOT-7898 QA: Library wide use of GeoTools.getEntityResolver(hints)

GEOT-7901 NetCDF indexer handling of temporary direcrtory

GEOT-7911 Update sqlite-jdbc from 3.51.1.0 to 3.53.1.0