Add h8-preview module: hibernate-demo suite against Hibernate 8.0.0.Beta3 and Jakarta Persistence 4.0.0-M7
Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Gth99spB1CzQmBFofXmU4Z
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
# 01-exception-contracts (Hibernate ORM 7.4.5.Final, JDK 25)
|
||||
unbound parameter : threw org.hibernate.QueryParameterException
|
||||
null parameter : returned 0
|
||||
type mismatch : threw org.hibernate.query.QueryArgumentException
|
||||
unique violation : threw org.hibernate.exception.ConstraintViolationException <- org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException
|
||||
unknown parameter : threw java.lang.IllegalArgumentException <- org.hibernate.query.UnknownParameterException
|
||||
named query, no row: 0 rows
|
||||
@@ -0,0 +1,7 @@
|
||||
# 01-exception-contracts (Hibernate ORM 8.0.0.Beta3, JDK 25)
|
||||
unbound parameter : threw org.hibernate.QueryParameterException
|
||||
null parameter : returned 0
|
||||
type mismatch : threw org.hibernate.query.QueryArgumentException
|
||||
unique violation : threw org.hibernate.exception.ConstraintViolationException <- org.h2.jdbc.JdbcBatchUpdateException
|
||||
unknown parameter : threw java.lang.IllegalArgumentException <- org.hibernate.query.UnknownParameterException
|
||||
named query, no row: 0 rows
|
||||
@@ -0,0 +1,4 @@
|
||||
# 02-flush-order (Hibernate ORM 7.4.5.Final, JDK 25)
|
||||
default : [Parent, Child, Parent, Child]
|
||||
hibernate.flush.queue.type=legacy: [Parent, Child, Parent, Child]
|
||||
hibernate.flush.queue.type=graph : [Parent, Child, Parent, Child]
|
||||
@@ -0,0 +1,4 @@
|
||||
# 02-flush-order (Hibernate ORM 8.0.0.Beta3, JDK 25)
|
||||
default : [Parent, Child]
|
||||
hibernate.flush.queue.type=legacy: [Parent, Child, Parent, Child]
|
||||
hibernate.flush.queue.type=graph : [Parent, Child]
|
||||
@@ -0,0 +1,2 @@
|
||||
# 03-mutating-named-query (Hibernate ORM 7.4.5.Final, JDK 25)
|
||||
session factory built; createNamedQuery(..).executeUpdate() returned 0
|
||||
@@ -0,0 +1,2 @@
|
||||
# 03-mutating-named-query (Hibernate ORM 8.0.0.Beta3, JDK 25)
|
||||
threw java.lang.IllegalArgumentException <- org.hibernate.query.IllegalSelectQueryException :: Expecting a SELECT Query [org.hibernate.query.sqm.tree.spi.select.SqmSelectStatement], but found org.hibernate.query.sqm.tree.spi.update.SqmUpdateStatement [update MutatingNamedQueryEntity m set m.name = :name]
|
||||
@@ -0,0 +1,49 @@
|
||||
# compile-errors (javac --release 25 -Xlint:removal -Xlint:deprecation; files in src/broken/)
|
||||
--- UsesTransformers on h7
|
||||
UsesTransformers.java:14: warning: [deprecation] Transformers in org.hibernate.transform has been deprecated
|
||||
.setResultTransformer(Transformers.aliasToBean(Dto.class)).list();
|
||||
UsesTransformers.java:14: warning: [deprecation] <S>setResultTransformer(ResultTransformer<S>) in NativeQuery has been deprecated
|
||||
.setResultTransformer(Transformers.aliasToBean(Dto.class)).list();
|
||||
where S is a type-variable:
|
||||
S extends Object declared in method <S>setResultTransformer(ResultTransformer<S>)
|
||||
Note: src/broken/UsesTransformers.java uses unchecked or unsafe operations.
|
||||
Note: Recompile with -Xlint:unchecked for details.
|
||||
2 warnings
|
||||
--- UsesTransformers on h8
|
||||
UsesTransformers.java:3: error: package org.hibernate.transform does not exist
|
||||
import org.hibernate.transform.Transformers;
|
||||
UsesTransformers.java:14: error: cannot find symbol
|
||||
.setResultTransformer(Transformers.aliasToBean(Dto.class)).list();
|
||||
symbol: variable Transformers
|
||||
location: class UsesTransformers
|
||||
2 errors
|
||||
--- UsesReplicate on h7
|
||||
UsesReplicate.java:8: warning: [deprecation] ReplicationMode in org.hibernate has been deprecated
|
||||
s.replicate(detached, ReplicationMode.OVERWRITE);
|
||||
UsesReplicate.java:8: warning: [deprecation] replicate(Object,ReplicationMode) in Session has been deprecated
|
||||
s.replicate(detached, ReplicationMode.OVERWRITE);
|
||||
2 warnings
|
||||
--- UsesReplicate on h8
|
||||
UsesReplicate.java:1: error: cannot find symbol
|
||||
import org.hibernate.ReplicationMode;
|
||||
symbol: class ReplicationMode
|
||||
location: package org.hibernate
|
||||
UsesReplicate.java:8: error: cannot find symbol
|
||||
s.replicate(detached, ReplicationMode.OVERWRITE);
|
||||
symbol: variable ReplicationMode
|
||||
location: class UsesReplicate
|
||||
2 errors
|
||||
--- StatelessInsertReturnsId on h7
|
||||
--- StatelessInsertReturnsId on h8
|
||||
StatelessInsertReturnsId.java:7: error: incompatible types: void cannot be converted to Object
|
||||
Object id = ss.insert(new com.ankurm.h8.Author("A", "[email protected]"));
|
||||
1 error
|
||||
--- QueryVariable on h7
|
||||
--- QueryVariable on h8
|
||||
QueryVariable.java:9: warning: [removal] getResultList() in Query has been deprecated and marked for removal
|
||||
return q.getResultList().size();
|
||||
where T is a type-variable:
|
||||
T extends Object declared in interface Query
|
||||
1 warning
|
||||
--- TypedQueryVariable on h7
|
||||
--- TypedQueryVariable on h8
|
||||
@@ -0,0 +1,5 @@
|
||||
# binary-compatibility (BinaryProbe compiled against one Hibernate, run on the other)
|
||||
--- compiled on h7, run on h8
|
||||
Exception in thread "main" java.lang.NoSuchMethodError: 'org.hibernate.query.Query org.hibernate.Session.createQuery(java.lang.String, java.lang.Class)'
|
||||
--- compiled on h8, run on h7
|
||||
Exception in thread "main" java.lang.NoSuchMethodError: 'org.hibernate.query.SelectionQuery org.hibernate.Session.createQuery(java.lang.String, java.lang.Class)'
|
||||
@@ -0,0 +1,12 @@
|
||||
# persistence-spi (javap on jakarta.persistence.spi.PersistenceUnitInfo, and on Spring's implementation)
|
||||
--- methods that exist in Jakarta Persistence 4.0.0-M7 but not in 3.2.0
|
||||
public abstract FetchType getDefaultToOneFetchType();
|
||||
public abstract List<String> getAllClassNames();
|
||||
public abstract List<String> getAllModuleDescriptors();
|
||||
public abstract List<String> getAllPackageDescriptors();
|
||||
public abstract List<String> getManagedModuleDescriptors();
|
||||
public abstract List<String> getManagedPackageDescriptors();
|
||||
--- org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo 7.0.9: methods mentioning those names
|
||||
class found, 15 methods and constructors listed; matches for the six new names: 0
|
||||
--- org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo 7.1.0-M2: methods mentioning those names
|
||||
class found, 15 methods and constructors listed; matches for the six new names: 0
|
||||
@@ -0,0 +1,4 @@
|
||||
# dependency-versions (hibernate-core 8.0.0.Beta3 POM: what it declares)
|
||||
<artifactId>jakarta.persistence-api</artifactId> <version>4.0.0-M7</version>
|
||||
<artifactId>hibernate-models</artifactId> <version>1.3.4</version>
|
||||
<artifactId>byte-buddy</artifactId> <version>1.18.11</version>
|
||||
@@ -0,0 +1,9 @@
|
||||
# suite on h7 hibernate=managed by Boot 4.1.1 persistence-api=managed by Boot 4.1.1
|
||||
spring boot parent: 4.1.1
|
||||
pins (hibernate-models 1.3.4, jandex 3.6.0): no
|
||||
test-compile exit code: 0
|
||||
tests run: 205 failures: 0 errors: 2 skipped: 0
|
||||
test classes with a problem: 1
|
||||
distinct final causes (count = failing test methods):
|
||||
1 org.hibernate.query.UnknownNamedQueryException: No query named 'XmlQueryEmployee.findBySalaryAboveXml'
|
||||
1 org.hibernate.query.UnknownParameterException: No parameter named ':min' in query with named parameters []
|
||||
@@ -0,0 +1,11 @@
|
||||
# suite on h8-boot42 hibernate=8.0.0.Beta3 persistence-api=4.0.0-M7
|
||||
spring boot parent: 4.2.0-M2
|
||||
pins (hibernate-models 1.3.4, jandex 3.6.0): yes
|
||||
test-compile exit code: 0
|
||||
tests run: 205 failures: 1 errors: 158 skipped: 0
|
||||
test classes with a problem: 52
|
||||
distinct final causes (count = failing test methods):
|
||||
140 (context failed earlier in the same JVM; see the first failure of that context)
|
||||
14 java.lang.NoSuchMethodException: org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getAllPackageDescriptors()
|
||||
4 org.hibernate.query.NamedQueryValidationException: Errors in named queries:
|
||||
1 java.lang.AssertionError:
|
||||
@@ -0,0 +1,11 @@
|
||||
# suite on h8-pinned hibernate=8.0.0.Beta3 persistence-api=4.0.0-M7
|
||||
spring boot parent: 4.1.1
|
||||
pins (hibernate-models 1.3.4, jandex 3.6.0): yes
|
||||
test-compile exit code: 0
|
||||
tests run: 205 failures: 1 errors: 158 skipped: 0
|
||||
test classes with a problem: 52
|
||||
distinct final causes (count = failing test methods):
|
||||
140 (context failed earlier in the same JVM; see the first failure of that context)
|
||||
14 java.lang.NoSuchMethodException: org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getAllPackageDescriptors()
|
||||
4 org.hibernate.query.NamedQueryValidationException: Errors in named queries:
|
||||
1 java.lang.AssertionError:
|
||||
@@ -0,0 +1,13 @@
|
||||
# suite on h8-unpinned hibernate=8.0.0.Beta3 persistence-api=4.0.0-M7
|
||||
spring boot parent: 4.1.1
|
||||
pins (hibernate-models 1.3.4, jandex 3.6.0): no
|
||||
test-compile exit code: 0
|
||||
tests run: 202 failures: 2 errors: 181 skipped: 0
|
||||
test classes with a problem: 67
|
||||
distinct final causes (count = failing test methods):
|
||||
140 (context failed earlier in the same JVM; see the first failure of that context)
|
||||
39 java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchFieldError: Class org.hibernate.models.spi.AnnotationTarget$Kind does not have member field 'org.hibernat
|
||||
1 javax.naming.NameAlreadyBoundException: Name jdbc already bound. Use rebind() to override
|
||||
1 org.opentest4j.AssertionFailedError: Expected javax.naming.NameAlreadyBoundException to be thrown, but nothing was thrown.
|
||||
1 java.lang.AssertionError:
|
||||
1 java.lang.NoSuchFieldError: Class org.hibernate.models.spi.AnnotationTarget$Kind does not have member field 'org.hibernate.models.spi.AnnotationTarget$Kind MODULE'
|
||||
Reference in New Issue
Block a user