Skip to content

v6.0.0

Compare
Choose a tag to compare
@michaelborn michaelborn released this 01 Jul 17:47
· 294 commits to development since this release

⭐ Added

Second-Level Caching

The extension will now throw an error if you try to configure an unsupported cache provider like "jbosscache", "swarmcache", etc. Previously, the extension would silently switch to ehcache if any cache provider besides EHCache was configured.

Hibernate Logging

This version re-enables Hibernate logging via SLF4j and LogBack. Hibernate root and cache loggers are defaulted to ERROR level, while SQL logging is set to DEBUG if this.ormSettings.logSQL is enabled. (Set to true.)

OWASP Dependency CVE Scans

The extension GitHub Release page now generates a dependency CVE report via Jeremy Long's OWASP dependency-check maven plugin. Any known CVEs contained in dependencies ( excluding test and provided-scoped dependencies) will be noted in each release's CVE report artifact.

♻️ Changed

New Repo Layout

  • Java source moved to extension/src/main/java
  • All java classes are now under the ortus.extension.orm package
  • Dropped the java source format-on-push in favor of format-on-save IDE tooling

New Test Layout

  • Internal tests rewritten to native Testbox specs
  • Cloned all ORM tests from the Lucee repository
  • Updated to TestBox 5.0

New Build (and .jar file) Layout

We re-architected the build to inline most dependencies. I.e. we no longer copy in extension dependencies as (custom-built) OSGI bundles, but instead as compiled classes.

  • This resolves intermittent issues with bundle resolution and/or duplicate bundle collision upon installing the ORM extension into a Lucee server prior to uninstalling the Lucee Hibernate extension.
  • This also removes a number of direct dependencies on custom OSGI bundles, thus it is more reliable and will offer easier dependency upgrades with less pain.

Other

  • The "node" attribute is deprecated in Hibernate 5.x, and is no longer generated on HBM/XML mapping files to avoid Hibernate warning that "Use of DOM4J entity-mode is considered deprecated".

🐛Fixed

  • The .fld definition file for all built-ins was missed during the conversion to a Maven build. (Since v5.4.29.25). This caused the orm*() and entity*() built-in method calls to be picked up by Lucee core before being routed to this extension. No known errors resulted from this mistake, but we feel embarrassed anyway. 😅
  • Clear ORM context data once per ORM reload, not once per ORM entity parsing. This should improve ORM startup/reload time and avoid difficult session or cache manager lifecycle issues.

Full changelog between 5.4.29.28 and 6.0.0: 5.4.29.28...v6.0.0