Skip to content

Releases: eclipse-ee4j/eclipselink

5.0.1-RC2

5.0.1-RC2 Pre-release
Pre-release

Choose a tag to compare

@anija-anil anija-anil released this 08 Jun 13:41

What's Changed

  • Bump the dependencies group across 1 directory with 7 updates by @dependabot[bot] in #2746

Full Changelog: 5.0.1-RC1...5.0.1-RC2

5.0.1-RC1

5.0.1-RC1 Pre-release
Pre-release

Choose a tag to compare

@anija-anil anija-anil released this 11 May 13:50

What's Changed

  • [MASTER] Support new way of UUID handling for H2 database by @arjantijms in #2702
  • Bump the maven-plugins group across 1 directory with 2 updates by @dependabot[bot] in #2705
  • Bump the dependencies group across 1 directory with 2 updates by @dependabot[bot] in #2706
  • Consolidate dbdrivers used for testing by @lukasj in #2698
  • [master] Add BINARY(16) mapping for UUID columns in SQL Server by @pardhiv-krishna in #2708
  • #2699: preserve more specific argument field metadata in DatabaseQuery.rowFromArguments by @hgwr in #2700
  • [master] Fix reoccurrence of invalid PostgreSQL DDL generation by EclipseLink by @pardhiv-krishna in #2707
  • Bump the dependencies group with 3 updates by @dependabot[bot] in #2710
  • Bump the dependencies group across 1 directory with 5 updates by @dependabot[bot] in #2718
  • Bump org.codehaus.cargo:cargo-maven3-plugin from 1.10.26 to 1.10.27 in the maven-plugins group by @dependabot[bot] in #2711
  • Bump the dependencies group with 6 updates by @dependabot[bot] in #2723
  • [master] Fix CASE argument type mismatch in Oracle DB by @pardhiv-krishna in #2722
  • [master] Add Number type support to Year conversion and fix exception class constant by @pardhiv-krishna in #2726
  • Bump the dependencies group across 1 directory with 13 updates by @dependabot[bot] in #2734
  • Bump org.postgresql:postgresql from 42.7.10 to 42.7.11 in /boms/dependencies by @dependabot[bot] in #2735
  • Update pgsql.version from 42.7.4 to 42.7.11 by @lukasj in #2737

Full Changelog: 5.0.0...5.0.1-RC1

5.0.0

Choose a tag to compare

@anija-anil anija-anil released this 23 Mar 12:38
bc4f4eb

EclipseLink is an open-source Java ORM (Object-Relational Mapping) framework and an implementation of the Jakarta Persistence specification. It was originally developed by Oracle as TopLink before being donated to the Eclipse Foundation.

It handles the mapping between Java objects and relational database tables, letting developers work with plain Java objects (entities) instead of writing raw SQL.

Release Overview

EclipseLink 5.0.0 is a major modernization release focused on support for Jakarta Persistence 3.2 / Jakarta EE 11, including new JPQL and Criteria capabilities, updated persistence.xml and canonical-model support, additional basic type support such as Instant and Year, and record support for embeddables.

The release also advances platform readiness with a modern JDK baseline, JDK 21 support, and refreshed bytecode/tooling dependencies.

In addition, it delivers a broad set of query correctness, database-platform, and runtime performance improvements, including Oracle 23 support, multiple JPQL/parser fixes, optimizations in UnitOfWork and locking behavior, and the ability to build (passing all internals tests) on IBM DB2.

What's Changed

EclipseLink 5.0.0 changes grouped by area

1. Jakarta Persistence 3.2 support

1.1 Core API and metadata support
1.2 New JPQL and query-language features
  • JPQL 3.2 and string concat operator ||: #1903
  • REPLACE(): #1924
  • LEFT() / RIGHT(): #1933
  • UNION, INTERSECT, EXCEPT, CAST: #1937
  • ID() / VERSION(): #2108
  • NamedNativeQuery.entities(), classes(), columns(): #2500
1.3 Modern Java type support
  • java.time.Instant / java.time.Year basic types: #2078, #2081
  • java.lang.Record support in @Embedded: #2163
  • Embeddable record tests: #2527, #2529
  • Query fix for embeddable records: #2604
  • @Version with java.time.LocalDateTime: #2347, #2349, #2359
  • @EnumeratedValue support and follow-up fixes: #2484, #2504, #2648
