feat
- moduleconfig: add shouldWrapValues setting (#325) (a0993ac)
- QueryBuilder: match null upsert targets (#324) (982ab96)
- QueryBuilder: add parameter-aware bulk inserts (#321)
(2adc4ce) - QueryBuilder: add whereInBulk (#319)
(8141a24) - QueryBuilder: validate duplicate select columns (#318)
(5ad6b22) - QueryBuilder: add cross-grammar JSON support (#317)
(e7db379) - QueryBuilder: add named return formatters (#315) (c982172)
fix
- ci: use TestBox CLI JSON reporter
(cc350f6) - ci: drop obsolete TestBox full-null patch
(0908059) - QueryUtils: infer BIGINT for large integers
(09fc92b) - QueryBuilder: support external subclass collaborators
(b972af1) - SQLiteGrammar: support Adobe array compilation
(11680aa) - SQLiteGrammar: reject added stored columns
(38d7f63) - SQLiteGrammar: reject added unique columns
(361e630) - SQLiteGrammar: reject added auto-increment columns
(a2023e9) - QueryUtils: normalize untyped null bindings
(1baad0c) - DerbyGrammar: reject unsupported DML selection
(7aac569) - OracleGrammar: reject unsupported DML selection
(642d87d) - PostgresGrammar: reject unsupported DML selection
(175a0fd) - SqlServerGrammar: reject unsupported DML selection
(3c2699e) - SqlServerGrammar: preserve delete limits
(2ec69be) - MySQLGrammar: reject joined delete row selection
(7b8a0f7) - MySQLGrammar: reject DML offsets
(b430694) - SQLiteGrammar: preserve update ordering
(9153f20) - MySQLGrammar: preserve update row selection
(ebabaf7) - SQLiteGrammar: preserve delete row selection
(065fd53) - MySQLGrammar: preserve delete row selection
(666483b) - SQLiteGrammar: order update row limits
(44519e3) - SQLiteGrammar: compile multi-join updates
(8a5382f) - PostgresGrammar: compile multi-join updates
(f64d526) - SchemaBuilder: apply configured default options
(1089717) - QueryBuilder: prevent duplicate cross joins
(3beac8f) - DerbyGrammar: preserve user row number columns
(5272eee) - OracleGrammar: preserve user row number columns
(5e4cf79) - QueryBuilder: omit wildcard insert targets
(e0f07ba) - QueryBuilder: preserve pretend mode on reset
(ab7a66f) - QueryBuilder: normalize pagination metadata pages
(5f1f22e) - QueryUtils: normalize inferred SQL types
(629e950) - QueryBuilder: restore value query columns
(f411b7a) - QueryUtils: render CLOB values as text
(448de7e) - QueryBuilder: preserve null expression bindings
(1bd3e15) - PredicateClause: preserve null IN values
(66a7db0) - QueryBuilder: clamp negative row bounds
(61850fa) - QueryBuilder: clamp pagination page offsets
(2f60d63) - QueryUtils: render Boolean SQL literals
(e1a39f3) - PostgresGrammar: preserve text default colons
(9a6f92b) - QueryUtils: normalize prefixed SQL types
(b015500) - QueryBuilder: keep raw order bindings atomic
(47dc856) - JsonQueryClause: parse negative array indexes
(5a9caf7) - SQLCommenter: handle Oracle quoted literals
(b50fa3f) - QueryUtils: infer Java dates as timestamps
(6fd446b) - QueryUtils: infer byte values as integers
(474ee92) - QueryBuilder: restore bindings after failed bulk inserts
(bc2cfba) - QueryBuilder: restore bindings after failed insert using
(f3c849f) - QueryBuilder: restore bindings after failed upserts
(1e02fa9) - QueryBuilder: preserve returning state on errors
(4bd5de6) - QueryBuilder: preserve orders after failed reorder
(736cd5d) - QueryBuilder: replace bindings between insert ignores
(1fef5da) - QueryBuilder: replace bindings between inserts
(4dd02c7) - QueryBuilder: replace bindings between updates
(2271b9b) - QueryUtils: handle nested PostgreSQL comments
(14568d5) - QueryUtils: preserve BigDecimal scale on BoxLang
(f2f6b4b) - QueryBuilder: preserve nested query invariants
(29cfd5f) - SqlServerGrammar: declare aliases in data modifications
(3d1f372) - JsonQueryClause: preserve BoxLang null containment shortcuts
(c17bbc2) - QueryBuilder: handle aliases and null edge cases
(c2a8230) - QueryBuilder: normalize full-null JSON shortcuts
(d6c9e92) - QueryBuilder: preserve explicit BoxLang JSON nulls
(777834c) - QueryBuilder: keep generated methods within JVM limits
(4a8b0b0) - Grammar: correct dialect edge cases
(5fa72a5) - QueryBuilder: preserve binding ownership
(b321568) - QueryBuilder: preserve query utility semantics
(4767f6e) - QueryBuilder: preserve specialized query behavior
(f32c805) - QueryBuilder: preserve compiled binding alignment
(f3a1c28) - QueryBuilder: address v14 regression audit
(337bdb7) - SchemaBuilder: qualify tables with default schema (#323)
(29808b3) - SqlServerGrammar: compile ordered union branches (#322)
(8fe6860) - SqlServerGrammar: replace defaults when modifying columns (#320)
(63dda74) - SchemaBuilder: allow timestamps in alter statements (#314)
(d0c24be)
other
- *: fix: unwrap retrievable query builders before snapshotting
(bb5ddec) - *: fix: safely widen numeric list bindings
(e690ecb) - *: Add returning row grammar capabilities
(007269f) - *: perf: reduce query construction allocations
(9369af3) - *: perf: optimize query construction hot paths
(d2d0347) - *: perf: remove production copy calls
(a53a9aa) - *: refactor: reduce internal closure usage
(e4d26d1) - *: ci: run experimental engines with full null support
(2668a50) - *: fix: guard missing TestBox skip metadata
(aee9332) - *: fix: support Adobe full null execution
(c6855d1) - *: ci: complete TestBox full null patch
(78e9641) - *: ci: patch TestBox for Adobe full null
(fdacedb) - *: ci: check formatting without auto-commit
(303eb05) - *: Apply cfformat changes
(d1ae7fd) - *: test: support Adobe row number regressions
(01b9fc4) - *: ci: enable Adobe full-null test matrix
(e9ae5ef) - *: fix: preserve query state after binding errors
(73f15c2) - *: fix: keep failed clause mutations atomic
(1afcaf5) - *: fix: harden query edge case handling
(6ec7ca3) - *: fix: support concurrent Adobe compilation
(594b3c3) - *: fix: support Adobe null predicate arguments
(37ba48e) - *: fix: resolve query and schema regressions
(5bd7eee) - *: ci: use compact TestBox reports
(16f830d) - *: ci: increase stable BoxLang test heap
(48b5f43) - *: ci: exclude unsupported Adobe full-null checks
(a57319c) - *: fix: handle omitted null JSON bindings
(4cada11) - *: fix: preserve Adobe ColdFusion compatibility
(ae0072a) - *: fix: harden dialect parsing edge cases
(6b7ca55) - *: fix: scope alter view bindings to creation
(564b2e5) - *: fix: align nested query and binding compilation
(80b60bf) - *: fix: close remaining state ownership gaps
(168ef43) - *: fix: isolate nested query state and DML CTEs
(40be7b0) - *: fix: preserve nested SQL compilation semantics
(4554f99) - *: fix: harden query and schema edge cases
(93810e5) - *: fix: harden query and schema compilation
(d337a40) - *: fix: restore query and schema builder lifecycle
(ebd4007) - *: fix: isolate query state and full-null behavior
(e027062) - *: fix: resolve query and schema regression audit
(4c65f7e) - *: ci: disable Lucee bleeding-edge checks (#316)
(f8b7f35)
refactor
- QueryBuilder: extract predicate clause
(6ff8d71) - QueryBuilder: extract join clause manager
(90f7be4) - QueryBuilder: extract lazy collaborators
(fd1c76f)