2009-03-29: Pimento and Cinnamon 1.0 Final released
This is the first combined release of Pimento and Cinnamon. From now on both projects will always be available in a single download. Documentation for these projects has been merged, too. Nevertheless you can still use Cinnamon separately in case you do not need Pimento's data management capabilites. The 1.0 Final Release marks a significant milestone almost 2 years after work on Cinnamon Remoting began.
The Release contains two major bug fixes for the data management module, so if you are using one of the Pimento Release Candidates you should update to the final version. Otherwise it contains improvements for client and server side logging with formatted logs for all incoming and outgoing requests/responses. The rest were minor improvements or tasks that were necessary for merging the two projects.
Migrating from earlier versions
Due to the merger the naming of the jar files has changed. To update an existing
web application, replace the following files in WEB-INF/lib:
- Replace spicelib-1.0.1.jar with cinnamon-reflect-1.0.0.jar
- Replace cinnamon-0.3.1.jar with cinnamon-core-1.0.0.jar
- Replace pimento-1.0.RC2.jar with pimento-core-1.0.0.jar
If you use only Cinnamon you can safely ignore the Pimento jar file. There are two more jar files, but they never belong to the libraries of a web application. The cinnamon-javaclient jar contains the Cinnamon Java Client API and the pimento-generator jar the Ant Tasks for generating AS3 service interfaces and stubs from existing Java interfaces.
With the jump from version 0.3 to 1.0 we also changed the package structure for the Cinnamon Client API. A global "Organize Imports" should be sufficient to migrate existing applications, otherwise the API of the classes has not changed.
The old CinnamonServlet has now been deprecated. It will remain
in the code base for a while for backwards compatibility. You can now use the SpringCinnamonServlet
if you are using Spring or the XmlCinnamonServlet if you are using Cinnamon's own XML
configuration format. Having two separate servlets made it possible to reduce dependencies. If you don't
use Spring you can now remove it from your web applications classpath.
Likewise there are now two Ant Tasks for AS3 code genearation,
SpringGeneratorTask if you are using Spring and CinnamonGeneratorTask
if you are using Cinnamon's own XML configuration format. Thus the old mode attribute
is now obsolete and should be removed. All examples in the manual have been updated accordingly.
You can download the new Pimento and Cinnamon versions here.
The focus for the next weeks will now be work on Parsley 2. About half of the features are already implemented, but there is still a lot of work to do. The next Pimento Release (Version 1.1) won't get that much new features, since we want to clean up the internal APIs before we move on. The major theme for that release will be increased robustness.
Release Notes - Pimento + Cinnamon - Version 1.0.0
Bug
- [PMT-173] - Creating change sets for enum property types does not work correctly
- [PMT-179] - Batching multiple requests may lead to multiple inserts of the same transient entity
Improvement
- [PMT-46] - Cleanup code for Pimento integration tests
- [PMT-47] - Improve merge operations for detached entities
- [PMT-52] - Add Pimento configuration log to startup process
- [PMT-157] - Log parameters and return values for Cinnamon service invocations on the server side
- [PMT-158] - Service methods with void return type should allow result handlers without arguments
- [PMT-159] - Sort Cinnamon config log output
- [PMT-160] - Upgrade from dpUInt to Fluint
- [PMT-162] - Add formatted logs for requests and responses to Cinnamon and Pimento AS3 code
- [PMT-170] - Avoid unecessary dependencies to Spring and XOM when they are not used
- [PMT-174] - Class parameter for EntityManager evictAll should be optional
Task
- [PMT-49] - Add property file template for MySQL database settings
- [PMT-66] - Merge Cinnamon and Spicelib Java code base into Pimento SVN
- [PMT-67] - Integrate Pimento and Cinnamon Documentation
- [PMT-68] - Must use entity escape codes for brackets in Javadoc for Cinnamon Reflection classes
- [PMT-156] - Refactor package structure of Cinnamon AS3 Client API
- [PMT-171] - New Ant Tasks for combined Pimento and Cinnamon Project Builds