Team:

I cant attend the am meetings so I will tell you about 2 major changes that I 
have in Hibernate modules in Grails 10.0.x

Native domain binding in GORM for Hibernate 7:

PR #16568 adds native domain binding to grails-data-hibernate7. Instead of 
GrailsDomainBinder building Hibernate's boot model by hand (about 5,800 lines 
that re-implement what Hibernate's annotation binder already does), GORM now 
generates a JPA-annotated class for each domain class from its evaluated 
mapping and lets Hibernate's own annotation binder bind it. The application's 
real domain classes remain what Hibernate persists, loads, queries and proxies; 
the generated classes exist only while the mappings are bound. 

The code lives in one package, org.grails.orm.hibernate.cfg.domainbinding.jpa, 
with the value records in the subpackage jpa.facets. 

How it is verified. The specs under grails.gorm.tests.generated run the same 
behaviour through both bindings. Two differential specs compare, for every 
scanned test domain class (about 1,170 entities and 3,400 properties), what the 
generator states against what the classic binder bound, both at the Hibernate 
boot-model level and at the DDL level. The classic side is frozen as recorded 
data under src/test/resources/classic-oracle, so the comparison survives the 
removal of the classic binder in #16570. The whole core suite also runs through 
the generated classes.

The same reading order is now in a package-info in the jpa package and in the 
hibernate-developer skill, and in the "Where to start reading" section at the 
top of the PR description.

Removal of H5:

This was EOLed a long time ago. 

Thanks

Walter

Reply via email to