Ortus ORM Extension
  • Introduction
    • Release History
      • What's New With 6.x
      • What's New With 5.x
    • About This Book
  • Getting Started
    • Installation
    • Configuration
      • Custom Hibernate Config
      • Secondary Caches
      • Logging
  • Modeling
    • Entities
    • Identifiers
    • Properties
    • Relationships
  • Usage
    • Built-In Functions
    • Querying
    • Events
    • Session Management
    • HQL
    • Transactions
    • Caching
  • External Links
    • API Docs for v6.5.2
    • Source Code
    • Issue Tracker
Powered by GitBook
On this page
  • 6.5.2 - 2024-02-21
  • 6.5.1 - 2024-02-20
  • 6.5.0 - 2024-02-16
  • 6.4.0 - 2023-12-05
  • 6.3.2 - 2023-09-29
  • 6.3.1 - 2023-09-26
  • 6.3.0 - 2023-08-18
  • 6.2.0 - 2023-08-03
  • ♻️ Changed
  • 🐛 Fixed
  • 6.1.0 - 2023-07-14
  • 6.0.0 - 2023-07-01

Was this helpful?

Edit on GitHub
Export as PDF
  1. Introduction
  2. Release History

What's New With 6.x

Version 6.x release notes for the Ortus ORM Extension

PreviousRelease HistoryNextWhat's New With 5.x

Last updated 1 year ago

Was this helpful?

- 2024-02-21

🐛 Fixed

  • Fixes a regression on where empty string values are coerced to NULL when an ORM type is declared. Originally reported against 6.4.0, resolved in 6.5.0, then regressed in 6.5.1. - Resolves .

- 2024-02-20

🐛 Fixed

  • Fixes empty string values coercing to NULL when no property type is declared. - Resolves , introduced in 6.5.0.

- 2024-02-16

🐛 Fixed

  • Fixes an incorrect property name lookup for the unsavedValue persistent property attribute.

  • Fixes the pre-event listeners to ignore empty strings in entity state properties if the field type is one of string, character, or text. This resolves issues where a preInsert() or preUpdate() throws a "can't cast [] to date value" when processing event listeners if a date field (for example) is unpopulated or has an empty default attribute.

♻️ Changed

Add the entity name to the exception message when attempting to persist changes from preInsert or preUpdate event listeners. The updated exception message is now:

Error populating event state for persistance in [<entity name>] entity pre-event listener method: <error message from Hibernate>

🔐 Security

🔐 Security

⭐ Added

New ORMQueryExecute() alias for the ORMExecuteQuery. This new alias behaves identically to the ORMExecuteQuery() method, but is named consistently with the queryExecute() method.

🐛 Fixed

  • Fixes custom configuration support via this.ormSettings.ormConfig.

♻️ Changed

While not technically a change in ORM functionality, the useDBforMapping implementation has been greatly improved "under the hood", with tests to boot.

🐛 Fixed

🐛 Fixed

⭐ Added

Added context to the error message in CFCGetter, which handles retrieving entity values from Hibernate code. This improves odd error messages in some edge cases with the Hibernate tuplizer.

🔐 Security

  • Upgrades EHCache version from 2.10.6 to 2.10.9.2.

  • Drops an embedded rest-management-private-classpath directory

  • Drops a number of (unused) vulnerable jackson and jetty libraries such as jackson-core.

  • As an added bonus, this reduces the final .lex extension file size by over 6 MB. 🎉

♻️ Changed

Hibernate Upgraded from 5.4 to 5.6

See the migration guides for more info:

CLOB columns in Postgres81

Default EHCache Configuration

🐛 Fixed

♻️ Changed

  • Lots of java source code cleanup that won't affect the CFML experience, but will aid in faster development and fewer bugs.

🐛Fixed

  • Any hibernate exceptions returned during schema generation are once again logged to the Lucee ORM log file.

💥 Removed

  • Dropped the public method from the Dialect class. This method was unused (to my knowledge) and unnecessary.

🔐 Security

⭐ Added

Second-Level Caching

The extension will now throw an error if you try to configure an unsupported cache provider like , , 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 level, while SQL logging is set to if is enabled. (Set to .)

OWASP Dependency CVE Scans

♻️ Changed

New Repo Layout

  • Java source moved to

  • All java classes are now under the 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 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

  • 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.

Bump Lucee build dependency to 5.4.4.38 to avoid .

- 2023-12-05

Resolve an by upgrading logback-core to 1.3.14. .

Fixes named argument support for entityLoad() -

Fixes named argument support for entityLoadByPK() -

- 2023-09-29

Fixed pre-event listeners to include parent component properties when checking for entity mutations to persist back to the event entity state. This resolves issues with changes made in preInsert()/preUpdate() not persisting if the changes are made on a persistent property from a parent component. Resolves .

- 2023-09-26

Refactored nullability checks to occur after pre-event listener methods fire. Resolves

- 2023-08-18

Switched the library to use .

Note: While it is not 100% clear, .

- 2023-08-03

This brings the Hibernate dependencies up to date (released Feb. 2023), and should not change any CFML-facing features for most users. (See )

Due to the Hibernate 5.6 upgrade, if you are using the PostgreSQL81 dialect and have CLOB columns in your database, .

The default ehcache.xml for EHCache changed to include and properties to match . Both these values represent default settings in EHCache itself.

Fixes handling of "timezone"-typed column values. Previously, fields defined with ormtype="timezone" would neither use the default value nor allow new values to be set.

Fixes entity state changes in preInsert()/preUpdate() listeners for properties with no default defined.

- 2023-07-14

Switched to to limit false positives. Security vulnerabilities will now be published on the .

Bumped Lucee dependency to to remove vulnerability notices on and . These vulnerabilities are only theoretical, since Lucee is a dependency and not bundled with the extension.

- 2023-07-01

The extension now generates a dependency CVE report via . Any known CVEs contained in dependencies ( excluding and -scoped dependencies) will be noted in .

The definition file for all built-ins was missed during the conversion to a Maven build. (Since ). This caused the and 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. 😅

6.5.2
OOE-26
OOE-26
6.5.1
OOE-25
6.5.0
vulnerable dependencies in the build process
6.4.0
Uncontrolled Resource Consumption vulnerability disclosed on 12/4/2023
See vulnerability details
LDEV-4285
LDEV-4461
6.3.2
OOE-14
6.3.1
OOE-12
6.3.0
EHCache
net.sf.ehcache.internal:ehcache-core
some of these CVEs may have been false positives
6.2.0
Hibernate 5.4 -> 5.4 migration guide
Hibernate 5.5 -> 5.6 migration guide
it is recommended you migrate existing text columns for LOBs to oid
clearOnFlush="true"
diskSpoolBufferSizeMB="30MB"
Adobe ColdFusion 9's default ehCache.xml config
OOE-10
OOE-9
6.1.0
Snyk vulnerability scanner
GitHub repository's Security Advisories page
org.apache.tika:tika-core
commons-net:commons-net
6.0.0
GitHub Release page
Jeremy Long's OWASP dependency-check maven plugin
each release's CVE report artifact
v5.4.29.25
CLOB columns in Postgres81