First Lucee 6 public BETA is available - 6.0.0.346-BETA

The Lucee team is proud to announce the Lucee 6 BETA!

There’s currently an issue with cfconfig / commandbox with running this, which @bdw429s is aware of and the docker builds aren’t yet set up to publish 6.0 images just yet, so for the moment, run up a 5.3.10 instance and then update via the admin or dropping https://cdn.lucee.org/6.0.0.346-BETA.lco into your server deploy directory

Remember this is a BETA, so it’s not production ready, what we are looking for in this first BETA release, is for you to try and run your apps / test suites in locally and let us know how it goes for you

This is the jira board tracking the 6.0 release, if you find an issue, please check for existing tickets and if you can’t find one, please drop a new thread here or cfml slack

PLEASE DON’T JUST FILE NEW TICKETS, let the Lucee team help you triage problems first

Lucee Docs is now publishing using this beta, so all the new 6.0 tags and functions are visible, I have gone thru and added introduced dates for tags / functions / arguments and attributes. I may have missed one or two, so let me know

I’ll be posting more detailed release notes soon (there’s quite a list of tickets to sort into a meaningful list) and we’ll be dropping some more posts about features over the coming weeks, in the meantime, checkout the existing posts about Lucee 6

Enjoy!

One last thing, if you haven’t already, please consider sponsoring the Lucee project, we need your support

11 Likes

Update, CommandBox and CFConfig should be good. Just make sure you’re on the latest versions and you can test like this:

update --system
server start cfengine="lucee@6.0.0-BETA+346"
3 Likes

Could someone summarise in a few sentences what makes this 6.0 and not 5.x ?

Last I heard, Lucee-next was going to radically alter the language, new file extensions and everything.

so far other than not being able to graphically play with the compiler settings (bug filed) so far this is awesome…

Seems and or is faster, much faster than 5.x, which I thought was not possible.
great job!

1 Like

This is super exciting!!! :smiling_face_with_three_hearts:

3 Likes

A quick summary of Lucee 6

  • moves to a json based config, existing xml configs are imported on upgrade
  • optional single mode, i.e. no additional server context, which reduces startup time and memory usage
  • lots of refactoring, performance improvements
  • v2 Image extension, complete refactor, WEBP support
  • v2 S3 extension, complete refactor now using awslib
  • v5.4 BETA ORM / Hibernate Extension (still a bit rough around the edges)
  • acf compat updates
  • new functions
  • inline and sub components
  • updated some member functions to better support chaining (i.e. don’t return true, returns the object)
  • updated java libraries, removed unused java 1.4 compat libs
  • removed support for flash files, applets etc
  • improved underlying numeric support, better precision etc
  • refactored build system support, let’s you slice and dice which test cases get run
  • cfhttp connection pooling
  • improved debugging, response status code, content length, thread debugging
  • nio watch service for directory gateway (highly efficient monitoring of filesystem for changes)
  • smaller default footprint due to older extensions no longer being bundled ( ajax, search, chart, axis ) they can be installed manually or by using the extensions env var LUCEE_EXTENSIONS=D46B46A9-A0E3-44E1-D972A04AC3A8DC10,EFDEB172-F52E-4D84-9CD1A1F561B3DFC8,FAD67145-E3AE-30F8-1C11A6CCF544F0B7,6E2CB28F-98FB-4B51-B6BE6C64ADF35473,DF28D0A4-6748-44B9-A2FDC12E4E2E4D38

just a quick summary he said…

16 Likes

Hi Zac

I just finished reading the new documentation pages.
Thanks for the huge work.

I think you’re thinking of LuceeLang, which was basically scrapped years ago. There are some very nice improvements in 6.0 but no new file extensions or new scripting syntaxes outside of CFML.

Super cool !

So far this new Hibernate version is working really well. I’m stoked that it was pulled all the way past the current vulnerability. 3.5 to 5.4 is no joke! Awesome job! I tried using 5.4 from lucee 4.5 and it loaded new constraints for 15 minutes then wouldn’t startup. On Lucee 6 it’s working well. The only issues I’ve seen so far are, when Orm events are enabled and defined, for some reason I can’t flush or an error is thrown. Are these known issues or should I find error messages and file a bug somewhere?

@ian_hickey Can you please share your installed 5.4 hibernate extension version and full stacktrace for the error?

@cfmitrah Version is Lucee 6.0.0.346-BETA - Unfortunately, I’m not getting a full stack trace. It just hangs trying to flush. I see this error. ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Lock wait timeout exceeded; try restarting transaction. Any way to see more info on this error? I could probably fire up a profiler or something.

I’ll see if I can create a really simple reproduction.

1 Like

For more information about the error, please see the log file & Can you share your installed version of Hibernate 5.4 on lucee 6?

5.4.29.20-BETA Hibernate

“error”: “Cannot invoke "java.lang.Boolean.booleanValue()" because the return value of "java.lang.ThreadLocal.get()" is null”

stacktrace.html (15.3 KB)

Is it intended that rest services don’t work in single mode? I was not able to get a previously working rest service to work in single more. RestInitApp worked. Manually adding the rest mapping worked. Hitting the endpoint always failed as if it didn’t exist. Enabling the web context resolved it. Maybe the rest servlet config is tied to web context?