-
Notifications
You must be signed in to change notification settings - Fork 134
/
Copy pathRELEASE-NOTES.txt
697 lines (639 loc) · 37.9 KB
/
RELEASE-NOTES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
Apache Cayenne Release Notes
============================
For the latest information visit project web site:
http://cayenne.apache.org/
To browse individual bug reports check out project issue tracker:
https://issues.apache.org/jira/browse/CAY
----------------------------------
Release: 4.1.1
Date: December 17, 2021
----------------------------------
Changes/New Features:
CAY-2725 Upgrade Gradle to 7.3
Bug Fixes:
CAY-2670 CommitLog does not include FKs for deleted objects with one-way relationships
CAY-2676 Degradation: Custom class generation templates are not working anymore
CAY-2677 Modeler: Custom Class Generation Templates for Embeddables and DataMaps
CAY-2678 Inheritance warnings caused by unnecessary MappingCache creations during initialization
CAY-2679 Unstable ordering of relationships in the .map.xml file
CAY-2681 Modeler: All selected checkboxes cause project to become dirty at initialization
CAY-2690 dbimport skips length changes for BINARY and VARBINARY columns
CAY-2691 MySQL driver 8.0.x stores LocalDateTime differently than 5.1.x
CAY-2697 Read-only cgen template creates mutator methods for to-many relationships
CAY-2698 EventSubject.getSubject() is not thread safe
CAY-2702 Modeler: Callbacks table has too small default width
CAY-2721 Platform builds of CayenneModeler don't work with Java 17
CAY-2724 Duplicating relationship after editing its name
----------------------------------
Release: 4.1
Date: July 14, 2020
----------------------------------
Bug Fixes:
CAY-2642 EhCache memory leak due to misconfiguration
CAY-2643 ObjectSelect.prefetch(name, semantics) method creates a phantom node
CAY-2646 Wrong target path selection logic in cgen config
CAY-2647 Modeler: project upgrade from 4.0.B2 to 4.1.RC2 failure
CAY-2653 No methods for queries with qualifier parameters generated
CAY-2654 Exception in dbimport when relationships should be imported, but no explicit configuration exists
----------------------------------
Release: 4.1.RC2
Date: October 25, 2019
----------------------------------
Bug Fixes:
CAY-2627 Modeler: ObjRelationship creation dialog ignores delete rule
CAY-2628 dbimport: unable to add several relationships to existing entity
CAY-2631 Can no longer use "byte[]" as root of scalar SQLSelect
CAY-2632 Modeler: issue saving cgen path for maven project
CAY-2633 Modeler: attribute sorting logic in cgen can corrupt model
CAY-2634 Minor inconsistencies in Modeler "DB Import"
CAY-2635 Lambda expressions break ROP serialization
----------------------------------
Release: 4.1.RC1
Date: October 3, 2019
----------------------------------
Changes/New Features:
CAY-2592 Modeler: make all datamaps selected in global cgen tab
CAY-2593 Add tableTypes field to dbImport config in dataMap
CAY-2611 Exclude system catalogs and schemas when run dbImport without config
Bug Fixes:
CAY-2417 Modeler: wrong title in attribute context menu
CAY-2553 Wrong disjoint prefetch query qualifier
CAY-2565 Can't use new generated PK properties with dot() operator
CAY-2573 DI field injection is triggered when creating sql Driver
CAY-2580 Cgen: Can't use custom templates for client mode
CAY-2582 Double insert of manyToMany relationship mapped to Set
CAY-2584 Crypto: can't use ColumnSelect with encrypted columns
CAY-2586 Char can't be materialized to EnumType in some cases
CAY-2591 Modeler: project becomes dirty after click on dbImport or cgen tab
CAY-2594 DbImport: AutoAdapter resolving inside an import operation hangs up the op on Hana DB
CAY-2595 ObjAttributes are not sorted in alphabetical ordering on save
CAY-2596 DbImport xml config changes after dbImport plugin task execution
CAY-2600 Modeler DbImport: Can't retrieve schema for databases with no catalog support
CAY-2601 Modeler DbImport: result dialog issues
CAY-2603 NPE reloading project in the model
CAY-2605 Modeler: Unable to save - java.nio.file.InvalidPathException
CAY-2606 Can't resolve obj path with embeddable component
CAY-2608 Modeler: NPE when reverse engineering with an auto-adapter DataSource
CAY-2609 Modeler: can't close dbImport result dialog window
CAY-2614 Modeler: Connection test result window shown under other windows
CAY-2616 Modeler: Wrong handling of path with spaces
CAY-2618 Unstable property ordering in generated classes
CAY-2619 "to-dep PK" related dbimport delta confuses the Modeler
CAY-2624 SelectQuery "having" qualifier is not considered when calculating cache key
----------------------------------
Release: 4.1.B2
Date: May 4, 2019
----------------------------------
Changes:
CAY-2570 Use MySQL adapter for latest versions of MariaDB
Bug Fixes:
CAY-2506 Java class generated for Embeddable object is not serializable
CAY-2538 Modeler: dbImport configuration unclear behavior
CAY-2550 Modeler: ObjAttribute inspector modifies wrong columns in attribute table
CAY-2559 Modeler: Warning dialog shows wrong information after changing target entity in dbRelationship
CAY-2561 Modeler: cgen type combobox doesn't set templates
CAY-2564 No import for Property after generation classes with pk properties
CAY-2566 Flush action generates update for PK attribute in case of toDepPK relationship
CAY-2568 Class Generation: Superclass Package setting persistence
CAY-2569 Custom 'Naming Strategy' in Cayenne Modeler
CAY-2572 Queries are not sorted by name in data map XML
----------------------------------
Release: 4.1.B1
Date: March 7, 2019
----------------------------------
Changes/New Features:
CAY-2446 Run Disjoint By Id queries outside of synchronized block
CAY-2447 Crypto support for LocalDateTime
CAY-2471 Support multiple XML project versions
CAY-2473 Modeler: cleanup attributes and relationship editors
CAY-2474 Modeler: swap buttons in dialog toolbar
CAY-2475 Modeler: move inheritance icon to name column in objAttr table and objRel table
CAY-2478 cgen: Generate properties for PK
CAY-2481 Support for Object[] as return type in SQLTemplate and SQLExec
CAY-2485 Compact Slf4j Logger
CAY-2487 Removed usage of CayenneException.
CAY-2489 Add validation to the case of not to PK relationships
CAY-2491 Remaster Db Import View
CAY-2493 Save cgen configuration with datamap XML
CAY-2494 Rename dbImport tag from 'config' to 'dbImport'
CAY-2499 Support for COUNT(DISTINCT(column)) function aggregate
CAY-2514 Set SERVER_CONTEXTS_SYNC_PROPERTY default value to false
CAY-2517 EventManager: optimization of adding listeners
Bug Fixes:
CAY-2320 Modeler: Limit input into numeric fields to 10 digits
CAY-2444 Change URI from http:// to https:// in xsi:schemaLocation
CAY-2445 Oracle: Problem with ExpressionFactory.notInExp()
CAY-2449 Modeler: Needless scrollbar in Generate DB Schema result menu
CAY-2450 Modeler: Impossible to update Attribute title after syncing ObjEntity
CAY-2451 Modeler: ObjEntity "Edit" button doesn't open editor for Relationship
CAY-2454 Modeler: Unable to read validation message if it's truncated
CAY-2455 Modeler: The width of the pop-up window is very large
CAY-2459 Modeler: DataMap paste function is not working
CAY-2462 Modeler: Clipboard holds old content after application was reloaded
CAY-2463 Modeler: DB Schema generation doesn't work
CAY-2464 ClassCastException when returning PRUNED_NODE in expression transformer
CAY-2470 Can't bind SQLExec parameters in a loop
CAY-2472 Clear cached replacement query on mutation in all indirect queries
CAY-2476 Modeller: Fixed wrong behaviour of code generation dialog
CAY-2480 cayenne:cdbgen and cayenne:cgen have identical text in cayenne-maven-plugin
CAY-2484 maven plugins missing in 4.1.M2 release
CAY-2490 Added dbEntities from other datamaps in dbRelationship dialog.
CAY-2496 Fixed wrong table behavior: focus color, cleanup DBAttribute Path cell on select.
CAY-2497 Modeler: SQL Scripts tab isn't scrollable
CAY-2501 Modeler: DbImport ui not loading columns for MySQL connector v8.0
CAY-2502 DataMap in DataNode tree view disappears after dbImport
CAY-2504 Broken detection logic of NoopEventBridge in DataRowStoreFactory
CAY-2505 EventBridge providers should be bound without scope
CAY-2521 Expression without Object ID disjoint issue
CAY-2530 DB Import and Class Generation from Project is performed for removed datamaps
CAY-2531 Importing same schema after Import Revert clears all entities in datamap
CAY-2533 Modeler: Exception on validating ObjRelationship without db path
CAY-2535 Imposible to import stored proceedure apart from db tables
CAY-2537 Generate DB Schema: Schema Generation Complete popup window is hidden
CAY-2544 Possible name clash of ivar and property name in generated class
CAY-2547 CayenneDataObject serialization issue
----------------------------------
Release: 4.1.M2
Date: July 11, 2018
----------------------------------
Changes/New Features:
CAY-1683 Injectable PkGenerator
CAY-2304 Custom ClassLoader for Maven and Gradle plugins that use project dependencies
CAY-2334 cgen: option to force run from maven/gradle
CAY-2337 Save reverse engineering configuration with datamap XML
CAY-2372 Extract new modules from cayenne-server
CAY-2377 Cleanup deprecated code.
CAY-2391 cdbimport: add option to skip user-defined relationships
CAY-2393 Add sqlserver-docker profile to automate tests on SQLServer
CAY-2394 Upgrade to Apache Velocity 2.0
CAY-2395 cdbimport: add option to create project file
CAY-2396 Upgrade maven-assembly-plugin to 3.1.0
CAY-2398 Deprecate cayenne-joda
CAY-2400 Deprecate cayenne-dbcp2
CAY-2403 Extract eventbridges to top level
CAY-2404 Move itests to maven-plugins
CAY-2406 Add prefetch-related API to SQLSelect
CAY-2407 Modeler: add prefetch support for the SQLTemplate query
CAY-2410 Add prefetch type support for SQLTemplate query and SelectQuery
CAY-2414 Modeler: new icon design
CAY-2415 Transaction isolation and propagation support
CAY-2416 Change TreeMap for HashMap to store data in Cayenne model classes
CAY-2422 Modeler: Open driver setup window on driver load error
CAY-2438 Split DataChannel filter into two independent filters
CAY-2440 cdbimport: allow cross-schema relationships
CAY-2443 Make SqlTemplate and SqlExec possible to return generated keys
Bug Fixes:
CAY-2282 Various Update Issues With Vertical Inheritance
CAY-2370 ValueObjectType for byte[] fails lookup
CAY-2380 ReferenceMap should not store or return null values
CAY-2381 cgen: meaningful PK with boxed type ends up with primitive type in generated source
CAY-2382 Lack of synchronization in DataContext serialization
CAY-2387 Can't select byte[] property with ColumnSelect
CAY-2388 Modeler: Visualization issues with undo/redo actions for attributes and relationships
CAY-2389 DbEntity qualifier with DbPath expression translates into wrong SQL
CAY-2392 Modeler: Unable to remove DataNode
CAY-2397 Modeler: Unable to set enum:value as Entity qualifier
CAY-2401 Modeler: NPE in ObjEntity sync action
CAY-2405 Broken prefetch of entity with inheritance and attribute with custom java type
CAY-2408 Cayenne JDK 10 compatibility
CAY-2411 Wrong resolution of ExtendedType with ValueObjectType for inherited class
CAY-2418 Modeler: unable to edit entity selected via Search
CAY-2419 Modeler: Not changing highlight on selecting search results within one entity
CAY-2420 Modeler: search is not performed for Stored Procedures
CAY-2425 Modeler: Migrate DB Direction field is locked if no option was selected in dropdown list
CAY-2427 Modeler: Undo throws exception
CAY-2429 Generate classes: Invalid template type: EMBEDDABLE_SINGLE_CLASS
CAY-2430 Modeler: Redo throws NPE
CAY-2435 cdbimport: procedure parameters are not imported
CAY-2436 NPE in CayenneRuntimeException constructor
CAY-2439 Modeler: Error deleting dbEntity when show only dbEntities filter is set
CAY-2442 Broken EventBridge providers implementations
----------------------------------
Release: 4.1.M1
Date: October 14, 2017
----------------------------------
Changes/New Features:
CAY-2152 Redesign project file upgrade system
CAY-2329 Update project dependencies
CAY-2330 Field based data objects
CAY-2335 New XML loading/saving mechanics with support of plugable handlers
CAY-2336 Support for comments in Modeler
CAY-2339 Compatibility module to support old versions of projects at runtime
CAY-2344 Modeler: Save ER-Graph and class diagram
CAY-2345 Own template renderer as a replacement for Velocity
CAY-2346 Field-based data object with Map-based storage fallback
CAY-2351 Remove commons-collections usage completely
Bug Fixes:
CAY-2312 Modeler: Undo does not work for checkboxes
CAY-2318 Modeler: Query. Exception after Undo clicking
CAY-2319 Modeler: Embeddable > Attributes. Undo does not cancel pasted objects
CAY-2321 cdbimport: Reverse relationship is not created after adding and rev engineeering new db table
CAY-2323 Modeler: Graph. No warning while saving the image with existing name
CAY-2331 cgen: broken templates for data map
CAY-2347 cdbimport: can't get all relationships on the first pass
CAY-2349 Cache issue: 'SelectQuery' with prefetches loses relationships
CAY-2350 Expression: NotIn with empty collection returns empty result
CAY-2353 Broken paginated column select with only one entity in the result
CAY-2354 DbGenerator.runGenerator must commit its connection
CAY-2356 EJBQL: Incorrect COUNT() on outer joined table
CAY-2357 Generic select queries silently convert result to nulls if no PK column found
CAY-2358 NPE when callbacks invoked on null objects
CAY-2359 EJBQL: db path in not supported in ORDER BY
CAY-2361 PostgreSQL DbGenerator issues
CAY-2362 ColumnSelect: unable to use Property without type
CAY-2363 ColumnSelect: unable to use from nested context
CAY-2364 Wrong logging in SQLTemplate
CAY-2365 SQLExec query tries to convert (unexpected) result set into objects
CAY-2366 Incorrect EJBQL COUNT translation
CAY-2367 ClassCastException reading object with an attribute of type 'char'
CAY-2368 ColumnSelect: Property.self() translates into wrong SQL code
----------------------------------
Release: 4.0.B1
Date: June 12, 2017
----------------------------------
Changes/New Features:
CAY-1873 Move DataDomain cache configuration from the Modeler and into DI
CAY-1891 Modeler: Add To-Many Warning
CAY-1892 Modeler: Add Relationship Data Type Warning
CAY-2057 Modeler: Clean up OS X version
CAY-2109 cayenne-crypto: add value authentication (HMAC)
CAY-2210 Query cache: incorrect cache key for queries with custom value objects
CAY-2255 ObjectSelect improvement: columns as full entities
CAY-2258 DI: type-safe binding of List and Map
CAY-2259 QueryCache: support for referencing type-safe caches
CAY-2261 Replace NamedQuery with MappedXYZ in *datamap.vm
CAY-2262 Module auto-loading
CAY-2266 Move EventBridge implementations into autoloadable modules
CAY-2267 Contribute lifecycle events listeners via DI
CAY-2268 DI: Refactor ListBuilder API ambiguities for before() / after() bindings
CAY-2269 Add support for date/time components extraction in expression functions
CAY-2270 Update function support in expression parser
CAY-2271 ColumnSelect: support for prefetch and limit
CAY-2272 ColumnSelect: methods to manually control DISTINCT clause
CAY-2274 Modeler: Validate case when dependent PK is marked as “generated”
CAY-2277 Create ClientRuntime with ClientRuntimeBuilder just like ServerRuntime
CAY-2278 Extract cayenne-postcommit module from cayenne-lifecycle
CAY-2280 Switch from commons-logging to slf4j
CAY-2295 "Sync ObjEntity with DbEntity" and "View related DbEntity" buttons aren't disabled, if DbEntity doesn't have ObjEntity
CAY-2296 cayenne-crypto: Get java type for DbAttribute bound to ObjAttributes with the same type
CAY-2300 Modeler: New icons and design improvements
CAY-2302 Rename postcommit module and its content to commitlog
Bug Fixes:
CAY-2021 cdbimport: detect when same FK constraint is defined twice
CAY-2077 Bug in CayenneRuntimeException using wrong specified string in Formatter
CAY-2094 SelectById query doesn't work from ROP client
CAY-2161 'Not for Client Use' option is ignored at Class Generation
CAY-2171 Modeler: Undo db Entity Sync throws error
CAY-2208 SQLTemplate: LEFT JOIN to a subset of a table returns nulls for entries that don't have a match in the subset
CAY-2230 Error using connection to postgresql with db schema in DB URL
CAY-2240 Modeler: issue with cursor rendering for EJBQL query
CAY-2243 ObjectContext.getGraphManager().unregisterObject() inconsistencies
CAY-2250 Remove: Incorrect text in Confirm Remove message when cursor is set on attribute row
CAY-2256 Cannot Save/Insert an Object With null Flattened (complex) toOne Relationship (see also CAY-2146)
CAY-2265 ServerRuntime.builder() fails to set default runtime name when a the project file doesn't follow recognized pattern
CAY-2273 Modeler: default suggested cgen location is rooted in subpackage
CAY-2275 Documentation: tutorial is out of sync with 4.0.M5 version
CAY-2276 PrePersist listener registered as PostPersist in LifecycleCallbackRegistry.addListener(Class<?>, LifecycleListener)
CAY-2279 cdbimport: skip PK comparison for VIEWs
CAY-2281 ObjEntity attribute overrides are never deleted
CAY-2284 Expression likeIgnoreCase can't handle unicode chars in in-memory evaluation
CAY-2286 Filter out inherited ObjEntities from sync with DbEntity
CAY-2326 DI: can't override List/Map elements from another Module
----------------------------------
Release: 4.0.M5
Date: March 6, 2017
----------------------------------
Changes/New Features:
CAY-2139 Upgrade HSQLDB dependency to the most recent version (2.3.4)
CAY-2150 Refactoring: ParameterBinding to contain ExtendedType property
CAY-2163 Property.path() , ExpressionFactory.pathExp()
CAY-2164 Relocate builder bootstrap methods from ServerRuntimeBuilder to ServerRuntime
CAY-2165 Explicit "contribution" API for easier expansion of DI collections and maps
CAY-2166 Auto-loading of Cayenne modules
CAY-2168 Split DbLoader to parts and clean it up
CAY-2169 Split DbMerger to parts and clean it up
CAY-2170 MergeToken sorting is highly unstable
CAY-2172 Cleanup Modeler import and migrate db actions
CAY-2176 Java 7 diamond class generation templates
CAY-2177 Sync auto generated state of PK between model and DB
CAY-2187 Support for the scalar and aggregate SQL functions in ObjectSelect API
CAY-2197 Update sqlite version and enable in-memory default config
CAY-2212 cdbimport cleanup and configuration schema refactoring
CAY-2223 JCacheQueryCache - a query cache provider to plug in JCache implementers
CAY-2225 Extensible CacheInvalidationFilter logic
CAY-2228 Deprecate multiple cache groups in caching and query API
CAY-2231 Support for collections in new functional expressions and old math expressions
CAY-2232 Proper conversion to String for new functional expressions
CAY-2235 Deprecate Query.getDataMap() method
Bug Fixes:
CAY-2032 SelectAction: DistinctResultIterator ignores flattened relationships
CAY-2137 When generating SQL from EJBQL, use "AND" to separate multiple join conditions
CAY-2174 Change FK attribute name cause ObjAttribute appear after Reverse Engineering
CAY-2175 AliasName used in EJBQLQuery is not working if it contains mixed case
CAY-2183 Newly created DbRelationship is unexpectedly renamed by the Modeler
CAY-2199 Modeler on Windows: The same project is displayed twice in "Recent Projects"
CAY-2207 Modeler: "Java Type" and "DbAttribute Path" are not saved with using TAB to move forward
CAY-2221 In-memory expression evaluation gives different result than select query
CAY-2236 Modeler Migrate DB Schema: unable to Reverse All Operations
CAY-2238 Modeler: Preserve manually set DbRelationship name when syncing with ObjEntity
CAY-2242 Vertical Inheritance: Cannot Insert Record For Implementing Class with Attribute And Relationship
----------------------------------
Release: 4.0.M4
Date: December 13, 2016
----------------------------------
Changes/New Features:
CAY-2051 Applying new Reverse Engineering to the Modeler
CAY-2053 SQLExec fluent query API
CAY-2060 Replace Query objects in DataMap with query descriptors
CAY-2062 MappedSelect and MappedExec fluent query API
CAY-2063 ProcedureCall fluent query API
CAY-2065 Pluggable serialization and connectivity layers for ROP
CAY-2073 Ordering.orderedList methods
CAY-2074 Support for catalogs in stored procedures
CAY-2076 Implement Jetty HTTP/1.1 and HTTP/2 Client support for ROP Client
CAY-2083 Implement Protostuff as serialization service for Cayenne ROP
CAY-2090 Untangle HttpRemoteService from ServiceContext thread local setup
CAY-2100 Add supporting generated keys for PostgreSQL
CAY-2102 EJBQL: db: path not supported in select columns
CAY-2103 cayenne-crypto: support for mapping non-String and non-binary types
CAY-2106 cayenne-crypto: allow DI contribution of type converters inside ValueTransformerFactory
CAY-2107 cayenne-crypto: Lazy initialization of crypto subsystem
CAY-2111 Unbind transaction object from the current thread for iterated queries
CAY-2112 Expose callback for "performInTransaction"
CAY-2113 cdbimport: Reverse-engineering reinstates previously ignored columns
CAY-2114 cdbimport: object layer settings are not respected
CAY-2115 DbLoader - allow loading DataMap without Obj layer
CAY-2116 Split schema synchronization code in a separate module
CAY-2118 cdbimport: drop support for the old style of table filtering
CAY-2129 Modeler: reengineer dialog improvements
CAY-2130 Stripping common name prefixes on reverse engineering
CAY-2132 Adding SybaseSelectTranslator to support TOP/DISTINCT TOP in limited queries
CAY-2133 ObjectNameGenerator refactoring - unifying relationship name generation
CAY-2135 cdbimport: reset DbEntity catalogs / schemas to DataMap defaults
CAY-2136 Allow Ordering.orderedList(…) methods to accept a Collection rather than only a List
CAY-2160 Modeler: new welcome screen
CAY-2222 MySQLAdapter should not create indexes on FK columns
Bug Fixes:
CAY-2016 cdbimport: Rename table with toMany relationship causes migration error
CAY-2064 Issue with BeanAccessor for classes with complex inheritance
CAY-2066 Fixes for inner enums handling in ExtendedTypeMap
CAY-2067 Cayenne 4.0 connection pool is occasionally running out of connections
CAY-2070 Modeler sync function adds extraneous ObjRelationships inside the class hierarchy
CAY-2078 Client code gen bug. Unnecessary DataMap class generation setting datamap gen to false.
CAY-2080 Cayenne doesn't pick up reverse engineering file changes
CAY-2084 ObjectIdQuery - no cache access polymorphism
CAY-2086 SelectById.selectFirst stack overflow
CAY-2087 PostCommitFilter is confused about changes made by Pre* listeners
CAY-2089 HTTP connections aren't always closed in new ROP implementation
CAY-2097 NullPointerException while updating relationships for entities with vertical inheritance
CAY-2101 DataContext.currentSnapshot() doesn't set snapshot entity name
CAY-2105 Add missing elements to the reverseEngineering.xsd
CAY-2108 cayenne-di: StackOverflow for decorator that takes Provider of the delegate
CAY-2110 Obfuscated exception when processing iterated results
CAY-2119 ProjectUpgrader test failure (Windows)
CAY-2122 Vertical Inheritance: Cannot Insert Record For Implementing Class with Attribute And Relationship
CAY-2125 SchemaUpdateStrategy doesn't work with multiple DataNodes
CAY-2126 Modeler cannot upgrade project from v7 to v9
CAY-2128 Modeler stored procedures are not imported
CAY-2131 Modeler NullPointerException in reverse engineering when importing different catalogs in one datamap
CAY-2138 NVARCHAR, LONGNVARCHAR and NCLOB types are missing from Firebird types.xml
CAY-2141 Disjoint-by-id prefetch generates repeating ID conditions
CAY-2143 NPE in BaseSchemaUpdateStrategy
CAY-2144 cdbimport always fails for databases which don't support catalogs
CAY-2146 Vertical inheritance: record still inserted into parent db table when child validation fails
CAY-2148 Failure upgrading from 3.1 to M4
CAY-2150 UI bug: PK generation custom sequence is getting reset
CAY-2151 Migrate Database Schema: issue when no db is specified
CAY-2153 Modeler Exception in save action after reverse engineering some complex DB schema
CAY-2154 Migrate db: queries order
CAY-2226 PK generation for Frontbase: PK cache size must be ignored
----------------------------------
Release: 4.0.M3
Date: February 12, 2016
----------------------------------
Changes/New Features:
CAY-1626 Add JodaTime DateTime support
CAY-1902 Implement resolving Db paths for DataObjects
CAY-1991 More control over generated String property names
CAY-1992 Allow to exclude DataMap java class from Modeler class generation
CAY-1995 Add support for iterators to Select
CAY-2001 Saving a display state of Project
CAY-2004 EJBQL: Support for ordering on aggregate expressions
CAY-2007 Refactoring SelectTranslator for better extensibility
CAY-2008 Connection pool refactoring and validation query support in Cayenne DataSource
CAY-2009 Non-blocking connection pool
CAY-2010 DataSourceBuilder to help users create pooling and non-pooling DataSources
CAY-2011 Support for Java 8 date and time types
CAY-2012 ObjectSelect, SelectById: eliminating methods that reset query state
CAY-2013 In-memory evaluation of DB expressions - non-id attributes
CAY-2023 Decouple the use of ResourceLocator
CAY-2025 Support for DBCP2
CAY-2026 Java 7
CAY-2027 Support for Expression outer join syntax in EJBQL
CAY-2028 Wrap DataChannelFilter calls in the main transaction
CAY-2029 Allow out-of-order insertion into DI lists
CAY-2030 Capturing a stream of commit changes
CAY-2035 Autobind items added to collections (Cayenne DI)
CAY-2042 Remove an arbitrary limitation on 1000 runtime DbRelationships
CAY-2043 ServerRuntimeBuilder: use DataDomain name for the default DataNode
CAY-2044 Collection setter for to-many relationships
CAY-2045 Add autosuggestion fields to choose attributes and relationships
Bug Fixes:
CAY-1977 Cleanup Modeler reverse engineering functionality
CAY-1987 Widen types before performing in-memory evaluation of qualifiers using j.l.Number subclasses
CAY-1990 Incorrect display of the raw SQL query in Modeler
CAY-1993 Reverse Engineering does not work with PostgreSQL database
CAY-1994 Modeler Migration Tool Shows No Changes
CAY-1997 Difference in NULL handling inside the path between PropertyUtils and DataObject.readNestedProperty
CAY-1998 Speeding up PropertyUtils
CAY-1999 Unneeded Property import for superclasses with no properties
CAY-2003 cdbimport doesn't work properly with several includeTable tags
CAY-2015 Joint prefetches combined with DisjointById prefetches return null incorrectly
CAY-2020 typo: correction to upper alpha range in Rot13PasswordEncoder
CAY-2041 "cayenne.jdbc.max_connections" and "cayenne.jdbc.min_connections" command line options are ignored
CAY-2047 Relationship mapping with target inheritance
CAY-2049 Changing the Relationship name in ObjRelationship Inspector has no effect
----------------------------------
Release: 4.0.M2
Date: March 18, 2015
----------------------------------
Changes/New Features:
CAY-1267 Some changes to LogDialog
CAY-1826 Merge Entity Attributes and Relationships tabs together with one toolbar.
CAY-1839 Allow to link DataMaps to DataNodes from DataNode editor.
CAY-1841 Filters for Left-hand project navigator
CAY-1842 Remove Listeners support from the Modeler
CAY-1843 DataMap v7: Stop saving listeners in DataMap, add upgrade handler
CAY-1845 Upgrade javadoc plugin to 2.9.1
CAY-1846 Reworking of callback mapping
CAY-1847 Make ConverterFactory extensible
CAY-1848 New method: ObjectContext.selectOne(Select query)
CAY-1851 Generate default serialVersionUID for generated java classes to avoid eclipse warnings
CAY-1852 Straighten thread model and synchronization in the Modeler
CAY-1855 Iterated and paginated queries must print result counts
CAY-1856 Expression.expWithParameters does not work when parameters are placed in the inline collection
CAY-1860 In-memory matching of DataObjects against ObjectId or int
CAY-1861 Remove runtime relationships
CAY-1870 cgen - smarter default for 'superPkg' and 'destDir'
CAY-1882 Porting to OSGi environment
CAY-1883 Clean up Cayenne maven structure
CAY-1886 cayenne-di module reorg, new exceptions
CAY-1890 Remove Cayenne-level buffering when retrieving LOBs
CAY-1894 Support native PK generation using sequences for H2 databases
CAY-1899 ServerRuntimeBuilder
CAY-1900 Allow DataNode name to be used as a root of SQLTemplate
CAY-1901 Config-free ServerRuntime
CAY-1904 Simple injection-friendly constructor for AuditableFilter
CAY-1907 RowReaderFactory
CAY-1908 Refactor all SQLActions to work with DataNode
CAY-1911 BatchQuery refactoring - make Iterable
CAY-1912 BatchQueryBuilder refactoring
CAY-1913 Refactor org.apache.cayenne.access.trans into query-specific packages
CAY-1914 Refactor EJBQL-related translators to a standalone 'org.apache.cayenne.access.translator.ejbql' package
CAY-1915 BatchTranslator instead of performing bindings should return binding object whose values can be altered
CAY-1916 cayenne-crypto module that enables data encryption for certain model attributes
CAY-1918 Replace Oracle LOB hacks with JDBC 4.0 API
CAY-1919 Split DataNode creation into a separate DataNodeFactory
CAY-1920 DI: add support for decorators
CAY-1921 Support for schema selection in 'Migrate Database Schema'
CAY-1923 Optimize BatchTranslator - use fixed size array of BatchParameterBinding
CAY-1925 cayenne-crypto: add optional compression to the encryption pipeline
CAY-1928 Second INNER join generated for OUTER flattended relationships in disjoint prefetches
CAY-1929 Property.outer method to build OUTER join properties
CAY-1932 Improved Handling for Scalar Parameters Converting Expressions to EJBQL
CAY-1933 Problems in Evaluating EJBQL Statements with Integral Literals > Integer.MAX_VALUE
CAY-1934 A problem exists where the escape character is not conveyed in the EJBQL when toEJBQL() is invoked on the expression.
CAY-1936 ServerRuntime.getDataSource() returning DataSource of a default DataNode
CAY-1937 Make Transaction an interface
CAY-1938 Create a DI factory for transactions, get rid of TransactionDelegate and modeler config for tx policies
CAY-1939 DataDomain must use injectable TransactionManager
CAY-1946 CDbimport improvements
CAY-1949 Search in configuration fields (Catalog, Schema) in DbEntity
CAY-1952 Undeprecate (actually restore) ObjectContext.deleteObject(..)
CAY-1953 Redo ResultIteratorCallback to handle single row callback instead of iterator
CAY-1954 Make Cayenne class constructor protected
CAY-1958 SelectById - a new full-featured select query to get objects by id
CAY-1959 ObjectSelect query - a fluent API alternative to SelectQuery
CAY-1960 ExpressionFactory.exp(..) , and(..), or(..)
CAY-1962 Implement CayenneTable column resize on double-click on the header separator
CAY-1965 Change version from 3.2 to 4.0
CAY-1966 SQLTemplate/SQLSelect positional parameter binding
CAY-1967 Deprecate SQLTemplate parameter batches
CAY-1968 SQLSelect cleanup and omissions
CAY-1971 Variants of Property.like(..) : contains(..), startsWith(..), endsWith(..)
CAY-1972 A property to override DataSources of multi-module projects
CAY-1981 Add support of JDBC 4.0 N-types (nchar, nvarchar, longnvarchar, nclob)
CAY-1984 cdbimport doesn't flatten many to many relationships
Bug Fixes:
CAy-1988 ServerRuntimeBuilder: synthetic DataNode does not have domain's DataMaps linked
CAY-1480 Implement cross-db functional expressions
CAY-1695 Unexpected null value in bidirectional one-to-one prefetch
CAY-1736 IllegalArgumentException when synchronizing entities in the Modeler
CAY-1795 "Invisible" ObjAttribute in subclass
CAY-1796 ROP: All entity's to-many relationships getting faulted from database when using it as a parameter in qualifier expression
CAY-1797 NPE importing DataMap
CAY-1798 ROP: Reverse relationships of prefetched entity objects are not filled during server to client objects conversion
CAY-1799 ROP: Server can't deserialize LIKE expression with pattern already compiled
CAY-1818 Fix copyright year in the Modeler "about" panel
CAY-1834 Exception: ToManyList cannot be cast to DataObject
CAY-1857 Problem with hotkeys
CAY-1859 NullPointerException when importing EOModel
CAY-1863 Make determining whether a particular database type supports length adapter-specific not universal
CAY-1866 Change in General Modeler Preferences reverts old settings to default value
CAY-1868 Select contention with multiple contexts
CAY-1869 ResultIterator from cayenne-client dependency is subclassed from org.apache.cayenne.access.ResultIterator which is present only in cayenne-server dependency
CAY-1874 DB2 Procedure action ignores the first result set
CAY-1877 In-memory evaluation of expression may fail with UnsupportedOpeartionException depending on order of nodes
CAY-1880 objectStore snapshots never cleared from RefreshQuery when "use shared cache" unchecked
CAY-1881 CayenneModeler (Mac version) doesn't work with Java 7
CAY-1885 Null value in subclass's field.
CAY-1905 Multi-step prefetching NPE : 1..N..1 with absent N and root with no qualifier
CAY-1943 XML file not deleted when a DataMap is deleted from the project
CAY-1961 Fix RemoveAction for DataMaps in ProjectTree
CAY-1964 Fix convertAdditionalDataMaps() in CayenneGeneratorMojo.java
CAY-1973 error while generating classes
CAY-1974 Copy/Paste DbEntiry throws exception
CAY-1978 ESCAPE clause should be included in LIKE parenthesis
CAY-1979 Prefetches on Many-to-Many Relationships with Longvarchar
CAY-1980 'mvn cayenne-modeler:run' seems to be broken in 4.0
----------------------------------
Release: 3.2M1
Date: July 19, 2013
----------------------------------
Changes/New Features:
CAY-1294 Generify query
CAY-1646 Synchronize tabs in Modeler between ObjEntity and DbEntity editor panes
CAY-1647 Easily switch to/from ObjEntity and DbEntity in Modeler
CAY-1717 [PATCH] Implement JDBC compatibility layer methods
CAY-1718 Remove everything deprecated in 3.1
CAY-1724 Add 'Property' class for easier and better Expression creation
CAY-1726 Expression parser support for bit operators, support for << and >>
CAY-1737 ObjectContexts listening to DataChannel events must be non-blocking
CAY-1748 IdCoder/EntityIdCoder improvements to work with ObjectIds, including temp ones
CAY-1753 remove light-superclass.vm class template
CAY-1754 Modeler suggested URL for SQLServer should start with 'jdbc:sqlserver:' instead of 'jdbc:microsoft:sqlserver:'
CAY-1758 cdbimport improvements
CAY-1759 cdbimport improvements: add 'catalog', rename 'schemaName' to 'schema'
CAY-1760 cdbimport improvements: Default adapter (if none specified) must be AutoAdapter, not JdbcAdapter
CAY-1761 cdbimport improvements: DbLoader must reverse engineer PK auto-increment state.
CAY-1762 cdbimport improvements: Support for "defaultPackage" parameter, as the new DataMaps ends up placing entities in the root package
CAY-1763 cdbimport improvements: specified "schema" should become the default schema of the generated DataMap
CAY-1764 cdbimport improvements: "overwrite" flag
CAY-1765 cdbimport improvements: add excludeTables/includeTables parameters
CAY-1766 Deprecating DataPort ant task
CAY-1768 cdbimport improvements: DataMap "project-version" attribute is skipped when DM is saved
CAY-1769 cdbimport improvements: meaningfulPk flag must be turned into a pattern
CAY-1771 cdbimport improvements: "usePrimitives" flag
CAY-1772 Real support for DbEntity catalogs
CAY-1778 TransactionManager to simplify user-managed transactions
CAY-1779 Flatten object entities for many to many relationships on reverse engineering
CAY-1781 Add StatelessContextRequestHandler as an alternative to the Session-based one
CAY-1785 SelectQuery<T> for DataRows
CAY-1789 Lock-free EntityResolver
CAY-1792 [PATCH] Supply additional factory methods for generic SelectQueries
CAY-1803 Optimize Expression conversion to String and EJBQL
CAY-1809 Remove 'final' modifier from Cayenne, HessianUtil, PropertyComparator, ConversionUtil, and LinkedDeque
CAY-1813 Missing ObjEntity Attribute Validation with Duplicate DbEntity Columns
CAY-1814 Support Property.nin
CAY-1819 When adding a filter, auto-register it as a listener
CAY-1820 DataDomain.addListener(Object) - a shortcut for adding annotated listeners
CAY-1821 AuditableFilter and friends should explicitly work with Persistent instead of Object
CAY-1822 Make DataMap editor fields wider
CAY-1823 remove ":sync w/DbEntity" button from ObjEntity - it is redundant and already present on the entity toolbar.
CAY-1825 Simplify API for setting up query caching
CAY-1828 SQLSelect - generics friendly fluent selecting sql query
CAY-1829 Make ResultIterator implement Iterable<T>, create ObjectContext.iterate method
CAY-1836 Firebird Adapter
CAY-1838 Deprecate EntityResolver.indexedByClassProperty
CAY-1840 Conditionally log slow / long-running queries
CAY-1844 Configuration for maximum time to wait for an available DB connection
CAY-1862 MySQL - allow specifying a length for TIMESTAMP and TIME columns
Bug Fixes:
CAY-957 Deadlock in nested contexts
CAY-1522 EJBQL query don't support quotes
CAY-1677 Modeler: text fields discard input unless you press enter
CAY-1701 Modeler cannot undo pasting of obj (db) entity
CAY-1708 Modeler error when pasting datamap with EJBQL query
CAY-1714 ROP: Cayenne tries to build a query for non committed object when using more than 2 nested contexts
CAY-1721 Writing blobs fails (Oracle)
CAY-1725 NullPointerException from call to removeToManyTarget
CAY-1719 Modeler - Obj Attribute Java Type editor won't focus sometimes
CAY-1727 Modeler thinks entity is using inheritance when it doesn't
CAY-1729 PersistentDescriptor must have predictable property iteration order
CAY-1738 Tutorial cayenne-rop-server should be packaged as a war
CAY-1739 Cayenne ROP server resets session on every request if BASIC auth is used
CAY-1742 ObjRelationship inspector says "ObjAttribute Inspector"
CAY-1744 Unexpected read-only relationships in vertical inheritance mapping
CAY-1749 NPE on simple nested context commit
CAY-1755 FaultFailureException resolving relationships to UNIQUE non-PK columns
CAY-1757 ROP: Faulting entity relationship resets uncommitted modifications made to its reverse relationship
CAY-1774 EhCacheQueryCache.get(QueryMetadata, QueryCacheEntryFactory) returns null if EhCache instance for group is not present
CAY-1780 cdbimport do not create xml file in resource folder
CAY-1782 Deadlock when performing many concurrent inserts
CAY-1783 JdbcPkGenerator.longPkFromDatabase would throw an exception if the PK value exceeds a range of Java int
CAY-1794 Duplicate attributes in discriminator columns of PersistentDescriptor
CAY-1804 Serialisation of long[] type was not working correctly.
CAY-1806 Error importing eomodel
CAY-1817 NPE during Validate Project
CAY-1827 EhCache region corresponding to a cache group loses its settings after 'removeGroup'
CAY-1832 Exception when modifying objects in postLoad callback