Wednesday, February 18, 2026
GeoTools 33.5 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 33.5:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.27.5 and GeoWebCache 1.27.5.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 33.5
Improvement
GEOT-7865 ImageMosaic Supporting PamDataset stored in TIFFMetadata
Thursday, December 18, 2025
GeoTools 33.4 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 33.4:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.27.4 and GeoWebCache 1.27.4.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 33.4
Release notes - GeoTools - 33.4
Bug
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-7798 Make WebCRSFactory extensible
GEOT-7827 String literal enum value not wrapped in single quotes for SQL
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
Improvement
GEOT-7829 Using external datastore with app-schema
GEOT-7849 Make WKTP optional for CSV encoding with WKTStrategy
GEOT-7858 Speed up GeoPackage setup and tests
Task
GEOT-7844 Support creation of math transformations across different CRS authorities
Wednesday, October 22, 2025
GeoTools 33.3 Released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 33.3:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.27.3 and GeoWebCache 1.27.3.
Thanks to Jody Garnett (GeoCat) for this release.
Release notes
See Release Notes from 33.3
Bug
GEOT-7516 gt-tpk-30.0 do not support "GB2312" charset of tpk file
GEOT-7750 WMTSCapabilities: Legend URLs in Styles not processed
GEOT-7787 Boolean attributes don't get stored as a true boolean in geopackages
GEOT-7789 Hatch fill appears dented/disconnected when the symbol size is not integer
GEOT-7801 Can't read files of type "Polygon Measure" as opposed to "3D polygon Measure"
GEOT-7811 FlatGeoBuf datastore builds incorrect geometry type when the file has heterogeneous geometries
Improvement
GEOT-5497 Handle fill displacement in map rendering
GEOT-7800 Add PlateCarree support ProjectionHandler for better wrapping on dateline
GEOT-7804 Support System Property SKIP_EXTERNAL_FILES_LOOKUP on ImageMosaic too
GEOT-7815 Code changes for GSIP 234 - Advertise and Enforce Attribute Restrictions
GEOT-7820 Autogenerated PK columns should be nullable on insert
New Feature
GEOT-7784 Add support for min/max scale denominator in FeatureTypeStyle
GEOT-7794 Add functions to extract mid point and mid angle
Task
GEOT-7797 add support to Skip duplicates in ImageMosaic loading
Wednesday, October 15, 2025
GeoTools 34.0 Release
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 34.0:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.28.0 and GeoWebCache 1.28.0.
This is a major update:
- The library now requires Java 17, ending support for Java 11
- Upgrade from Java Advanced Imaging Library 1.1.3 to Eclipse ImageN 0.9.0.
- Library now provides a maven bill-of-materials import for both library modules and third-party-dependences making it considerably easier for downstream projects to synchronize dependences when upgrading GeoTools
- For more information please see upgrade instructions in the user manual
Thanks to Jody Garnett (GeoCat) for making this release, Gabriel Roldan (Camptocamp) for all the build improvements, and Andrea Aime (GeoServer) for working so hard on the Eclipse ImageN migration.
These major library updates were undertaken as part of the GeoServer 3 activities, and we would like to the crowdfunding sponsors their financial support.
Release notes
Improvement
GEOT-7763 Migrate use JAITools to JAI-Ext
GEOT-7821 Add PMTiles DataStore module for reading Protomaps vector tiles
GEOT-7823 Migrate to ImageN 0.9.0 and ImageIO Ext 2.0.0
GEOT-7747 Add Hive partitioning support to GeoParquet DataStore
GEOT-7748 Improve CRS handling in GeoParquet with PROJJSON v0.7 schema support
GEOT-7764 Migrate GeoTools to Java 17
GEOT-7765 Improve PropertyIsLike filter to work for numeric columns in postgres
GEOT-7781 Add a priority to property accessors
GEOT-7783 Reduce build times by parallelizing metadata integration tests
GEOT-7800 Add PlateCarree support ProjectionHandler for better wrapping on dateline
GEOT-7803 s3-geotiff: broken for custom server (such as minio) - region must be configured
GEOT-7804 Support System Property SKIP_EXTERNAL_FILES_LOOKUP on ImageMosaic too
GEOT-7814 Upgrade codebase to Java 17 language features
GEOT-7815 Code changes for GSIP 234 - Advertise and Enforce Attribute Restrictions
New Feature
GEOT-7767 Java UUID type support to geopkg dialect
GEOT-7777 Add a downstream QA build
GEOT-7784 Add support for min/max scale denominator in FeatureTypeStyle
GEOT-7792 Add Thin Plate Spline 2D Transformation Support
Bug
GEOT-7069 Java 17 - IllegalAccessError with JAI RasterAccessor
GEOT-7816 Quality Degradation in Scanned Map Rendering (GeoServer 2.25.3 onward)
GEOT-7516 gt-tpk-30.0 do not support "GB2312" charset of tpk file
GEOT-7726 NPE in Transformer.getTransformedSortBy for SortBy.NATURAL_ORDER
GEOT-7750 WMTSCapabilities: Legend URLs in Styles not processed
GEOT-7761 SerializableRenderedImage usage removal
GEOT-7762 Remove usage of JAI ScrollingImagePanel
GEOT-7773 GeoJSONParser of gt-arcgisrest sets Id of each feature to "features"
GEOT-7774 PreventLocalEntityResolver prevents access to jar:nested resources
GEOT-7776 Image mosaic property collectors fail with a array access exception when the regex does not match
GEOT-7780 Contrast enhancement with clip to min/max loses input nodata
GEOT-7785 Bounds computation fails when a null geometry is present on SingleStore datastore
GEOT-7787 Boolean attributes don't get stored as a true boolean in geopackages
GEOT-7801 Can't read files of type "Polygon Measure" as opposed to "3D polygon Measure"
Task
GEOT-7438 Create source=17 build for github actions
GEOT-7439 Update code formatter for JDK 17 compatibility
GEOT-7819 GeoTools ImageN update for JAI to ImageN Rename of classes and constants
GEOT-7766 Migrate ZonalStats to JAI-Ext API
GEOT-6772 License in pom.xml files does not specify the LGPL version and URL redirects to the wrong one
GEOT-7757 Disallow usage of var in GeoTools source code
GEOT-7758 Upgrade ErrorProne to 2.31.0
GEOT-7768 Remove unecessary javac lint suppressions
GEOT-7769 Update to PMD 7.14 and enable unecessary suppression rule
GEOT-7775 Singlestore(MemSql) datastore
GEOT-7796 Support native Bands selection on GDAL plugin
GEOT-7797 add support to Skip duplicates in ImageMosaic loading
GEOT-7813 Upgrade Oracle JDBC driver to Java 17, release 23.9.0.25.07
GEOT-7817 Update to ImageN 0.4.0 and ImageIO-Ext 2.0.0-M0
GEOT-7818 coverage-multidim slowed down build with additional / invalid unidata repository
Tuesday, September 2, 2025
GeoTools 32.4 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.4:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.26.4 and GeoWebCache 1.26.4.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 32.4
Bug
GEOT-7774 PreventLocalEntityResolver prevents access to jar:nested resources
GEOT-7776 Image mosaic property collectors fail with a array access exception when the regex does not match
GEOT-7779 ImageMosaic read in a data hole returns data filled with zeros, should be using nodata instead
GEOT-7780 Contrast enhancement with clip to min/max loses input nodata
GEOT-7789 Hatch fill appears dented/disconnected when the symbol size is not integer
GEOT-7801 Can't read files of type "Polygon Measure" as opposed to "3D polygon Measure"
Improvement
GEOT-5497 Handle fill displacement in map rendering
GEOT-7781 Add a priority to property accessors
GEOT-7782 Allow usage of grouping aggregation as a rendering transformation
GEOT-7783 Reduce build times by parallelizing metadata integration tests
GEOT-7804 Support System Property SKIP_EXTERNAL_FILES_LOOKUP on ImageMosaic too
New Feature
GEOT-7767 Java UUID type support to geopkg dialect
GEOT-7784 Add support for min/max scale denominator in FeatureTypeStyle
GEOT-7794 Add functions to extract mid point and mid angle
Task
GEOT-7797 add support to Skip duplicates in ImageMosaic loading
Thursday, July 17, 2025
GeoTools 33.2 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 33.2:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.27.2 and GeoWebCache 1.27.2.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 33.2
Bug
GEOT-7773 GeoJSONParser of gt-arcgisrest sets Id of each feature to "features"
GEOT-7774 PreventLocalEntityResolver prevents access to jar:nested resources
GEOT-7776 Image mosaic property collectors fail with a array access exception when the regex does not match
GEOT-7779 ImageMosaic read in a data hole returns data filled with zeros, should be using nodata instead
GEOT-7780 Contrast enhancement with clip to min/max loses input nodata
GEOT-7785 Bounds computation fails when a null geometry is present on SingleStore datastore
Improvement
GEOT-7765 Improve PropertyIsLike filter to work for numeric columns in postgres
GEOT-7781 Add a priority to property accessors
GEOT-7782 Allow usage of grouping aggregation as a rendering transformation
GEOT-7783 Reduce build times by parallelizing metadata integration tests
New Feature
GEOT-7767 Java UUID type support to geopkg dialect
Task
GEOT-7757 Disallow usage of var in GeoTools source code
GEOT-7775 Singlestore(MemSql) datastore
Monday, May 12, 2025
GeoTools 33.1 Released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.3:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoWebCache 1.27.1 and GeoServer 2.27.1.
Thanks to Jody Garnett (GeoCat) and Andrea Aime (GeoSolutions) for carrying out the release.
Release notes
Security Considerations
CVE-2025-30220 XML External Entity (XXE) Processing Vulnerability in XSD schema handling
GEOT-7760 CVE-2025-30220: XXE Processing Vulnerability in XSD schema handling (9.9 Critical)
Bug
GEOT-7715 GeoPackage data column constraint enums with string keys are not supported
GEOT-7720 Coordinates are truncated when encoding geometry
GEOT-7726 NPE in Transformer.getTransformedSortBy for SortBy.NATURAL_ORDER
GEOT-7743 HanaGeographyOnlineTest is failing after database upgrade
GEOT-7745 PagingFeatureCollection doesn't work as expected when used at a STAC collection
Improvement
GEOT-7742 Allow spreading the folders in NETCDF_DATA_DIR into a hierarchy
GEOT-7747 Add Hive partitioning support to GeoParquet DataStore
GEOT-7748 Improve CRS handling in GeoParquet with PROJJSON v0.7 schema support
Task
GEOT-7756 Update outdated http, irc, project and company references
GeoTools 32.3 Released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.3:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoWebCache 1.26.3, and GeoServer 2.26.3.
Thanks to Jody Garnett (GeoCat) and Andrea Aime (GeoSolutions) for carrying out the release.
Release notes
Security Considerations
CVE-2025-30220 XML External Entity (XXE) Processing Vulnerability in XSD schema handling
GEOT-7760 CVE-2025-30220: XXE Processing Vulnerability in XSD schema handling (9.9 Critical)
Bug
GEOT-7320 ServiceException from a WFS server GET_FEATURE ends in a FactoryNotFoundException
GEOT-7632 WMS capabilities parsing should not fail if 'units' for a dimension is empty
GEOT-7699 In GeoPackage 1.2 the version should be reported also in the user_version pragma
GEOT-7700 GeoPackage geometry type name is case sensitive
GEOT-7707 A GeoPackage tile pyramid table must have a unique constraint on zoom/row/col
GEOT-7713 FeatureTypeRegistry of gt-complex is not thread-safe
GEOT-7715 GeoPackage data column constraint enums with string keys are not supported
GEOT-7719 The Jiffle process ignores input images nodata
GEOT-7720 Coordinates are truncated when encoding geometry
GEOT-7721 Oracle datastore does not handle NCLOB
GEOT-7724 Improve validation when deserializing objects
GEOT-7726 NPE in Transformer.getTransformedSortBy for SortBy.NATURAL_ORDER
GEOT-7743 HanaGeographyOnlineTest is failing after database upgrade
GEOT-7745 PagingFeatureCollection doesn't work as expected when used at a STAC collection
Improvement
GEOT-7718 WMS Parser can no longer hande IGN due to ordering issue in LogoURL
GEOT-7735 Upgrade ImageIO-EXT to 1.4.15
GEOT-7742 Allow spreading the folders in NETCDF_DATA_DIR into a hierarchy
Task
GEOT-7717 Updating automated testing to GDAL 3.10.1
GEOT-7723 Upgrade Oracle JDBC driver (ojdbc) from 8 to 11
GEOT-7725 Upgrade DB2 JDBC driver from 11.5.9.0 to 12.1.0.0
GEOT-7729 Update jai-ext to latest version (1.1.30)
GEOT-7734 Update to jai-ext 1.1.31
GEOT-7756 Update outdated http, irc, project and company references
GeoTools 31.7 Released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 31.7:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.25.7.
This series has reached end-of-life, release published to address a security advisory. Thanks to Jody Garnett (GeoCat) and Andrea Aime (GeoSolutions) for carrying out the release.
Release notes
Security Considerations
Release is made to address a security advisory CVE-2025-30220 below:
CVE-2025-30220 XML External Entity (XXE) Processing Vulnerability in XSD schema handling
GEOT-7760 CVE-2025-30220: XXE Processing Vulnerability in XSD schema handling (9.9 Critical)
Bug
GEOT-7715 GeoPackage data column constraint enums with string keys are not supported
Task
GEOT-7734 Update to jai-ext 1.1.31
GEOT-7756 Update outdated http, irc, project and company references
Thursday, April 3, 2025
GeoTools 33.0 release
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 33.0:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.27.0 and GeoWebCache 1.27.0.
We thank Gabriel Roldan (Camptocamp) and Jody Garnett (GeoCat) for carrying out the release.
Release notes
Bug
GEOT-5158 FeatureJson readFeatureCollection not working properly, if the geojson contains array of object in it.
GEOT-7320 ServiceException from a WFS server GET_FEATURE ends in a FactoryNotFoundException
GEOT-7545 Wrong log level comparison in LogbackLogger#isLoggable
GEOT-7658 [MongoDB Plugin] The filter spliter may drop part of the filter
GEOT-7669 ConcurrentModificationException in WMSCapabilities.getLayerList()
GEOT-7670 Deadlock between DataAccessFinder and DataStoreFinder
GEOT-7672 ElasticsearchDateConverter is not properly setting day of month when parsing Instants like 2024-10-04
GEOT-7673 TransformFeatureCollection doesn't account for query properties
GEOT-7674 Shapefile performance/memory usage regression: the DBF file is fully read in memory when reading features
GEOT-7680 User UUID is not set
GEOT-7681 Geometry field not updating
GEOT-7687 jsonPointer function converts numeric keys to numbers when used as key accessors
GEOT-7693 CenterLine process can leave gaps in the skeletonisation
GEOT-7697 GeoTIFF revision declared to be 1.2, while it's actually 1.0
GEOT-7699 In GeoPackage 1.2 the version should be reported also in the user_version pragma
GEOT-7700 GeoPackage geometry type name is case sensitive
GEOT-7702 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7706 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7707 A GeoPackage tile pyramid table must have a unique constraint on zoom/row/col
GEOT-7709 WMTS GetCapabilities will not recognize ServiceException
GEOT-7713 FeatureTypeRegistry of gt-complex is not thread-safe
GEOT-7721 Oracle datastore does not handle NCLOB
GEOT-7724 Improve validation when deserializing objects
Improvement
GEOT-7234 Implement `#getOptimizedBounds(...)` in SQLServerDialect
GEOT-7641 Support the "sweep" parameter in the GeostationarySatellite projection
GEOT-7684 Align cql2-text and cql2-json to the official specification
GEOT-7716 Update the EPSG database into current (EPSG v11.031 by now)
GEOT-7718 WMS Parser can no longer hande IGN due to ordering issue in LogoURL
GEOT-7730 Support reprojection pivoting over ETRS89 and NAD83 too
GEOT-7731 Add a flag to prefer large area coordinate operations over high accuracy ones
GEOT-7734 Update to jai-ext 1.1.31
GEOT-7735 Upgrade ImageIO-EXT to 1.4.15
New Feature
GEOT-7668 Support PROJ Citation and PROJ Formatter to produce proj Strings from EPSG CRSs
GEOT-7737 New unsupported module: GeoParquet DataStore
Task
GEOT-7661 Fix spelling of geoemtry (geometry) in several places
GEOT-7677 Upgrade log4j to 2.24.1 and slf4j to 2.0.16
GEOT-7688 Graduate cql2-text and cql2-json to supported status
GEOT-7694 Update MySQL driver to 9.1.0
GEOT-7695 Remove the unsupported geobuf module
GEOT-7696 Apply Palantir Java format on GeoTools
GEOT-7701 Apply Palantir format on arcgis-rest module
GEOT-7704 Replace commons-httpclient with httpcomponents:httpclient
GEOT-7710 Update Logback from 1.3.12 to 1.5.14
GEOT-7717 Updating automated testing to GDAL 3.10.1
GEOT-7723 Upgrade Oracle JDBC driver (ojdbc) from 8 to 11
GEOT-7725 Upgrade DB2 JDBC driver from 11.5.9.0 to 12.1.0.0
GEOT-7729 Update jai-ext to latest version (1.1.30)
Wednesday, February 19, 2025
GeoTools 31.6 released
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.25.6 and GeoWebCache 1.25.4.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 31.6
Bug
GEOT-7545 Wrong log level comparison in LogbackLogger#isLoggable
GEOT-7698 GeoTIFF and image mosaic do not handle COGs with masks properly
GEOT-7702 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7706 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7708 Intersection test against curves can fail to return correct results, with PostGIS, due to accuracy issues
GEOT-7711 Incompatible sl4j and logback libraries result in class not found LoggingEventAware
Improvement
GEOT-7718 WMS Parser can no longer hande IGN due to ordering issue in LogoURL
Task
GEOT-7677 Upgrade log4j to 2.24.1 and slf4j to 2.0.16
GEOT-7696 Apply Palantir Java format on GeoTools
GEOT-7710 Update Logback from 1.3.12 to 1.5.14
Wednesday, February 5, 2025
GeoTools 28.6 Released
The GeoTools shares the release of GeoTools 28.6 available for Java 8 applications:
- geotools-2.28.6-bin.zip
- geotools-2.28.6-doc.zip
- geotools-2.28.6-userguide.zip
- geotools-2.28.6-project.zip
This release is also available from the OSGeo Maven Repository and is made to support the upcoming GeoNetwork 4.2.12 release.
This release provides Java 8 artifacts for CVE-2024-36404. The vulnerability report has been updated to allow Java 8 applications avoid being flagged by security scans.
We are grateful to Jody Garnett (GeoCat) for making this release on behalf of the GeoNetwork project.
Release notes
Security Considerations
Bug
GEOT-7444 HanaGeographyOnlineTest.testBounds is failing in CI
GEOT-7458 JDBCDataStore: Unique visitor not always compatible with sortBy
GEOT-7490 WPS Intersection NPE when the Return Value Should be a Point
GEOT-7496 gt-xsd-fes fails to encode PropertyIsBetween
GEOT-7497 gt-wfs-ng ignores maxFeatures on WFS 2.0
Improvement
GEOT-7491 ShapeFileDataStore should use GeometryFactory of DataStore
Task
GEOT-7290 Visual difference for ReprojectGoogleMercatorLargerThanWorld test on aarch64
GEOT-7451 Upgrade org.json:json to 20230618
GEOT-7594 Bump org.postgresql:postgresql from 42.6.0 to 42.7.2
GEOT-7714 Bump ch.qos.logback:logback-classic from 1.2.11 to 1.3.12
Monday, January 27, 2025
GeoTools 32.2 Released
GeoTools 32.2 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.2:
This release is also available from the OSGeo Maven Repositoryand is made in conjunction with GeoServer 2.26.2 and GeoWebCache 1.26.2.
We are grateful to Jody Garnett (GeoCat) for making this release, and everyone who contributed.
Release notes - GeoTools - 32.2
Bug
GEOT-7545 Wrong log level comparison in LogbackLogger#isLoggable
GEOT-7673 TransformFeatureCollection doesn't account for query properties
GEOT-7680 User UUID is not set
GEOT-7687 jsonPointer function converts numeric keys to numbers when used as key accessors
GEOT-7689 Logic filter equality checks incorrectly implemented
GEOT-7690 RasterAsPointCollection used as a rendering transformation does not play well with tiling
GEOT-7691 Contour rendering transformation with tiling and high oversampling might result in in broken contours
GEOT-7692 Allow raster to vector rendering transformations to oversample reads on demand
GEOT-7693 CenterLine process can leave gaps in the skeletonisation
GEOT-7698 GeoTIFF and image mosaic do not handle COGs with masks properly
GEOT-7702 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7706 Style doesn't match filter if there are more than one "or-combined" date filter on the same PropertyName (SLD)
GEOT-7708 Intersection test against curves can fail to return correct results, with PostGIS, due to accuracy issues
GEOT-7711 Incompatible sl4j and logback libraries result in class not found LoggingEventAware
Improvement
GEOT-7234 Implement `#getOptimizedBounds(...)` in SQLServerDialect
GEOT-7703 Allow usage of fullPath in most common mosaic property collectors
Task
GEOT-7677 Upgrade log4j to 2.24.1 and slf4j to 2.0.16
GEOT-7686 Update to Imageio-EXT 1.4.14
GEOT-7694 Update MySQL driver to 9.1.0
GEOT-7696 Apply Palantir Java format on GeoTools
GEOT-7701 Apply Palantir format on arcgis-rest module
GEOT-7704 Replace commons-httpclient with httpcomponents:httpclient
GEOT-7710 Update Logback from 1.3.12 to 1.5.14
Thursday, December 19, 2024
GeoTools 31.5 released
GeoTools 31.5 released
The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 31.5:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.25.5.
Thanks to Andrea Aime (GeoSolutions) for making this release.
Release notes
Bug
GEOT-7673 TransformFeatureCollection doesn't account for query properties
GEOT-7680 User UUID is not set
GEOT-7689 Logic filter equality checks incorrectly implemented
GEOT-7690 RasterAsPointCollection used as a rendering transformation does not play well with tiling
GEOT-7691 Contour rendering transformation with tiling and high oversampling might result in in broken contours
GEOT-7692 Allow raster to vector rendering transformations to oversample reads on demand
Improvement
GEOT-7234 Implement `#getOptimizedBounds(...)` in SQLServerDialect
Task
GEOT-7685 Inclusion of CQL2 in release dependences occluded Jackson jars from release
GEOT-7694 Update MySQL driver to 9.1.0
Tuesday, November 19, 2024
GeoTools 32.1 released
GeoTools 32.1 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.1:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.26.1 and GeoWebCache 1.26.1.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Release notes
See Release Notes from 32.1
Bug
GEOT-7658 [MongoDB Plugin] The filter splitter may drop part of the filter
GEOT-7663 Rendering one way arrows based on external graphics results in mis-centered arrows
GEOT-7665 PointStackerProcess : first point is not taken into account to calculate Envelope min/max x/y
GEOT-7666 Parsing empty Rotation style element throws a ClassCastException
GEOT-7667 JDBCDataStore getAggregateValue is not JSONPointer aware when splitting the filters
GEOT-7669 ConcurrentModificationException in WMSCapabilities.getLayerList()
GEOT-7672 ElasticsearchDateConverter is not properly setting day of month when parsing Instants like 2024-10-04
GEOT-7674 Shapefile performance/memory usage regression: the DBF file is fully read in memory when reading features
Improvement
GEOT-7637 GetFeatures call of WFSContentComplexFeatureSource should set srs according to query
GEOT-7652 Avoid typename listing when NetCDF indexer file points to a single coverage
GEOT-7653 Cache CoordinateReferenceSystem hashcode, expensive to compute
GEOT-7654 Speed up reprojected rendering of large amounts of points
GEOT-7655 Exception trying to render curved labels with trailing newlines
GEOT-7656 Styles with large number of dynamic external graphics are bogged down by CQL parsing
GEOT-7657 TextSymbolizer rendering generates lots of TextStyle2D objects
GEOT-7659 Optimize font alternatives calculation
GEOT-7660 Rendering: build derived fonts in one shot
GEOT-7662 MBStyles translation of one way styles can be out of center, and upside down
GEOT-7671 Vector mosaic "count" implementation does not account for max features
Task
GEOT-7661 Fix spelling of geoemtry (geometry) in several places
GEOT-7685 Inclusion of CQL2 in release dependences occluded Jackson jars from release
Wednesday, October 30, 2024
GeoTools 31.4 Released
GeoTools 31.4 released
The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 31.4:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.25.0.
Thanks to Jody Garnett for making this release.
Release notes
Bug
GEOT-7528 GeoPackage: Timestamp is not written correctly
GEOT-7539 The latest tutorials link is broken in https://docs.geotools.org/
GEOT-7541 When cascading WMTS capabilities specifies a TileMatrixSet that doesn't exist GeoTools throws a ConcurrentModificationException
GEOT-7569 throw error while adding feature to FlatGeobuf featureStore
GEOT-7579 FlatGeobuf handle java.util.Date and iso correctness
GEOT-7627 Improper raster output and/or rendering transfromations output when reading at high oversampling factors with bilinear/bicubic interpolation
GEOT-7628 Regression in JDBC optimization of unique visitor with sorting
GEOT-7636 Line densification on reprojection can lead to OOM
GEOT-7658 [MongoDB Plugin] The filter spliter may drop part of the filter
GEOT-7663 Rendering one way arrows based on external graphics results in mis-centered arrows
GEOT-7665 PointStackerProcess : first point is not taken into account to calculate Enveloppe min/max x/y
GEOT-7666 Parsing empty Rotation style element throws a ClassCastException
GEOT-7667 JDBCDataStore getAggregateValue is not JSONPointer aware when splitting the filters
GEOT-7669 ConcurrentModificationException in WMSCapabilities.getLayerList()
GEOT-7672 ElasticsearchDateConverter is not properly setting day of month when parsing Instants like 2024-10-04
GEOT-7674 Shapefile performance/memory usage regression: the DBF file is fully read in memory when reading features
Improvement
GEOT-7550 Try harder to reproject envelopes with projections having a complex valid area
GEOT-7617 Add a max and a min merge mode for image mosaics
GEOT-7629 Add validation when deserializing objects
GEOT-7634 Update DWITHIN delegation in Mongo to support linestring
GEOT-7652 Avoid typename listing when NetCDF indexer file points to a single coverage
GEOT-7653 Cache CoordinateReferenceSystem hashcode, expensive to compute
GEOT-7654 Speed up reprojected rendering of large amounts of points
GEOT-7655 Exception trying to render curved labels with trailing newlines
GEOT-7656 Styles with large number of dynamic external graphics are bogged down by CQL parsing
GEOT-7657 TextSymbolizer rendering generates lots of TextStyle2D objects
GEOT-7659 Optimize font alternatives calculation
GEOT-7660 Rendering: build derived fonts in one shot
GEOT-7662 MBStyles translation of one way styles can be out of center, and upside down
GEOT-7671 Vector mosaic "count" implementation does not account for max features
Task
GEOT-7661 Fix spelling of geoemtry (geometry) in several places
Thursday, September 26, 2024
GeoTools 32.0 released
GeoTools 32.0 released
The GeoTools team is pleased to announce the release of the latest stable version of GeoTools 32.0:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.26.0 and GeoWebCache 1.26.0.
We are grateful to Peter Smythe (AfriGIS) for carrying out the release.
Security Considerations
- CVE-2024-46991 (High 7.8)
Release notes
Bug
GEOT-7127 Error in read empty DBF
GEOT-7528 GeoPackage: Timestamp is not written correctly
GEOT-7537 GeoPackage TIMESTAMP must be DATETIME according to the GeoPackage spec
GEOT-7539 The latest tutorials link is broken in https://docs.geotools.org/
GEOT-7540 startIndex parameter is not passed in WFS store request
GEOT-7569 throw error while adding feature to FlatGeobuf featureStore
GEOT-7579 FlatGeobuf handle java.util.Date and iso correctness
GEOT-7589 Fix the JsonArrayDelegation for Postgres to support searching in root level array
GEOT-7590 Patterns containing "&" are broken when using LikeFilter
GEOT-7596 Reduce change of white line artifacts when performing high subsampling on read
GEOT-7611 WMS Client throws an ArrayIndexOutOfBoundsException when parsing attribution logoUrl element in invalid capabilities XML
GEOT-7626 ReferencedEnvelope CRS compatibility check is not recognizing equivalent ProjectedCRS. (identity transformation between source and target CRS)
GEOT-7642 some modules rely on transitive version of units-api
Improvement
GEOT-7422 Update java units "indriya" to version 2.2
GEOT-7546 Add AUTO code (97004) for Geostationary satellite projection
GEOT-7548 Renovate arcgisrest with dependency updates and code formatting
GEOT-7550 Try harder to reproject envelopes with projections having a complex valid area
GEOT-7557 Provide the ability for downstream applications (e.g. GeoServer) to append additional querystring parameters e.g. AuthKey to every request made by the HTTPClient
GEOT-7558 GeoPackage extension output contains field types that are not supported by GDAL
GEOT-7561 Proposal: Individual contributor clarification
GEOT-7565 Upgrade ImageIO-Ext to 1.4.10
GEOT-7571 Support updates for PostgreSQL json/jsonb columns
GEOT-7576 Make SchemaCache use the HttpClient from the GeoTools hints
GEOT-7586 GeoPackage output contains invalid field types when publishing content from other JDBCDataStore
GEOT-7614 support for postgres reWriteBatchedInserts
GEOT-7617 Add a max and a min merge mode for image mosaics
GEOT-7633 Move ZoomContext/ZoomContextFinder class set from YSLD to main
GEOT-7640 Improve the polygon label function for rectangular geometries, and automatically compute a sane tolerance
GEOT-7643 Add support for vector tile specific vendor options in SLD/CSS
GEOT-7647 Allow programmatic registration and de-registration of data stores factories
New Feature
GEOT-7544 MemoryMappedRandomAccessFile for NetCDF Reading
GEOT-7585 Adding css-uniqueRoleName
GEOT-7606 Support fast extent estimation in HANA provider
GEOT-7618 Create an unsupported graticules module
Task
GEOT-7547 Upgrade to NetCDF 5.5.3
GEOT-7566 Upgrade commons-io from 2.12.0 to 2.16.1
GEOT-7567 Upgrade guava from 32.0.0 to 33.2.0
GEOT-7573 Upgrade PostgreSQL driver from 42.7.2 to 42.7.3
GEOT-7574 Upgrade commons-text from 1.10.0 to 1.12.0
GEOT-7577 Upgrade jackson from 2.15.2 to 2.17.1
GEOT-7578 Upgrade snakeyaml from 2.0 to 2.2
GEOT-7588 Maven javadoc build fix for Java 11.0.22 and newer aggregate build
GEOT-7599 Update MySQL CI matrix (drop 5.7, add 8.4)
GEOT-7610 Bump EasyMock to 5.3.0
GEOT-7615 Update Jackson 2 libs from 2.17.1 to 2.17.2
GEOT-7622 Upgrade guava from 33.2.0 to 33.2.1
GEOT-7623 Upgrade commons-lang3 from 3.14.0 to 3.15.0
GEOT-7624 Upgrade junit from 4.13.1 to 4.13.2
GEOT-7639 Upgrade to JTS 1.20.0
GEOT-7648 Update to ImageIO-Ext 1.14.13
GEOT-7650 Update to JAI-EXT 1.1.27
Monday, August 26, 2024
GeoTools 30.5 released
The GeoTools team is pleased to the release of the latest stable version of GeoTools 30.5:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.24.5. The release was made by Andrea Aime (Geosolutions).
Release notes
Bug
- GEOT-7127 Error in read empty DBF
- GEOT-7528 GeoPackage: Timestamp is not written correctly
- GEOT-7539 The latest tutorials link is broken in https://docs.geotools.org/
- GEOT-7589 Fix the JsonArrayDelegation for Postgres to support searching in root level array
- GEOT-7590 Patterns containing "&" are broken when using LikeFilter
- GEOT-7607 Error using function Interpolate in COLOR mode from SLD
- GEOT-7627 Improper raster output and/or rendering transfromations output when reading at high oversampling factors with bilinear/bicubic interpolation
- GEOT-7628 Regression in JDBC optimization of unique visitor with sorting
Improvement
- GEOT-7550 Try harder to reproject envelopes with projections having a complex valid area
Task
- GEOT-7615 Update Jackson 2 libs from 2.17.1 to 2.17.2
Friday, July 19, 2024
GeoTools 31.3 released
GeoTools 31.3 released
The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 31.3:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.25.3
We are grateful to Ian Turton for carrying out the release on behalf of the team.
Summary of changes
See the full release notes from 31.3.
Release notes
Bug
GEOT-7127 Error in read empty DBF
GEOT-7589 Fix the JsonArrayDelegation for Postgres to support searching in root level array
GEOT-7590 Patterns containing "&" are broken when using LikeFilter
GEOT-7596 Reduce change of white line artifacts when performing high subsampling on read
Task
GEOT-7599 Update MySQL CI matrix (drop 5.7, add 8.4)
GEOT-7615 Update Jackson 2 libs from 2.17.1 to 2.17.2
Tuesday, June 18, 2024
GeoTools 31.2 Released
GeoTools 31.2 released
The GeoTools team is pleased to announce the release of the latest maintenance version of GeoTools 31.2:
This release is also available from the OSGeo Maven Repository and is made in conjunction with GeoServer 2.24.4 and GeoWebCache 1.24.4.
This is an unscheduled release provided to help teams address CVE-2024-36404. Details of this issue will be made available at the end of the month. This is in keeping with our coordinated vulnerability disclosure policy allowing projects sufficient time to upgrade.
We are grateful to Jody Garnett (GeoCat) for carrying out the release on behalf of the GeoCat Live product team.
Security considerations
This update is considered essential to address the following:
- CVE-2024-36404 Remote Code Execution (RCE) vulnerability in evaluating XPath expressions (Critical 9.8)
Summary of changes
See Release Notes from 31.2.
Release notes
Bug
GEOT-7537 GeoPackage TIMESTAMP must be DATETIME according to the GeoPackage spec
GEOT-7580 Fix missing builder clear writing FlatGeobuf data
GEOT-7587 Improve handling of XPath expressions
Improvement
GEOT-7558 GeoPackage extension output contains field types that are not supported by GDAL
GEOT-7586 GeoPackage output contains invalid field types when publishing content from other JDBCDataStore
Task
GEOT-7582 Upgrade to ImageIO-EXT 1.4.11
GEOT-7588 Maven javadoc build fix for Java 11.0.22 and newer aggregate build
GEOT-7597 Upgrade to ImageIO-EXT 1.4.12
