What's New in 6.1.0
Here's an overview of the notable changes in this release.
Install Lucee core/lex files
The install command will automatically find a local Lucee Server when installing a package that is a Lex file. There is also now a command called server lucee-deploy to help with installing Lex files (Lucee Extensions) and LCO files (Lucee Core).
It will accept an absolute or relative local file path:
or an HTTP URL to download
You can also override the name of the CommandBox server to install into, regardless of what working directory the shell is in:
The command will copy the lex or lco file to the deploy folder of the chosen Lucee server
More info here: https://commandbox.ortusbooks.com/embedded-server/install-lucee-core-lex-files
Package Management binary hash verification
CommandBox now has the capability to verify the MD5 hash of a binary upon installation. When publishing packages to ForgeBox using ForgeBox's built-in S3 storage, the binary hash will be auto-calculated and stored in ForgeBox along with the package details and automatically checked on every future download.
More info here: https://commandbox.ortusbooks.com/package-management/creating-packages#custom-binary-hash
WebSocket Support
CommandBox supports WebSockets natively via our SocketBox library. The WebSocket server in CommandBox is not really a separate "server" per se, since it’s on the same port. It’s just an upgrade listener which will upgrade any WS requests.
This websocket integration will work for Lucee, Adobe, and BoxLang alike as it passes incoming messages to the app via an "internal" HTTP request to /WebSocket.cfc?method=onProcess where the CF/BL code can handle it. The incoming request will have all cookies, headers, hostname, etc that the original websocket connection was started with, so normal CGI variables and session scopes should work fine.
You need to create a custom /WebSocket.cfc class should extend one of the classes described below in this library which provides the base functionality.
More info here: https://commandbox.ortusbooks.com/embedded-server/websocket-support
And here: https://forgebox.io/view/socketbox
Library Updates
We've bumped the versions of several internal libraries including
Lucee (5.4.6.9)
JBoss Undertow (2.2.37.Final)
Bundled JRE (11.0.25+9)
Release Notes
Here is the full list of tickets closed in the 6.1.0 release.
New Feature
COMMANDBOX-1630 Updates to run BoxLang
COMMANDBOX-1635 Add command to deploy Lucee lex or lco files
COMMANDBOX-1637 Check if an entry has a hash associated to it and validate it
COMMANDBOX-1638 Create a hash of the binary when storing the zip and return it to ForgeBox
COMMANDBOX-1642 WebSocket Server
Improvement
COMMANDBOX-1620 Sort by date last started when finding a server by web root
COMMANDBOX-1622 Make semantic version prerelease identifiers not case sensitive
COMMANDBOX-1627 default servlet pass predicate include Boxlang files
Bug
COMMANDBOX-1616 Legacy SSL config doesn't respect enable = false
COMMANDBOX-1617 Static web server no longer works
COMMANDBOX-1619 second level dependencies inside of a top level dependency's box.json always install latest stable version
COMMANDBOX-1621 "Java search" returns no results
COMMANDBOX-1623 framework rewrites double-encode path info
COMMANDBOX-1625 CommandBox 6 not putting trailing slashes in URL
COMMANDBOX-1629 SES paths return false from is-file predicate for value files with a path info
COMMANDBOX-1633 backslash in JSON object keys not escaped when printing JSON
COMMANDBOX-1643 forgebox version-debug errors
Task
COMMANDBOX-1626 Update to Undertow 2.2.33.Final
COMMANDBOX-1631 Update to Lucee 5.4.6.9
COMMANDBOX-1632 Update bundled JRE to 11.0.23+9
Last updated