You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Two things to note: (1) a module-specific extender is created using an `extend(Binder)` method of the
95
95
module, and (2) an extender does not produce a `Module` — instead it adds services directly to the
96
96
`Binder`. So it is usually invoked within a lambda that produces a `Module`, or within an app `Module`.
97
97
98
-
* Per [CAY-2822](https://issues.apache.org/jira/browse/CAY-2822) `cayenne-server` module is renamed to `cayenne` — update your build scripts accordingly.
98
+
* Per [CAY-2822](https://issues.apache.org/jira/browse/CAY-2822) `cayenne-server` module is renamed to `cayenne` — update your build scripts accordingly:
99
+
```xml
100
+
<dependency>
101
+
<groupId>org.apache.cayenne</groupId>
102
+
<artifactId>cayenne</artifactId>
103
+
<version>{version}</version>
104
+
</dependency>
105
+
```
99
106
100
107
* Per [CAY-2823](https://issues.apache.org/jira/browse/CAY-2823) `ServerRuntime` is deprecated. Use `org.apache.cayenne.runtime.CayenneRuntime` instead.
101
108
@@ -106,7 +113,13 @@ and the release you are upgrading to.
106
113
* Per [CAY-2825](https://issues.apache.org/jira/browse/CAY-2825) Package `org.apache.cayenne.configuration.server` was renamed to
107
114
`org.apache.cayenne.configuration.runtime` — fix your imports accordingly.
108
115
109
-
* Per [CAY-2826](https://issues.apache.org/jira/browse/CAY-2826) `ServerModule` renamed to `CoreModule`.
116
+
* Per [CAY-2826](https://issues.apache.org/jira/browse/CAY-2826) `ServerModule` renamed to `CoreModule`. The new builder pattern combining both changes:
* Per [CAY-2828](https://issues.apache.org/jira/browse/CAY-2828) The `server` prefix was removed from the names of runtime properties and named collections
112
125
defined in `org.apache.cayenne.configuration.Constants`. Update references in code and in any scripts
@@ -115,3 +128,51 @@ and the release you are upgrading to.
115
128
* Per [CAY-2845](https://issues.apache.org/jira/browse/CAY-2845) `DataObject` interface and `BaseDataObject` class were deprecated and all logic moved to
116
129
the `Persistent` interface and `PersistentObject` class. Regenerate model classes via the cgen tool in
117
130
CayenneModeler or Maven/Gradle plugins.
131
+
132
+
## New Features in 5.0
133
+
134
+
### New Dev Versioning Scheme
135
+
136
+
Snapshot versions are now a constant value — the dev version of 5.0 will always be `5.0-SNAPSHOT`,
137
+
so you can stay at the bleeding edge of development if needed:
138
+
139
+
```xml
140
+
<dependency>
141
+
<groupId>org.apache.cayenne</groupId>
142
+
<artifactId>cayenne</artifactId>
143
+
<version>5.0-SNAPSHOT</version>
144
+
</dependency>
145
+
```
146
+
147
+
### New Class Generation UI
148
+
149
+
The new Class Generation UI in CayenneModeler simplifies configuration, allows multiple `cgen` setups
150
+
per project, and includes a template editor. Custom templates are now part of the project XML
151
+
configuration and don't require separate setup in either Modeler or Maven/Gradle plugins.
152
+
153
+
### Improved `(not)exists` Queries
154
+
155
+
`(not)exists` is now directly supported by the ExpressionAPI (including `Expression`, the expression
156
+
parser, and the PropertyAPI) — no need to construct a subquery manually. The feature can handle any
157
+
expression and spawn several sub-queries per expression if needed:
0 commit comments