What's new in 1.1.1?
Compared to version 1.1.0, there are the following changes:
- Bugfix: Fixed a bug concerning reading of encryption coordinates from the datastore.
- Code cleanup: Removed some unnecessary classes (were introduced for GAE, but finally not needed anymore).
- Web site: Mentioned availability of 2nd licence (dual licencing) and fixed some broken links.
What's new in 1.1.0?
Compared to version 1.0.2, there are the following changes:
- Data store incompatibility: When upgrading an existing datastore, you have to manually drop all unique indexes in the underlying database. They will then be automatically recreated (they only cannot be automatically changed). Furthermore, you should be aware that Cumulus4j will need to recreate its indexes, what might take some time - and might require some handling in your software.
- New feature: Support of the GAE with Google BigTable as underlying database. The key management still needs to be done manually by your application code, but we plan to provide libraries for GWT in one of the next versions. You're very welcome to contribute!
- New feature: Support multitenancy within one single underlying database. It was already possible to use a Cumulus4j-based application in a multi-tenants-scenario by assigning a separate database to each tenant. But there are use-cases where this is not possible (e.g. in the GAE, there is only one single database per application). Cumulus4j now hides the (anyway unreadable, because undecipherable) data of other tenants, thus making it possible to share one single database among many tenants.
- New feature: Introduced version management for datastore upgrades (needed first time to transform the old datastore structure into version 1.1.0).
- New feature: Full support (write, read, query) of embedded objects in both 1-1- and 1-n-relations.
- Bugfix: If there is a common super-class having two direct sub-classes (siblings to each other) and a query is performed on one of the sub-classes and that query filters by fields of the super-class, then objects of the other sub-class were found, too. Now only instances of the correct sub-class (including its sub-classes, if there are) are found.
What's new in 1.0.2?
Compared to version 1.0.1, there are the following changes:
- Fixed a few bugs. Due to one of these bugs the key store's file format changed. Old key store files can be read, but they might be converted automatically into the new file format and will then not be readable for older Cumulus4j versions, anymore. Bear this in mind when upgrading (backup your key stores!).
- Added a few annotations for GAE compatibility (which is not yet achieved by this version).
What's new in 1.0.1?
Compared to version 1.0.0, Cumulus4j 1.0.1 brings the following:
- Bugfix: A Heisenbug which happened solely with optimistic transactions was fixed.
- Compatibility: There was a change in DataNucleus' plug-in API from version 3.0.0-release to version 3.0.1. Cumulus4j 1.0.1 is now compatible again with the newest DataNucleus versions (see compatibility matrix).