Version 3.18.31 - June 11, 2025
================================================================================
This is a 3.18 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#18434 - Add a jOOQ-bom module
Bug Fixes
---------
#18444 - Diff cannot handle name swaps of constraints and indexes
#18453 - Diff should drop PRIMARY KEY first, then NOT NULL constraint
#18459 - CockroachDB 24 identity column sequences aren't recognised as system sequences by code generator or runtime Meta
#18465 - Diff must never drop single column from table
#18468 - IN list padding generates too large lists in rare edge cases due to floating point rounding errors
#18472 - Ad-hoc converter receives non-attached records when using implicit join path table projections from within MULTISET
#18477 - Race condition in TableImpl initialisation leads to wrong INFO log message about duplicate identities in AbstractTable#getIdentity
#18484 - Diff generates CREATE VIEW statements that depend on not-yet existing tables
#18487 - Parser doesn't recognise built-in functions when quoted
#18509 - Diff should properly sort DDL for Sequences, Schemas, Catalogs
#18519 - Meta::getDomains methods have insufficient dialect support
#18523 - Interpreter can only work with the first Settings.interpreterSearchPath
#18531 - Configuration::derive and SettingsTools::clone don't deep-clone all Settings collection properties
#18537 - Wrong rendering of implicit join in DML when query is wrapped in DSL::queries
#18540 - Excess semicolon rendered when procedural block is placed inside of DSL::queries
#18546 - Parser cannot handle left-associative parenthesised nested set operations in derived table
#18551 - Parser cannot parse non-scalar subquery NULL predicate
#18555 - Parser cannot parse CAST(? AS <type>) expression in certain DDL contexts
#18564 - Informix stored functions containing DML cannot be called from SELECT statement
#18574 - NullPointerException when working with Scala-3 generated enums (or Java enum literals with bodies)
Version 3.19.24 - June 11, 2025
================================================================================
This is a 3.19 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#18433 - Add a jOOQ-bom module
Bug Fixes
---------
#18443 - Diff cannot handle name swaps of constraints and indexes
#18452 - Diff should drop PRIMARY KEY first, then NOT NULL constraint
#18458 - CockroachDB 24 identity column sequences aren't recognised as system sequences by code generator or runtime Meta
#18464 - Diff must never drop single column from table
#18467 - IN list padding generates too large lists in rare edge cases due to floating point rounding errors
#18471 - Ad-hoc converter receives non-attached records when using implicit join path table projections from within MULTISET
#18476 - Race condition in TableImpl initialisation leads to wrong INFO log message about duplicate identities in AbstractTable#getIdentity
#18483 - Diff generates CREATE VIEW statements that depend on not-yet existing tables
#18486 - Parser doesn't recognise built-in functions when quoted
#18508 - Diff should properly sort DDL for Sequences, Schemas, Catalogs
#18518 - Meta::getDomains methods have insufficient dialect support
#18522 - Interpreter can only work with the first Settings.interpreterSearchPath
#18528 - The Settings.migrationDefaultSchema doesn't apply to Diff
#18530 - Configuration::derive and SettingsTools::clone don't deep-clone all Settings collection properties
#18536 - Wrong rendering of implicit join in DML when query is wrapped in DSL::queries
#18539 - Excess semicolon rendered when procedural block is placed inside of DSL::queries
#18545 - Parser cannot handle left-associative parenthesised nested set operations in derived table
#18550 - Parser cannot parse non-scalar subquery NULL predicate
#18554 - Parser cannot parse CAST(? AS <type>) expression in certain DDL contexts
#18563 - Informix stored functions containing DML cannot be called from SELECT statement
#18573 - NullPointerException when working with Scala-3 generated enums (or Java enum literals with bodies)
Version 3.20.5 - June 11, 2025
================================================================================
This is a 3.20 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#18432 - Add a jOOQ-bom module
Bug Fixes
---------
#18442 - Diff cannot handle name swaps of constraints and indexes
#18451 - Diff should drop PRIMARY KEY first, then NOT NULL constraint
#18457 - CockroachDB 24 identity column sequences aren't recognised as system sequences by code generator or runtime Meta
#18463 - Diff must never drop single column from table
#18466 - IN list padding generates too large lists in rare edge cases due to floating point rounding errors
#18470 - Ad-hoc converter receives non-attached records when using implicit join path table projections from within MULTISET
#18475 - Race condition in TableImpl initialisation leads to wrong INFO log message about duplicate identities in AbstractTable#getIdentity
#18482 - Diff generates CREATE VIEW statements that depend on not-yet existing tables
#18485 - Parser doesn't recognise built-in functions when quoted
#18495 - DDLExportConfiguration::createOrReplaceSynonym returns wrong flag
#18496 - Diff should export synonyms
#18505 - Diff may produce DROP TABLE before corresponding DROP SYNONYM statement
#18507 - Diff should properly sort DDL for Sequences, Schemas, Catalogs
#18517 - Meta::getDomains methods have insufficient dialect support
#18521 - Interpreter can only work with the first Settings.interpreterSearchPath
#18527 - The Settings.migrationDefaultSchema doesn't apply to Diff
#18529 - Configuration::derive and SettingsTools::clone don't deep-clone all Settings collection properties
#18535 - Wrong rendering of implicit join in DML when query is wrapped in DSL::queries
#18538 - Excess semicolon rendered when procedural block is placed inside of DSL::queries
#18544 - Parser cannot handle left-associative parenthesised nested set operations in derived table
#18549 - Parser cannot parse non-scalar subquery NULL predicate
#18553 - Parser cannot parse CAST(? AS <type>) expression in certain DDL contexts
#18558 - Upgrade Spring dependency to 6.2.7 to mitigate CVE-2024-38820
#18562 - Informix stored functions containing DML cannot be called from SELECT statement
#18572 - NullPointerException when working with Scala-3 generated enums (or Java enum literals with bodies)