What browsers do you use with GeoServer?
We’ll review the results in one week. Thanks!
Month in Review: September 2012
There was some very interesting GeoServer-related content published throughout this summer and into the fall. Individuals and organizations are working hard on the project, and making news daily. Below you’ll find some highlights from the last few months:
GeoServer 2.2 Released (GeoServer)
GeoServer has moved to GitHub (GeoServer)
Surface Interpolation in GeoServer (OpenGeo)
Using GeoServer’s Split Polygon WPS Process - Part II (OpenGeo)
Serving and filtering #GeoJSON from #GeoServer (Smathermather)
Thematic map creation with SLD (OpenGeo)
Troubleshooting a large GeoServer Deployment (GeoSolutions)
If we’ve missed anything comment on this post and we’ll make sure to check out your blog for next month.
Vienna Code Sprint
This past week a few of the GeoServer developers gathered for a code sprint in Vienna, Austria. The sprint was planned by some of the OpenLayers developers and they graciously allowed us to join the party and share the venue for the week.
Attendees from the GeoServer community included Andrea Aime, Niels Charlier, Justin Deoliveira, Alessio Fabiani, Christian Mueller, and Victor Olaya. With this seasoned team of committers in one location we decide to tackle a problem that has been plaguing developers for quite some time. Slow build and test times.
GeoServer, having been around for a while, has accumulated a large number of test cases in its 10+ years of existence. As of today the GeoServer code base contains 695 test classes and 3189 individual test cases. Wow. While many wouldn’t really consider good test coverage a problem it does come with a price. The more tests a project has the longer it takes to build.
Now like any other best practice following open source project we do have a continuous integration server that runs the tests whenever someone pushes up a change. But being the responsible bunch we are the developers usually run tests before a commit to ensure nothing breaks, especially for larger changes. Long build times start to make things tedious pretty fast. There is only so much coffee a developer can drink in one day.
Ok, enough about the problem, those interested in learning more should read over the recent GSIP that explains the problem and solution in detail. During the sprint the team outlined three goals: improving overall test times, upgrading the codebase to JUnit 4, and setting ourselves up to continue to make testing improvements in the future.
I am very excited to report that we accomplished all three of these goals. The 6 of us worked tirelessly to update every single test case in the codebase and the end result was about a 50% improvement making the build run twice as fast. The following chart shows the improvements in the various modules.
Great stuff. Thanks again to the developers who attended and made it such a productive week.
We’d also like to extend a very special thank you to the Research Group Cartography of the Vienna University of Technology for sponsoring the sprint by providing such an excellent venue. And an even bigger thanks to Andreas Hocevar who secured the venue, planned accommodations for attendees, and kept us all sufficiently caffeinated by brining along is espresso machine. Also a congratulations to the OpenLayers team who made some awesome progress toward OL3.
GeoServer 2.2 Released
The GeoServer team is happy to announce to the release of GeoServer 2.2 and encourage you to download it and try out the great new features. The release of a new major version update is a big deal (the last one was over 16 months ago) and, while you may have heard about some of the new features on the developer list, here are the highlights all in one place:
NTv2 and NADCon Support allows for datum transformations with cm level precision (instead of the usual 4m, when all goes well). Both will activate only if the grid files are present in the data dir, so by default the mere presence of the method is harmless, but generally speaking this is very good news for whoever needs to increase reprojection accuracy. Thanks to Oscar Fonts and Andrea Aime.** **
Continued work for supporting high accuracy datum transformations that now allow for user defined transformations supplied via WKT. Thanks to the Catalan Cartographic Institute for funding the work and to Oscar and Andrea for doing the development.
A new **reprojection console **allows users to interactively test transformations of points and other geometries back and forth between the chosen CRS, and also to verify the transformation method used matches the user expectations. Thanks Andrea.
Better support for un-referenced data with the new EPSG:40400 code that identifies a coordinate system made up of a generic 2D Cartesian plane. As well as support for EPSG:102113 as an alias for Web Mercator.
**Database-level security **implements the ability to use DBMS session startup and teardown scripts to alter user access the database during a specific request while falling back on connection pooling when the request is complete. Thanks to Astrium GEO-Information Services for sponsoring GeoSolutions to make this improvement.
Sorting and paging is now available in all WFS versions (in 1.0 and 1.1 as a vendor param) via the sortBy and startIndex/maxFeature parameters. Thanks to Justin Deoliveira and Andrea.
A new** lenient capabilities mode** that allows the GeoServer capabilities documents to remain functioning despite the presence of misconfigured layers. Thanks to David Winslow for this work.
A new experimental OGR data store provides access to a rich set of readable formats without needing special bridge libraries.
The image collection coverage store allows users to serve un-referenced data through WMS using image/pixel space as the coordinate system. Thanks to SFMTA for sponsoring OpenGeo to complete this work.
Application schema support has performance, stability, and functional improvements including reduced memory footprint, SQL joining support for more efficient queries of complex information models, support for WMS, and support for GML 3.2 application schemas. Thanks to Rini Angreani, Niels Charlier, Victor Tey, Ben Caradoc-Davies, and the rest of the team at CSIRO. This work was funded through AuScope by the Australian Government.
BigTiff support has received some performance and scalability improvements courtesy of upgrade to imageio-ext 1.1.5.
- A major retrofit of the GeoServer security subsystem adding support for a number of new authentication mechanisms including LDAP, digest and X.509 certificate authentication, and more. These improvements also includes the addition of user groups. This is a continuation of work started by Christian Mueller as a Google Summer of Code project; thanks to NOAA for sponsoring OpenGeo to help Christian and Justin bring it to completion.
Web Feature Source (WFS)
Support for WFS 2.0 adds some interesting new capabilities to the WFS protocol such as paging, stored queries, and extended operators. Thanks to IGN France and Géoportail for sponsoring OpenGeo to make this improvement.
Along with WFS 2.0 comes support for GML 3.2.
Web Map Service (WMS)
Support for additional dimensions brings time and elevation support to both vector and raster data. And, with support for time, comes support for animation in WMS. Thanks to Andrea, Alessio and GeoSolutions on both counts.
**Rendering transformations **provide a bridge between WPS and WMS and allow for very powerful visualization capabilities for processing through normal WMS. Thanks to GeoSolutions for sponsoring this work (and Andrea for implementing it).
Support for 8-bit PNG output with transparency resulting in a nice tradeoff of performance and appealing visualization. Special thanks to Andrea for this new feature.
Web Processing Service (WPS)
- New WPS features include support for asynchronous process execution and a variety of new processes.
Virtual services allow GeoServer to support the notion of multitenancy, enabling a single GeoServer instance to publish multiple service endpoints. Thanks to NOAA for sponsoring OpenGeo to complete this improvement and a special thanks to Micah Wengren of NOAA for his leadership on the project.
Workspace local settings allow for specifying service settings such as contact information, proxy settings, and output format settings on a per workspace basis.
Styles and layer groups can also now be defined on a per workspace basis.
- A GeoWebCache configuration GUI is now available directly from within the GeoServer web admin interface, including: the ability to define new grid sets, specify which layers to cache, seed or truncate the cache, and more. Big thanks to Gabriel and the GeoWebCache team for furthering improving integration between GeoWebCache in GeoServer.
**Wow! **And that isn’t even everything, many other bug fixes and improvements have made it into the 2.2 series as well.
Everyone who uses GeoServer should have at least one or two items in the above list to be excited about. Download GeoServer 2.2, try it out, and provide feedback on the GeoServer mailing list. As with any new version, be sure to backup your data directory before upgrading.
Thanks again for using GeoServer!
GeoServer 2.2-RC3 Released
The GeoServer team is happy to announce the release of GeoServer 2.2-RC3.The release is available for download from: http://geoserver.org/display/GEOS/GeoServer+2.2-RC3
This release comes with assorted bug fixes and small improvements, and aims to be the latest RC before the final release. Notable changes:
improvements in the security subsystem upgrade from the 2.1.x series
bug fixes and improvements in the control-flow module (you won’t be wondering anymore if it’s properly installed, or not)
avoid deadlocks on some WFS transactions
The entire change logfor the 2.2-RC3 release is available in the issue tracker: http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10311&version=18700 A very special thanks to all those who contributed bug fixes and improvements to this release. –The GeoServer Team
- OGC Filter Injection Vulnerability Statement
- GeoServer 2.22.0 Release
- GeoServer 2.21.2 Release
- Jiffle and GeoTools RCE vulnerabilities
- GeoServer 2.20.4 Released
- Spring4Shell RCE vulnerability
- GeoServer 2.20.3 Released
- GeoServer 2.19.5 Released
- GeoServer 2.19.4 Released
- Log4J2 zero day vulnerability assessment