Portable GeoServer Changelog

What's new in Portable GeoServer 2.25

Mar 20, 2024
  • Security Considerations:
  • This release addresses several security vulnerabilities, all of which require admin access.
  • If you have updated to GeoServer 2.24.2 Release or GeoServer 2.23.5 Release you are already patched.
  • If you are working with a commercial support provider that volunteers with the geoserver-security email list they are already informed.
  • Vulnerabilities:
  • CVE-2023-51444 Arbitrary file upload vulnerability in REST Coverage Store API (High).
  • CVE-2023-41877 GeoServer log file path traversal vulnerability (High).
  • CVE-2024-23634 Arbitrary file renaming vulnerability in REST Coverage/Data Store API (Moderate).
  • CVE-2024-23643 Stored Cross-Site Scripting (XSS) vulnerability in GWC Seed Form (Moderate).
  • CVE-2024-23821 Stored Cross-Site Scripting (XSS) vulnerability in GWC Demos Page (Moderate).
  • CVE-2024-23819 Stored Cross-Site Scripting (XSS) vulnerability in MapML HTML Page (Moderate).

New in Portable GeoServer 2.25 RC (Mar 5, 2024)

  • New Feature:
  • GEOS-11225 [AuthKey] AuthKey synchronize the user/group automatically
  • MapML:
  • GEOS-10438 ENTITY_RESOLUTION_ALLOWLIST property not parsing empty setting
  • GEOS-11207 Refactor MapML MVC controller as GetMap-based operation with standard parameter format
  • GEOS-11221 mkdocs preflight rst fixes
  • GEOS-11289 Enable Spring Security StrictHttpFirewall by default
  • GEOS-11297 Escape WMS GetFeatureInfo HTML output by default
  • GEOS-11300 Centralize access to static web files
  • Improvement:
  • GEOS-11130 Sort parent role dropdown in Add a new role
  • GEOS-11142 Add mime type mapping for yaml files
  • GEOS-11148 Update response headers for the Resources REST API
  • GEOS-11149 Update response headers for the Style Publisher
  • GEOS-11152 Improve handling special characters in the Simple SVG Renderer
  • GEOS-11153 Improve handling special characters in the WMS OpenLayers Format
  • GEOS-11155 Add the X-Content-Type-Options header
  • GEOS-11173 Default to using HttpOnly session cookies
  • GEOS-11176 Add validation to file wrapper resource paths
  • GEOS-11213 Improve REST external upload method unzipping
  • GEOS-11222 Include Conformance Class for “Search” from OGC API - Features Part 5 proposal
  • GEOS-11226 Enable JTS OverlayNG by default
  • GEOS-11246 Schemaless plugin performance for WFS
  • GEOS-11247 Avoid HTML annotations special status in APIBodyProcessor
  • GEOS-11248 Move version header handling from APIBodyMethodProcessor to APIDispatcher
  • GEOS-11260 JNDI tutorial uses outdated syntax
  • GEOS-11288 Improve input validation in ClasspathPublisher
  • GEOS-11289 Enable Spring Security StrictHttpFirewall by default
  • GEOS-11298 When a Raster Attribute Table is available, expose its attributes in GetFeatureInfo
  • Bug:
  • GEOS-11050 jdbc-store broken by changes to Paths.names
  • GEOS-11051 Env parametrization does not save correctly in AuthKey extension
  • GEOS-11145 The GUI “wait spinner” is not visible any longer
  • GEOS-11182 Avoid legends with duplicated entries
  • GEOS-11187 Configuring a raster with NaN as NODATA results in two NaN in the nodata band description
  • GEOS-11190 GeoFence: align log4j2 deps
  • GEOS-11203 WMS GetFeatureInfo bad WKT exception for label-geometry
  • GEOS-11224 Platform independent binary doesn’t start properly with default data directory
  • GEOS-11250 WFS GeoJSON encoder fails with an exception if an infinity number is used in the geometry
  • GEOS-11278 metadata: only selected tab is submitted
  • GEOS-11312 Used memory calculation fix on legend WMS request
  • Task:
  • GEOS-11242 Remove the Xalan library
  • GEOS-11315 Revert to CORS commented out
  • GEOS-11318 Update postgresql to 42.7.2
  • GEOS-11134 Feedback on download bundles: README, RUNNING, GPL html files
  • GEOS-11141 production consideration for logging configuration hardening
  • GEOS-11159 Update mapfish-print-lib 2.3.0
  • GEOS-11180 Update ImageIO-EXT to 1.4.9
  • GEOS-11181 Update jai-ext to 1.1.25
  • GEOS-11186 Fix maven enforcer failFast
  • GEOS-11220 Upgrade Hazelcast from 5.3.1 to 5.3.6
  • GEOS-11245 Update OSHI from 6.2.2 to 6.4.10
  • GEOS-11316 Update Spring version to 5.3.32
  • Community module development:
  • GEOS-11305 Add layer information in the models backing STAC
  • GEOS-11146 Fix MBTiles output format test
  • GEOS-11184 ncwms module has a compile dependency on gs-web-core test jar
  • GEOS-11209 Open ID Connect Proof Key of Code Exchange (PKCE)
  • GEOS-11212 OIDC accessToken verification using only JWKs URI
  • GEOS-11219 Upgraded mail and activation libraries for SMTP compatibility
  • GEOS-11293 Improve performance of wps-lontigudinal-profile

New in Portable GeoServer 2.24.2 (Jan 25, 2024)

  • Improvement:
  • Improve REST external upload method unzipping
  • Schemaless plugin performance for WFS
  • Upgraded mail and activation libraries for SMTP compatibility
  • Bug:
  • Return a service exception when client provided WMS dimensions are not a match
  • Env parametrization does not save correctly in AuthKey extension
  • Layer not visible in preview/capabilities if security closes the workspace, but allows access to the layer
  • Platform independent binary doesn’t start properly with default data directory
  • preauthentication filters - session reuse even after having logout
  • ModificationProxy breaks information hidding on CatalogInfo.accept(CatalogVisitor) exposing the proxied object
  • WFS GeoJSON encoder fails with an exception if an infinity number is used in the geometry
  • Multiple inserts in WPS with different idGen strategies does not work
  • Task:
  • Upgrade Hazelcast from 5.3.1 to 5.3.6
  • Update OSHI from 6.2.2 to 6.4.10

New in Portable GeoServer 2.24.1 (Nov 27, 2023)

  • Improvement:
  • GEOS-11152 Improve handling special characters in the Simple SVG Renderer
  • GEOS-11153 Improve handling special characters in the WMS OpenLayers Format
  • GEOS-11154 Improve handling special characters in the MapML HTML Page
  • GEOS-11155 Add the X-Content-Type-Options header
  • GEOS-11173 Default to using HttpOnly session cookies
  • GEOS-11176 Add validation to file wrapper resource paths
  • GEOS-11188 Let DownloadProcess handle download requests whose pixel size is larger than integer limits
  • GEOS-11189 Add an option to throw a service exception when nearest match “allowed interval” is exceeded
  • GEOS-11193 Add an option to throw an exception when the time nearest match does not fall within search limits
  • Bug:
  • GEOS-11074 GeoFence may not load property file at boot
  • GEOS-11166 OGC API Maps HTML representation fail without datetime parameter
  • GEOS-11184 ncwms module has a compile dependency on gs-web-core test jar
  • GEOS-11190 GeoFence: align log4j2 deps
  • GEOS-11196 NPE in VectorDownload if ROI not defined
  • GEOS-11200 GetFeatureInfo can fail on rendering transformations that generate a different raster
  • GEOS-11203 WMS GetFeatureInfo bad WKT exception for label-geometry
  • GEOS-11206 Throw nearest match mismatch exceptions only for WMS

New in Portable GeoServer 2.23.3 (Oct 31, 2023)

  • New Feature:
  • GEOS-11000 WPS process to provide elevation profile for a linestring
  • Improvement:
  • GEOS-10856 geoserver monitor plugin - scaling troubles
  • GEOS-11081 Add option to disable GetFeatureInfo transforming raster layers
  • GEOS-11087 Fix IsolatedCatalogFacade unnecessary performance overhead
  • GEOS-11089 Performance penalty adding namespaces while loading catalog
  • GEOS-11090 Use Catalog streaming API in WorkspacePage
  • GEOS-11099 ElasticSearch DataStore Documentation Update for RESPONSE_BUFFER_LIMIT
  • GEOS-11100 Add opacity parameter to the layer definitions in WPS-Download download maps
  • GEOS-11102 Allow configuration of the CSV date format
  • GEOS-11114 Improve extensibility in Pre-Authentication scenarios
  • GEOS-11116 GetMap/GetFeatureInfo with groups and view params can with mismatched layers/params
  • GEOS-11120 Create aggregates filterFunction in OSEO to support STAC Datacube extension implementation
  • GEOS-11130 Sort parent role dropdown in Add a new role
  • GEOS-11142 Add mime type mapping for yaml files
  • GEOS-11148 Update response headers for the Resources REST API
  • GEOS-11149 Update response headers for the Style Publisher
  • GEOS-11153 Improve handling special characters in the WMS OpenLayers Format
  • GEOS-11155 Add the X-Content-Type-Options header
  • Bug:
  • GEOS-10452 Use of Active Directory authorisation seems broken since 2.15.2 (LDAP still works)
  • GEOS-11032 Unlucky init order with GeoWebCacheExtension gwcFacade before DiskQuotaMonitor
  • GEOS-11138 Jetty unable to start cvc-elt.1.a / org.xml.sax.SAXParseException
  • GEOS-11140 WPS download can leak image references in the RasterCleaner
  • GEOS-11145 The GUI “wait spinner” is not visible any longer
  • GEOS-11166 OGC API Maps HTML representation fail without datetime parameter
  • Task:
  • GEOS-10248 WPSInitializer NPE failure during GeoServer reload
  • GEOS-11030 Update jetty-server to 9.4.51.v20230217
  • GEOS-11084 Update text field css styling to look visually distinct
  • GEOS-11091 Upgrade spring-security to 5.7.10
  • GEOS-11092 acme-ldap.jar is compiled with Java 8
  • GEOS-11094 Bump org.hsqldb:hsqldb:2.7.1 to 2.7.2
  • GEOS-11124 Update json dependency to 20230227 in geowebcache-rest
  • GEOS-11141 production consideration for logging configuration hardening

New in Portable GeoServer 2.24 RC (Sep 27, 2023)

  • New Feature:
  • GEOS-10992 Make GWC UI for disk quota expose HSQLDB, remove H2, automatically update existing installations
  • GEOS-11000 WPS process to provide elevation profile for a linestring
  • Improvement:
  • GEOS-10926 Community Module Proxy-Base-Ext
  • GEOS-10934 CSW does not show title/abstract on welcome page
  • GEOS-10973 DWITHIN delegation to mongoDB
  • GEOS-10999 Make GeoServer KML module rely on HSQLDB instead of H2
  • GEOS-11005 Make sure H2 dependencies are included in the packages of optional modules that still need it
  • GEOS-11059 Map preview should not assume EPSG authority
  • GEOS-11081 Add option to disable GetFeatureInfo transforming raster layers
  • GEOS-11087 Fix IsolatedCatalogFacade unnecessary performance overhead
  • GEOS-11090 Use Catalog streaming API in WorkspacePage
  • GEOS-11099 ElasticSearch DataStore Documentation Update for RESPONSE_BUFFER_LIMIT
  • GEOS-11100 Add opacity parameter to the layer definitions in WPS-Download download maps
  • GEOS-11102 Allow configuration of the CSV date format
  • GEOS-11116 GetMap/GetFeatureInfo with groups and view params can with mismatched layers/params
  • Bug:
  • GEOS-8162 CSV Data store does not support relative store paths
  • GEOS-10452 Use of Active Directory authorisation seems broken since 2.15.2 (LDAP still works)
  • GEOS-10874 Log4J: Windows binary zip release file with log4j-1.2.14.jar
  • GEOS-10875 Disk Quota JDBC password shown in plaintext
  • GEOS-10899 Features template escapes twice HTML produced outputs
  • GEOS-10903 WMS filtering with Filter 2.0 fails
  • GEOS-10921 Double escaping of HTML with enabled features-templating
  • GEOS-10922 Features templating exception on text/plain format
  • GEOS-10928 Draft JSON-FG Implementation for OGC API - Features
  • GEOS-10936 YSLD and OGC API modules are incompatible
  • GEOS-10937 JSON-FG reprojected output should respect authority axis order
  • GEOS-10958 Update Spotbugs to 4.7.3
  • GEOS-10981 Slow CSW GetRecords requests with JDBC Configuration
  • GEOS-10985 Backup Restore of GeoServer catalog is broken with GeoServer 2.23.0 and StAXSource
  • GEOS-10993 Disabled resources can cause incorrect CSW GetRecords response
  • GEOS-11015 geopackage wfs output builds up tmp files over time
  • GEOS-11016 Docker nightly builds use outdated GeoServer war
  • GEOS-11033 WCS DescribeCoverage ReferencedEnvelope with null crs
  • GEOS-11060 charts and mssql extension zips are missing the extension
  • Task:
  • GEOS-11091 Upgrade spring-security to 5.7.10
  • GEOS-11094 Bump org.hsqldb:hsqldb:2.7.1 to 2.7.2
  • GEOS-11103 Upgrade Hazelcast version to 5.3.x
  • GEOS-10248 WPSInitializer NPE failure during GeoServer reload
  • GEOS-10904 Bump jettison from 1.5.3 to 1.5.4
  • GEOS-10907 Update spring.version from 5.3.25 to 5.3.26
  • GEOS-10941 Update ErrorProne to 2.18
  • GEOS-10987 Bump xalan:xalan and xalan:serializer from 2.7.2 to 2.7.3
  • GEOS-10988 Update spring.version from 5.3.26 to 5.3.27 and spring-integration.version from 5.5.17 to 5.5.18
  • GEOS-11010 Upgrade guava from 30.1 to 32.0.0
  • GEOS-11011 Upgrade postgresql from 42.4.3 to 42.6.0
  • GEOS-11012 Upgrade commons-collections4 from 4.2 to 4.4
  • GEOS-11018 Upgrade commons-lang3 from 3.8.1 to 3.12.0
  • GEOS-11019 Upgrade commons-io from 2.8.0 to 2.12.0
  • GEOS-11020 Add test scope to mockito-core dependency
  • GEOS-11062 Upgrade httpclient from 4.5.13 to 4.5.14
  • GEOS-11063 Upgrade httpcore from 4.4.10 to 4.4.16
  • GEOS-11067 Upgrade wiremock to 2.35.0
  • GEOS-11080 Remove ASCII grid output format from WCS
  • GEOS-11084 Update text field css styling to look visually distinct
  • GEOS-11092 acme-ldap.jar is compiled with Java 8

