Release notes

Release Notes - GeoTools - Version 18-beta - HTML format

Bug

  • [GEOT-5343] - Support matchCase on PropertyIsLike in Filter 2.0
  • [GEOT-5667] - Fix app-schema property substitution group support
  • [GEOT-5675] - Division by zero in NetCDFPolyphemusTest
  • [GEOT-5678] - ImageWorker should invalidate statistics after a Crop
  • [GEOT-5683] - MemoryDataStore preservation of FeatureIDs during addFeatures
  • [GEOT-5684] - ListFeatureCollection doesn't properly maintain bounds
  • [GEOT-5686] - Shapefile dumper throws a NPE on NULL geometry values
  • [GEOT-5687] - The gt-geojson module does not correctly parse geometries in a geometry collection when "type" follows "coordinates"
  • [GEOT-5692] - Reproject feature reader swallows feature user data
  • [GEOT-5696] - Feature chaining on xs:anyType encodes superfluous toString text
  • [GEOT-5703] - Incorrect validation when parsing XML schema element declaration with ref attribute
  • [GEOT-5705] - ImageMosaic returns an image with full mosaic footprint even when a single granule was selected
  • [GEOT-5711] - Cannot set up a heterogeneous CRS mosaic if granules are all in local CRSs
  • [GEOT-5715] - GeoPackage tile order inverted along y-axis
  • [GEOT-5720] - Heterogeneous CRS mosaic composes output with erroenous image positioning and scaling
  • [GEOT-5726] - SLDParser / SLDTransformer fails to round-trip empty nodes.
  • [GEOT-5727] - Heterogeneous CRS mosaic fails to display when there are granules crossing the dateline
  • [GEOT-5730] - MultiplyCoverages process only works when jai-ext enabled
  • [GEOT-5736] - ImageWorker mosaic operation can return results with the wrong ROI
  • [GEOT-5737] - URLs.fileToUrl does not percent-encode non-ASCII characters
  • [GEOT-5748] - Improve App-Schema connection usage
  • [GEOT-5755] - Mosaic with mixed CRS can miss areas when footprint management is set to "transparent"
  • [GEOT-5756] - Coverage Crop can fail with TopologyException
  • [GEOT-5757] - ImageWorker.mosaic mail fail with NPE if some granules have a ROI while others do not
  • [GEOT-5759] - Remove "-gt-" prefixes from CSS vendor options
  • [GEOT-5763] - CSS parser does not report details of CQL syntax errors
  • [GEOT-5765] - GridCoverageRenderer bandSelection optimization results into ignoring nested per-channel contrastEnhancement nodes
  • [GEOT-5767] - GridCoverageRenderer can miss part of an image when the source data overlaps the dateline on both sides
  • [GEOT-5768] - CSS does not support dasharray made of expressions
  • [GEOT-5769] - GridCoverageRenderer improperly applies the BandSelect optimization 2 times in a row
  • [GEOT-5779] - gt-javafx breaks build on server OpenJDK that lacks OpenJFX
  • [GEOT-5780] - OGR GeoJSON layer name changes with GDAL 2.2 or later, breaking BridjOGRDataStoreTest
  • [GEOT-5784] - Intermittent failure of ImageWorkerTest.rescaleToBytesNoData
  • [GEOT-5787] - ColorCoverter cannot handle compact color expressions like '#aaa'
  • [GEOT-5788] - Heterogeneous CRS mosaic does not work when using raster masks
  • [GEOT-5793] - MultiGeometry not working in GML 3.2 parser/encoded
  • [GEOT-5795] - WARNING: java.lang.ClassNotFoundException: org.geotools.data.wfs.v1_0_0.xml.WFSSchema
  • [GEOT-5807] - Labeler ignores perpedicular offset for curved labels
  • [GEOT-5811] - GeoPackage reader will return an empty image if there are tile matrixes not matched by actual data
  • [GEOT-5812] - Brewer's style builder can report RGB channels while building a gray raster symbolizer

New Feature

  • [GEOT-5637] - Support NetCDF >4 dimensions, including runtime
  • [GEOT-5690] - Make MongoDB usable as a data store in app-schema
  • [GEOT-5712] - Add a vendor option to enable kerning in text symbolizer (and have it on by default)
  • [GEOT-5713] - Add support for lesscss color operation functions
  • [GEOT-5746] - Allow CSS scale denominators to use SI metric prefixes, "k", "M" and "G"
  • [GEOT-5747] - Allow using a brief and semantically correct pseudo variable for CSS scale dependency rules: @sd (scale denominator)
  • [GEOT-5766] - Create a CoverageReader for remote WMTS layers
  • [GEOT-5794] - Add a label strikethrough vendor option
  • [GEOT-5797] - Pre-generalized data store spams the log with WARN messages when wrapping JDBC data store
  • [GEOT-5798] - New vendor option to control label character spacing
  • [GEOT-5801] - New vendor option to control label word spacing

Task

  • [GEOT-5674] - Add TransparencyFill process to unsupported/process-raster module

Improvement

  • [GEOT-5232] - Temporal Filters should provide a better toString
  • [GEOT-5579] - DataUtilities.urlToFile fails with query parameters (blocking SVG parameter use)
  • [GEOT-5708] - ExternalGraphicFactory does not have a general way to reset caches
  • [GEOT-5709] - Support coverage property SourceUrl
  • [GEOT-5740] - Move DataUtilities URL methods to new URLs class in gt-metadata
  • [GEOT-5741] - Upgrade PostgreSQL JDBC driver to 42.1.1
  • [GEOT-5744] - Make sure NoData is properly shared/updated along processing ops
  • [GEOT-5754] - Support data uris as external graphics
  • [GEOT-5762] - Speed up and control max covered domain complexity during CSS to SLD translation
  • [GEOT-5770] - NetCDF's SampleDimension min/max based on variable's attributes
  • [GEOT-5781] - Add a list of SortBy elements to the WCS 2.0 GetCoverage module
  • [GEOT-5805] - Move Polygon labeling point function to main functions
  • [GEOT-5806] - Label polygon borders when line placement is used

The text area below allows the project release notes to be copied to another document.