Lucee 5.4.3.15 Stable Release

only change since RC is some bug fixes for the s3 extension

it’s available in all the usual places

sorry, I’m out sick with covid, i’ll flesh this out when the brain fog clears

5 Likes

Get well soon! Upgrade works like a charm.

1 Like

Awesome update, Covid sucks! Take lots of vitamin D, C, Zinc, & E for the next few months. That stuff is nasty

Get well and relax!

Hi,
I just tried updating our staging server by dropping in the new jar, to a current install and restarting tomcat.

I get the following error when attempting to access either of the admins…

Lucee 5.4.3.15 Error (expression)
Message	Can't cast String [https] to a boolean

Stacktrace	The Error Occurred in
/admin/Application.cfc: line 106
called from /admin/Application.cfc: line 32
called from /admin/Application.cfc: line 17
Java Stacktrace	lucee.runtime.exp.CasterException: Can't cast String [https] to a boolean
  at lucee.runtime.op.Caster.toBooleanValue(Caster.java:288)
  at lucee.runtime.op.Caster.toBooleanValue(Caster.java:261)
  at application_cfc$cf.udfCall(/admin/Application.cfc:106)
  at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
  at lucee.runtime.type.UDFImpl._call(UDFImpl.java:350)
  at lucee.runtime.type.UDFImpl._callCachedWithin(UDFImpl.java:282)
  at lucee.runtime.type.UDFImpl.call(UDFImpl.java:223)
  at lucee.runtime.type.scope.UndefinedImpl.call(UndefinedImpl.java:786)
  at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:787)
  at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:1775)
  at application_cfc$cf.initComponent(/admin/Application.cfc:32)
  at application_cfc$cf.newInstance(/admin/Application.cfc:17)
  at lucee.runtime.component.ComponentLoader.initComponent(ComponentLoader.java:632)
  at lucee.runtime.component.ComponentLoader._loadComponent(ComponentLoader.java:571)
  at lucee.runtime.component.ComponentLoader.loadComponent(ComponentLoader.java:448)
  at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:116)
  at lucee.runtime.listener.ModernAppListener.onRequest(ModernAppListener.java:107)
  at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2493)
  at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2478)
  at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2449)
  at lucee.runtime.engine.Request.exe(Request.java:45)
  at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1216)
  at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1162)
  at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97)
  at lucee.loader.servlet.CFMLServlet.service(CFMLServlet.java:51)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
  at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
  at mod_cfml.core.invoke(core.java:180)
  at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
  at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:769)
  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
  at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
  at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
  at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
  at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1743)
  at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
  at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
  at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
  at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
  at java.base/java.lang.Thread.run(Thread.java:829)

I am having this same Can’t cast String http to a boolean issue. Did you ever find a solution to that? Mine is http, not https.

I did my update through the admin, not by putting in the jar file.

Looking at the error it was happening in the admin application.cfc. It seemed to have something to do with checking the X-Forwarded-Proto header. I am using nginx and setting that header for requests that are proxied to lucee. I commented out that line and the error stopped happening. Then I changed my nginx config so it would not pass that header on the domain that I use to access the admin. This seems to have fixed the issue for me.

1 Like

Thanks for the update Matt.

I have updated the nginx config for my admin-allowed domain, too.
Works like a charm.

@Zackster / et al…
In light of this -should I log a bug?

I think so ? This is a standard header, added by everything from mod_cfml to AWS services like CloudFront and Load Balencer

Zac still seems to be recovering… I hope he is doing well and getting better.

2 Likes

When will “Lucee 5.4.3.16 Stable Release” post appear?

3 Likes

Is there release notes for 5.4.4.38?

Yes. You can see them from the Lucee downloads page. After you select the version from the dropdown menu you will see a “Changelog” option under the download links. Clicking that will show you the changes included with the selected release.

This is what is shows for 5.4.4.38

Version-5.4.4.38 Changelogs

LDEV-4752- JsonAppender message as Json
LDEV-4751- add main logger support
LDEV-4739- Mapping Classloader: creates duplicate classes when limit is reached
LDEV-4746- recheck mappings periodically
LDEV-4741- S3 installtion issue with cflog tag
LDEV-4728- try to recover from classloading issue
LDEV-3707- URLSessionFormat() function does not work when using JEE/J2EE sessions when a client does not accept cookies
LDEV-4718- filter out S3 secrets
LDEV-1868- Classic Application Context does not Accept Aliases of mailServers
LDEV-4712- UDF cachedwithin ignore default values
LDEV-4707- S3GeneratePresignedURL differs from cfaws implementation
LDEV-4701- NullPointerException / race conditions in DataSourceSupport and JavaSettingsImpl
LDEV-4699- update commons-compress to 1.24.0 due to tar related CVE-2023-42503
LDEV-4693- Integer BigDecimal values are converted to strings with trailing 0s

2 Likes

I am going to upgrade from Lucee 5.2.9.31 . Should I go to 5.4.3.15 or 6?
Any gotchas I should watch up for or is it expected to be compatible? My code base is pretty old. (like from the 1900s!)
I am on Apache Tomcat 8.5.6 and Java 1.8.0_112 What versions should they be upgraded to?

thanks!

This is just my personal opinion: it depends… For a common/general cfml app where there is not much happening, I’d go directly for Lucee 6 in multimode first. For bigger applications with heavier load and high availablity, I wouldn’t bump directly to 6.0, but(!!!) I’d start trying migrating to test 6.0 as soon as I can: This is also very important for us as a Lucee community, because if nobody tests it and find any remote/unknown issues on heavy load, we will all keep under 6.0 for a long time. Its important to envolve and help whenever we can as a community. Lucee is fully community driven and needs us to test.

If you code is very old, there shouldn’t be much of a problem. Just look for some fancy old legacy tags that are not supported by Lucee like these here (thx again to Mr. CFML Jedi for keeping this repo alive):

https://static.raymondcamden.com/cfuitherightway/index.html

2 Likes

Thanks. It is pretty low load and not using those fancy UI tags. What about tomcat and java versions?

I’d took the chance and bump everything to the latest. Make always sure to backup everything first, so you can always rollback when needed.