New in Portable GeoServer 2.23.2 (Jul 23, 2023)

  • New Feature:
  • Control remote resources accessed by GeoServer
  • Make GWC UI for disk quota expose HSQLDB, remove H2, automatically update existing installations
  • Improvement:
  • DWITHIN delegation to mongoDB
  • Improve URL checking
  • Bug:
  • Log4J: Windows binary zip release file with log4j-1.2.14.jar
  • Disk Quota JDBC password shown in plaintext
  • GetCapabilities lists the same style multiple times when used as both a default and alternate style
  • WMS filtering with Filter 2.0 fails
  • Authentication not sent if connection pooling activated
  • csw-iso: should only add ‘xsi:nil = false’ attribute
  • YSLD and OGC API modules are incompatible
  • Support virtual services for OSEO/STAC
  • CSS extension lacks ASM JARs as of 2.23.0, stops rendering layer when style references a file
  • Slow CSW GetRecords requests with JDBC Configuration
  • Wicket bug when trying to add new Vector Attribute (build 2.23 on Tomcat/Windows)
  • Disabled resources can cause incorrect CSW GetRecords response
  • OOM due to too many dimensions when range requested
  • GetCapabilities broken when using Data Security Layer groups
  • LayerGroupContainmentCache is being rebuilt on each ApplicationEvent
  • geopackage wfs output builds up tmp files over time
  • metadata: add datetime field type to feature catalog
  • projection parameter takes no effect on MongoDB Schemaless features WFS requests
  • ClassNotFoundException: org.h2.driver on shutdown
  • WCS DescribeCoverage ReferencedEnvelope with null crs
  • Enabling OSEO from Workspace Edit Page Results in an NPE
  • The OAuth2/OIDC security filters do not work as expected anymore after the spring-security-core depencency update to 5.7.8
  • Styles using the custom mark shape://dot don’t draw any fill
  • NullPointerException creating layer with REST, along with attribute list
  • Multiple layers against the same ES document type conflict with each other
  • charts and mssql extension zips are missing the extension
  • Layer configuration page doesn’t work for broken SQL views
  • Task:
  • Bump xalan:xalan and xalan:serializer from 2.7.2 to 2.7.3
  • Update spring.version from 5.3.26 to 5.3.27 and spring-integration.version from 5.5.17 to 5.5.18
  • Update sqlite-jdbc from 3.34.0 to 3.41.2.2
  • Upgrade guava from 30.1 to 32.0.0
  • Upgrade postgresql from 42.4.3 to 42.6.0
  • Upgrade commons-collections4 from 4.2 to 4.4
  • Upgrade commons-lang3 from 3.8.1 to 3.12.0
  • Add test scope to mockito-core dependency
  • Upgrade httpclient from 4.5.13 to 4.5.14
  • Upgrade httpcore from 4.4.10 to 4.4.16
  • Upgrade wiremock to 2.35.0

New in Portable GeoServer 2.23.1 (May 24, 2023)

  • Bug:
  • GEOS-8162 CSV Data store does not support relative store paths
  • GEOS-10837 geopackage output fails when java.io.tmpdir on network share
  • GEOS-10912 jms-cluster fails to clone grid coverage layer on other nodes
  • GEOS-10920 Excel output format packaging misses dependencies, cannot produce .xls
  • GEOS-10921 Double escaping of HTML with enabled features-templating
  • GEOS-10922 Features templating exception on text/plain format
  • GEOS-10932 csw-iso: should only add 'xsi:nil = false' attribute
  • GEOS-10934 CSW does not show title/abstract on welcome page
  • GEOS-10946 WMS GetLegendGraphic throws FootprintsTransformation cannot be cast to ProcessFunctionException
  • GEOS-10950 Performance regression in DescribeFeatureType across all feature types
  • GEOS-10955 STAC templates are initialised in the wrong location
  • GEOS-10957 Support ResourceAccessManager implementations returning custom subclasess of AccessLimits
  • GEOS-10969 Empty CQL_FILTER parameter should be ignored
  • GEOS-10975 JMS clustering reports error about ReferencedEnvelope type not being whitelisted in XStream
  • GEOS-10985 B/R of GeoServer catalog is broken with GeoServer 2.23.0
  • Improvement:
  • GEOS-10858 jdbc-config turns off isolated workspace support
  • GEOS-10898 Preserve key order in STAC responses coming from JSONB columns
  • GEOS-10923 Use default writing params on GeoTIFFPPIO
  • GEOS-10940 Update MapML viewer to release 0.11.0
  • Task:
  • GEOS-10859 OGC API: swagger-api 4.15.5 upgrade
  • For the complete list see 2.23.1 release notes.

New in Portable GeoServer 2.22.3 (May 6, 2023)

  • Release notes:
  • Sub-task:
  • GEOS-10908 Update spring version from 5.2.22 to 5.2.23
  • Bug:
  • GEOS-3978 Layer configuration allows admin to enter a zero area bounding box
  • GEOS-6313 Lifecycle handlers not properly called during shutdown
  • GEOS-10006 Seeding GWC doesn’t work for layers with a dot in the name
  • GEOS-10500 WFS-T unable to delete more than 30 features in a single transaction when the data source is PostGIS
  • GEOS-10517 jms-cluster classes missing from XStream security configuration
  • GEOS-10593 Regression: Creating SQL View via REST API and explicit attribute list is no-longer possible
  • GEOS-10611 Uploading application/zip to styles endpoint does not clean up temporary files
  • GEOS-10837 geopackage output fails when java.io.tmpdir on network share
  • GEOS-10865 Backwards incompatible change in the XML representation of user roles
  • GEOS-10869 Jayway JSON Path libraries not included anymore on GeoServer packages
  • GEOS-10871 about geoserver page reporting @project.version@ for WAR deploy
  • GEOS-10878 wps-multidimensional and wps-jdbc are not being deployed on maven repo
  • GEOS-10890 Wrong path for the license file in the Windows installer script
  • GEOS-10896 Missing NULL check in the template backwards mapping
  • GEOS-10899 Features template escapes twice HTML produced outputs
  • GEOS-10912 jms-cluster fails to clone grid coverage layer on other nodes
  • GEOS-10920 Excel output format packaging misses dependencies, cannot produce .xls
  • GEOS-10921 Double escaping of HTML with enabled features-templating
  • GEOS-10922 Features templating exception on text/plain format
  • GEOS-10934 CSW does not show title/abstract on welcome page
  • GEOS-10946 WMS GetLegendGraphic throws FootprintsTransformation cannot be cast to ProcessFunction Exception
  • GEOS-10950 Performance regression in DescribeFeatureType across all feature types
  • GEOS-10957 Support ResourceAccessManager implementations returning custom subclasess of AccessLimits
  • Improvement:
  • GEOS-10858 jdbc-config turns off isolated workspace support
  • GEOS-10867 Bump commons-fileupload from 1.4 to 1.5
  • GEOS-10870 Allow importer AttributesToPointGeometryTransform to preserve original geometries, and to configure the name of the target geometry
  • GEOS-10873 Upgrade XStream to 1.4.20
  • GEOS-10898 Preserve key order in STAC responses coming from JSONB columns
  • GEOS-10923 Use default writing params on GeoTIFFPPIO
  • New Feature:
  • GEOS-10868 Add support for editable description in GeoServer customize feature type table
  • Task:
  • GEOS-10863 Update Oracle JDBC driver to 19.18.0.0
  • GEOS-10894 Random control-flow errors on Mac builds
  • GEOS-10904 Bump jettison from 1.5.3 to 1.5.4

New in Portable GeoServer 2.21.1 (Sep 21, 2022)

  • Improvement:
  • GEOS-10580 Server status page improvements for status, modules and docs
  • GEOS-10521 Allow GetFeatureInfo over raster layers to identify both original raster and transformed vectors
  • GEOS-10514 Better capture catalog configuration issues: layergroup with a misconfigured layer
  • GEOS-10501 GetMap: support auth headers forwarding to remote SLD urls
  • GEOS-10495 Request Logger Memory Buffer Limits
  • GEOS-10489 Add options to LDAP Role Service to configure prefixes and enforce capitalization
  • GEOS-10464 Improve logging and check for NPEs and other issues in Importer Module
  • Bug:
  • GEOS-10584 Enabling logging of request body results in stream closed errors in tomcat environment
  • GEOS-10570 Deleting a style in a Hazelcast cluster renames the styles directory
  • GEOS-10553 Importer replace fails with schema mismatch
  • GEOS-10548 GeoFence layer group handling is inconsistent
  • GEOS-10546 Invalid time expressions used in WCS 2.0 subset return a code 200 with generic exception
  • GEOS-10545 Layer Group cache not initialized
  • GEOS-10539 DescribeLayer typeName is no longer workspace qualified
  • GEOS-10535 WFS Update request throw NPE on bad namespace
  • GEOS-10534 a badly formed delete transaction will get a NPE instead of an informative error message
  • GEOS-10533 Review startup logging INFO and WARN updates
  • GEOS-10526 Parallel REST API calls failures
  • GEOS-10522 REST API Failure in @ExceptionHandler No input String specified
  • GEOS-10518 Partial RELINQUISH_LOG4J_CONTROL regression with WildFly
  • GEOS-10516 WMS GetCapabilities dimension representations ignores the end attribute
  • GEOS-10496 Using the REST API to purge NetCDF granules causes a seemingly infinite loop
  • GEOS-10487 Custom logging configuration not respecting log location setting
  • GEOS-10468 (virtually) Impossible to turn off “Enable All Statistics” in > Server status > System Status
  • Tasks:
  • GEOS-10588 Build structure gs-sec-oauth2-core is duplicated in the reactor
  • GEOS-10585 Upgrade to Jetty from 9.4.44 to 9.4.48
  • GEOS-10579 Bump oshi-core from 6.2.0 to 6.2.1
  • GEOS-10562 Bump oshi-core from 5.8.6 to 6.2.0
  • GEOS-10551 Refactor commons-httpclient usage in the WPS module
  • GEOS-10532 FreemarkerTemplateManager API changes for easier subclassing
  • GEOS-10529 Use Awaitility to replace waits for condition in tests
  • GEOS-10525 Centralize and simplify management of common test dependencies

New in Portable GeoServer 2.21.0 (Jul 1, 2022)

  • This is a first release of the new stable branch of GeoServer and is made in conjunction with GeoTools 27.0 and GeoWebCache 1.21.0.
  • GeoServer now supports Java 17! This is likely to be the last release that supports Java 8 and we encourage users to start to make the transition to Java 11 during the lifetime of this branch.
  • Thanks to everyone who help tested the release candidate on and off list: Daniel Calliess, Georg Weickelt, Stefan Overkamp, Nicolas Matzick, Sander Schaminee, Jose Garcia, Rosa Briones, Jody Garnett, Andrea Aime, Ian Turton.

New in Portable GeoServer 2.20.0 (Oct 18, 2021)

  • New feature:
  • GEOS-10123 Internationalization for title and abstract
  • GEOS-10207 Allow creation of internationalized raster legends
  • GEOS-10190 i18n support for Contact Information
  • GEOS-10185 LayerGroup legend internationalization styles returns multiple values

New in Portable GeoServer 2.19.0 (Mar 22, 2021)

  • Bug:
  • External Legend Graphic reported size incorrect in WMS
  • Layer configured with missing style throws NPE
  • Backup and Restore replaces not involved layers IDs breaking GWC layers
  • Ensure the WPS Plugin does not contain jars from other WPS related plugins
  • Missing JARs in the packaging of geopackage community module
  • New Feature:
  • Additional fields in TileJson: tilejson,description,format,layers' min and max zoom level
  • Task:
  • Upgrade flatgeobuf to 3.10.1
  • Improvement:
  • GeoFence backend DBMS dependencies
  • Split the Features template module in independent parts
  • Revise generated filenames, extension, and format_option
  • Remove the ArcSDE community module

