Build/Structural Changes
- The geonode-client subproject is now a submodule rather than a separately published artifact. This facilitates development of features requiring tight server-side integration (ie, when GeoNode exposes a custom service that the GeoExt client needs to access) and allows versioning of the client along with the rest of GeoNode. Since our current publishing scheme does not provide versioning, this is effectively necessary for development of GeoNode variants with modifications to the core client code.
Note: as I recall one reason that we moved geonode-client out of the main repository in the first place was to avoid requiring a third build tool (Ant, along with Paver and Maven) to build GeoNode. Recent changes in geonode-client allow building with Maven or Ant so this concern at least is addressed.
- GeoNode's "paired" GeoServer now requires an additional dependency - OpenGeo's Importer extension. This allows the upload process to have a verification/feedback step with the user between completing the actual file upload and having the layer actually published in the GeoNode site. We are using this step to prompt the user for details about the temporal aspect of his/her data, but it is open-ended for other uses. For example, we could use this to prompt the user when the projection is not detected for a Shapefile.
- GeoServer updated to GeoServer 2.2 (2.2 is currently not released, but we need it for the time-related features it adds to WMS.)
Behavioral Changes
- GeoNode's map composer now configures itself via Ajax request at page load time, rather than having the configuration embedded in the HTML for the page. This endpoint should be accessible to non-JavaScript clients as well, making for the beginnings of a GeoNode map composition and query API.
- The geonode.maps.models.Map model class now includes 'tool_params' and 'portal_params' fields to accommodate storage of map configuration unrelated to map layers. For mapstory we're using this to store animation details (what time to display initially, frame rate, step size...) but it is open-ended to accommodate other configurations as well.
- The upload and "replace this layer" forms now use the aforementioned Importer module instead of just the GeoServer REST API.
- Two new ad-hoc endpoints: get_time_info to get some information about the temporal aspect of a layer that is not exposed in the WMS Capabilities, and create_layer to create new layers. The latter especially is subject to revision; we are using it to support an 'annotation' layer which may be created to add free-hand marks and notes to a GeoNode map.
There are a number of minor tweaks (moving buttons around etc.) that might be reasonable additions as well. Also on the roadmap for MapStory:
- General editing features
- Visual/usability improvements, especially to search and user profiles
- Customizability improvements, things like the ability to have multiple, user-selected themes within a single GeoNode site.
- GeoNode's "paired" GeoServer now requires an additional dependency - OpenGeo's Importer extension. This allows the upload process to have a verification/feedback step with the user between completing the actual file upload and having the layer actually published in the GeoNode site. We are using this step to prompt the user for details about the temporal aspect of his/her data, but it is open-ended for other uses. For example, we could use this to prompt the user when the projection is not detected for a Shapefile.
Is this just a change in the maven profile for geoserver-geonode-dev (adding that extenstion)? Or does it require other steps? Does this mean the restconfig api is not used anymore to create the stores / layers? Would this make it easier to support other GeoServer supported file formats appart from .shp and .tiff?I would like to know more about this extension.