1.4 Generator and metadata model changes
  • TableGenerator / SequenceGenerator optional name: #2532
  • Package-level TableGenerator / SequenceGenerator: #2544
  • TableGenerator precision propagation: #2457
  • TableGenerator regression in multitenancy-per-table: #2641

2. JPQL, Criteria, and query processing improvements

2.1 JPQL aliasing and identification-variable fixes
  • Generated default this alias in simple SELECT: #2102
  • this variable fixes: #2224
  • Generated this alias with WHERE in braces: #2240
  • Further generated this alias bugfixes: #2254
  • Enum attribute broken when identifier omitted or this. used: #2268
  • Embeddable / relational attributes without optional entity identification variable: #2278
  • Generated this alias in @NamedQuery: #2360
2.2 ID(...), embeddables, and update-query fixes
  • ID(this) as function argument: #2287
  • SELECT ID(entityVar) / incomplete IdClass fixes: #2384, #2409, #2624, #2657
  • Update JPQL queries for embeddables missing fields: #2345
  • JPQL update with nested embeddables: #2407
  • JPQL update of embeddable attribute / IllegalArgumentException: #2567
  • Null embedded object update on PostgreSQL: #2520
  • @Embeddable mapping resolution in ObjectExpression: #2419
2.3 Criteria and expression-engine fixes
  • Criteria queries with many joins: #2129
  • Identifier clashes with function names: #2218
  • Invalid query key in expression: #2377
  • EXTRACT / datetime-field fixes: #2464
  • JPQL NEW operator validation for unsupported types: #2468
  • FunctionExpression return type / XmlEnum handling: #1923
  • ReportQuery with BatchFetch.IN: #2303
  • Clone batchQuery for nested lazy instantiation: #2367
  • ExpressionQueryMechanism refactor: #2061
  • ExpressionOperator.printCollection NPE: #2139
2.4 Parameter binding and null-handling improvements
  • Empty collection / null parameter in IN expression: #2054
  • Escape ? using ?? in SQL expression: #1935
  • queryTimeoutUnit not copied in update execution: #2161
  • Optimistic lock exception with empty parameter values: #2383
  • JPQL parameter type inference for IS NULL: #2633
  • Parameter validation only on first occurrence: #2661
  • Preserve specific field type for null parameter binding: #2683

3. Runtime behavior, performance, and concurrency

