GeoServer Blog

GeoServer 2.13.1 Released

We are happy to announce the release of GeoServer 2.13.1. Downloads are available (zipwar, and exe) along with docs and extensions.

This is a stable release recommended for production use. This release is made in conjunction with GeoTools 19.1 and GeoWebCache 1.13.1.

Highlights of this release are featured below, for more information please see the release notes (2.13.1 2.13.0  2.13-RC1 2.13-beta):

New Features and Improvements

  • MongoDB community module moved to extension

  • Support PNG/JPEG WPS Downloads

  • Allow self joining GetFeature without aliases

  • Add support for priority in control-flow bounded queues

  • Hibernate Monitoring extension moved to a community module

Bug Fixes

  • WCS 1.0.0 generates wrong links in GetCapabilities

  • WFS 2.0 capabilities report transaction support even if the service level is not configured as such

  • WPSResourceManager cleanup is not deleting temporary subfolders (only files)

  • GeoServer in CITE compliance mode fails to validate an empty LockFeature request

  • WMS 1.3 GetMap request significantly slower than WMS 1.1.0 since GeoServer 2.11.4

  • Import objects cannot be deleted when in COMPLETE state

  • Style with Interpolate function causes NullPointerException on GetLegendGraphic

  • Windows Installation issue - upgrading GeoServer results in corrupt data_dir

  • Windows Installer: Remove ‘work’ folder when uninstalling

Read More

GeoServer 2.12.3 Released

We are happy to announce the release of GeoServer 2.12.3. Downloads are available (zipwar, and exe) along with docs and extensions.

This is a maintenance release and a recommend update production systems. This release is made in conjunction with GeoTools 18.3.

Highlights of this release are featured below, for more information please see the release notes (2.12.3,2.12.2, 2.12.1  2.12.0   2.12-RC1   2.12-beta).

Improvements

  • Improved bounding box reporting in WMS GetCapabilities allowing more entries to be supported when Output bounding box for every support CRS is selected. Bounding boxes are now returned for layer groups as well.

  • NetCDF/GRIB has been improved with a new setting to copy over global attributes when generating NetCDF output

Bug Fixes

  • WFS 2.0 fix for interaction with startIndex and the total features count

  • CQL filters can now be used with the WMS vector tile output format

  • GeoPackage WPS output corrected to generate y coordinates from bottom left

  • User interface for editing workspace details checks for conflicts with name or namespace URI.

  • GML 3.2 output can now limit the number of decimals used for coordinate output

  • REST management of styles now supports defining a style using POST for CSS, YSLD and MapBox styles (previously this only worked for SLD)

  • WPS output error handling does a better job reporting when Async output format parameters are incorrect.

  • WPS improvements have also been made for the cleanup of temporary folders and output “raw data encoder” (which is often used for image generation).

  • Demo request page does a better job of of reporting authorization failures, and correctly sending credentials for testing service security.

  • GetLegendGraphic fixes to correct line thickness and ensure polygons and points are not cut off.

Community Updates

For developers building from source our community modules remain a great place to collaborate on new functionality and improvements. This month Nuno Oliveira has added a new community module for the GeoTools MongoDB datastore.

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.

About GeoServer 2.12 Series

Additional information on the 2.12 series:

Read More

GeoServer 2.13.0 released

We are happy to announce the release of GeoServer 2.13.0. Downloads are available (zipwar, and exe) along with docs and extensions.

This is a release candidate of GeoServer made in conjunction with GeoTools 19.0.

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.

This is particularly useful for those publishing complex schemas for INSPIRE compliance. For more details, refer to the original proposal.

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.

Editing raster layer parameters made easier, from a wall a text input fields, to appropriate controls being used depending on the parameter type. Here is a “before and after” comparison:

Finally, error messages are now displayed both at top (as usual) and bottom (new!) in all configuration pages. This should make it easier to locate error messages, especially while editing styles:

GeoPackage performance improvements

GeoPackage reading and rendering performance improved significantly, up to two times faster on large datasets full extractions and 50% faster on small bounding box searches, bringing GeoPackage on par with PostGIS. We also have a Google spreadsheet with more details.

Shapefile remains king of full dataset extractions and the fastest data source for pure spatial driven queries.

WFS 2.0 and WMTS 1.0 OGC compliance work

During the past few months we have been involved in OGC Testbed 14 and significantly improved GeoServer compliance with WFS 2.0 and WMTS 1.0. The work involved numerous fixes in GeoServer/GeoWebCache, along with variuos fixes in the CITE tests themselves. The changes were too numerous to backport to the 2.12.x series, so if compliance with these protocols is important it’s time to consider an upgrade to the 2.13.x series. For details see these lists:

Work is still ongoing and a small number of issues are yet to be fixed, we’ll keep you updated.

Support for more PostGIS data types