New in Portable GeoServer 2.16 (Sep 18, 2019)

  • Improvement:
  • [GEOS-9133] - Cannot configure hyperspectral image in "bin" package, form too big
  • [GEOS-9248] - Allow setting Entity Expansion limit on WFS XML Readers
  • [GEOS-9297] - Add GetLegendGraphic request support on external WMS layers

New in Portable GeoServer 2.15.2 (Jul 1, 2019)

  • Upgrade jackson to 2.9.9
  • Upgrade spring-security-oauth2 version from 2.0.11 to 2.0.16
  • Parameter Extractor plugin cannot mangle URL correctly if Monitor plugin is installed
  • Fix warning message “Unable to find property ‘format.wfs.DXF’ for preview component”
  • Integrated GWC fails to seed layers if any data security is configured
  • WCS 2.0 scaling policies do not account for scaling factor already applied during read (due to subsampling and overview)
  • Unresolvable Spring circular reference on Solr module
  • REST exception handler and controllers do not always set the response content type
  • Advanced Projection Handling can generate vertical gaps in output images when reprojecting
  • Parameter Extractor plugin prevents the Monitor plugin to log requests
  • WMTS multidimensional, support bboxes spanning the dateline

New in Portable GeoServer 2.15.0 (Apr 30, 2019)

  • Bug:
  • [GEOS-7636] - GetLegendGraphic ignores the OnlineResource configured in the style for raster layers
  • [GEOS-8799] - WFS GetFeature response contains NULL namespaces for App-Schema complex features when multiple queries are used
  • [GEOS-8809] - 2.13.1 getmap causes Failed to reproject the envelope ReferencedEnvelope
  • [GEOS-8909] - LayerGroup and Layer Names order in WMS 1.1.1 GetCapabilities document
  • [GEOS-8920] - [GeoFence] Make sure we convert blank username to ANY filter
  • [GEOS-8921] - GeoFence Plugin is missing a jar since 2.12
  • [GEOS-8926] - Parentheses/Bracketing not maintained when transforming filters into SQL
  • [GEOS-8929] - featuretype.xml bindings reference com.vividsolutions.jts classes
  • [GEOS-8941] - [GeoFence Ext.] Add postgis-jdbc and hib-spatial-postgis jars to the package in order to allow people using DB instead of H2
  • [GEOS-8944] - GWC fails to cache tiles if GeoFence with source IP driven rules are used for authentication
  • [GEOS-8964] - TurboJPEG write (via TurboJpegImageWorker) throw IllegalArgumentException when a colorExpansion occurs
  • [GEOS-8970] - WMS GetCapabilities throws ConcurrentModificationException
  • [GEOS-8994] - Complex features nested attributes not correctly detected
  • [GEOS-8999] - App-Schema postgis online build is failling on GeoJsonOutputFormatWfsTest
  • [GEOS-9008] - LogFactory conflict in gs-main Eclipse project results into unable to compile/run.
  • [GEOS-9014] - KML layergroup styles broken by layer sequence bug
  • [GEOS-9027] - MongoDB complex store iterator enters in an infinite loop if no ID is defined
  • [GEOS-9057] - ClientStreamAbortedException logged at SEVERE level, should be at lower level - imageio-ext
  • [GEOS-9099] - Netcdf extension misses the JNA jars, prevents server start up
  • [GEOS-9109] - Styles referring to relative icons in subdirectories fail to change workspace
  • [GEOS-9111] - WMTS capabilities generation fails when using a "style group"
  • [GEOS-9120] - Assorted issues when using WMTS restful bindings in virtual workspace services
  • [GEOS-9123] - WMTS capabilities backlinks miss workspace qualification when proxy base URL is set
  • Task:
  • [GEOS-8932] - [GeoFence Extension] Update pom so they use the latest GeoFence stable release 3.4.0
  • [GEOS-9101] - Complex MongoDB generated properties are not correctly handlded in SLDs
  • [GEOS-9126] - Document how to export styles from QGIS
  • Improvement:
  • [GEOS-8827] - Introduce optional cache of remote styles in WMS
  • [GEOS-8897] - Promote sldService community modules to extension (GSIP-170)
  • [GEOS-8903] - Introduce expression support in RasterSymbolizer GammaValue
  • [GEOS-8935] - Introduce new coordinates formatting options for WFS layers
  • [GEOS-8936] - Long style names not readable in Additional Styles select
  • [GEOS-9088] - OR performance issue with complex subqueries on app-schema with postgis datasource
  • [GEOS-9121] - Sort the module status table

New in Portable GeoServer 2.13.3 (Nov 20, 2018)

  • Improvements and Fixes:
  • Allow selection of geometry attribute in app-schema, support mapping files over HTTP connection, push spatial filters over nested geometries down into SQL when possible
  • Performance improvement when reporting dimension values in WMS capabilities, for dimensions out of raster data and presented as “interval and resolution”
  • WCS thread safety fixes when using requests with reprojection and rescaling under high load. Also, when requesting an area inside the bounds of a sparse mosaic, the result might have had less pixels than requested.
  • CSS translator fixed to support mark offset/anchors based on expressions
  • File chooser autocomplete had duplicate entries on Linux
  • REST config, it was not possible to set the default style using a layer PUT
  • GetLegendGraphic ignores the OnlineResource configured in the style for raster layers

New in Portable GeoServer 2.13.2 (Jul 24, 2018)

  • Improvements:
  • Add forceLabels=on in the style editor map legend to help users,
  • Remove language warnings during Windows setup compilation and remove ‘work’ folder when uninstalling on Windows
  • Move MongoDB community module to supported status
  • Bug Fixes:
  • Response time of WMS 1.3.0 significantly higher than vs WMS 1.x.x on systems whose axis in north/east order
  • Exception with NULL values with AggregateProcess
  • Style with Interpolate function causes NullPointerException on GetLegendGraphic
  • WFS with startIndex doesn’t return some results
  • Vector identifying feature info uses an undocumented system variable to set the default search area
  • Removing extensions with own configuration bits may cause GeoServer not to start up anymore
  • Windows Installation issue – upgrading GeoServer results in corrupt data_dir
  • Class java.util.Map$Entry is not whitelisted for XML parsing.
  • Add WMS GetMap and GetFeatureInfo tests for App-Schema MongoDB integration
  • CatalogRepository cannot find a store by name, if the store has just been added
  • WCS 1.0.0 generates wrong links in GetCapabilities
  • CatalogRepository should return a null on store not found, instead it throws a RuntimeException
  • Layer page will only show up to 25 bands, regardless of the actual set of bands available
  • Undocumented GDAL 2.3.0 CSV output geometry column name change breaks WPSOgrTest
  • Security Updates:
  • Please update your production instances of GeoServer to receive the latest security updates and fixes.
  • If you encounter a security vulnerability in GeoServer, or any other open source software, please take care to report the issue in a responsible fashion.

New in Portable GeoServer 2.13 Beta (Feb 22, 2018)

  • We are happy to announce the release of GeoServer 2.13-beta. Downloads are available (zip, war, and exe) along with docs and extensions.
  • This is a beta release of GeoServer made in conjunction with GeoTools 19-beta.
  • We want to encourage people to test the release thoroughly and report back any issue found. With no further delay, let’s see what’s new, that is, what is there to test!
  • Isolated Workspaces:
  • The concept of an “Isolated Workspaces” has been added to GeoServer, to allow for reusing a namespace among multiple workspaces. In particular, an isolated workspace allows reuse of a namespace already used by another workspace, but its resources (layers, styles, etc …) can only be retrieved when using that workspace’s virtual services and will only show up in those virtual service capabilities documents.
  • When reusing a namespace among workspaces, exactly one of those must be non-isolated, and the rest must be isolated; i.e. isolated workspaces have no restrictions in namespaces usage but the existing restrictions still apply for non isolated workspaces.
  • GeoWebCache REST API:
  • Two new endpoints have been added to the GeoWebCache REST API:
  • /gwc/rest/blobstores:
  • GET /gwc/rest/blobstores for a list of the blobstores
  • GET /gwc/rest/blobstores/{blobStoreName} for details about a single blobstore
  • PUT /gwc/rest/blobstores/{blobStoreName} to create or update a blobstore
  • DELETE /gwc/rest/blobstores/{blobStoreName} to remove a blobstore
  • /gwc/rest/gridsets:
  • GET /gwc/rest/gridsets for a list of the gridsets
  • GET /gwc/rest/gridsets/{gridSetName} for details about a single gridset
  • PUT /gwc/rest/gridsets/{gridSetName} to create or update a gridset
  • DELETE /gwc/rest/gridsets/{gridSetName} to remove a gridset
  • API docs for these endpoints will be added to the GeoServer documentation shortly. Until then, the request body syntax for PUT requests closely matched the equivalent structures in geowebcache.xml: BlobStores and GridSets.
  • The ArcGISCache backed layers are now also configurable via the REST API.
  • This release sees a major reworking of the configuration system in GeoWebCache that will allow for plugging in alternate configuration persistence mechanisms in future. While these changes should be largely invisible to users, it is a huge update that impacts all of GeoWebCache. However, due to these changes, we ask that you please test the embedded GeoWebCache.
  • UI Improvements:
  • Entering in URLs for data files has been improved with autocomplete – now GeoServer will scan the path that has already been typed, and suggest existing files within that path.
  • In addition, autocomplete support has been added to a number of dropdowns which contain a long list of values, such as stores or layers. You can now start typing the name of an option, and the visible options will be filtered to match.
  • Removed OS X installers:
  • Due to lack of resources and interest, the OS X dmg installers are no longer being built. OS X users can still use the system-independent binary.
  • New community modules:
  • The 2.13 series comes with a few new community modules, in particular:
  • Do you want to generate GHRSST compliant outputs from GHRSST inputs? Try out the new GHRSST NetCDF output community module.
  • There is also a new community module introducing NSG profiles for the WFS and WMTS services.
  • Not that community modules are not part of the release; instead you can find them in the nightly builds.
  • Other assorted improvements:
  • There are many bug fixes and improvements to look at in the release notes, cherry picking a few here:
  • Autocomplete support for dropdowns with long lists of values
  • Upgrade JDom library
  • REST API CORS support
  • REST improvements to list all layers in a workspace, and include the workspace prefix in layer listings
  • Style POST does not support non-SLD styles
  • Add WMTS RESTful API
  • Installing the XSLT plugin may cause random REST endpoints to report lists with transforms/transform
  • WCS 1.0.0 does not handle FORMAT parameter properly
  • Cache small amount of features in memory to avoid repeated data scans in GetFeature requests
  • Allow requesting both OL3 and OL2 from the client side
  • Simple feature GML 3.2.1 output schema-invalid as geometries lack mandatory gml:id
  • GeoPackage generated via WPS has y coordinates starting from bottom left
  • Numerous WFS 2.0 bugfixes
  • Submitting a seed/truncate request for a tile layer results in a “406, not acceptable”
  • GWC Seed Form returns “Chunk [] is not a valid entry” message error when seeding a layer.
  • Demo Page does not send password

New in Portable GeoServer 2.12.2 (Jan 25, 2018)

  • New Features and Improvements:
  • GetLegendGraphic rescale accounts for stroke thickness
  • WPS requests now support the use of CDATA to guard ComplexData
  • CSS expressions with units are now supported
  • Bug Fixes:
  • Importer an now import shape files with spaces in the attribute names to PostGIS
  • An intermittent problem with WFS filter encoding has been resolved.
  • User interface improvements for layer group creation
  • Our community modules remain under active development with fixes to scripting, mbstyle, and backup and restore.

New in Portable GeoServer 2.12.1 (Nov 22, 2017)

  • We are happy to announce the release of GeoServer 2.12.1. Downloads are available (zip, war, dmg and exe) along with docs and extensions.
  • This is a stable release recommended for production use. This release is made in conjunction with GeoTools 18.1.
  • New Features and Improvements:
  • Moved Users/Groups/Roles REST from geofence-server (extension) to restconfig (core)
  • Bug Fixes:
  • Copy style needs to copy content and format
  • REST API CORS support
  • YSLD ColorMap incorrectly recording a String (as shown in SLD conversion)
  • MapPreviewPage search displays wrong results on first try
  • GWC Seed Form returns blank page when seeding a layer.
  • Monitor REST API won’t return xml/json representation for request
  • Failed to resolve workspace for style messages during startup

