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

BoxLang AI v2: Enterprise AI Development Without the Complexity

BoxLang AI v2: Enterprise AI Development Without the Complexity

One Year. 100+ Features. Unlimited Possibilities.

Just one year ago, in March 2024, we launched BoxLang AI 1.0. Today, we're thrilled to announce BoxLang AI v2—a massive leap forward that positions BoxLang as the most powerful and versatile AI framework on the JVM.

Luis Majano
Luis Majano
January 19, 2026
CommandBox: A Smarter Foundation for BoxLang and CFML Workflows

CommandBox: A Smarter Foundation for BoxLang and CFML Workflows

In day-to-day development, some tools simply do their job… and others quietly change the way you work. CommandBox falls into the second category.

It doesn’t replace your editor, framework, or existing applications. Instead, it becomes the common ground where CFML and BoxLang development meet ,giving teams a consistent, reliable way to build, run, and evolve their projects.

Victor Campos
Victor Campos
January 16, 2026
BoxLang v1.9.0 : Production-Ready Stability, Enhanced Lifecycle Management, and Rock-Solid Reliability

BoxLang v1.9.0 : Production-Ready Stability, Enhanced Lifecycle Management, and Rock-Solid Reliability

Happy New Year! The BoxLang team is excited to announce BoxLang 1.9.0, a significant stability and compatibility release focused on production-readiness thanks to our client migrations and new application deployments. This release also introduces array-based form field parsing conventions, enhanced datasource lifecycle management, improved context handling, and resolves over 50 critical bugs to ensure enterprise-grade reliability for mission-critical applications.

Luis Majano
Luis Majano
January 09, 2026