> 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/ >> >> >> >