New in Portable GeoServer 2.12 RC 1 (Sep 30, 2017)

  • Rest API now using Spring MVC:
  • In March, we upgraded the framework used by the GeoServer REST API from Restlet to Spring MVC. All the endpoints should remain unchanged, but they do need testing to ensure there weren’t any unintended side effects.
  • As part of this upgrade, we also have new REST documentation, providing detailed information about each endpoint.
  • Thanks again to the code sprint sponsors:
  • Boundless
  • GeoSolutions
  • Astun Technology
  • Gaia3D
  • Insurance Australia Group (IAG)
  • How 2 Map
  • FOSSGIS
  • Atol Conseils et Développements
  • Geodan
  • WMTS Cascading:
  • Adds the ability to create WMS layers backed by remote WMTS layers, similar to the pre-existing WMS cascading functionality.
  • Style Based Layer Groups:
  • Adds the ability to define a listing of layers and styles using a single SLD file, in accordance with the original vision of the SLD specification. This includes a new entry type in the Layer Group layers list, and a new preview mode for the style editor.
  • Options for KML Placemark placement:
  • New options for KML encoding have been added, to control the placement of placemark icons, mostly for polygons. The syntax of the new options introduces three new top level format options keys
  • GeoWebCache data security API:
  • Add an extension point to GeoWebCache allowing for a security check based on the layer and extent of the tile. Adds an implementation of this extension point to GeoServer’s GWC integration.
  • This change mostly only affects developers, but will lead to improved security for users in the future.
  • NetCDF output support for variable attributes and extra variables:
  • Adds the following to the NetCDF output extension:
  • An option to allow all attributes to be copied from the source NetCDF/GRIB variable to the target variable.
  • Support for manual configuration of variable attributes, much like the current support for setting global attributes.
  • Support for configuration of extra variables which are copied from the NetCDF/GRIB source to the output; initially only scalar variables will be supported. Extra variables can be expanded over “higher” dimensions, that is, values copied from one scalar per ImageMosaic granule are assembled into a multidimensional variable over, for example, time and elevation.
  • New labeling features and QGIS compatibility:
  • A number of small new features have been added to labeling to match some of QGIS features, in particular:
  • Kerning is on by default
  • New vendor option to strikethrough text
  • New vendor options to control char and word spacing
  • ../../../_images/charSpacing.png
  • Perpendicular offset now works also for curved labels (previously only supported for straight labels):
  • Labeling the border of polygons as opposed to their centroid when using a LinePlacement (here with repetition and offset):
  • Along with this work some SLD 1.1 text symbolizer fixes were added in order to better support the new QGIS 3.0 label export, here is an example of a map labeling with background image, as shown in QGIS, and then again in GeoServer using the same data and the exported SLD 1.1 style (click to enlarge):
  • CSS improvements:
  • The CSS styling language and editing UI have seen various improvements. The editor now supports some primitive code completion:
  • At the language level:
  • Scale dependencies can now also be expressed using the “@sd” variable (scale denominator) and the values can use common suffixes such as k and M to get more readable values, compare for example “[@scale < 1000000]” with “[@sd < 1M]”
  • Color functions have been introduced to match LessCSS functionality, like “Darken”, “Lighten, “Saturate” and so on. The same functions have been made available in all other styling languages.
  • Calling a “env” variable has been made easier, from “env(‘varName’)” to “@varName” (or “@varName(defaultValue)” if you want to provide a default value).
  • As you probably already know, internally CSS is translated to an equivalent SLD for map rendering purposes. This translation process became 50 times faster over large stylesheets (such as OSM roads, a particularly long and complicated style).
  • Image mosaic improvements and protocol control
  • Image mosaic saw several improvements in 2.12.:
  • First, the support for mosaicking images in different coordinate reference systems improved greatly, with several tweaks and correctness fixes. As a noteworthy change, the code can now handle source data crossing the dateline. The following images show the footprints of images before and after the dateline (expressed in two different UTM zones, 60 and 1 respectively) and the result of mosaicking them as rasters (click to get a larger picture of each):
  • There are more good news for those that handle mosaicks with a lot of super-imposing images taken at different times. If you added interesting information into the mosaic index, such as cloud cover, off-nadir, snow cover and the like, you can now filter and sort over them, in both WMS (viewing) and WCS (downloading) by adding the cql_filter and sortBy KVP parameters.
  • Here is an example of the same mosaic, the first composite favoring smallest cloud cover, the second one favoring recency instead (click to enlarge):
  • GeoPackage graduation:
  • The GeoPackage store jumped straight from community to core package, in light of its increasing importance.
  • The WMS/WFS/WPS output formats are still part of community. Currently GeoPackage vector does not support spatial indexes, but stay tuned, it’s cooking!
  • New community modules
  • The 2.12 series comes with a few new community modules, in particular:
  • Looking into styling vector tiles and server side using a single language? Look no further than the MBStyle module
  • For those into Earth Observation, there is a new OpenSearch for EO module in the community section
  • Need to store full GeoTiff in Amazon S3? The “S3 support for GeoTiff” module might just be what you’re looking for
  • A new “status-monitoring” community module has been added, providing basic statistics system resource usage. Check out this pull request to follow its progress and merge.
  • Mind, community modules are not part of the release, but you can find them in the nightly builds instead.
  • Other assorted improvements:
  • Users REST uses default role service name as a user/group service name
  • imageio-ext-gdal-bindings-xxx.jar not available in geoserver-2.x.x-gdal-plugin.zip anymore since 2.10
  • REST GET resource metadata – file extension can override format parameter
  • GeoServer macOS picks up system extensions
  • SLD files not deleted when SLD is deleted in web admin
  • Reproject geometries in WMS GetFeatureInfo responses when info_format is GML
  • Include Marlin by default in bin/win/osx downloads, add to war instructions
  • Handle placemark placement when centroid of geometry not contained within
  • Enable usage of viewParams in WPS embedded WFS requests
  • Add GeoJson encoder for complex features
  • Allow image mosaic to refer a GeoServer configured store
  • Duplicate GeoPackage formats in layer preview page
  • ExternalGraphicFactory does not have a general way to reset caches
  • Generating a raster SLD style from template produced a functionally invalid style, now fixed
  • Style Editor Can Create Incorrect External Legend URLs
  • Namespace filtering on capabilities returns all layer groups (including the ones in other workspaces)

New in Portable GeoServer 2.12 Beta (Sep 15, 2017)

  • Bug:
  • [GEOS-3443] - Rename should throw 403 error on resource name collision
  • [GEOS-3946] - Updating a coveragestore via REST returns 201 rather than 200
  • [GEOS-4773] - virtual services does not play nice with GML 3 encoding
  • [GEOS-5176] - Namespace filtering on capabilties returns all layer groups (including the ones in other workspaces)
  • [GEOS-5869] - Upload H2 database with REST API doesn't work
  • [GEOS-6014] - app-schema workspace-specific service URL corrupts namespaces of other workspaces
  • [GEOS-6199] - HTTP 500 on REST featuretype DELETE
  • [GEOS-6568] - Uploading SLD's with version 1.1.0 doesn't work through REST interface
  • [GEOS-7456] - The REST dispatcher should not perform partial path matching
  • [GEOS-7845] - Raster styling: ChannelSelection/ContrastEnhancement not working properly
  • [GEOS-7861] - Error when trying parameterize svg with fill color referred by relative path
  • [GEOS-7908] - Parameter value "all" for parameter "list" doesn't work for REST call
  • [GEOS-7958] - Workspacing default styles causes duplication
  • [GEOS-7959] - REST API lacks validation of default style changes
  • [GEOS-7963] - Invalid KML IconStyle
  • [GEOS-7992] - Grab exclusive lock on catalog only when actually writing
  • [GEOS-8010] - Regression: dbtype and filetype store arguments should not be visible
  • [GEOS-8017] - WFS 1.1.0 GML3 schema cache doesn't work well with virtual services
  • [GEOS-8024] - Style Editor Preview Legend Fails on non-SLD Styles
  • [GEOS-8025] - Style Editor Can Create Incorrect External Legend URLs
  • [GEOS-8026] - JMS community module wrongly listen on service post change event
  • [GEOS-8031] - Regression: SHAPE-ZIP output format goes NPE on null geometry values
  • [GEOS-8037] - Catalog style modifed event is send before the style file being updated
  • [GEOS-8038] - Intermittent build failure in gs-restconfig CoverageStoreTest.testDeletePurgeAllAfterConfigure
  • [GEOS-8039] - JMS fails to handle styles workspaces changes
  • [GEOS-8040] - Regression Accessing Styles Subdirectories
  • [GEOS-8052] - CSW get capabilities ingore virtual services settings and always use the global service ones
  • [GEOS-8072] - WMS 1.3.0 capabilities global bounding box computation doesn't use layer groups
  • [GEOS-8073] - Performing a WMTS GetCapabilities request with layer groups provokes a NPE
  • [GEOS-8078] - JMS community module configuration WEB page throws an exception when accesing it
  • [GEOS-8080] - REST API does not differ between global styles and workspace styles
  • [GEOS-8081] - WCS 2.0 does not support vendor CQL_FILTER parameter like WCS 1.0 and 1.1 do
  • [GEOS-8085] - H2 extension REST tests fail randomly
  • [GEOS-8101] - Generating a raster SLD style from template produces a functionally invalid style
  • [GEOS-8110] - Making a WMS request with no Layers results in an IndexOutOfBoundsException
  • [GEOS-8112] - GeoServer generates invalid GeoPackage raster mosaics
  • [GEOS-8118] - REST API switch broke non SLD to SLD format
  • [GEOS-8122] - Intermittent failure of FileUtils.deleteDirectory in SystemTestData.tearDown
  • [GEOS-8123] - GWC caches stale response encoders
  • [GEOS-8134] - sld file lost when moving style from workspace to default workspace
  • [GEOS-8139] - Intermittent off-by-one-second failure in TimeKvpParserTest.testContinuousRelativeInterval
  • [GEOS-8140] - GeoServer uses invalid mime type for GML 3.2 responses
  • [GEOS-8151] - RestConfig tests can fail if the user has an escape char in their environment variables
  • [GEOS-8154] - Trying to enable the in-memory caching for the first time results in a wicket error
  • [GEOS-8155] - Cannot delete style in a workspace if it has the name of a default style
  • [GEOS-8156] - Allow specifying number formatting for scale ratio decoration
  • [GEOS-8163] - Duplicate GeoPackage formats in layer preview page
  • [GEOS-8171] - ExternalGraphicFactory does not have a general way to reset caches
  • [GEOS-8180] - optmized alpha channel expansion doesn't take nodata into account
  • [GEOS-8182] - Style editor preview fails on a data dir with missing css-legend.xml
  • [GEOS-8208] - Style Editor - Layer Preview doesn't respect channel selection order
  • [GEOS-8221] - GeoServerDataDir returns the root directory if workspace is null
  • [GEOS-8234] - Rest html - 500 error cannot flush closed output stream
  • [GEOS-8238] - REST API root resources HTML endpoint gives error
  • [GEOS-8246] - GetFeatureInfo fails on pre-genalized data store when the user is anonymous
  • [GEOS-8272] - Randomness in JPEG 2000 support reader/writer lookup
  • [GEOS-8277] - NPE in preview filtering
  • [GEOS-8279] - GWC direct integration gets fooled by non cacheable requests and returns tiles
  • New Feature:
  • [GEOS-8068] - Add GeoJson encoder for complex features
  • [GEOS-8069] - Add documentation and tests about using MongoDB as a data store for app-schema
  • [GEOS-8113] - Simple code completion for CSS styling language
  • [GEOS-8114] - Add a GetLegendGraphics option to return feature counts at the end of rule labels
  • [GEOS-8166] - Allow image mosaic to refer a GeoServer configured store
  • [GEOS-8223] - Allow ordering layer contents in WMS using a "sortBy" vendor parameter, as well as mosaic contents in WCS
  • [GEOS-8239] - Support Limits and LayerDetails in geofence internal server REST
  • Task
  • [GEOS-8086] - Make Notification community module compatible with the new REST
  • [GEOS-8096] - Align JMS community plugin with the new REST API
  • [GEOS-8120] - Improve JMS community module integration tests coverage
  • [GEOS-8135] - Align GeoFence community module with the new REST API
  • [GEOS-8212] - do not report nodata in CoverageDimensionInfo's min/max range (being reported by getNullValues)
  • Improvement
  • [GEOS-607] - SLD files not deleted with SLD is deleted in web admin
  • [GEOS-2749] - Reproject geometries in WMS GetFeatureInfo responses when info_format is GML
  • [GEOS-3436] - Make REST url matching strict
  • [GEOS-7468] - JMS plugin should use a different default virtual topic name instead of >
  • [GEOS-7519] - Keywords & Identifier for LayerGroups
  • [GEOS-7881] - Include Marlin by default in bin/win/osx downloads, add to war instructions
  • [GEOS-7931] - Improved REST API Documentation
  • [GEOS-7987] - CatalogPostModifyEvent should track modified properties
  • [GEOS-7989] - WMS/WCS supports only String typed custom dimensions
  • [GEOS-8033] - Handle placemark placement when centroid of geometry not contained within
  • [GEOS-8093] - Align Backup Restore plugin REST interface with new GeoServer MVC pattern
  • [GEOS-8099] - GSIP 158 - NetCDF output support for variable attributes and extra variables
  • [GEOS-8124] - Add extension point in backup / restore module for generic resources handler
  • [GEOS-8125] - GetLegendGraphics option to return feature counts at the end of rule labels fails, if no BBOX is send with stand-alone GetLegendgraphics request
  • [GEOS-8189] - Duplicate logging of loading resources and stores
  • [GEOS-8222] - WMTS cascading
  • [GEOS-8263] - Allow in layer preview filtering (CQL, OGC and FeatureID) for rasters formats that support filtering
  • [GEOS-8267] - Enable usage of viewParams in WPS embedded WFS requests

