Happy New Year Lucites! (Hey, what’s the over/under bet on how late is too late in the year to say Happy New Year? I think I just won the over!) Here’s hoping 2020 sees much success for you, in particular with regard to your Lucee endeavors.
Regarding that last bit, today we’re announcing a final release of Lucee 5.3.4 (5.3.4.77). As I explained in December, we decided to extend this version to a second release candidate phase. And, while there were no regressions in 5.3.4.73 per se, we did struggle, during the combined RC2 and January-December sprint, with a collection of challenging bugs related to low-level problems like classloading. Thus, in order to make 5.3.4 as helpful to as large a user base as possible, we made the decision to include a patch in 5.3.4.77 that eliminates those problems for nearly everyone. This is, of course, in addition to the large batch of tickets addressed in 5.3.4 overall.
Here’s the list of tickets covered by 5.3.4.77:
|Ticket - Summary|
|—|—|
|LDEV-2677 add flexibility how template classes get updated
|LDEV-2608 Regression in struct implementation causing stack overflow
|LDEV-2601 javasettings fails with invalid OSGi Bundles
|LDEV-2593 two problem upgrading from Lucee 5.3.2.77 to Lucee version 5.3.3.62
|LDEV-2565 csrfGenerateToken() and csrfVerifyToken() with no arguments throw a null pointer exception.
|LDEV-2536 Regression w/CFML Sessions: Session scope does not support CSRF Tokens
|LDEV-2527 Concurrency: reflection metho d lookups using single sychronous map holding locks under concurrent load
|LDEV-2517 unsupported third party extensions warning shown for lucee extensions when offline
|LDEV-2513 Regression: can no longer add extension provider in admin
|LDEV-2508 unable to use ‘services:update’ UI to downgrade from 5.3.3.62 to 5.3.2.77, at least when 5.3.2.77 was the original installation
|LDEV-2503 Missing image file breaks admin-extensions-applications page
|LDEV-2488 java.util.ConcurrentModificationException in StructClear()
|LDEV-2479 lucee.runtime.exp.NativeException: java.lang.StackOverflowError
|LDEV-2474 CFLocation in 5.3.3.62 Filling Up Error Logs
|LDEV-2465 change log level of some scheduler log to debug
|LDEV-2464 datasource log4j appender “insert” no columnlist
|LDEV-2460 Initial Password Setup Not Working
|LDEV-2437 log spam “com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl is used as DocumentBuilderFactory”
|LDEV-2433 Admin blows up when an extension has an invalid icon image and makes ALL extensions unusable
|LDEV-2429 Schedule task - Valid task becomes invalid
|LDEV-2405 Flying Saucer PDF extension leaks debugging lines out to the console
|LDEV-2401 LSParseNumber thread unsafe?
|LDEV-2385 make all uses of ReferenceMap thread safe
|LDEV-2349 FileCopy- Destination file losses the original access mode
|LDEV-2328 Regression: Can’t resize image proportionally in ImageResize
|LDEV-2320 Zipping empty folder errors (Regression)
|LDEV-2317 REGRESSION - java.lang.NoClassDefFoundError - Solr 8
|LDEV-2310 Valid base64 string doesn’t convert into image
|LDEV-2307 Downgrade version(base) doesn’t exist after upgrade into latest version
|LDEV-2304 SerializeJSON not preserving case on query
|LDEV-2301 server update crashes when lucee can’t connect to internet or lucee webservices down
|LDEV-2290 application log has WARN entries when LOG level set to ERROR
|LDEV-2274 undefined tooltips for metrics graphs
|LDEV-2273 Replace by struct multiplies when value contains key
|LDEV-2270 sameFormFieldsAsArray converts all fields to arrays
|LDEV-2212 <cfapplication pdf=“#{type:“classic”}#”> throws an error
|LDEV-2163 Lucee cacerts file is old
|LDEV-2150 cfthread object empty inside of a thread
|LDEV-2128 Query of Queries UNION returns incorrect results with cfqueryparam
|LDEV-2116 executable bit is lost on files when using directoryCopy() on binaries
|LDEV-2113 xmlValidate Cannot find the declaration of element
|LDEV-2108 SerializeJSON argument error even when supplied argument is a boolean
|LDEV-2097 CFQuery Lazy=“true”, i.e. SimpleQuery is able to consume infinite heap memory during request
|LDEV-2096 ArrayNew is not default synchronized=true and missing typed arrays documentation
|LDEV-2091 CFThread after join logs implicit error that is not fixable
|LDEV-2085 add possibility to define a directory containing OSGi bundles with this.javaSettings
|LDEV-2035 Event Gateway - Add a Gateway Type to Handle Asynchronous events through CFCs
|LDEV-1939 Nested cftry in cfcatch duplicates error logs
|LDEV-1933 CFMAIL can’t connect to TLSv1.2 smtp server
|LDEV-1850 PDF: cfpdf - remove password from pdf-file
Ticket 2677 summarizes the classloading/re-loading problem I mentioned, so if you were affected by that, you can review the comments in that ticket regarding the collection of interrelated tickets/problems that are involved.
Next up for the dev team is to close the December-January sprint, which will produce 5.3.5-RC. We’re aiming to do that later this week. Then, we’ll be posting again later in February about the 2020 development schedule, which, as I’ve hinted at in the past, will entail shorter, more targeted sprints, that will allow us to iterate over releases more quickly, and with fewer problems. More on that soon, and thanks as always for listening!