3.1 Performance improvements
  • Major performance issue with many new entities: #1843
  • Duplicate objects in UnitOfWorkImpl.primaryKeyToNewObjects: #1951
  • Presize HashMap allocations in UnitOfWorkImpl: #1958
  • Avoid unnecessary reflection calls: #1953
  • `Logg...
Read more

5.0.0-RC2

5.0.0-RC2 Pre-release
Pre-release

Choose a tag to compare

@anija-anil anija-anil released this 19 Mar 12:46
bc4f4eb

What's Changed

Full Changelog: 5.0.0-RC1...5.0.0-RC2

5.0.0-RC1

5.0.0-RC1 Pre-release
Pre-release

Choose a tag to compare

@anija-anil anija-anil released this 10 Mar 12:22
d0c79f8

What's Changed

  • [master] Support UUID through the more efficient BINARY(16) or equivalent by @rfelcman in #2611
  • [master] Remove usages of FieldTypeDefinition from schema framework by @rfelcman in #2613
  • [master] EclipseLink generates invalid PostgreSQL DDL (INTEGER SERIAL NOT NULL) - bugfix by @pardhiv-krishna in #2617
  • [master] Bugfix - Query on entity with embeddable record fails with "A reference class must be provided" by @pardhiv-krishna in #2604
  • [master] Fixes NullPointerException when inserting empty string into @lob field on Oracle 23c by @pardhiv-krishna in #2619
  • [master] fix misleading SQL generated with LOCAL TIME in Oracle DB by @pardhiv-krishna in #2620
  • [master] Jakarta Persistence 3.2 Tests (without persistence.xml file) by @rfelcman in #2622
  • bugfix: using computeRootURL() in primary location computation as w… by @lprimak in #2612
  • [master] In test, send REORG for DB2 to finish table modification by @arjantijms in #2597
  • [master] Bind partial parameters for DB2 by @arjantijms in #2593
  • [Master] Issue Fix for #2211 (SELECT ID(entityvar) only returns part of IdClass) by @anija-anil in #2624
  • Bump com.microsoft.sqlserver:mssql-jdbc from 12.8.1.jre11 to 12.8.2.jre11 in /boms/dependencies by @dependabot[bot] in #2588
  • Fix for jmsSubscriberNotClosedOnServerShutDown by @vavishal in #2626
  • [master] Remove usages of FieldTypeDefinition from the schemaframework by @rfelcman in #2628
  • [MASTER] Pull new way of UUID handling from Derby to DB2 parent by @arjantijms in #2630
  • fix org.eclipse.persistence.testing.tests.jpa.persistence32.nofile.En… by @lprimak in #2629
  • [master] Add support for wait/nowait in for update for DB2 11.5.6+ by @arjantijms in #2631
  • Add DB2 and MySQL convenience profiles for starting DB by @arjantijms in #2634
  • Bump ch.qos.logback:logback-core from 1.5.19 to 1.5.25 in /boms/dependencies by @dependabot[bot] in #2625
  • fixes #2636: ModelGen: The getter method on entity class does not have a corresponding setter method defined by @lukasj in #2640
  • #2627: Regression in eclipselink 4.0.9 and 5+ for TableGenerator in multitenancy per table by @lukasj in #2641
  • Revert fix for bug 426852 which caused issues in existing applications by @vavishal in #2646
  • #2644: PostgreSQL10Platform, fix the printFieldIdentityClause by @lukasj in #2647
  • #2595: @EnumeratedValue String type failed by @lukasj in #2648
  • #2650: plain text password from properties is no longer working by @lukasj in #2651
  • #2635: Memory leak on multitenant using entity with bean validation constraint by @lukasj in #2652
  • Make sure build passes with Postgres by @lukasj in #2653
  • remove few warnings from the build by @lukasj in #2655
  • Fix JPQL parameter type inference for IS NULL by @hgwr in #2633
  • #2600: QueryImpl.setParameterInternal validates parameter type only for first occurrence by @lukasj in #2661
  • Simplify Maven configuration in dependabot.yml by @lukasj in #2662
  • Bump the actions-dependencies group with 4 updates by @dependabot[bot] in #2663
  • filter out oradb and inject from dbot updates by @lukasj in #2666
  • avoid copying test resources twice by @lukasj in #2667
  • Bump the maven-plugins group with 30 updates by @dependabot[bot] in #2664
  • update dependabot config by @lukasj in #2669
  • adopt parent 2.0.0 by @lukasj in #2672
  • Bump org.apache.felix:maven-bundle-plugin from 6.0.0 to 6.0.2 in the maven-plugins group by @dependabot[bot] in #2670
  • adopt expressly, update bean validator for tests by @lukasj in #2674
  • Bump the dependencies group across 1 directory with 49 updates by @dependabot[bot] in #2675
  • dependency updates by @lukasj in #2676
  • Code cleanup in ClassDescriptor and ReturningPolicy by @lukasj in #2678
  • Bump com.puppycrawl.tools:checkstyle from 13.2.0 to 13.3.0 in the dependencies group by @dependabot[bot] in #2680
  • [master] ASM (org.eclipse.persistence.asm implementation) removal by @rfelcman in #2008
  • move OXM tests to its own project by @lukasj in #2679
  • [master] Jenkins PR pipeline - OXM tests to its own project by @rfelcman in #2681
  • Bump org.eclipse.ee4j:project from 2.0.0 to 2.0.1 in the dependencies group by @dependabot[bot] in #2682
  • cyclonedx.skipNotDeployed property no longer needed, by @lukasj in #2684
  • [Master] Issue Fix for #2211 by @anija-anil in #2657
  • Bump org.jruby:jruby-complete from 10.0.3.0 to 10.0.4.0 in the dependencies group by @dependabot[bot] in #2685
  • Bump org.apache.maven.plugins:maven-resources-plugin from 3.4.0 to 3.5.0 in the maven-plugins group by @dependabot[bot] in #2686
  • #2632: keep specific field type for null parameter binding by @hgwr in #2683
  • [master] Maven build - promotion version set fix by @rfelcman in #2687
  • Bump com.ibm.db2:jcc from 12.1.3.0 to 12.1.4.0 in the dependencies group by @dependabot[bot] in #2688

New Contributors

Full Changelog: 5.0.0-B13...5.0.0-RC1

5.0.0-B13

5.0.0-B13 Pre-release
Pre-release

Choose a tag to compare

@rfelcman rfelcman released this 11 Dec 15:16
a92ecc6

What's Changed

  • [master] Implement ClearDatabaseSchema for DB2 by @arjantijms in #2552
  • [master] ASM 9.9.0 upgrade by @rfelcman in #2557
  • [master] Minor message changes by @pardhiv-krishna in #2562
  • [maven] org.eclipse.persistence.core Module - org.eclipse.persistence.logging package cleanup + ArchUnit introduction by @rfelcman in #2563
  • [master] StringHelper refactor - unused methods removal or replacement by default from java.lang.String by @rfelcman in #2561
  • [master] MOXy JPMS/module-info export fix by @rfelcman in #2564
  • [master] DB2 does not support fractional seconds for TIME, but does for TIMESTAMP - update test by @arjantijms in #2565
  • Added Supplier support for log messages into SessionLog. by @Tomas-Kraus in #2568
  • [master] Deprecate usage of Sequencing API in the schemaframework model for removal by @rfelcman in #2571
  • [master] Jakarta Persistence 3.2 - Allows usage of TableGenerator and SequenceGenerator at the java package level by @rfelcman in #2544
  • [master] EclipseLink IllegalArgumentException on JPQL update of embeddable attribute - bugfix and unit test by @rfelcman in #2567
  • Javadoc cleanup in logger. by @Tomas-Kraus in #2570
  • [master] Introduce BOMs for the EclipseLink project by @rfelcman in #2573
  • Helper and JCEEncryptor API cleanup without removal of deprecated methods. by @Tomas-Kraus in #2574
  • [master] StringHelper partial removal in org.eclipse.persistence.internal.jpa.metadata package by @rfelcman in #2576
  • Bump ch.qos.logback:logback-core from 1.5.13 to 1.5.19 in /boms/dependencies by @dependabot[bot] in #2580
  • [master] Implements setCacheRetrieveMode and setCacheStoreMode methods by @pardhiv-krishna in #2589
  • [master] For DB2, no fractions for TIME, and no WITH_TIMEZONE by @arjantijms in #2591
  • [master] Schema Framework update (#2575) - backport from 4.0 by @rfelcman in #2581
  • [master] Code refactor - Exceptions move, Constants, remove Vector, deprecated code removal by @rfelcman in #2599
  • [master] Maven Build - Fix release process by @rfelcman in #2605
  • [master] Revert Introduce BOMs for the EclipseLink project (#2573) by @ajaypaul-ibm in #2603
  • Bump ch.qos.logback:logback-core from 1.5.13 to 1.5.19 by @dependabot[bot] in #2606
  • Bump com.microsoft.sqlserver:mssql-jdbc from 12.8.1.jre11 to 12.8.2.jre11 by @dependabot[bot] in #2607
  • [master] Introduce BOMs for the EclipseLink project 2.0 by @rfelcman in #2608

New Contributors

Full Changelog: 5.0.0-B11...5.0.0-B13

5.0.0-B12

5.0.0-B12 Pre-release
Pre-release

Choose a tag to compare

@rfelcman rfelcman released this 11 Dec 15:01
a92ecc6

What's Changed

  • [master] Implement ClearDatabaseSchema for DB2 by @arjantijms in #2552
  • [master] ASM 9.9.0 upgrade by @rfelcman in #2557
  • [master] Minor message changes by @pardhiv-krishna in #2562
  • [maven] org.eclipse.persistence.core Module - org.eclipse.persistence.logging package cleanup + ArchUnit introduction by @rfelcman in #2563
  • [master] StringHelper refactor - unused methods removal or replacement by default from java.lang.String by @rfelcman in #2561
  • [master] MOXy JPMS/module-info export fix by @rfelcman in #2564
  • [master] DB2 does not support fractional seconds for TIME, but does for TIMESTAMP - update test by @arjantijms in #2565
  • Added Supplier support for log messages into SessionLog. by @Tomas-Kraus in #2568
  • [master] Deprecate usage of Sequencing API in the schemaframework model for removal by @rfelcman in #2571
  • [master] Jakarta Persistence 3.2 - Allows usage of TableGenerator and SequenceGenerator at the java package level by @rfelcman in #2544
  • [master] EclipseLink IllegalArgumentException on JPQL update of embeddable attribute - bugfix and unit test by @rfelcman in #2567
  • Javadoc cleanup in logger. by @Tomas-Kraus in #2570
  • [master] Introduce BOMs for the EclipseLink project by @rfelcman in #2573
  • Helper and JCEEncryptor API cleanup without removal of deprecated methods. by @Tomas-Kraus in #2574
  • [master] StringHelper partial removal in org.eclipse.persistence.internal.jpa.metadata package by @rfelcman in #2576
  • Bump ch.qos.logback:logback-core from 1.5.13 to 1.5.19 in /boms/dependencies by @dependabot[bot] in #2580
  • [master] Implements setCacheRetrieveMode and setCacheStoreMode methods by @pardhiv-krishna in #2589
  • [master] For DB2, no fractions for TIME, and no WITH_TIMEZONE by @arjantijms in #2591
  • [master] Schema Framework update (#2575) - backport from 4.0 by @rfelcman in #2581
  • [master] Code refactor - Exceptions move, Constants, remove Vector, deprecated code removal by @rfelcman in #2599
  • [master] Maven Build - Fix release process by @rfelcman in #2605
  • [master] Revert Introduce BOMs for the EclipseLink project (#2573) by @ajaypaul-ibm in #2603
  • Bump ch.qos.logback:logback-core from 1.5.13 to 1.5.19 by @dependabot[bot] in #2606
  • Bump com.microsoft.sqlserver:mssql-jdbc from 12.8.1.jre11 to 12.8.2.jre11 by @dependabot[bot] in #2607
  • [master] Introduce BOMs for the EclipseLink project 2.0 by @rfelcman in #2608

New Contributors

Full Changelog: 5.0.0-B11...5.0.0-B12

4.0.9

Choose a tag to compare

@anija-anil anija-anil released this 02 Jan 15:33
0619749

What's Changed

  • [4.0] Version change to 4.0.9-SNAPSHOT by @rfelcman in #2538
  • [4.0] JDBC prepared statements aren't closed - bugfix 2.0 (#2535) - backport from master by @rfelcman and @arjantijms in #2540
  • [4.x] JavaLog moved to org.eclipse.persistence.logging.jul package. by @Tomas-Kraus in #2539
  • [4.x] Accessor and Session removal from AbstractSessionLog and SessionLogEntry. (#2543) by @Tomas-Kraus in #2546
  • [4.0] Maven build - Snapshots publishing change - backport from master by @rfelcman in #2548
  • [4.0] Maven build - Release publishing change - backport from master by @rfelcman in #2553
  • [4.0] ASM 9.9.0 upgrade by @rfelcman in #2558
  • [4.x] Accessor and Session removal from Logs. by @Tomas-Kraus in #2566
  • [4.0] StringHelper refactor - unused methods marked as deprecated and usage replacement by default one from java.lang.String by @rfelcman in #2569
  • [4.x] Helper and JCEEncryptor API cleanup without removal of deprecated methods. by @Tomas-Kraus in #2578
  • [4.x] Deprecate usage of Sequencing API in the schemaframework model for removal (#2571) by @Tomas-Kraus in #2579
  • [4.0] Schema Framework update by @rfelcman in #2575

Full Changelog: 4.0.8...4.0.9

4.0.9-RC1

4.0.9-RC1 Pre-release
Pre-release

Choose a tag to compare

@anija-anil anija-anil released this 22 Dec 13:32
0619749

What's Changed

  • [4.0] Version change to 4.0.9-SNAPSHOT by @rfelcman in #2538
  • [4.0] JDBC prepared statements aren't closed - bugfix 2.0 (#2535) - backport from master by @rfelcman in #2540
  • [4.x] JavaLog moved to org.eclipse.persistence.logging.jul package. by @Tomas-Kraus in #2539
  • [4.x] Accessor and Session removal from AbstractSessionLog and SessionLogEntry. (#2543) by @Tomas-Kraus in #2546
  • [4.0] Maven build - Snapshots publishing change - backport from master by @rfelcman in #2548
  • [4.0] Maven build - Release publishing change - backport from master by @rfelcman in #2553
  • [4.0] ASM 9.9.0 upgrade by @rfelcman in #2558
  • [4.x] Accessor and Session removal from Logs. by @Tomas-Kraus in #2566
  • [4.0] StringHelper refactor - unused methods marked as deprecated and usage replacement by default one from java.lang.String by @rfelcman in #2569
  • [4.x] Helper and JCEEncryptor API cleanup without removal of deprecated methods. by @Tomas-Kraus in #2578
  • [4.x] Deprecate usage of Sequencing API in the schemaframework model for removal (#2571) by @Tomas-Kraus in #2579
  • [4.0] Schema Framework update by @rfelcman in #2575

Full Changelog: 4.0.8...4.0.9-RC1

5.0.0-B11

5.0.0-B11 Pre-release
Pre-release

Choose a tag to compare

@rfelcman rfelcman released this 06 Oct 14:41
de1b7e2

What's Changed

  • JPMS fix in module-info.java for eclipselink.jar bundle and JPA-RS server by @rfelcman in #2496
  • [master] Jakarta Persistence 3.2 - additional JUnit tests for isInstance(Object entity, Class<?> entityClass) and getClass(T entity) in PersistenceUnitUtil by @rfelcman in #2502
  • [master] Jakarta Persistence 3.2 - additional JUnit tests for jakarta.persistence.criteria.CriteriaBuilder.concat(java.util.List<jakarta.persistence.criteria.Expression<java.lang.String>>) implementation by @rfelcman in #2503
  • [master] Jakarta Persistence 3.2 - additional JUnit tests for API to obtain EntityManagerFactory using PersistenceConfiguration by @rfelcman in #2505
  • [master] Jakarta Persistence 3.2 - Persistence unit deployment fails when using @EnumeratedValue annotation #2501 - bugfix by @rfelcman in #2504
  • update angus-mail by @Nutstree in #2507
  • [master] Jakarta Persistence 3.2 new feature - add entities(), classes() and columns() to NamedNativeQuery by @rfelcman in #2500
  • [master] SQLResultSetMappingMetadata - unused constructors removal by @rfelcman in #2511
  • [master] Minor messaging improvements by @anija-anil in #2514
  • [master] Platform autodetection should fail in server side environment - backport from 4.0 by @rfelcman in #2516
  • [master] JPQL Update with Null Embedded Object Fails on PostgreSQL Due to Type Mismatch #2517 - bugfix by @rfelcman in #2520
  • [master] Jakarta Persistence 3.2 - Entity and embeddable classes declared as static inner classes - tests by @rfelcman in #2521
  • [master] Added statement cleanup into updateObjectAndRowWithSequenceNumber by @Tomas-Kraus in #2523
  • Issue #2245 - test with @embeddable record by @Tomas-Kraus in #2527
  • [master] Issue #2245 - test with @embeddable record 2.0 by @rfelcman in #2529
  • [master] Eclipselink mishandles EXTRACT(DATE FROM X) clause in DB2 - bugfix by @pardhiv-krishna in #2533
  • [master] JavaLog moved to org.eclipse.persistence.logging.jul package. by @Tomas-Kraus in #2534
  • [master] JDBC prepared statements aren't closed - bugfix 2.0 by @rfelcman in #2535
  • [master] Jakarta Persistence 3.2 - Makes the name member of TableGenerator and SequenceGenerator optional (implementation and unit test) by @rfelcman in #2532
  • [master] JPQL EXTRACT(TIME FROM X) generates invalid SQL on DB2 - bugfix by @pardhiv-krishna in #2537
  • Deprecated classes related to JavaLog removal and AbstractSessionLog cleanup by @Tomas-Kraus in #2541
  • [master] Maven build - Snapshots publishing change by @rfelcman in #2545
  • [master] Accessor and Session removal from AbstractSessionLog and SessionLogEntry. by @Tomas-Kraus in #2543
  • [master] Jenkin build - Release publishing change by @rfelcman in #2550
  • [master] Accessor and Session removal from Logs. by @Tomas-Kraus in #2547

New Contributors

Full Changelog: 5.0.0-B10...5.0.0-B11