New in Portable GeoServer 2.11.2 (Aug 1, 2017)

  • BUG:
  • Raster styling: ChannelSelection/ContrastEnhancement not working properly
  • WPS ApplicationContext is unset Warnings
  • Requesting images stored in EPSG:4326 in EPSG:3857 pixelates the image
  • REST API does not differ between global styles and workspace styles
  • GetFeatureInfo error for requests with both queryable and non-queryable layers
  • GetLegendGraphic fails if SCALE is greater than MaxScaleDenominator
  • Layer Group SLD ChannelSelection issue
  • WMS layout:css-legend sometimes causes 360 W coordinate shift
  • sld file lost when moving style from workspace to default workspace
  • Cascading WMS does not allow long credentials
  • GWC not responding 304 properly when using Guava in memory cache
  • Trying to enable the in-memory caching for the first time results in a wicket error
  • WFSPPIO fails to remove MetaDataProperty attributes
  • WPS DownloadProcess doesn't respect cropToROI parameter
  • RetypingFeatureCollection doesn't retype subcollections
  • Control Flow blacklist/whitelist error messages
  • optmized alpha channel expansion doesn't take nodata into account
  • Style editor preview fails on a data dir with missing css-legend.xml
  • WFSURIHandler uses case sensitive host name comparison to determine if a URL is reflective
  • Style Editor - Layer Preview doesn't respect channel selection order
  • A layer local service still reports workspace local groups in the capabilities documents
  • Layer Groups page crashes when trying to reorder layers
  • GeoServer Logs page fails to load if log is missing
  • GetLegendGraphic on LayerGroup fails if SCALE is greater than MaxScaleDenominator
  • GeoServerDataDir returns the root directory if workspace is null
  • REST - GET wmslayers/coverages by store returns results from the default workspace
  • New Feature:
  • Add a GetLegendGraphics option to return feature counts at the end of rule labels
  • Task:
  • do not report nodata in CoverageDimensionInfo's min/max range (being reported by getNullValues)
  • Improvement:
  • Reproject geometries in WMS GetFeatureInfo responses when info_format is GML
  • Keywords & Identifier for LayerGroups
  • GetLegendGraphics option to return feature counts at the end of rule labels fails, if no BBOX is send with stand-alone GetLegendgraphics request

New in Portable GeoServer 2.11.1 (Aug 1, 2017)

  • virtual services does not play nice with GML 3 encoding
  • Namespace filtering on capabilties returns all layer groups (including the ones in other workspaces)
  • Not possible to PUT workspace using REST
  • WCS 2.0 Range Subsetting POST requests fails with NullPointerException
  • Error when trying parameterize svg with fill color referred by relative path
  • WFS 1.1.0 GML3 schema cache doesn't work well with virtual services
  • irtual Service fails layer name lookup, needs qualified name
  • Style Editor Preview Legend Fails on non-SLD Styles
  • Style Editor Can Create Incorrect External Legend URLs
  • Regression: SHAPE-ZIP output format goes NPE on null geometry values
  • Intermittent build failure in gs-restconfig CoverageStoreTest.testDeletePurgeAllAfterConfigure
  • Regression Accessing Styles Subdirectories
  • GWC Data Security Vulnerability
  • WFS-T Insert FeatureIds being returned in incorrect order
  • WCS 2.0.1 Scaling should use short names for axis
  • GeoServerDataDirectory::parsedStyle's resourceLocator does not preserve URL #fragments
  • CSW get capabilities ingore virtual services settings and always use the global service ones
  • problematic cache-control settings for GetCapabilities response
  • CapabilitiesCacheHeadersCallback should not set eTag, causes clients to cache capabilities when dimension values changes
  • WMS 1.3.0 capabilities global bounding box computation doesn't use layer groups
  • KML Reflector Loses Custom Dimension Values
  • JMS community module configuration WEB page throws an exception when accesing it
  • jdbcconfig combined with jdbcstore -> three locations for logging config
  • H2 extension REST tests fail randomly
  • Slow WCS GetCoverage extraction with GeoTiff output format
  • Integrated GWC does not work with layer and layer group specific services
  • DXF extension: Invalid output on empty feature collection
  • Generating a raster SLD style from template produces a functionally invalid style
  • WCS 2.0 GetCoverage ignores service level overview policy and disallow reader subsampling
  • GeoServer Home Page missing information messages
  • Making a WMS request with no Layers results in an IndexOutOfBoundsException
  • GeoServer generates invalid GeoPackage raster mosaics
  • Intermittent failure of FileUtils.deleteDirectory in SystemTestData.tearDown
  • GWC caches stale response encoders
  • SLD static legend dimensions not respected
  • Color composite properties for CSS not documented
  • Metatiling may throw a ClassCastException: Raster cannot be cast to WritableRaster
  • Intermittent off-by-one-second failure in TimeKvpParserTest.testContinuousRelativeInterval
  • Task:
  • ChannelSelection after raster RenderingTransformation on a coverageView may throw a IllegalArgumentException: Band number N is not valid
  • Improve JMS community module integration tests coverage
  • Improvement:
  • DataAccess full type name listing called multiple times in OGC request against SQL views
  • JMS plugin should use a different default virtual topic name instead of >
  • Allow disabling usage of SLD and SLD_BODY in WMS requests (also for virtual services)
  • GSIP 158 - NetCDF output support for variable attributes and extra variables
  • Add extension point in backup / restore module for generic resources handler

New in Portable GeoServer 2.11.0 (Mar 31, 2017)

  • Fixed inability to edit layer groups after modifying a group layer order and layer default style
  • Windows service installer now sets up enough memory for GeoServer to run (for production usage you might still want to tweak it)
  • Fixed interactin between layer group and security that sometimes prevented GetMap from succeding
  • Assorted JMS clustering fixes

New in Portable GeoServer 2.11 RC 1 (Mar 14, 2017)

  • This is a release candidate of GeoServer not intended for production use. This release is made in conjunction with GeoTools 16-RC1 and GeoWebCache 1.11-RC1.
  • Thanks to everyone who provided feedback, bug reports and fixes. Here are some of the changes included in 2.11-RC1:
  • Incompatibilities with GeoFence and Control-flow have been resolved
  • Empty WFS Transactions (which perform no changes) no indicating everything has changed
  • Improvements to WFS GetFeature support for 3D BBOX requests
  • We have one known regression with the windows service installer (memory setting is incorrect)
  • BUG:
  • [GEOS-4169] - Dispatcher does not leverage ServiceStrategy abort method
  • [GEOS-4616] - Downloading zip file using /rest/workspaces/<ws>/datastores/<ds>/file.shp doesn't work after GeoServer reload
  • [GEOS-5190] - Cascaded WMS does not encrypt configuration password
  • [GEOS-7769] - ConcurrentModificationException in CatalogImpl.java
  • [GEOS-7804] - GeoFence and Control-flow are incompatible
  • [GEOS-7883] - Empty WFS transaction touches every feature in the layer
  • [GEOS-7926] - Reloading GeoServer re-enables all disabled WMTS services
  • [GEOS-7950] - GeoFence: compatibility issue with controlflow
  • [GEOS-7999] - GWC throws exceptions while loading CITE data dirs if stores cannot be connected to
  • [GEOS-8001] - WMTS capabilities does not include a style for default style on vector layers
  • [GEOS-8003] - Control-flow access beans through GeoServerExtensions in BeanFactoryPostProcessor callbacks
  • [GEOS-8004] - Regression: Integrated GWC config files not overridable
  • [GEOS-8012] - Slow WFS GetFeature when using a 3D bbox POST request
  • [GEOS-8013] - GetFeature GET request with 3d bbox fails to parse
  • [GEOS-8014] - WFS GetFeature fails to parse a 3d BBOX with 6 coordinates and explicit SRS name
  • [GEOS-8018] - WMS cascading fails with NPE when advanced projection handling gets disabled
  • [GEOS-8019] - Advanced Reprojection Handling may generate huge width*heigh requests at native resolution

New in Portable GeoServer 2.10.2 (Feb 24, 2017)

  • New Features and Improvements:
  • Promote YSLD module to extension
  • Add jetty-servlets.jar file to default jetty to help users set up CORS
  • Handle non error http codes (from HttpCodeException) as normal response
  • Reducing output size of PDF with graphic fills by using tiling patterns
  • Bug Fixes:
  • Disk quota usage page no longer shows negative bytes free (if you already have negative values in your quota DB, follow this instructions)
  • New style editor can now detect and fix old GeoServer CSS styles (which were marked as SLD)
  • Fixes to json output for layergroup
  • Can not display table based pages in Turkish locale
  • WMS 1.3.0 GetCapabilities response doesn’t validate against the schema when using LayerGroups
  • Editing style and moving it into workspace loses the edits
  • Style Edit Page: Apply then Submit causes WicketRuntimeException
  • Force transformation of ROI and NoData to transparent/bg color in direct raster rendering path

New in Portable GeoServer 2.10.1 (Dec 28, 2016)

  • New Features and Improvements:
  • Allow windows installer to use port 80
  • Allow underlined labels in SLD
  • Add documentation for the WMTS multidimensional module
  • Add an example of GS Download process with request of output reference
  • Bug Fixes:
  • Slow startup of GeoServer with many layers
  • Cannot upload style files in the style editor
  • Generating a raster SLD style from template produces a formally invalid style
  • WPS fails if geometry column is named “location”
  • REST API services settings.html throws errors for null values
  • REST PUT property update on ServiceInfo does not work properly for primitive properties
  • ClassCastException when posting WFS Transaction request on a URL containing a valid GetFeature request
  • High oversampling on raster cells with reproject can put a significant amount of load on GeoServer
  • JMS Clustering does not propagate virtual services configurations

New in Portable GeoServer 2.10 (Oct 31, 2016)

  • Bug:
  • [GEOS-7443] - Styles in json layergroup
  • [GEOS-7677] - Window installer changes port not working
  • [GEOS-7681] - Regression: WFS Insert operations produce SQL that includes identity column; SQL Server plugin then fails to insert
  • [GEOS-7689] - GeoServer Style Page - NotSerializableException
  • [GEOS-7691] - GeoServer Style Page - Preview reloads upon save
  • [GEOS-7692] - GeoServer Style Page - Exception previewing with unreachable layer
  • [GEOS-7693] - GeoServer style page - Exception previewing with WMS layer
  • [GEOS-7702] - Auto-detect legend parameters creates stack trace when no custom legend is specified
  • [GEOS-7749] - ArrayIndexOutOfBounds exc on CoverageViewReader
  • [GEOS-7768] - Filter function "greaterEqualThan" is not properly working
  • [GEOS-7771] - REST - Empty response on JSON layergroup
  • [GEOS-7788] - original BandNames from coverageViews are lost, being replaced by ColorModel based names
  • [GEOS-7792] - WFS ignores disabling of stores
  • [GEOS-7797] - Style Editor Publishing Tab
  • [GEOS-7798] - Documentation CSS Styling - Update for the new style page
  • [GEOS-7811] - More WFS 2.0 NPE due to XSD schema corruption under load
  • New Feature:
  • [GEOS-7674] - GSIP-149 Improved GeoServer Style Page
  • Improvement:
  • [GEOS-7719] - Communtiy Module: OAuth2 filter and Google OAuth2 filter
  • [GEOS-7802] - Add a URL Mangler injecting Bearer type access tokens to Services
  • [GEOS-7803] - GeoFence Embedded Server does not check for plain Rule Services

New in Portable GeoServer 2.9.1 (Sep 21, 2016)

  • Fixes for WFS editing failing for geometries in full 3D CRS
  • ColorMap variable substitution now working correctly for multiple layers in a GetMap request
  • PDF printing fixed to properly render SLD “shape://horline” symbol, prevent invalid polygon generation, out of memory errors, and large file generation.
  • Integrated GeoFence DB path is now set correctly in Windows.
  • KML placemarks now being set correctly when KMSCORE=0
  • Support for rotated pole projection NetCDF and GRIB2 files, including the native GRIB2 file format used by the NOAA Rapid Refresh (RAPv3) weather forecast model
  • Support for multivalued xlink:href ClientProperty in app-schema mappings
  • Support requiring files to exist for GeoServer startup, to protect against insecure fallback when a data directory on a network share is unavailable
  • And much more, see all the tickets resolved in the release notes
  • Security Considerations:
  • Although we have not been able to reproduce from GeoServer, a remote execution vulnerability has been reported against both the Restlet and the Apache Commons BeanUtils libraries we use. We have patched our use of these libraries as a preventative measure. We would like to thank Kevin Smith for doing the bulk of the work, and Andrea Aime for providing a patched BeanUtils library addressing these vulnerabilities.
  • Layer security restrictions in CHALLENGE mode were not being correctly applied by embedded GeoWebCache. Thanks to Nick Muerdter for his responsible report of this vulnerability and for submitting a fix (that included a unit test!)
  • Carl Schroedl reported a vulnerability at application startup when working with a data directory on a network file system, a new configuration option has been provided to check that the directory exists. Thanks to Carl for following our responsible disclosure procedure, and to Ben Caradoc-Davies for implementing the new parameter.

