A belated, but nonetheless exciting announcement. Our team recently released 
the first milestone of Cayenne 5.0.

There are more than a hundred Jiras in the release notes, so it is easy to get 
lost 🙃 But the main direction is simplifying the structure of the framework, 
now that we removed the previously deprecated ROP piece (the multi-tier stack). 
Suddenly, we could switch to sane module and class naming, flatten inheritance 
hierarchies of the core classes, and so on. Some examples:

- "cayenne-server" is now "cayenne"
- CayenneDataObject is PersistentObject (and a generic variant - 
GenericPersistentObject)
- ServerRuntime is CayenneRuntime

Other notable changes and new features:

* Min Java version supported is 11 (should've probably gone with 21 :))
* SELF property in class generation templates
* Unified class generation UI (also a result of ROP removal)
* Direct support for "(not) exists" expressions (it was somewhat confusing in 
4.2)
* ANY, ALL subqueries and "case when" expressions
* Per-project disabling of validation rules

.. and a number of other smaller things. 

Enjoy!

Andrus

https://cayenne.apache.org/download/
https://cayenne.apache.org/2024/09/cayenne-50m1-released/



Reply via email to