154 changes
Feed this changelog to an AI:
Ticket Type Summary Fixed in
LDEV-5865 Enhancement use object[] for argument and local scopes 8.0.0.256
LDEV-5826 Enhancement CFLOG optimise bytecode from tag based approach 8.0.0.255
LDEV-6345 Enhancement Add structIsOrdered() BIF 8.0.0.254
LDEV-5924 Enhancement Pool Size Counter Optimization 8.0.0.253
LDEV-5933 Enhancement UDF Fast Path Optimization 8.0.0.252
LDEV-694 Enhancement Make Apache/IIS virtual directories available for Lucee 8.0.0.251
LDEV-5887 Enhancement add LUCEE_PRECISE_MATH=disabled 8.0.0.250
LDEV-6053 Enhancement Lazy load extension images to reduce startup memory footprint 8.0.0.249
LDEV-5571 Enhancement Use a custom Truststore for SSL certs 8.0.0.248
LDEV-6591 Bug Lucee 8: extensions installed via lucee.extensions / LUCEE_EXTENSIONS without a version are uninstalled again at start-bundles 8.0.0.245
LDEV-6587 Bug createDynamicProxy / implementsJava: returning this or a CFML array to Java throws ClassCastException 8.0.0.243
LDEV-6588 Bug Closures / UDFs as Java interfaces fail with VerifyError 8.0.0.242
LDEV-6586 Bug Config placeholder replacement turns ordered structs into unordered ones 8.0.0.241
LDEV-6052 Enhancement Use java.util.Base64 for base64 encode and precise decode 8.0.0.238
LDEV-6575 Bug invokeImplicitAccessor: implicit getter missing for property in sub component when called inside parent file 8.0.0.237-SNAPSHOT
LDEV-6571 Enhancement Sub components: short sub component name not accepted as a return/argument type ("Cannot cast Object type [Component comp] to a value of type [sub]") 8.0.0.237-SNAPSHOT
LDEV-6581 Bug Internal downloads should use the server proxy - 8.0 8.0.0.235
LDEV-6572 Enhancement Use lazy case evaluation for script switch 8.0.0.234
LDEV-6569 Enhancement Regex: cut per-call allocation in the Perl, Java and compat engines 8.0.0.228
LDEV-6559 Enhancement Support looping over any Java Iterable or Collection with for-in and cfloop collection 8.0.0.227
LDEV-6562 Bug Datasource connection pools leak after idle eviction (POOL_MAX_IDLE): pools not closed, MBeans stay registered 8.0.0.226
LDEV-6553 Bug Datasource names with dots are rejected by the Administrator 8.0.0.226
LDEV-6548 Bug Server proxy from .CFConfig.json is ignored in Lucee 7 (getProxyData() always null) 8.0.0.226
LDEV-5143 Bug CFDBInfo Fails on PostgreSQL Tables Created with Quoted Names 8.0.0.226
LDEV-3739 Incompatibility site-wide error page doesn't have "error" variable like ACF 8.0.0.226
LDEV-6539 Enhancement Avoid unnecessary bind for unary ops on local and argument scopes 8.0.0.222
LDEV-6544 Bug Function listener / cfthread `separateScopes=false`: caller's `local` and `arguments` scopes are recycled while used 8.0.0.221
LDEV-6556 Enhancement Core: deploy bundled Maven artifacts to the local Maven repo before installing bundled extensions 8.0.0.219
LDEV-6530 Enhancement ClassicLayout: reduce timestamp allocations per log entry 8.0.0.218
LDEV-6557 Enhancement Faster REReplace with literal replacements on the perl engine 8.0.0.217
LDEV-4931 Enhancement add inspectTemplate to getApplicationSettings() 8.0.0.216
LDEV-6546 Bug Cache tag clear can abort with NullPointerException and leave stale entries; RamCache tag clear deep-copies every entry 8.0.0.213
LDEV-6483 Bug Server.cfc (onServerStart/onBuild) silently not executed when server .CFConfig.json has no mappings beyond /lucee and /lucee-server 8.0.0.213
LDEV-3213 Bug local class incompatible: stream classdesc serialVersionUID 8.0.0.213
LDEV-6489 Bug Spooler logs java.io.EOFException for an empty or truncated .tsk file, deletes the file and does not say which file it was 8.0.0.212
LDEV-6481 Bug NPE on clean boot when Event Gateways auto-start before Component.cfc is deployed 8.0.0.212
LDEV-6350 Bug SpoolerEngineImpl not cleaned up during engine restart 8.0.0.212
LDEV-5922 Bug Operand stack underflow when using for-in loop with try-catch inside finally block 8.0.0.212
LDEV-5533 Bug NPE on invalid inline component syntax 8.0.0.212
LDEV-5360 Bug Query Indexed not working with QueryOfQuery 8.0.0.212
LDEV-4792 Incompatibility Can't call lambda that exists in static scope 8.0.0.212
LDEV-4698 Bug QoQ SQL parser doesn't understand cast with lengths 8.0.0.212
LDEV-4665 Bug Query filter/map functions alter datatypes 8.0.0.212
LDEV-4250 Incompatibility script "break" requires semicolon in Lucee, but not Adobe 8.0.0.212
LDEV-3914 Bug thread statement cannot be used inside an arrow function 8.0.0.212
LDEV-3095 Bug isValid("email") fails on examples from wikipedia 8.0.0.212
LDEV-3046 Bug isValid("email","test <example@exaaple.com> aaa") returns true 8.0.0.212
LDEV-2122 Incompatibility IsValid('email', 'email@example.com,') inconsistency with ACF 8.0.0.212
LDEV-6515 Bug Admin access setting "open" is ignored by cfadmin since multi-mode removal: the server context always requires a password 8.0.0.209
LDEV-6119 Bug ClassicLayout pattern merges message and stacktrace w/out space 8.0.0.209
LDEV-6517 Enhancement Reduce SecureRandom lock contention in RandomUtil (CSRF tokens, cfthread names) 8.0.0.208
LDEV-6520 Task Bundle markdown and SMB extensions on 8.0 (Require-Extension) 8.0.0.206
LDEV-6476 Bug Java serialisation: Soft struct cannot round-trip serialize/deserialize in Lucee 8.0 8.0.0.205
LDEV-6475 Bug Java serialisation: Array serialVersionUID breaks Lucee 7 deserialise of Lucee 8 streams 8.0.0.205
LDEV-6513 Enhancement Reduce per-call overhead in mapping path resolution 8.0.0.201
LDEV-6512 Bug getInspectTemplate() reads sysprop / env var on every call (8.0) 8.0.0.200
LDEV-6479 Bug Application, server and JEE session scopes use a synchronized map, causing lock contention 8.0.0.199
LDEV-6509 Enhancement Reduce cachedWithin overhead 8.0.0.198
LDEV-6507 Bug Remove Connection: close on cflocation, REST error responses and cfflush interval 8.0.0.197
LDEV-6506 Bug SystemUtil.JAVA_VERSION is 0 on GA Java releases (e.g. 21, 25, 27) 8.0.0.196
LDEV-6505 Enhancement Update ASM to 9.10.1 for Java 27 support 8.0.0.196
LDEV-6490 Bug getMetadata() throws "this.cpRef is null" on a component restored with objectLoad(objectSave()) (7.0 regression) 8.0.0.194
LDEV-6469 Bug Regression: GetMetadata( childCfc ).functions no longer includes inherited methods 8.0.0.194
LDEV-6129 Bug Datasource connection leaks with ORM 8.0.0.194
LDEV-6458 Bug Mail admin UI / SMTP server configuration missing after mail moved to extension (7.1.1.x) 8.0.0.193
LDEV-6486 Bug Minor update from 7.0 to 7.1 (.lco or Admin update) does not install the Mail extension: its Require-Extension entry has no "since" 8.0.0.192
LDEV-6487 Bug isValid("email") on 7.1 / 8.0 uses a temporary regex: rejects o'reilly@example.com, accepts .foo@, user.@ and a..b@ (regression) 8.0.0.191
LDEV-6485 Bug cfmail fails JVM-wide with "jakarta.mail.Provider: com.sun.mail.imap.IMAPProvider not a subtype" once javax.mail was used (7.1 / 8.0) 8.0.0.191
LDEV-6451 Bug updatePassword silently no-ops when admin password is defined via env var / system property 8.0.0.181
LDEV-6450 Bug cfadmin password validation fails on Lucee 8.0 - regression from 7.1 8.0.0.176
LDEV-5747 Bug concurrent cfschedule updates causing CFConfig corruption 8.0.0.172-BETA
LDEV-6442 Enhancement ThreadLocalPageContext.fallbackEnabled() null-ThreadLocal causes JIT deopt cycle, prevents steady-state compilation 8.0.0.166
LDEV-6441 Enhancement UDFPropertiesLight.getArgumentsSet() rebuilds HashSet on every UDF call 8.0.0.165
LDEV-6439 Enhancement PageContextImpl: replace LinkedList with ArrayList for pathList, includePathList, udfs 8.0.0.162
LDEV-6438 Enhancement ListFind / ListFindNoCase — eliminate substring allocation in list scan 8.0.0.161
LDEV-6432 Enhancement Add `compat` regex mode — Java engine with Oro/ACF-compatible replacement syntax + pattern cache 8.0.0.160
LDEV-6437 Enhancement CFMLWriterImpl skip empty BAOS allocation, pool BAOS on WriterPool, raise gzip threshold to 2048 8.0.0.159
LDEV-6436 Enhancement Streamline response output stream encoding, reduce allocations 8.0.0.158
LDEV-6435 Bug getApplicationSettings() reports misleading regex + listener info on ClassicApplicationContext 8.0.0.154
LDEV-6434 Enhancement use StackWalker for ExceptionUtil.getTagContextLine + CallStackGet 8.0.0.150
LDEV-6433 Enhancement cflocation: gate CallStackGet stack walk behind doesError/doesDebug 8.0.0.146
LDEV-6430 Bug LogUtil.doesDebug returns true at log level INFO 8.0.0.145
LDEV-6428 Enhancement Reduce member function runtime execution overhead 8.0.0.144
LDEV-6427 Enhancement Pool CFMLWriterImpl response buffer on PageContextImpl to eliminate per-request allocations 8.0.0.142
LDEV-6411 Task Add optional Admin MCP Server endpoint for AI-driven server configuration 8.0.0.111
LDEV-6317 Enhancement Replace deprecated REPOSITORY_SONATYPE default with Google Cloud Maven Central mirror 8.0.0.94
LDEV-6387 Task OpenAI AI response: parse multipart content blocks in getAnswers() / isMultiPart() 8.0.0.83
LDEV-6113 Bug Execution log enabled setting lost during ConfigImpl merge to ConfigServerImpl 8.0.0.81
LDEV-6362 Task Eliminate JIT Deoptimisation Storm in Config Getters 8.0.0.64
LDEV-6220 Bug regression: out.log being spammed - ConfigFactoryImpl read the config file 8.0.0.60
LDEV-6117 Task Add lucee.config.validate option to eagerly validate all config at startup without warmup 7.2.0.31
LDEV-6111 Task Add eager config loading mode via ConfigServerImpl.touchAll() for Docker warmup / fail-fast validation 7.2.0.16
LDEV-6112 Task Strict config validation: reject invalid configuration values instead of silently falling back to defaults 7.2.0.15
LDEV-6109 Task Support structured Maven Repository definitions in .CFConfig.json 7.2.0.13
LDEV-6202 Bug QueryExecute passes entire options struct as tag attributes, leaking datasource keys 7.1.2.85
LDEV-6038 Bug Comments become empty StringLiteral placeholders in AST 7.1.2.83
LDEV-5983 Bug AST cffunction body duplicates cfargument comments 7.1.2.82
LDEV-6078 Bug Bytecode has invalid line numbers, breaking step debugger and creating misleading exceptions 7.1.2.81
LDEV-5803 Incompatibility cross engine listDeleteAt function incompatibility 7.1.2.80
LDEV-6598 Bug Logging uses the request/application timezone or the JVM default instead of the server config timezone 7.1.2.78
LDEV-6573 Bug Class::init() can't call a Java static method named init 7.1.2.77
LDEV-5841 Bug expandPath behaves strangely with JS223 7.1.2.77
LDEV-5837 Bug extension version check error 7.1.2.77
LDEV-5713 Bug CVE-2025-48924: Apache Commons Lang 7.1.2.77
LDEV-4776 Bug decimalFormat wrong rounding 7.1.2.77
LDEV-4151 Bug concatenation operator fails inside cffinally inside a function 7.1.2.77
LDEV-3873 Bug Array.every incompatibility with ACF 7.1.2.77
LDEV-3847 Bug CFQUERY using attributeCollection fails when inside CFFINALLY 7.1.2.77
LDEV-3672 Bug array out of bounds when dump CFC object with final property 7.1.2.77
LDEV-3619 Bug param this.that throws error if preceded by an extra space 7.1.2.77
LDEV-2899 Bug booleanFormat(null) throws Can't cast String [] to a boolean 7.1.2.77
LDEV-2773 Bug unscoped thread variable not being found 7.1.2.77
LDEV-2242 Bug Implicit getters strong typed in metadata to string 7.1.2.77
LDEV-2133 Bug cfabort thows an error in cfscript implementation with type="page" 7.1.2.77
LDEV-1818 Bug Interface Methods require semicolons 7.1.2.76
LDEV-4062 Incompatibility Arrow function with no body errors in Lucee, but not in Adobe 7.1.2.75
LDEV-2672 Incompatibility left operand of the Elvis operator has to be a variable or a function 7.1.2.74
LDEV-2417 Incompatibility Fat arrow functions shouldn't require parentheses around single parameter 7.1.2.73
LDEV-6596 Bug Session writes and CSRF tokens lost with storage-backed sessions (Redis) and sessionCluster=true 7.1.2.72
LDEV-2924 Incompatibility query.columnList cannot be used with list or string member functions 7.1.2.71
LDEV-3020 Bug Invalid Bytecode: Expecting a stackmap frame at branch target 7.1.2.70
LDEV-5890 Incompatibility Regression: can't parse dates string produced using (long, medium, short) masks 7.1.2.69
LDEV-2027 Bug QueryFilter, QueryMap, QueryReduce changes currentRow inside a loop 7.1.2.68
LDEV-5952 Bug internalRequest fails with "Content was already flushed" after resetBuffer() 7.1.2.65
LDEV-6594 Bug CSRF token lost after structClear(session) with storage-backed sessions and sessionCluster=true 7.1.2.64
LDEV-2213 Bug Cannot set calling scope vars from closures when localMode="modern" 7.1.2.63
LDEV-4495 Incompatibility `Struct.find` should support a callback as the first arguments, as per CF 7.1.2.62
LDEV-4366 Bug cfparam takes any random attribute as default value 7.1.2.61
LDEV-3963 Bug Colons (`:`) in function metadata is treated as and equal sign (`=`) instead of part of the identifier 7.1.2.60
LDEV-3671 Bug function metadata does not handle final arguments 7.1.2.59
LDEV-69 Bug param does not support associative array syntax 7.1.2.58
LDEV-4286 Bug nested function(){}; throws byteccode error 7.1.2.57
LDEV-4122 Incompatibility Incompatibility - Multiple arguments with the same name in UDF doesn't throw an error 7.1.2.56
LDEV-2970 Incompatibility arrayslice() negative offsets off by one 7.1.2.55
LDEV-6233 Bug QueryImpl: currentRow state survives serialisation, causes stale row reads 7.1.2.51
LDEV-6462 Bug Removing Classic Scheduler extension also removes /lucee/admin mapping 7.1.2.32
LDEV-6188 Bug Behavior change — optional arguments absent from arguments scope when nullSupport=true 7.1.2.29
LDEV-6449 Bug getDisplayPath() can return null, causing NullPointerException in debugger 7.1.2.19
LDEV-4268 Bug CFML parsing bug with `continue` 7.1.2.17
LDEV-4246 Bug Static methods fail when called from an abstract class 7.1.2.17
LDEV-4685 Bug cfloop condition throws error when in tag island 7.1.2.16
LDEV-4157 Bug Missing parent Statement of Statement error with thread and tag island 7.1.2.16
LDEV-6508 Bug DecimalFormat number to string conversion serialises on a global lock 7.1.2.9
LDEV-6492 Bug ExtensionProvider.detail() overwrites lite .lex URL with lite.asc GPG signature for SNAPSHOT classifiers 7.1.2.3
LDEV-935 Bug Cfbreak always run after cfcontinue with cfsilent 7.1.2.2
LDEV-6510 Bug continue inside a try/catch leaves the loop like a break when the same try/catch also contains a break 7.1.2.2
LDEV-6503 Bug Request timeout returns a connection with an unread result to the pool, the next request gets another query's result (regression since 6.2.5.6) 7.1.2.1
LDEV-6500 Bug Mail extension: Error in SMTP sender thread is swallowed and reported as "timeout occurred after N seconds" 7.1.1.16-RC
LDEV-6484 Bug new mail(...).send() fails on 7.1 with "not supported in 7.1 OOTB" (HelperBase) — regression, restore via mail extension 7.1.1.8
LDEV-5519 Bug wrong constructor called on org.json.JSONObject 7.1.1.6
LDEV-6455 Bug Spooled cfmail silently dropped - NotSerializableException: sun.nio.cs.UTF_8 when persisting spooler task (Lucee 7.1 / Mail Extension 1.1.0.6) 7.1.1.4
LDEV-6453 Bug Request-timeout enforcement interrupts healthy short requests on AWS Lambda 7.1.1.0
LDEV-4867 Bug Query param parsing removes comments from SQL, making them not visible in SQL monitoring tools 7.1.1.0
LDEV-4866 Bug Query param parsing assumes / or - will never be the last char in the SQL string 7.1.1.0

Sourced from the Lucee issue tracker (LDEV).

← Back to versions