New in Portable GeoServer 2.8.3 (Apr 25, 2016)

  • Fixes and new functionality include:
  • A few security subsystem related fixed, DescribeFeatureType and layer preview now works with mixed security mode, new layer groups can be edited when using GeoFence, mixing layer groups and layers with other styles in a GetMap request now works with GeoFence too, it’s possible to access workspace specific services when security only allows access to some layers of it (but not the full workspace), embedded GWC can now serve layer groups when “data security” is enabled
  • WFS cascading related fixes, the WFS store does not get disabled on restart anymore, and can handle straight line elements embedded in a curve container,
  • WFS server received GML3 encoding fixes for geometries with 3D coordinates and pure geometry collections
  • Fixed regression with configuration of SQL Views having multiple geometry fields
  • WPS can now be enabled/disabled per workspace properly
  • And much more, see all the 34 tickets resolved in the release notes

New in Portable GeoServer 2.9 Beta 2 (Apr 25, 2016)

  • Highlights:
  • This release requires Java 8 and is compatible with Oracle JDK and OpenJDK
  • GeoServer now requires Servlet 3 (so Tomcat 7 or newer if you are doing a WAR install)
  • Negative-date now supported (for GeoNode compatibility)
  • New REST API for installation status
  • For more information check the release notes for beta2
  • Update to Spring 4 and JAI-EXT to 1.0.9

New in Portable GeoServer 2.9 Beta (Mar 2, 2016)

  • Highlights:
  • This release requires Java 8.
  • We have identified one known incompatibility and may need to adjust our roadmap based on your testing and feedback.
  • Documentation has a new layout grouping service description and configuration reference together. Services that are an optional install (such as CSW and WPS) have been brought into a consistent location so you can easily see what GeoServer is capable of rather than getting lost in extensions.
  • This release includes support for perpendicular offset in SLD (see SLD cookbook for an example).
  • UTFGrid support in WMS GetMap
  • Internally we have upgraded the user interface library – taking the opportunity to update global, image processing and raster access screens. The layer group page has also been split into tabs. By popular request the button to add a new layer has been renamed to “Add new layer”.
  • Legend graphic has always been auto-generated, you can use your own custom icons.
  • For installations without direct file system access you can now manage resources (icons, fonts,templates) using the REST API.
  • An useful improvement to the aggregation process is the group aggregate queries (sum, average, count) by an attribute.
  • For more information, as always, check the beta release notes (and milestone release notes)

New in Portable GeoServer 2.8.1 (Nov 21, 2015)

  • Bug:
  • [GEOS-3228] - Empty filter causes IndexOutOfBoundsException
  • [GEOS-3432] - RESTConfig "styles" list does not get generated if a style is missing its associated sld file
  • [GEOS-4986] - Creating SQL Views via RESTConfig as JSON fails
  • [GEOS-6768] - externalGraphic with relative path and query parameters problem
  • [GEOS-6975] - Multiline Labels are not properly displayed when a translation is applied to a pdf WMS Request
  • [GEOS-7045] - Layer Security - Catalog Mode
  • [GEOS-7142] - WCS 2.0.1 can build BoundedBy with wrong axis order
  • [GEOS-7148] - WCS 2.0.1 can send coverage in wrong format
  • [GEOS-7154] - JSON totalFeatures can be wrong with spatial filters in WFS 1.1.0
  • [GEOS-7181] - New layerGroup via REST ignores styles in a workspace
  • [GEOS-7187] - Documentation on REST "Resource reset" with errors
  • [GEOS-7199] - Preview of external graphics in SLD style
  • [GEOS-7217] - WMS 1.1 Capabilities document does not match DTD - missing Title in style
  • [GEOS-7219] - Geofence integrated server extension
  • [GEOS-7226] - Default GML links in Layer Preview page do not work for app-schema layers
  • [GEOS-7230] - gs:DownloadEstimator should check size is less than Integer.MAX_VALUE
  • [GEOS-7243] - Render (or transform) fails on Multipolygon but not on polygon
  • [GEOS-7254] - Proposals section refers to wrong Links
  • [GEOS-7256] - Maven Cobertura plugin does not work
  • [GEOS-7259] - JMS based cluster should use qualified names for Layers and Layergroups
  • [GEOS-7266] - Migration WFSDataStore geoserver 2.4 to 2.8 fails
  • [GEOS-7267] - JMS Clustering should prefix Styles names with workspace
  • [GEOS-7280] - Avoid catalog linear scans in GWC integration listeners
  • [GEOS-7286] - GDAL WCS output format fails to encode gray/alpha images in Geospatial PDF
  • [GEOS-7295] - OpenLayers preview does not work if authkey community module is enabled
  • [GEOS-7302] - Using on the fly meta tiling in WMS request may result in rendered images not being disposed of
  • [GEOS-7307] - NETCDF Z index load errors
  • [GEOS-7312] - RawDataPPIO does not close InputStreams it opens
  • [GEOS-7314] - GeoTiffPPIO can return the source file of a processed coverage
  • Task:
  • [GEOS-7220] - Document GetFeatureInfo on layergroup
  • [GEOS-7251] - GSIP-134 - Promote multidimensional modules (GRIB,NetCDF) to Extension
  • [GEOS-7309] - Fix explicit dependency to joda-time 2.2
  • Improvement:
  • [GEOS-4762] - WCS should force usage of imageread
  • [GEOS-7150] - Features counted twice for WFS queries with GeoJSON responses
  • [GEOS-7214] - Add scaling support to WPS gs:Download process
  • [GEOS-7227] - Defer bounds calculation during import

New in Portable GeoServer 2.8.0 (Oct 24, 2015)

  • GeoServer 2.8.0 is the culmination of our latest six month development cycle and contains several new features, along with fixes and security updates.
  • This blog post provides a breakdown by functional area, for more detail see the 2.8.0, 2.8-beta and 2.8-M0 release notes.
  • Data access and configuration
  • PostGIS curves and Oracle speedups
  • GeoServer 2.6.0, released one year ago, added read only support for Oracle curved geometries, along with all the necessary machinery to represent them in memory, draw them and encode them in WMS.
  • This release adds read and write support for curves in PostGIS instead, bringing our support for the famous open source spatial database to match and surpass (with write support) the Oracle one. PostGIS curves are supported in all OGC protocols, either via native support (e.g., GML) or on the fly linearization (e.g. shapefile output).
  • Sample curve data for PostGIS:
  • On the Oracle side, we improved the startup times for installation that are serving of Oracle layers by optimizing the table geometry type and metadata access.
  • Note: Due to license restrictions the oracle extension no longer includes an Oracle JDBC driver, see the user guide for manual install instructions.
  • Filtering layers during configuration
  • For all those that want to publish only a subset of the original data to the public we are now offering the configuration of a simple CQL filter that will be applied on data access, no matter what protocol is used. Think of it as a mini “sql view” that can be applied at ease against any data source, not just databases.
  • ../../_images/data_layers_cql.png
  • Layer CQL Filter:
  • This is of course not meant to limit feature access for security reasons, for that use case you should really look into GeoFence.
  • Raster NODATA with JAI-Ext Library
  • You may now optionally use the JAI-Ext image processing operations when working with raster data. These operations directly support raster NODATA and footprints (reducing the amount of processing required when working with these datasets).
  • JAI-Ext Operations
  • JAI-Ext Operations
  • REST API for Image Moasic Granule Management:
  • Structured coverages have recently been added to GeoServer, you can now use the REST API to manage and update individual granules in an image mosaic.
  • Process raster data during import:
  • Vector import has supported limited data processing during import for some time. GeoServer 2.8.0 provides the same functionality (allowing raster files to be processed using GDAL command line tools during import).
  • Mapping improvements:
  • This release is full of big and small map rendering improvements for all. Here is an organized list.
  • Z ordering support:
  • This new features extends SLD and CSS with vendor options allowing the style writer to control the painting order of features, either inside a single layer, or across layers: this allows proper map rendering of areas where a number of objects have below/above relationsthips, like this area in Germany, where a lot of roads and rails are crossing each other in a maze of underpasses, overpasses, and bridges.
  • z-order example:
  • This is achieved by specifying a “sortBy” vendor option at the FeatureTypeStyle level, with one or more sorting attributes, and in case multiple layers or FeatureTypeStyles are involved, by grouping them into a single “sortByGroup”. You can find more information, along with examples in CSS and SLD, in your user guide.
  • We would like to thank DLR for sponsoring this improvement.
  • Constrast enhancement improved:
  • GeoServer has been supporting contrast enhancement for a while, within the limits of the SLD specification. Version 2.8.0 steps beyond the limits of the standard by adding vendor parameters to control the normalization sub-algorithm (stretch to min/max, clip to min/max, clip to zero), as well as its parameters. Here is an example of the syntax.
  • New arrow mark:
  • Lots of map needs arrows… but every time is the same story, yes, the arrow is almost fine, but it should be longer, or thicker, or with a bigger head, and so on. Instead of having to re-invent a new arrow symbol each time, we created one whose proportions can be altered by changing parameters in its name.
  • GeoServer 2.8.0 improves its support for maps in multiple scripts, which can be a source of headaches. While it’s often easy to find support for most scripts in fonts, it’s hard to get one that would support, for example, western languages, arabic, corean, indi and simplified chinese in a single package. Especially for scripts like simplified chinese you have to resort to custom fonts.
  • Now, what happens if you are labelling a map that contains them all, and sometimes, contains more than one of them in a single label? Before GeoServer 2.8.0 we did not have a great answer to that, but now, you can simply specify multiple fonts in a TextSymbolizer, and the most suitable one will be chosen on the fly, eventually using multiple fonts in a single label in case there is no one able to handle the whole of it. Here is an example with mixed script labels:
  • Selezione_072
  • Multi-script Support:
  • We would like to thank DLR for sponsoring this improvement.
  • Improved labeling density:
  • Before GeoServer 2.8.0 labelling dense road networks with lots of diagonal and curved labels might have left the impression that more labels could have fit the map… and that was not just an impression! Indeed, the previous label algorithm was reserving a busy area for the bounding box containing the label, which as you may see, is a lot more space than the actual label occupancy:
  • Letter reservation - conflict:
  • The French National Institute for geographic information provided a patch that makes the single chars of diagonal or curved labels be reserved instead, resulting in maps with quite a bit more labelled items per square inch:
  • tiger-tiger_roads (1)
  • Improved Label Density:
  • WMS/WMTS protocol and configuration improvements
  • Creating new styles from templates:
  • It’s now possible to create new styles starting from the built-in templates, and the style will be encoded in the desired style language (SLD, or CSS, or even something else, if you created your own styling language extension point):
  • ../../_images/data_style_editor_generate.png
  • Generate Default Style:
  • GeoWebCache filter parameters GUI improved
  • It’s now possible to configure integer parameters in the caching section of a layer configuration.
  • Parameter Filter
  • GeoWebCache Storage
  • GeoWebCache can now store cached tiles on a perlayer basis – including Amazon S3.
  • tile storage:
  • Request parameter support in Freemaker templates
  • Freemarker GetFeatureInfo templates can now access to the request parameter, as well as the Java process environment variables, in order to customize their response. For example, it’s now possible to expand the following variables in the template:
  • ${request.LAYERS}
  • ${request.ENV.PROPERTY}
  • ${environment.GEOSERVER_DATA_DIR}
  • ${environment.WEB_SITE_URL}
  • Controlling interpolation on a layer by layer basis:
  • You can now control layer interpolation via GetMap, and specify a different interpolation policy on different layers. This is great if you are serving multiple raster maps, and maybe you want to have your classified raster use nearest neighbor, while showing the ozone density layer with bilinear interpolation.
  • Inspire configuration improved
  • Security:
  • REST API for access control
  • Their is now a REST API for configuring security access control – see the user guide for details.

New in Portable GeoServer 2.7.0 (Apr 1, 2015)

  • Color composition and color blending:
  • These are two new extensions to the rendering engine that allows for greater control over how overlapping layers in a map are merged together. Instead of just placing layers on top of others (with or without transparency), there is now a range of filters and effects, such as “multiply”, “darken”, and “hard light”.
  • Relative time support in WMS/WCS:
  • GeoServer has long had the ability to specify dates/times in requests to subset data. Up until now these dates/times needed to be absolute. Support has now been added for specifying relative time.
  • WPS clustering:
  • There are quite a few improvements to the Web Processing Service module, courtesy of Andrea Aime and GeoSolutions. (Please note that WPS is still an extension.)
  • GeoServer has a new WPS extension point allowing GeoServer nodes in the same cluster to share the status of current WPS requests. This is particularly important for asynchronous requests, as the client polling for the progress/results might not be hitting the same node that’s currently running the request.
  • This initial implementation leverages the Hazelcast library to share the information about the current process status using a replicated map.
  • WPS security
  • GeoServer now has the ability to connect WPS processes to the standard role-based security system. This means that administrators can now determine what users and groups can access or execute, making WPS usage safer and more secure.
  • WPS limits:
  • In addition to limiting the users and groups that can access WPS processes, GeoServer now also has the ability to set WPS input execution limits (such as timeout values), ensuring that a runaway process can’t cause a system to fail due to utilizing too many resources. Limits can be set globally and on a per-process basis.
  • WPS dismiss:
  • A client that connects to the WPS now not only has the ability to execute processes, but also the ability to dismiss/kill processes. Also new is the ability for the administrator to see the current processes that are being executed on the system.
  • CSS extension refresh:
  • The popular CSS extension, originally written by David Winslow of Boundless, allows users to style layers using a CSS-like syntax instead of SLD. This extension has now been entirely rewritten in native Java. The functionality remains the same, though with improvements in speed and stability.
  • New CSS workshop:
  • There is also now a full workshop-sized tutorial devoted to using CSS in GeoServer. This expands upon the basic tutorial, and goes into greater detail, providing a powerful learning resource for anyone who wants to learn how to style maps with CSS.
  • Cascade WFS Stored Queries:
  • Added support for cascaded WFS stored queries.

