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

From Legacy Risk to Modern Agility: A Phased Modernization Roadmap for CFML Teams

From Legacy Risk to Modern Agility: A Phased Modernization Roadmap for CFML Teams

Many organizations running CFML applications today face the same challenge.

Their systems still work.

They support core business processes.

They generate revenue.

But at the same time, those platforms are increasingly exposed to risk.

Unsupported runtimes, operational fragility, security exposure, and difficulty integrating with modern systems are becoming more common in environments still running older versions of Adobe ColdFusion or Lucee.

The quest...

Cristobal Escobar
Cristobal Escobar
March 16, 2026
Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Spring Boot developers know the pain of evaluating view technologies. Thymeleaf is great — until you need more expressiveness. FreeMarker is powerful — until the syntax fights you. What if you could write templates in a dynamic JVM language that gives you the full power of the platform, feels natural, and requires zero setup to integrate?

Meet the BoxLang Spring Boot Starter.

Luis Majano
Luis Majano
March 13, 2026
Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

The growing need to evolve legacy financial platforms safely

Many Swiss banks and financial institutions still operate important systems built on ColdFusion and CFML platforms.

These systems manage a wide range of functions, including:

  • internal banking workflows
  • reporting systems
  • client portals
  • data integration platforms
  • compliance and risk management tools

In many cases, thes...

Cristobal Escobar
Cristobal Escobar
March 13, 2026