This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git
commit 545bfb427c33b27010f5536dce61887f618ece1b Author: Andrus Adamchik <[email protected]> AuthorDate: Fri May 22 16:50:02 2026 -0400 UPGRADE notes cleanup: 1. clean formatting --- UPGRADE-4.2-and-older.md | 42 ------------------------------------------ UPGRADE.md | 44 ++++++++++++++++++++------------------------ 2 files changed, 20 insertions(+), 66 deletions(-) diff --git a/UPGRADE-4.2-and-older.md b/UPGRADE-4.2-and-older.md index 652c801ce..ee7052831 100644 --- a/UPGRADE-4.2-and-older.md +++ b/UPGRADE-4.2-and-older.md @@ -3,8 +3,6 @@ > These notes cover Cayenne releases up to and including 4.2. > For 5.0 and newer, see [UPGRADE.md](UPGRADE.md). ---- - ## Upgrading to 4.2.M2 * Per CAY-2659 All batch translators (`InsertBatchTranslator`, `UpdateBatchTranslator`, etc.) are updated @@ -12,8 +10,6 @@ update them accordingly, or keep using the old versions which are moved to the `org.apache.cayenne.access.translator.batch.legacy` package. ---- - ## Upgrading to 4.2.M1 * Per CAY-2520 `ObjectId` can't be instantiated directly — use `ObjectId.of(..)` methods instead: @@ -44,14 +40,10 @@ SQLSelect.params(String name, Object value) ``` ---- - ## Upgrading to 4.1.M3 * Per CAY-2514 `SERVER_CONTEXTS_SYNC_PROPERTY` default value was set to `false`. ---- - ## Upgrading to 4.1.M2 * Per CAY-2438 `DataChannelFilter` was deprecated and two new independent filters are introduced: @@ -68,8 +60,6 @@ - `cayenne-osgi` — contains OSGi related functionality. - `cayenne-rop-server` — ROP server part. ---- - ## Upgrading to 4.1.M1 * Per CAY-2351 Minimum supported Java version is now Java 8. There is no option to use Cayenne 4.1 with @@ -91,8 +81,6 @@ ("Tools" → "Generate Classes") or cgen tools in Maven/Ant/Gradle plugins. Also note that the serialization format of old data objects has changed — do not use serialized form to store objects. ---- - ## Upgrading to 4.0.B1 * Per CAY-2302 `postcommit` module and all its internals renamed to `commitlog`. The most important @@ -225,8 +213,6 @@ validation before insert using a `prePersist` callback (create it in CayenneModeler) or by overriding `validateForSave()`. ---- - ## Upgrading to 4.0.M5 * Per CAY-2186 `DerbyPkGenerator` switched from `AUTO_PK_TABLE` to a sequence-based PK generator. @@ -276,8 +262,6 @@ * Per CAY-2164 Creating a `ServerRuntimeBuilder` is now done via `ServerRuntime.builder()` (static method). The previous style `ServerRuntimeBuilder.builder()` is deprecated. ---- - ## Upgrading to 4.0.M4 * Per CAY-2133 `LegacyObjectNameGenerator` is no longer provided, as it wasn't possible to maintain it @@ -312,8 +296,6 @@ 8. `meaningfulPk` 9. `overwrite` ---- - ## Upgrading to 4.0.M3 * Per CAY-2026 Minimal Java version is now 1.7. Use Cayenne 3.1 or 4.0.M2 if your application requires @@ -347,8 +329,6 @@ </parent> ``` ---- - ## Upgrading to 4.0.M2 * Note that the 3.2 line of development was renamed to 4.0 — 4.0.M2 is a direct descendant of 3.2M1. @@ -391,8 +371,6 @@ `ServerRuntimeBuilder` will only use the config name if there's a single config and no override — otherwise it uses the override, or `"cayenne"` as the default. See CAY-1972. ---- - ## Upgrading to 3.1.B1 * Per CAY-1665 all properties and DI collection keys were placed in a single `Constants` interface, with @@ -401,8 +379,6 @@ If you are upgrading from an earlier 3.1 release, update your code and runtime parameters accordingly. ---- - ## Upgrading to 3.1.M3 * DataMap listeners are no longer supported. Use global listeners registered through the annotations API @@ -421,8 +397,6 @@ ``` Note that DataMap listener entries from old `*.map.xml` files will be ignored. ---- - ## Upgrading to 3.1.M1 The most essential change in Cayenne 3.1 is a new Dependency-Injection (DI) based bootstrap and @@ -504,15 +478,11 @@ requiring attention. -Dcayenne.jdbc.password=bar ``` ---- - ## Upgrading to 3.0.B1 * Per CAY-1281 the `pre-persist` callback was renamed to `post-add` (while `pre-persist` now has a different meaning). Open the project in the Modeler and agree to the automated upgrade. ---- - ## Upgrading to 3.0.M6 * Per CAY-1154 `org.apache.cayenne.access.reveng` was renamed to `org.apache.cayenne.map.naming`. If @@ -524,8 +494,6 @@ requiring attention. * Per CAY-1175 The `columnNameCapitalization` property of `SQLTemplate` now takes an enum, not a `String` — fix the calling code. ---- - ## Upgrading to 3.0.M5 * Per CAY-1127 Query "name" is no longer used as an internal cache key. This change is transparent to @@ -534,8 +502,6 @@ requiring attention. String cacheKey = query.getQueryMetadata(entityResolver).getCacheKey(); ``` ---- - ## Upgrading to 3.0.M4 * Per CAY-1049 API of internal classes that participate in `SelectQuery` translation has changed in a @@ -543,8 +509,6 @@ requiring attention. `DbAdapter`, check classes that directly or indirectly inherit from `QueryAssembler` and `QueryAssemblerHelper`. ---- - ## Upgrading to 3.0.M3 * Java 5 is now required as a minimum for CayenneModeler and the Cayenne libraries. @@ -553,16 +517,12 @@ requiring attention. generics this should not affect you, but if you do you will need to review any new compiler errors or warnings. Generics only affect compile time — the runtime behaviour is unchanged. ---- - ## Upgrading to 3.0.M2 * Per CAY-843 Lifecycle callback functionality is now built into `DataContext` and `DataDomain` — all custom setup code is no longer needed. As a result of this change `org.apache.cayenne.intercept` package was removed. See http://cayenne.apache.org/doc/lifecycle-callbacks.html for details. ---- - ## Upgrading to 3.0.M1 * **Jar files:** @@ -593,8 +553,6 @@ requiring attention. ALTER TABLE AUTO_PK_SUPPORT CHANGE COLUMN NEXT_ID NEXT_ID BIGINT NOT NULL; ``` ---- - ## Upgrading to 2.0.x Since 2.0, Cayenne is an Apache project and all `org.objectstyle.*` packages were renamed to diff --git a/UPGRADE.md b/UPGRADE.md index 5134e4bcc..a1add5877 100644 --- a/UPGRADE.md +++ b/UPGRADE.md @@ -5,11 +5,9 @@ **IMPORTANT:** Be sure to read all notes for the intermediate releases between your current release and the release you are upgrading to. ---- - ## Upgrading to 5.0.M2 -* Per CAY-2947 the `cayenne-commitlog` artifact has been removed. Commit log support is now part of the +* Per [CAY-2947](https://issues.apache.org/jira/browse/CAY-2947) the `cayenne-commitlog` artifact has been removed. Commit log support is now part of the core `cayenne` artifact — no extra dependency needed. Migrate as follows: - Remove the `cayenne-commitlog` dependency from your build. - Replace `CommitLogModule.extend(binder).addListener(l)` with: @@ -22,19 +20,19 @@ and the release you are upgrading to. - The `CommitLogListener`, `ChangeMap`, `ObjectChange` and related model classes remain in the `org.apache.cayenne.commitlog` package (now part of the core artifact). -* Per CAY-2935 Minimum required Java version for Apache Cayenne 5.0 is 21. +* Per [CAY-2935](https://issues.apache.org/jira/browse/CAY-2935) Minimum required Java version for Apache Cayenne 5.0 is 21. -* Per CAY-2937 the visual graph feature (entity layout diagrams) has been removed from CayenneModeler. +* Per [CAY-2937](https://issues.apache.org/jira/browse/CAY-2937) the visual graph feature (entity layout diagrams) has been removed from CayenneModeler. Existing `.graph.xml` files will be automatically deleted and their references removed from `cayenne-project.xml` when a project is opened in the Modeler and upgraded to the newest format. -* Per CAY-2859 `SelectById` query factory methods are redesigned with a bunch of old methods deprecated — +* Per [CAY-2859](https://issues.apache.org/jira/browse/CAY-2859) `SelectById` query factory methods are redesigned with a bunch of old methods deprecated — update your calls accordingly. -* Per CAY-2917 joins are generated in a different order in the Select SQL. This should not affect any +* Per [CAY-2917](https://issues.apache.org/jira/browse/CAY-2917) joins are generated in a different order in the Select SQL. This should not affect any logic except if your code relies on the generated SQL in any way. -* Per CAY-2924 the `org.apache.cayenne.map.event` package (mapping events and listener interfaces) was +* Per [CAY-2924](https://issues.apache.org/jira/browse/CAY-2924) the `org.apache.cayenne.map.event` package (mapping events and listener interfaces) was moved from the core to the CayenneModeler module — these events are not used at runtime. As part of this: - `DbEntity`, `ObjEntity` and `DataMap` no longer implement the `*Listener` interfaces and no longer expose the internal event-consumer methods (`dbEntityChanged`, `objEntityChanged`, `dbAttributeAdded`, @@ -49,7 +47,7 @@ and the release you are upgrading to. to before. If your application code subscribed to these mapping events at runtime, migrate to direct calls or to the Modeler. -* Per CAY-2925 the `cayenne-modeler-maven-plugin` was removed. Launch CayenneModeler from the downloaded +* Per [CAY-2925](https://issues.apache.org/jira/browse/CAY-2925) the `cayenne-modeler-maven-plugin` was removed. Launch CayenneModeler from the downloaded distribution instead. A CLI option also exists for all platform flavors: ``` java -jar CayenneModeler.jar path/to/cayenne-project.xml @@ -59,11 +57,9 @@ and the release you are upgrading to. open CayenneModeler.app --args path/to/cayenne-project.xml ``` ---- - ## Upgrading to 5.0.M1 -* Per CAY-2737 All code deprecated in Cayenne 4.1 and 4.2 was deleted — please review your code before +* Per [CAY-2737](https://issues.apache.org/jira/browse/CAY-2737) All code deprecated in Cayenne 4.1 and 4.2 was deleted — please review your code before upgrading. Most notable removals are `SelectQuery` and these Cayenne modules: - `cayenne-dbcp2` - `cayenne-joda` @@ -76,18 +72,18 @@ and the release you are upgrading to. - `cayenne-jms` - `cayenne-xmpp` -* Per CAY-2742 Minimum required Java version for Apache Cayenne is 11. +* Per [CAY-2742](https://issues.apache.org/jira/browse/CAY-2742) Minimum required Java version for Apache Cayenne is 11. -* Per CAY-2747 Cayenne XML schemas are updated — update your projects by opening them in the Modeler or +* Per [CAY-2747](https://issues.apache.org/jira/browse/CAY-2747) Cayenne XML schemas are updated — update your projects by opening them in the Modeler or using the `cayenne-project-compatibility` module. -* Per CAY-2751 There is no more JNDI DataSource provided by Cayenne, nor password encoding capabilities. +* Per [CAY-2751](https://issues.apache.org/jira/browse/CAY-2751) There is no more JNDI DataSource provided by Cayenne, nor password encoding capabilities. If you need these, provide your own custom DataSource. -* Per CAY-2752 Code generation configuration has minor changes — review and update Maven, Gradle and Ant +* Per [CAY-2752](https://issues.apache.org/jira/browse/CAY-2752) Code generation configuration has minor changes — review and update Maven, Gradle and Ant configs accordingly. -* Per CAY-2772 Module extension is done differently. This may result in compile errors in some module +* Per [CAY-2772](https://issues.apache.org/jira/browse/CAY-2772) Module extension is done differently. This may result in compile errors in some module extensions. If you encounter those, change how you configure the modules, following this general pattern (using `CacheInvalidationModule` as an example): ```java @@ -99,23 +95,23 @@ and the release you are upgrading to. module, and (2) an extender does not produce a `Module` — instead it adds services directly to the `Binder`. So it is usually invoked within a lambda that produces a `Module`, or within an app `Module`. -* Per CAY-2822 `cayenne-server` module is renamed to `cayenne` — update your build scripts accordingly. +* Per [CAY-2822](https://issues.apache.org/jira/browse/CAY-2822) `cayenne-server` module is renamed to `cayenne` — update your build scripts accordingly. -* Per CAY-2823 `ServerRuntime` is deprecated. Use `org.apache.cayenne.runtime.CayenneRuntime` instead. +* Per [CAY-2823](https://issues.apache.org/jira/browse/CAY-2823) `ServerRuntime` is deprecated. Use `org.apache.cayenne.runtime.CayenneRuntime` instead. -* Per CAY-2824 `CayenneServerModuleProvider` was renamed to `CayenneRuntimeModuleProvider` and moved to +* Per [CAY-2824](https://issues.apache.org/jira/browse/CAY-2824) `CayenneServerModuleProvider` was renamed to `CayenneRuntimeModuleProvider` and moved to the `org.apache.cayenne.runtime` package. If you are using the auto-loading mechanism for your custom modules, update your `META-INF/services` reference accordingly. -* Per CAY-2825 Package `org.apache.cayenne.configuration.server` was renamed to +* Per [CAY-2825](https://issues.apache.org/jira/browse/CAY-2825) Package `org.apache.cayenne.configuration.server` was renamed to `org.apache.cayenne.configuration.runtime` — fix your imports accordingly. -* Per CAY-2826 `ServerModule` renamed to `CoreModule`. +* Per [CAY-2826](https://issues.apache.org/jira/browse/CAY-2826) `ServerModule` renamed to `CoreModule`. -* Per CAY-2828 The `server` prefix was removed from the names of runtime properties and named collections +* 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 defined in `org.apache.cayenne.configuration.Constants`. Update references in code and in any scripts that use them as system properties. -* Per CAY-2845 `DataObject` interface and `BaseDataObject` class were deprecated and all logic moved to +* Per [CAY-2845](https://issues.apache.org/jira/browse/CAY-2845) `DataObject` interface and `BaseDataObject` class were deprecated and all logic moved to the `Persistent` interface and `PersistentObject` class. Regenerate model classes via the cgen tool in CayenneModeler or Maven/Gradle plugins.
