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

BoxLang 1.0.0 Beta 23 Launched

BoxLang 1.0.0 Beta 23 Launched

The latest release of BoxLang, Beta 23, marks a significant step forward in our journey to create the ultimate dynamic language for the JVM. Packed with powerful new features, important bug fixes, and thoughtful optimizations, this update is designed to make your development experience smoother, faster, and more reliable, especially after now starting to take 100s of comments and bug reports from our community.

Luis Majano
Luis Majano
November 23, 2024
TestBox Latest Updates and News!

TestBox Latest Updates and News!

We’re thrilled to have launched the new TestBox website and TestBox 6.0! If you haven’t had a chance to explore yet, visit TestBox to discover updated documentation, powerful resources, and features that make testing more efficient than ever.

Maria Jose Herrera
Maria Jose Herrera
November 21, 2024
Is Your ColdFusion Application Ready for the Future?

Is Your ColdFusion Application Ready for the Future?

In a rapidly evolving digital world, maintaining performance, security, and scalability for ColdFusion applications is more challenging than ever. Whether you're using Lucee or Adobe ColdFusion, legacy systems can become a bottleneck for growth, innovation, and user satisfaction. The need to future-proof your ColdFusion applications has never been more critical.

But where do you start?


The Hidden Costs of an Outdated ColdFusion Application

As you...

Cristobal Escobar
Cristobal Escobar
November 21, 2024