New in Portable GeoServer 2.7 RC 1 (Feb 21, 2015)

  • Bug:
  • [GEOS-2437] - Catalog too lax -- messes up REST URLs
  • [GEOS-4043] - Deleting a Workspace in Wicket UI throws Exception
  • [GEOS-5856] - WCS 1.1.1 capabilities content type should be text/xml
  • [GEOS-6134] - WFS 2.0 cannot output GML 3.1
  • [GEOS-6172] - Unable to seed layer with style assigned to workspace
  • [GEOS-6287] - WFS: not all SRS styles are documented
  • [GEOS-6429] - Update documentation example pom.xml files with gs prefix
  • [GEOS-6508] - WFS 2.0 three way join fails with a NPE
  • [GEOS-6512] - GWC integration does not recognize Layer Group in Workspace
  • [GEOS-6654] - XLink moving to 1.1
  • [GEOS-6807] - WCS GetCapabilties requests with Sections parameter throws an exception
  • [GEOS-6823] - CSS parser complains about inline comments
  • [GEOS-6843] - gt-css generation locks up geoserver with 100% cpu
  • [GEOS-6844] - WFS 2.0 GetFeature + GeoJSON output + skip count of number matched --> NullPointerException
  • [GEOS-6848] - When the "Linearization Tolerance" is not empty geoserver throws an error when publishing data with EPSG:4326
  • [GEOS-6849] - JMS clustering plugin fails while propagating CSS styles
  • [GEOS-6851] - Geoserver building broke at Gs-wps-core:WPSXStreamLoaderTest.java line :81
  • [GEOS-6858] - WPS plugin depends on hazelcast, but doesn't include required jar
  • [GEOS-6867] - Filter validation fails in WFS when a join needs to be reordered, and has local, non joining filters
  • [GEOS-6869] - Join filter validator applies the joining capabilities checks also to non joining filters
  • [GEOS-6871] - WFS claims not to support joins using or and not, but the underlying JDBC stores do
  • [GEOS-6873] - GeoServer leaking commons http-client connection pools in ResourcePool
  • [GEOS-6882] - LayerPreview filtering by keyword won't return layer groups anymore
  • Improvement:
  • [GEOS-2599] - Refresh text on UI Welcome page
  • [GEOS-5909] - Invalid but parseable CSS silently fails to turn into SLD
  • [GEOS-6259] - User's Manual History page has confusing text
  • [GEOS-6267] - # of features missing comma
  • [GEOS-6271] - Incorrectly worded description in Coverage Access settings
  • [GEOS-6273] - JAI documentation typo
  • [GEOS-6280] - Typo in Stores documentation page
  • [GEOS-6727] - Allowing building with JDK8
  • Task:
  • [GEOS-5509] - Quickstart -> styling A map

New in Portable GeoServer 2.7 Beta (Feb 19, 2015)

  • Sub-task:
  • [GEOS-5392] - GetCapabilities 1.1.1 and 1.3.0 does not include GetMap formats for exceptions
  • Bug:
  • [GEOS-5787] - GetFeatureInfo HTTP Response header do not contain charset definition if format is text/plain
  • [GEOS-5917] - Scale rules using >= or

New in Portable GeoServer 2.6.1 (Nov 24, 2014)

  • Fix for slow rendering of maps with lots of layers coming from a spatial database, reported by numerous users
  • Improvements in rendering labels over transparent maps
  • Fix for rendering tiled raster data, it could occasionally miss portions of the data
  • Fixes for WFS 2.0 joins
  • Better memory management when HTTP gzip-ping large amounts of GML/CSV/JSON data
  • Multidimensional WCS 2.0 outputs (NetCDF downloads) now support subsetting in CRS other than WGS84
  • An option to disable JAI native warp, which can cause some instability when reprojecting certain raster data sets
  • Some improvements in the GeoPackage outputs (still a community module, available via nightly builds)
  • Bug:
  • [GEOS-5149] - WFS 2.0 spatial join failed
  • [GEOS-5312] - CSV WFS output format doesn't deal with Windows newlines
  • [GEOS-5486] - Poor text with java 7 and Transparency
  • [GEOS-6426] - Administration UI does not work properly with Internet Explorer 11
  • [GEOS-6685] - WrappedSampleDimension sets NoData category as qualitative
  • [GEOS-6686] - MBTiles and GeoPkg are not correctly shown in LayerPreview available formats
  • [GEOS-6691] - Geoserver causes a query SELECT NULL AS TABLE_CAT... to be generated by JDBC over and over again
  • [GEOS-6692] - multidimensional output in WCS 2.0 only supports WGS84 subsetting
  • [GEOS-6693] - Demo request page can product bad urls without slash
  • [GEOS-6701] - Provide better error messages when wfs sortby attribute does not exists
  • [GEOS-6703] - IOUtils.zipDirectory created zip without directory entries
  • [GEOS-6707] - SortBy property name validation breaks app-schema
  • [GEOS-6714] - Geoserver Logs page inaccessible
  • [GEOS-6719] - Shapefile output format can leak JDBC connections
  • [GEOS-6733] - Database performance regression
  • [GEOS-6735] - CSSHandler leaves file handles open
  • [GEOS-6748] - PointPlacement with Rotation in TextSymbolizer gives NullPointerException
  • [GEOS-6750] - Raster rendering might read a row/col less in some cases
  • [GEOS-6751] - WFS can OOM when gzipping large compressible output
  • [GEOS-6762] - CSW capabilities param/constraints section can grow indefinitely when using a CSW CapabilitiesDecorator
  • [GEOS-6763] - polygon.xml generated with reference to default_line.sld
  • Improvement:
  • [GEOS-5034] - Non-advertised layers should appear in the layer-specific virtual service GetCapabilities document
  • [GEOS-6603] - Add a button for disabling native warp
  • [GEOS-6681] - New REST GET parameter for disabling exception logging when 404 is returned
  • [GEOS-6697] - Avoid adding "null" messages in exception reports
  • [GEOS-6708] - Allow GeoPkg datastore to create data stores relative to data directory.
  • [GEOS-6711] - Introduce mapper parameters and webservice based mapper in authkey
  • [GEOS-6717] - Improve store param hover labels

New in Portable GeoServer 2.6.0 (Oct 25, 2014)

  • New and Improved
  • New functionality:
  • WFS Cascade: WFS Cascade has been updated to use a brand new GeoTools wfs client implementation.
  • Curve support for GML and WMS: GeoServer curve support has been added for interaction with Oracle Spatial. To configure look for Linearization tolerance when configuring your layer. As outlined in the FOSS4G presentation we are seeking interested parties to implement or fund curve support for PostGIS and SQL Server.
  • Advanced Projection Handling: Considerable care has been taken in the handling of raster data across the dateline and in polar projections.
  • Coverage Views: recombine bands from different sources into a multi-band coverage (use “configure new coverage view” when creating a new layer).
  • Vector footprints support in image mosaics: you can now cut out of your images the “bad” parts using vector footprints, setup as sidecar wkb/wkt files, or as a global footprints shapefile
  • Pluggable Styles: this change allows greater integration with the CSS Extension (and opens the door for even more style languages in the future)
  • Wind Barbs and WKT Graphics: for greater creative control.
  • Printing: new implementation from our friends at MapFish (based on MapFish 2.x).
  • Scripting community module: a great new editor for editing scripts directly from the web application
  • New raster formats: NetCDF and GRIB support, for anyone dealing with multidimensional data. NetCDF is also supported as a WCS output format, and it allows to extract data hypercubes out of your WCS server. Finally, it is also possible to build multidimensional mosaics of NetCDF and GRIB files, and add to the using the harvest REST API.
  • Language and Internationalisation: Turkish support has been added and French, Korean, Polish, Romanian are all caught up with the latest developments. Spot a translation mistake? Help translate here: GeoServer Latest localizations
  • Bugs:
  • GwcSettingsPage WicketException if the user adds a new standard gridset
  • Not reporting correct style width/height in GetCaps
  • Unable to add new default gridsets
  • Exception thrown when running GeoServer with INSPIRE plugin in Tomcat
  • GWC's GeoServerLifecycleHandler fails to be created and causes datastores not to be disposed
  • WMS 1.3 request against shapefile fails during rendering
  • NullPointerException when setting empty ParameterFilter in the Layer Caching Panel
  • WMS GetFeatureInfo throws NullPointerException with info_format=application/json
  • Cross-site scripting vulnerability in WMS exceptions
  • DescribeEOCoverageSet returns invalid XML on coverageViews. Afterwards the WCS 2.0.1 GetCapabilities and DescribeCoverage request does not work
  • WCS Helper gridCoverageRequests multidim splitter doesn't close Featureiterator
  • NetCDF ouput on Coverage Views may throws exceptions when dealing with input bands coming from different input files
  • Integrate OL3 into map preview
  • NPE when trying to reload bands with empty range
  • Failure to generate WMS capabilities document when cascading a WMS server that does not advertise GetFeatureInfo
  • WCS 2.0 GetCoverage with gml output does not properly setup the UoM and noData values configured in the bands
  • Update headers to (c) OSGeo
  • ImageMosaic layers do not show images when version=1.3.0
  • RestConfig StyleTests fail due to file locking on Windows
  • OWS FilePublisher test fails on Windows due to file encoding issues.
  • CSS Style destroyed when using "CSS Styles" page
  • Cascading images in CRS other than their native ones
  • Scripting app resource throws null pointer exception if main script isn't found
  • WCS20 GetCoverage multipart does encoding 2 times
  • WPS Metadata title is hardcoded (WPSInfo.getTitle always returns Prototype GeoServer WPS)

New in Portable GeoServer 2.5.3 (Oct 25, 2014)

  • A new process, PagedUnique, to efficiently grab large amounts of unique values from a layer column
  • Legend preview functionality in the style editor
  • A long awaited fix for poor font rendering when creating transparent map
  • Some fixes in WFS 2.0 joins
  • GeoJSON CRS syntax has been updated to the current valid one (we were using a old legacy one)
  • Some GetFeatureInfo further fixes for complex styles
  • Fix scale computation when the CRS unit of measure is not meters
  • Some WMS 1.3 rendering fixes with image mosaics
  • Avoid invalid reports of leaked connections when using SHAPE-ZIP output format against SQL views whose SQL is no more valid
  • Check the release notes for more details
  • This release is made in conjunction with GeoTools 11.3

New in Portable GeoServer 2.6 RC 1 (Aug 19, 2014)

  • Bug:
  • [GEOS-6502] - stroke-Dasharray style partially breaks WMS getfeatureinfo
  • [GEOS-6519] - WPS not enabling in workspace
  • [GEOS-6529] - NullPointerException in AdvancedDispatchFilter, seen when geoserver-monitoring included
  • [GEOS-6570] - rendering regression with geoserver 2.5.1 when WMS 1.3.0
  • [GEOS-6578] - Unable to unwrap OracleConnection from JBoss WrappedConnectionJDK6
  • [GEOS-6588] - GeoServer.app fails to start due to switch to Java 7
  • [GEOS-6596] - Point symbols clipped on tile edge
  • [GEOS-6598] - Enhancement for the VectorRenderingLayerIdentifier
  • [GEOS-6604] - WMS GetFeatureInfo using 'vendorParams: propertyName' does not working after upgrade to 2.5.x
  • [GEOS-6616] - Clear cached attribute information during FeatureType DELETE
  • [GEOS-6617] - Scale computation is wrong when the map is expressed in a unit other than meters
  • [GEOS-6619] - Rendering based feature info will return just one geometry of the group that falls into the same pixel
  • [GEOS-6620] - Style Editor Doesn't Work without CodeMirror Editor
  • Improvement:
  • [GEOS-6207] - truncate labels on border
  • [GEOS-6581] - Allow GeoServer to store styles natively in different formats
  • [GEOS-6589] - gs-main maven/eclipse compilation issue due to xml-apis
  • [GEOS-6597] - Avoid full namespace scan for GetFeature requests
  • [GEOS-6599] - Do not log all SerializableRenderedImage misguided attempts to connect to a server

New in Portable GeoServer 2.5.2 (Jul 24, 2014)

  • Some fixes in the new GetFeatureInfo engine, for unfilled polygons and dashed lines
  • Solved a configuration issue that might have linked two styles toghether (edit one, the other changed as well)
  • DBMS connection leak in some WFS GetFeature with bounds enabled
  • Have WPS work properly as a workspace specific service, and report the current process activity during asynchronous requests (for processes that do report what they are doing in plain english, besides offering a progress percentage)
  • Add a way to resctrict output formats supported by WMS GetMap and GetFeatureInfo
  • More docs on how to setup JNDI connection pools in GeoServer

