GeoWebCache 0.7.1 is out on SourceForge. There was an issue with the WAR file, so the release has been bumped by .1 since last night. The actual code diff to 0.6.0 is 3746 lines (excluding openlayers and the formatter.xml), so there is a substantial number of changes under the hood. One of the main things is that layers now have a grid parameter and a bounding box. The grid should be the maximum extent of the coordinate system and is used to calculate the internal grid, and which is directly reflected in the cache keys. Separating these two means that you can later expand or reduce the bounds of the layer, and cached tiles will still work.

Other changes include:

  • Support for multiple WMS backends per layer, queried in round robin fashion with automatic failover

  • Microsoft Virtual Earth tiling support

  • Google Maps tiling support

  • Improved handling of layer bounds, give a rough estimate and it will approximate to closest metatile for all zoom levels

  • Ability to run Jetty directly in Eclipse

  • Some code cleanup, using GeoTools coding standard now (almost)

  • Reduced JCS dependecies (berkeleydb,hsqldb,mysql), thereby cutting download in half

  • Included configuration files and OpenLayers clients for topp:states, for testing

  • Various bugfixes

The keen observer will note that this has very little to do with the features originally scheduled for 0.7, but it’s a lot of improvements nonetheless. Please make sure to revisit the configuration notes in the wiki since a number of things, including names of configuration parameters, have changed.

I have noticed that a number of people have reported problems with data in SRSs different from EPSG:4326 and EPSG:900913. Note that the the WMS Tiling Recommendations do not cover other reference systems, but we would be happy to look at them if you supply data and a little bit of your time.

Looking ahead we want to branch out in two separate directions. On one hand we want to integrate more tightly with GeoServer, which was originally planned for this release, on the other hand there appears to be demand to support other backends than WMS. While these are in no way mutually exclusive, supporting other backends would require some internal rewiring (Andrea Aime has suggested the Spring framework, which is also used in GeoServer and in many other high profile projects). Feel free to voice your opinion, especially if you are inclined to contribute in one way or the other.

QA is also becoming a serious concern at this point. Version 0.7.1 includes 18 unit tests that exercise the internal grid / metatiling system a fair bit, and it includes configuration files and OpenLayer clients for testing topp:states (loaded from a remote server) with EPSG:900913 and EPSG:4326. This is not enough, other parts of the system require additional tests, and functional ones to test the package as a whole, but it’s a start.

Thanks to everyone who has contributed patches and feedback, I look forward to hearing from you.