Blog

CommandBox 4.0.0 Released

Brad Wood June 01, 2018

Spread the word

Brad Wood

June 01, 2018

Spread the word


Share your thoughts

Today we are very pleased to announce the final release of CommandBox 4.0.0.  This has been one of our most ambitious releases and closed more than 70 tickets over 6 months of development and testing.  

This release has gone through a month of testing that created two release candidates.  A big thanks goes out to everyone who helped provide feedback.  There are a lot of new features and libraries in 4.0 as well as a major overhaul of many of the UI aspects of the CLI. 

Download

To get the final 4.0.0 release, you can download it here from our CommandBox homepage:

https://www.ortussolutions.com/products/commandbox

Just swap out your box.exe binary and CommandBox will upgrade itself on first run.  It's a one way street, so feel free to backup the .CommandBox folder in your user home first.  

If you prefer to use Homebrew, the debian repo, or Yum repo, those are all updated now as well. 

Please Note: The box binary is normally around 38MB in size.  Due to an issue with the final build, the Pack200 process didn't run and the binary came out around 80MB.  I'll get this fixed for the next release and the binary should be back to the normal size. 

Documentation

First, you'll want to read through this blog post here which details all of the new features and changed in CommandBox 4.  Note the very last section contains all of the known "breaking changes".  For the most part, CommandBox 4 is very backwards compatible.  

https://www.ortussolutions.com/blog/commandbox-4-release-candidate-available-for-testing

All of the official CommandBox docs are fully updated for the 4.0.0 release.  You can find them here:

https://commandbox.ortusbooks.com/

And of course, the full API docs showing all the core commands and parameters are available here:

http://apidocs.ortussolutions.com/commandbox/current/index.html

Major Areas of Development

  • Major rewrite of CLI engine loader
    • Lucee 5 now powers the CLI
    • Using JSR-223 to dynamically load Lucee 5
  • All 3rd Party libs updated
    • JGit
    • Launch4J
    • Runwar
    • JLine3
  • Improved Task Runner support
    • Task scaffolding with “task create
    • Task DSL to call other tasks
    • Ortus Builds are now being converted to Task Runners.  No Ant!  No XML!
  • Support for Private package
  • Revamped Server Logs (access, rewrite, console)
  • ColdBox 5 updates
  • Tons of bug fixes and improvements

Issues/Questions/Support

In the unlikely event of a water landing, please reach out so we can help you.  Here a few ways you can contact us:

Release Notes

Bug

  • [COMMANDBOX-174] - Box CLI not working inside cygwin
  • [COMMANDBOX-395] - Commandbox 3.1.X no longer works with Git Bash
  • [COMMANDBOX-728] - Allow control of default package name when box.json is missing
  • [COMMANDBOX-749] - Server won't start with $ in web root path
  • [COMMANDBOX-750] - Can't list files in directory with parenthesis in the name
  • [COMMANDBOX-761] - Default rewrites don't start regex at the start of the request URI
  • [COMMANDBOX-763] - Ctrl-C in shell kills associated server processes on *nix
  • [COMMANDBOX-767] - Issue installing older CF engine when two versions exist who only differ in build ID
  • [COMMANDBOX-778] - Adobe war has incorrect default /CFIDE CF mapping
  • [COMMANDBOX-782] - CLI Loader crashes: Error reloading cached bundle
  • [COMMANDBOX-783] - ls and dir do not list directory content after 'cd ..' without trailing slash
  • [COMMANDBOX-785] - restart command not correctly detecting stopped server
  • [COMMANDBOX-787] - Starting two servers at once can corrupt servers.json file
  • [COMMANDBOX-788] - Starting server from non-ForgeBox endpoint doesn't detect proper engine/verion
  • [COMMANDBOX-790] - Package publishing fails with folder named "readme" in the root

Story

  • [COMMANDBOX-724] - Control HTTPOnly and secure attribute of JSESSIONID

New Feature

Improvement

Add Your Comment

Recent Entries

BoxLang 1.0.0 RC1 Launched

BoxLang 1.0.0 RC1 Launched

After nearly a year of relentless iteration, rigorous testing, blood, sweat, lots of praying, tears, and over 1,000 resolved tickets, we proudly announce the first Release Candidate (RC1) of BoxLang! With 27 beta versions behind us, we are now on the final stretch toward the official 1.0 release.

Luis Majano
Luis Majano
February 18, 2025
Exploring BoxLang: A Modern Scripting Language for the JVM!

Exploring BoxLang: A Modern Scripting Language for the JVM!

The amazing CFML community leader Ray Camden recently shared his thoughts on BoxLang, a dynamic scripting language that runs on the Java Virtual Machine (JVM). BoxLang is lightweight (only 6 MB) and doesn’t require Java knowledge, making it accessible to developers from all backgrounds. Whether you're building CLI scriptsweb applications, or experimenting with serverless architecture, BoxLang has you covered.

Maria Jose Herrera
Maria Jose Herrera
February 14, 2025
Get a Free BoxLang+ License with Your ITB 2025 Ticket!

Get a Free BoxLang+ License with Your ITB 2025 Ticket!

At Ortus Solutions, we are dedicated to delivering the best experience for our Into the Box attendees. This year’s event will be an exciting opportunity to explore BoxLang and modern CFML development, and we want to ensure that attending in person is even more rewarding.

Maria Jose Herrera
Maria Jose Herrera
February 07, 2025