> in short; 5.0 is really making me all re-excited about Cayenne.

This should be a quote on our website or something :) 


> On Sep 29, 2024, at 5:53 AM, Hugi Thordarson <h...@godurkodi.is> wrote:
> 
> Congratulations on the release!
> 
> Being an extremely lacking contributor to Cayenne in the code sense, I 
> decided this time I could at least contribute a little testing so I've been 
> running 5.0 in production on a couple of projects for a few weeks (mostly 
> personal projects where no one dies if anything bad happens but still a few 
> hundred active users, quite some traffic/load and a few million DB records to 
> play with). Didn't mention this sooner since, well, it's kind of stupid — and 
> I didn't want to accidentally cause you any unnecessary subconscious second 
> thoughts about moving fast and breaking stuff. But now I can at least claim 
> I'll be sticking with M1 :p.
> 
> The migration to 5.0 was easy, mostly just upgrade model and class templates 
> and then a little manual find/replace to accommodate the new class/interface 
> structure. The systems have been running great (on JDK 22) with nothing to 
> report, really. And as someone that's far too long stuck with 4.1 
> (for…reasons) the new Property APIs, and just all the added 
> query/expression/SQL function features in general, are an absolute joy to 
> have and use (and have allowed me to throw out more than a few SQLSelects). 
> I've been working through the 4.2 and 5 release notes trying out new 
> features/improvements and using them to rewrite older stuff, and I've had 
> quite a few "oh, this is nice"-moments. Having the well written, detailed 
> release notes really is a great help during a process like this so thanks for 
> that.
> 
> I'll do a more detailed writeup at some point. But in short; 5.0 is really 
> making me all re-excited about Cayenne. Thanks for all the work you're doing 
> and again, congrats!
> 
> - hugi
> 
> 
> 
>> On 27 Sep 2024, at 21:23, Andrus Adamchik <aadamc...@gmail.com> wrote:
>> 
>> 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