The PostGIS data store now has simple support for HStore and JSON columns. HStore is returned as a Map and will render as a JSON formatted string field in common WFS output formats, while JSON is read as a string and rendered as-is. In both cases no special query support has been added for those types (but we’d be very happy if someone would work, or sponsor, that functionality too).

Better label position control in map rendering

When setting maxDisplacement on point/polygons the renderer used to search in a circular area around the designated label point. The new displacementMode vendor option allows to control the positioning by specifying the preferred cardinal positions, as a comma separated list.

Coverage views from heterogeneous bands

Satellite data often comes as a set of heterogeenous resolution bands, due to multiple sensors having different native resolutions. It is yet useful to have all bands packaged on the same coverage, for ease of display (false color setups) and information (GetFeatureInfo). Coverage views now allow to mix those bands, coming from separate files and organized in a image mosaic, in a single multiband coverage view, resampling on the fly with configurable target resolution policies.

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 and improvements

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.

  • The mongodb community module provides an easy-to-use wrapper around the Ge0Tools mongodb data store, allowing you to publish geospatial data stored in mongodb.

  • There is also a new community module introducing NSG profiles for the WFS and WMTS services.

Existing community modules also got some love, in particular:

  • The WPS download module now allows to download large maps, and also build animations, generating MP4 courtesy of jcodec library. Both processes can (and should!) be invoked asynchronously to better handle long generation times. Here is an example of animation output:

[video width=”768” height=”768” mp4=”/img/uploads/response.mp4”][/video]

  • The WPS download process now also allows control of GeoTiff output structure (tiling, compression) in raw raster downloads, as well as downloading granules part of a heterogeneous mosaic in their native CRS and native resolution

  • Various JDBCConfig and JDBCStore performance improvements, reducing the number of configuration database queries performed for each OGC request. Configuration queries are also consistently logged for further analysis

Note that community modules are not part of the release; instead you can find them in the nightly builds.

Other assorted improvements

A single bug got fixed since the RC, for more information please see the release notes (2.13.0  2.13-RC1 2.13-beta):
  • CQL filter not working when asking for vector tiles in wms request, GEOS-8065
Read More

GeoServer 2.13-RC1 Released

We are happy to announce the release of GeoServer 2.13-RC1. Downloads are available (zipwar, and exe) along with docs and extensions.

This is a release candidate of GeoServer made in conjunction with GeoTools 19-RC1.

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.

This is particularly useful for those publishing complex schemas for INSPIRE compliance. For more details, refer to the original proposal.

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.

Editing raster layer parameters made easier, from a wall a text input fields, to appropriate controls being used depending on the parameter type. Here is a “before and after” comparison:

Finally, error messages are now displayed both at top (as usual) and bottom (new!) in all configuration pages. This should make it easier to locate error messages, especially while editing styles:

GeoPackage performance improvements

GeoPackage reading and rendering performance improved significantly, up to two times faster on large datasets full extractions and 50% faster on small bounding box searches, bringing GeoPackage on par with PostGIS. We also have a Google spreadsheet with more details.

Shapefile remains king of full dataset extractions and the fastest data source for pure spatial driven queries.

WFS 2.0 and WMTS 1.0 OGC compliance work

During the past few months we have been involved in OGC Testbed 14 and significantly improved GeoServer compliance with WFS 2.0 and WMTS 1.0. The work involved numerous fixes in GeoServer/GeoWebCache, along with variuos fixes in the CITE tests themselves. The changes were too numerous to backport to the 2.12.x series, so if compliance with these protocols is important it’s time to consider an upgrade to the 2.13.x series. For details see these lists:

Work is still ongoing and a small number of issues are yet to be fixed, we’ll keep you updated.

Support for more PostGIS data types

The PostGIS data store now has simple support for HStore and JSON columns. HStore is returned as a Map and will render as a JSON formatted string field in common WFS output formats, while JSON is read as a string and rendered as-is. In both cases no special query support has been added for those types (but we’d be very happy if someone would work, or sponsor, that functionality too).

Better label position control in map rendering

When setting maxDisplacement on point/polygons the renderer used to search in a circular area around the designated label point. The new displacementMode vendor option allows to control the positioning by specifying the preferred cardinal positions, as a comma separated list.

Coverage views from heterogeneous bands

Satellite data often comes as a set of heterogeenous resolution bands, due to multiple sensors having different native resolutions. It is yet useful to have all bands packaged on the same coverage, for ease of display (false color setups) and information (GetFeatureInfo). Coverage views now allow to mix those bands, coming from separate files and organized in a image mosaic, in a single multiband coverage view, resampling on the fly with configurable target resolution policies.

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 and improvements

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.

  • The mongodb community module provides an easy-to-use wrapper around the Ge0Tools mongodb data store, allowing you to publish geospatial data stored in mongodb.

  • There is also a new community module introducing NSG profiles for the WFS and WMTS services.

Existing community modules also got some love, in particular:

  • The WPS download module now allows to download large maps, and also build animations, generating MP4 courtesy of jcodec library. Both processes can (and should!) be invoked asynchronously to better handle long generation times. Here is an example of animation output:

[video width=”768” height=”768” mp4=”/img/uploads/response.mp4”][/video]

  • The WPS download process now also allows control of GeoTiff output structure (tiling, compression) in raw raster downloads, as well as downloading granules part of a heterogeneous mosaic in their native CRS and native resolution

  • Various JDBCConfig and JDBCStore performance improvements, reducing the number of configuration database queries performed for each OGC request. Configuration queries are also consistently logged for further analysis

Note that community modules are not part of the release; instead you can find them in the nightly builds.

Other assorted improvements

New bug fixes and improvements since the beta are featured below, for more information please see the release notes (2.13-RC1 2.13-beta):
  • Async WPS does not report wrong output parameters

  • GetFeatureInfo requires high clicking precision when the WMS “max buffer” setting is zero

  • totalFeatures for WFS 2.0 request returns wrong count

  • CoverageStore HTML REST representation points to a coverage named after the store (instead of its actual name)

  • WPSDownload: per-granule resolution on target resolution

  • GeoWebCache fails to compute sub-gridset bounds for layers whose native CRS is wrong/cannot be recognized

  • Regression: GetLegendGraphics renderer lines thicker than they should

  • Backup/restore reports completion too soon

Test, test, test!

Now that you know about all the goodies, please go, download and test your favourite ones. Let us know how it went!

About GeoServer 2.13

GeoServer 2.13 is scheduled for March 2018 release.

Read More

GeoServer 2.13-beta released

We are happy to announce the release of GeoServer 2.13-beta. Downloads are available (zipwar, 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.

This is particularly useful for those publishing complex schemas for INSPIRE compliance. For more details, refer to the original proposal.

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.

Editing raster layer parameters made easier, from a wall a text input fields, to appropriate controls being used depending on the parameter type. Here is a “before and after” comparison:

Finally, error messages are now displayed both at top (as usual) and bottom (new!) in all configuration pages. This should make it easier to locate error messages, especially while editing styles:

GeoPackage performance improvements

GeoPackage reading and rendering performance improved significantly, up to two times faster on large datasets full extractions and 50% faster on small bounding box searches, bringing GeoPackage on par with PostGIS. We also have a Google spreadsheet with more details.

Shapefile remains king of full dataset extractions and the fastest data source for pure spatial driven queries.

WFS 2.0 and WMTS 1.0 OGC compliance work

During the past few months we have been involved in OGC Testbed 14 and significantly improved GeoServer compliance with WFS 2.0 and WMTS 1.0. The work involved numerous fixes in GeoServer/GeoWebCache, along with variuos fixes in the CITE tests themselves. The changes were too numerous to backport to the 2.12.x series, so if compliance with these protocols is important it’s time to consider an upgrade to the 2.13.x series. For details see these lists:

Work is still ongoing and a small number of issues are yet to be fixed, we’ll keep you updated.

Support for more PostGIS data types

The PostGIS data store now has simple support for HStore and JSON columns. HStore is returned as a Map and will render as a JSON formatted string field in common WFS output formats, while JSON is read as a string and rendered as-is. In both cases no special query support has been added for those types (but we’d be very happy if someone would work, or sponsor, that functionality too).

Better label position control in map rendering

When setting maxDisplacement on point/polygons the renderer used to search in a circular area around the designated label point. The new displacementMode vendor option allows to control the positioning by specifying the preferred cardinal positions, as a comma separated list.

Coverage views from heterogeneous bands

Satellite data often comes as a set of heterogeenous resolution bands, due to multiple sensors having different native resolutions. It is yet useful to have all bands packaged on the same coverage, for ease of display (false color setups) and information (GetFeatureInfo). Coverage views now allow to mix those bands, coming from separate files and organized in a image mosaic, in a single multiband coverage view, resampling on the fly with configurable target resolution policies.

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 and improvements

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.

Existing community modules also got some love, in particular:

  • The WPS download module now allows to download large maps, and also build animations, generating MP4 courtesy of jcodec library. Both processes can (and should!) be invoked asynchronously to better handle long generation times. Here is an example of animation output:

[video width=”768” height=”768” mp4=”/img/uploads/response.mp4”][/video]

  • The WPS download process now also allows control of GeoTiff output structure (tiling, compression) in raw raster downloads

  • Various JDBCConfig and JDBCStore performance improvements, reducing the number of configuration database queries performed for each OGC request. Configuration queries are also consistently logged for further analysis

Note 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:

  • 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 (WFS 2.0 CITE compliance related)

  • WMTS bugfixes, improving CITE compliance

  • 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

  • Importer can now add computed fields (with CQL expressions) during imports

  • NetCDF output format has a new option to copy global attributes from the source NetCDF file

Test, test, test!

Now that you know about all the goodies, please go, download and test your favourite ones. Let us know how it went!

About GeoServer 2.13

GeoServer 2.13 is scheduled for March 2018 release.

Read More