New in Portable GeoServer 2.5.1 (Jul 23, 2014)

  • By popular request Top/Bottom labels when configuring layer group order
  • You can now identify GeoServer “nodes” in a cluster by configuring a label and color in the UI. Documentation and example in the user guide
  • Have you ever run GeoServer and not quite gotten your file permissions correct? GeoServer now has better logging when it cannot your data directory and is required to “fall back” to the embedded data directory during start up
  • We have a new GRIB community module (community modules are not in the release until they pass a QA check, but great to see new development taking shape)
  • Documentation on the jp2kak extension now in the user guide
  • Additional documentation for the image mosaic in the user guide with tutorials covering the plugin, raster time-series, time and elevation and footprint management
  • WCS 2.0 support continues to improve with DescribeCoverage now supporting null values
  • Central Authentication Service (CAS) authentication has received a lot of QA this release and is now available in the GeoServer 2.5.x series

New in Portable GeoServer 2.5.0 (May 19, 2014)

  • Bug:
  • [GEOS-6187] - wfs2 + resultType=hits + maxFeatures returns bad numberMatched
  • [GEOS-6211] - Assorted CSS documentation glitches
  • [GEOS-6362] - WMS cascading fails if layers are secured and logging is set to verbose
  • [GEOS-6373] - Persisters fails writing temporary file
  • [GEOS-6378] - CAS extension throws exception in case of empty URL params
  • [GEOS-6381] - Missing user roles if using Authkey Authentication Filter
  • [GEOS-6387] - VectorRenderingLayerIdentifier will return the same feature multiple times, if there are multiple rules in the SLD matching it
  • [GEOS-6391] - Unable to get 5x5 test coverage when configuring a layer with footprint in some cases.
  • [GEOS-6394] - importer cannot handle jagged geojson
  • Improvement:
  • [GEOS-5027] - ST_Simplify in the PostGIS driver for performance
  • [GEOS-6380] - Update JNDI tutorial
  • Task:
  • [GEOS-6393] - Addition of documentation about Footprint management

New in Portable GeoServer 2.5 RC 2 (May 19, 2014)

  • Bug:
  • [GEOS-6075] - Leverage XStream ability to ignore unknown elements
  • [GEOS-6354] - Polar stereographic projections broken
  • [GEOS-6368] - CSW regression: record type handling is not namespace aware anymore
  • Improvement:
  • [GEOS-5276] - Oracle JNDI store configuration should expose fetch size parameter

New in Portable GeoServer 2.4.4 (May 19, 2014)

  • Bug:
  • Layer rendering fails if font-style etc are missing
  • "halo" defaults not being actioned (with SLD/SE 1.1)
  • "Disk used" to say "N/A" when quota off
  • KML points not extruding
  • Using rest api from IE browser fails
  • kml module is missing from source zip release file
  • Improvement:
  • Add a RoleService implementation using LDAP as a source
  • Enable CSV outputFormat for complex features with SF0 schema
  • labels from multiple attributes are not rendered if one attributes value is NULL
  • GeoWebCache 304 responses treated as errors by monitoring extension
  • [WPS CORE] - Improve the GeoTIFF PPIO Tiling Management

New in Portable GeoServer 2.4.2 (Nov 26, 2013)

  • Total matched feature count available in JSON output (contributed by Paul Biskup)
  • Ability to control how scale hints are computed in WMS 1.1 (contributed by Roy Braam and Mauricio Pazos)
  • Support for randomized symbol fills in both SLD and CSS (thanks to New South Wales Geological survey for sponsoring it)
  • Better support for data with 3D coordinates using GML3/GeoJSON, and associated improvements in the SQL Server backend (thanks to IGEA, Croatia, for sponsoring this work)
  • WCS 1.0 can be disabled
  • Several translation updates and improvements, thanks to the translation team. In no particular order: Polish, Korean, German, Lithuanian, Spanish, Romanian, French
  • Several small fixes in the docs (thanks to all the good people that contributed them!)

New in Portable GeoServer 2.4.1 (Oct 22, 2013)

  • This is a stable release containing bug fixes and incremental improvements, including:
  • CSW admin page
  • Fixed deployment without web jars
  • Polygon fill margin vendor option in CSS
  • Automatically link CSW (ISO) records to the respective WMS/WFS/WCS sources
  • This release is made in conjunction with GeoTools 10.1.

New in Portable GeoServer 2.4.0 (Sep 23, 2013)

  • Cascade WMS fails with HTTP connection pooling on.
  • GeoJSON uses wrong mime type
  • GeoServer won't open shapefile stores created with previous versions when the fstype param is set
  • Layer preview GML 3.2 dropdown choice doesn't work
  • 2.4 RC2 - modifying the rest security, rest anonymous access does not show workspaces anymore
  • 2.4-RC2 - rest PUT for style reference (and possibly other references) does not work anymore
  • Wrong lookat generated in kml superoverlays if when the layer bbox happens to be contained only in some higher level tile
  • Superoverlay outputs are not always visible from the start (one needs to zoom in)
  • KML: force output in 4326 even if the request calls for a different SRS
  • Explicit GetMap with KML output defaulted to download mode, now it defaults to refresh mode
  • Monitoring audit logging broken
  • NPE in monitoring module while handling a KML reflector

New in Portable GeoServer 2.3.5 (Aug 19, 2013)

  • A couple new authentication options for LDAP
  • The file browser used when defining a new data source once again lets windows users explore the available drives
  • Alessio has back ported a fix for creating a data sources referencing a shared file system.
  • GeoWebCache has fixes for WMS 1.3.0 and database security (thanks to Jonathan Moules for reporting this one).

New in Portable GeoServer 2.3.4 (Jul 29, 2013)

  • This release includes and is made in conjunction with GeoTools 9.4.
  • Migrated CSS module to extensions section (GEOS-5845)
  • Several improvements and bug-fixes in WMS and Security sub-systems.
  • Contributed initial language support (almost) complete for Dutch and Chinese (GEOS-5926 + GEOS-5924)
  • Updated translations for Korean and German (GEOS-5925 + GEOS-5927).

New in Portable GeoServer 2.3.3 (Jun 24, 2013)

  • This release includes and is made in conjunction with GeoTools 9.3.
  • GeoWebCache tile layer HTTP cache headers are now taken from GeoServer layer configration
  • GeoWebCache settings are now correctly saved on Windows
  • Scale hints now exposed in WMS GetCapabilities document
  • Fixed Symbology Encoding 1.1 encoding of relative external graphics
  • Addressed axis order issues cascading WMS 1.3.0 services through GeoServer

New in Portable GeoServer 2.3.2 (May 17, 2013)

  • Bug:
  • [GEOS-4014] - /servlet-api-2.4.jar) - jar not loaded.
  • [GEOS-5210] - EPSG:21781 (CH1903) converts wrong to EPSG:4326 (WGS84)
  • [GEOS-5636] - Adding a WMS cascaded layer from a GeoServer using Inspire extensions is very slow and leads to an Exception
  • [GEOS-5784] - Missing release/ext-xslt.xml causes assembly:attached to fail
  • [GEOS-5790] - Bad WFS request causes GeoServer to stop responding to certain requests types
  • [GEOS-5803] - "mode" not "storage" used in default monitor.properties
  • [GEOS-5804] - Adding XSLT module without proper configuration results in exceptions for normal GML requests
  • [GEOS-5811] - Changing the SSL Port has no effect for filter chains already restricted to SSL requests
  • Improvement:
  • [GEOS-5693] - Make app-schema joining the default behavior
  • [GEOS-5791] - Graduate the INSIPIRE module to extension status
  • [GEOS-5801] - Add option for wicket file browser not to expose other locations on the file system

New in Portable GeoServer 2.3.1 (May 17, 2013)

  • The XSLT output format generator module graduated from community to official extension
  • A couple of changes in the SQL Server data increase performance, provided you enable the relevant flags. One is the ability to transfer geometries in SQL Server native format, as opposed to using WKB, which avoids the slow WKB generation routines included in SQL Server, the other allows to disable native paging, which can sometimes lead the SQL Server query planner to create bad data access plans (GEOS-5750 and GEOS-5314)
  • A new flag has been added to prevent the resolution of XML external entities (normally enabled by default in XML parsers), which can be used to prevent some kinds of XML attacks (GEOS-5273 and GEOS-5314)
  • Some SLD related fixes (GEOS-4214, GEOS-5767).
  • A bunch of improvements in the monitoring extension (GEOS-5725, GEOS-5732, GEOS-5758 and GEOS-5766).
  • Fixed an issue that prevented GeoServer from serving back GetMap requests under Windows when using the JRE (GEOS-5768).
  • GWC will now respect the layer HTTP caching settings, and a memory leak has been fixed in respect to the WFS-T integration (GEOS-5686, GEOS-5659).
  • The German translation maintainers fixed an encoding problem which resulted in weird chars appearing in the GeoServer UI (GEOS-5641).
  • GeoServer UI is completely available in Dutch, German and Korean.
  • Finally, a few fixes and improvements in the security subsystem (GEOS-5698, GEOS-5751, GEOS-5753, GEOS-5783).
  • Improved support for sparse shapefiles (GEOT-2791).
  • Added support for UUID data type in PostGis data stores (GEOT-4414).

New in Portable GeoServer 2.3.0 (Apr 22, 2013)

  • A pluggable configuration subsystem (for the catalog and service configuration)
  • GeoWebCache clustering and disk quota improvements
  • More powerful layer groups and better control of the WMS capabilities layer tree
  • Several security subsystem improvements
  • WPS process whitelist (control which processes your WPS is exposing)
  • WMS dimensions support improvements (units, custom dimensions)
  • JSON and JSONP output format support in many OGC operations
  • The monitoring module finally graduating to official extension
  • Raster re-projection quality improvements and speedups
  • INSPIRE module improvements for the WFS protocol
  • A newfound ability to catalog all components of GeoServer via a REST API

New in Portable GeoServer 2.2.5 (Feb 27, 2013)

  • Errors are not thrown anymore when a gridset is added to geowebcache.xml and geoserver restarted [GEOS-5288]
  • Also, looking at the corresponding GeoTools release changelog we have the following extra goodies in:
  • Setting PK_METADATA_TABLE for JDBCDatastore without schema does not end in illegal statement anymore [GEOT-4192]
  • “property” filter function did not work anymore after style and filter attribute extractor got updated to support complex features [GEOT-4393]
  • Added an optional geometry_columsn metadata table for the SQLServer store [GEOT-4252]
  • Speeded up expensive/redundant table existance check in MetadataTablePrimaryKeyFinder [GEOT-4391]
  • some GeometryBuilder related fixes [GEOT-4373] and [GEOT-4377]
  • ReprojectingFilterVisitor didn’t reproject function parameters [GEOT-4378]
  • Teradata couldn’t resolve tesselation index view [GEOT-4379]
  • Oracle dialect use of SDO_TUNE.EXTENT_OF – didn’t include schema [GEOT-4383]
  • SE 1.1 graphic fill was not being parsed [GEOT-4384]
  • Filter.INCLUDE and Filter.EXCLUDE were not correctly handled in the WFS 1.0 protocol [GEOT-4389]
  • PropertyCollector parsing needs to ignore leading and trailing spaces [GEOT-4392]

New in Portable GeoServer 2.2.4 (Jan 24, 2013)

  • the monitoring extension module just got promoted to official extension [GEOS-5538]
  • the status page does not throw errors after catalog reloads anymore [GEOS-5371]
  • one critical fix in the REST configuration of freemarker templates [GEOS-5533]
  • Minor bug fixes:
  • [GEOS-5338] – Filter function IEEERemainder mishbehaves in SLD
  • [GEOS-5537] – Tiling artifacts with RasterSymbolizer using bilinear interpolation (when oversampling raster)
  • [GEOS-5551] – WFS 1.0 capabilities will NPE with misconfigured OGR and XSLT output formats
  • [GEOS-5565] – workspace admin unable to create sql view
  • [GEOS-5570] – QueryProcess fails if called with an OGC filter (either 1.0 or 1.1)
  • [GEOS-5197] – Use the layer abstract as the GeoRSS channel description
  • [GEOS-5561] – Missing i18n support for ReprojectPage
  • [GEOS-5562] – Missing i18n support for WorkspaceEditPage
  • [GEOS-5563] – slight mixed up order of Y-parameters in AffineTransformPanel
  • Also, looking at the corresponding GeoTools release changelog we have the following extra goodies in:
  • improvements in the WFS cascading, we can now better interact with remote WFS servers running on TinyOWS and ArcGIS
  • imageio-ext was upgraded to version 1.1.6, which means from now on GeoServer uses GDAL 1.9 to extends the range of raster formats it supports

New in Portable GeoServer 2.2.3 (Dec 29, 2012)

  • [GEOS-3885] – Update Freemarker templates through REST API
  • [GEOS-5325] – Add title and abstract to LayerGroupInfo
  • [GEOS-5462] – The rendering thread can block forever under request cancellation
  • [GEOS-5479] – Error in Documentation: tag used instead of
  • [GEOS-5483] – json output in WPS extension does not work due to missing library
  • [GEOS-5485] – Border artifacts when reprojecting single banded (scientific) raster data
  • Also, looking at the corresponding GeoTools release changelog we have the following extra goodies in:
  • better support for chaining rendering transformations
  • fixes to time/date handling in CQL
  • Oracle specific SDO_NN function to find the N nearest objects to a given location