Blog

CommandBox 3.6.0 Released

Brad Wood March 10, 2017

Spread the word

Brad Wood

March 10, 2017

Spread the word


Share your thoughts

We are proud to announce the general availability of CommandBox 3.6.0.  This is a minor release of the CLI tool that contains mostly bug fixes and small enhancements.  You can download the latest version from the CommandBox download page.  We've updated the GitBook docs and Command API docs as well.

What's New

Here's an overview of the updates in this release.

Improve OS binary execution

You've been able to run OS binaries from the CommandBox interactive shell for a while now which is great for adding native CLI calls to your recipes.

CommandBox> !git push

The biggest problem with this though was that no output shows on the screen until the OS command is completely finished and if your OS command blocks for interactivity or just never ends, the CommandBox shell will just "hang" with no output.  All that is a thing of the past now.  The standard input and output of the OS process is now bound to the standard input and output of your CommandBox shell.  That means that you see output as soon as the binary outputs it and if it stops to ask you for input, you can provide it.  This opens up a world of possibilities.  

  • You can ping an address and watch the output stream as the packets return.
  • You can do a Git commit and interact with the VI window that appears to capture your commit message.
  • You can actually open a bash/DOS shell right inside of CommandBox and then "exit" back to box when you're done.
  • Run native commands that collect input from you to continue like a sudo password.
CommandBox> !ping -c 4 google.com
CommandBox> !git commit
CommandBox> !bash
CommandBox> !sudo command

This has been tested and works pretty well on Mac and Windows.  Note, we've seen some issues on Linux where output is streamed, but input is not captured.

New interceptor points

  • preServerForget - Always fires before attempting to forget a server whether or not the forgetting is actually successful
  • postServerForget - Fires after a successful server forget. If the forget fails, this will not fire.

Allow spaces in user home directory

This was supported in CommandBox 3.4.0, but we had a regression in 3.5.0 that caused issues for users who have a space in their path to CommandBox's home dir.  This has been fixed along with some related issues with the FusionReactor module.  Make sure you have the latest Fusion Reactor module once you upgrade to CommandBox 3.6.0.

CommandBox> install commandbox-fusionreactor

New Lucee version

The core version of Lucee that the CLI runs on has been updated to 4.5.5.006.  Please note this means the default version of Lucee that starts up for your server when you don't specify otherwise will change.  If you have settings like datasources and such that you want to keep, make sure you lock in your exact version of Lucee or check into our new CFConfig project for exporting/importing your server settings.

Incorrect exit code from "testbox run"

The testbox run command would return an exit code of 0 when your tests had in fact failed.  This has been fixed so you can trust a proper exit code from the process when running your tests inside a Jenkins or Travis CI build.

$> box testbox run runner=http://localhost:8080/tests/runner.cfm

Global default for HTTP port in config settings

Previously, you couldn't set a global default HTTP port for all your servers.  This was on purpose since it didn't really make sense since one one server can use a port at a time.  Now, with the introduction of Chris Schmitz's host updater module, you can more easily run each server on a dedicated host name which is added to your host file for you and bound to a unique port.  This allows you to run all your local servers on port 80 which is great for cleaning up your local dev.  As such, we've added the ability to set the global HTTP port now in your config setting's server defaults.

CommandBox> config set server.defaults.web.http.port=80

Release Notes

Here's the full release notes for the 3.6.0 release.

Bug

  • [COMMANDBOX-553] - Windows CommandBox upgrades fail silently if servers are left running
  • [COMMANDBOX-554] - Box start error
  • [COMMANDBOX-555] - All semicolons removed in REPL which breaks some code
  • [COMMANDBOX-558] - Can't start server when space is in user home dir
  • [COMMANDBOX-559] - server list --verbose produces an error
  • [COMMANDBOX-567] - package list sometimes shows incorrect version of 1.0.0
  • [COMMANDBOX-572] - Running server info on non-server folder creates empty server details
  • [COMMANDBOX-575] - CommandBox fails to start if a 3rd party module fails to load
  • [COMMANDBOX-582] - NPE on some URLs occasionally
  • [COMMANDBOX-587] - testbox run doesn't always return correct exit code on failure

Improvement

Add Your Comment

Recent Entries

Must-See Into the Box 2025 Sessions for CommandBox Users!

Must-See Into the Box 2025 Sessions for CommandBox Users!

Power Up your CommandBox experience and practices at Into the Box 2025

Want to get hands-on with the new CommandBox features or learn how others are pushing it to the next level? These are the must-see sessions at ITB 2025 if you're a CommandBox user:

Maria Jose Herrera
Maria Jose Herrera
April 21, 2025
Must-See ITB 2025 Sessions for TestBox Users!

Must-See ITB 2025 Sessions for TestBox Users!

Are you a fan of TestBox or looking to level up your testing game in 2025? Whether you're just getting started with unit testing or you're already building advanced specs for ColdBox and BoxLang apps, Into the Box 2025 has an exciting lineup tailored just for you. Into the Box 2025 has an exciting lineup tailored just for you. With the recent launch of TestBox 6.3.0 we have amazing new tools, features and tips and tricks to get your testing experience to the next level, review our sessions and test like a pro efficiently and easy!

From hands-on testing strategies to BoxLang innovations, here are the sessions you won’t want to miss this May — and why they matter to you as a TestBox user.

Maria Jose Herrera
Maria Jose Herrera
April 17, 2025
The Into the Box 2025 Agenda is LIVE and Done!

The Into the Box 2025 Agenda is LIVE and Done!

The wait is over! The official Into the Box 2025 agenda is now live — and it's packed with high-impact sessions designed for modern CFML and BoxLang developers. Whether you’re building APIs, modernizing legacy apps, diving into serverless, or exploring AI integrations, this is the conference you’ve been waiting for.

Here’s a look at what you can expect — categorized by key topics to help you plan your learning journey, there’s something for everyone covering modern CFML tools and BoxLang:

Maria Jose Herrera
Maria Jose Herrera
April 15, 2025