Blog

CommandBox 3.9.0 Released

Brad Wood November 15, 2017

Spread the word

Brad Wood

November 15, 2017

Spread the word


Share your thoughts

We are pleased to announce the general availability of CommandBox 3.9.0, just in time to be announced at Adobe ColdFusion Summit 2017!.  This is a minor release of our CFML CLI, REPL, Package Manager, and portable server.  3.9 comes with a few new features as well as a nice list of bug fixes and enhancements.

Installation

You can get this latest version of CommandBox in several ways:

  • On Mac, use Homebrew to update
  • On Linux, use apt-get or yum to update
  • On Windows, download a new box.exe from our download page:

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

Documentation

We have fully updated our CommandBox GitBook: https://commandbox.ortusbooks.com/content/

We have also updated the Command API docs: http://apidocs.ortussolutions.com/commandbox/current

New Stuff

You can read an overview of the new features and bug fixes in  CommandBox 3.9.0 here in this blog post that announced the release candidate.  Here are the full release notes of all the JIRA tickets for your reference as well:

 

Bug

  • [COMMANDBOX-579] - --debug flag is eaten when running CommandBox from native OS
  • [COMMANDBOX-640] - Ensure clean install/update of packages
  • [COMMANDBOX-681] - Touching file in nonexistent directory errors instead of creating directory
  • [COMMANDBOX-682] - CommandDSL that errors out doesn't reset CWD
  • [COMMANDBOX-684] - positional task args don't work
  • [COMMANDBOX-686] - cp command doesn't work for folders
  • [COMMANDBOX-689] - CommandBox Modules customInterceptionPoints can't accept an array
  • [COMMANDBOX-690] - CommandBox has no `processState` method on the InterceptorService
  • [COMMANDBOX-691] - Flags aren't passed correctly to task runners
  • [COMMANDBOX-701] - CFML functions don't handle incoming JSON with pound signs

New Feature

  • [COMMANDBOX-653] - Expose Runwar AJP listener settings
  • [COMMANDBOX-663] - Update server list and server info to be able to show all the servers on a particular directory
  • [COMMANDBOX-668] - New package link and package unlink commands
  • [COMMANDBOX-680] - Add ad-hoc JVM props via an environment variable

Improvement

  • [COMMANDBOX-178] - Don't store text entered to "ask()" command in history
  • [COMMANDBOX-565] - Handle minor version updating a bit better
  • [COMMANDBOX-607] - Always store dependency install paths with forward slashes
  • [COMMANDBOX-609] - Have a setting to not show secrets when printing out the config
  • [COMMANDBOX-624] - Support UNC file paths on Windows
  • [COMMANDBOX-639] - JSON format for forgebox endpoints
  • [COMMANDBOX-659] - Ask user for required params to task runners
  • [COMMANDBOX-660] - Visually show if a package is private when listing or showing
  • [COMMANDBOX-661] - make package init create correct slug for private package
  • [COMMANDBOX-662] - Make default command parms work on aliases
  • [COMMANDBOX-670] - Box install failures to produce non-zero exit codes so build fails instead of continuing installation.
  • [COMMANDBOX-683] - Provide ANSI formatting for markdown package descriptions
  • [COMMANDBOX-685] - box.json template isn't proper JSON
  • [COMMANDBOX-687] - Remove background color from CommandBox ASCII art
  • [COMMANDBOX-688] - Default rewrite rules to ignore favicon.ico
  • [COMMANDBOX-694] - Disable Secure Profile on CFEngine WARs
  • [COMMANDBOX-696] - Leave space around URLs so some consoles will be clickable
  • [COMMANDBOX-697] - Improve performance of package install ignores
  • [COMMANDBOX-700] - Improve error message in ServerService.getRandomPort()
  • [COMMANDBOX-707] - Prevent unnecessary writes to box.json file when installing dependencies
  • [COMMANDBOX-708] - Improve formatting when asking for required param that has no hint
  • [COMMANDBOX-712] - Add Java 9 check to CommandBox until its supported

Add Your Comment

Recent Entries

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
Only 2 Days Left to Lock In Early Bird Pricing for Into the Box 2025!

Only 2 Days Left to Lock In Early Bird Pricing for Into the Box 2025!

The countdown is on. You have just two days left to secure your Early Bird ticket  for just $199 to Into the Box 2025 before prices increase on April 16.

We are proud to offer an engaging and high-value online experience for developers around the world. With a virtual ticket, you get more than just access — you get ongoing value that supports your growth long after the conference ends.

Maria Jose Herrera
Maria Jose Herrera
April 14, 2025
BoxLang is Going Stable — Join Us for the Big Reveal at Into the Box 2025!

BoxLang is Going Stable — Join Us for the Big Reveal at Into the Box 2025!

BoxLang is the modern, flexible JVM language you've been waiting for. We know what it’s like to need better tools, more freedom, and the ability to scale without limits — because we’ve been there too. That’s why we’re building BoxLang with you and for you. Your feedback, ideas, and needs shape its future.

We’re committed to fair pricing, real support, and a growing ecosystem designed to help us all modernize, innovate, and thrive — together.

Maria Jose Herrera
Maria Jose Herrera
April 14, 2025