Blog

CommandBox 3.0.0 Final Released

Brad Wood February 09, 2016

Spread the word

Brad Wood

February 09, 2016

Spread the word


Share your thoughts

We are super excited to release CommandBox 3.0.0, our newest version of the CFML CLI, REPL, package manager, embedded server, and your source of awesome ASCII art.  This is a major release of the platform that contains many new features and improvements totaling over 50 tickets!  The final version is available for public consumption and we recommend all CommandBox users upgrade.  

Get It

As usual, the only step required to upgrade is to replace your 'box' binary and the next time CommandBox runs, it will complete the install. If you used yum, apt-get or brew to install, just request the newest version.  All the binaries are also available on our download page.

If you're new to CommandBox, no worries. Just check out our installation page where we have detailed instructions for each operating system to get you up and running in about 60 seconds.

https://ortus.gitbooks.io/commandbox-documentation/content/setup/installation.html

Got It

Once you've installed the latest 3.0.0 build, let's look around at some of the new stuff:

  • Config Settings - Customize and configure CommandBox just for you
  • Modules - The 'Box is now modular and can be extended like never before
  • Interceptors - Hook into the internals of the CLI and build upon it
  • Standardized Command Packaging - Custom commands can now be packaged up as modules
  • Server.json - Default every aspect of the embedded server for packaging and convenience
  • Shortcut for Native OS Binaries - Mucho improved native shell executions from inside CommandBox
  • Shortcut for CFML Functions via REPL - A new sweet way to run CFML functions right from the commandline
  • Expressions in Command Parameters - Express yourself with new syntaxes for calling commands with dynamic inputs
  • Command DSL - New features to help devs writing custom commands

There is a full write up on each of these features including examples and links to the docs here in our beta release post.  Please read through it if you want to dig in deeper to the new stuff.

http://www.ortussolutions.com/blog/commandbox-300-beta-released-for-testing

Good

Congratulations, you're on your way to being a new, more productive you!  Please arm yourself with the following docs, which have been completely updated for the new 3.0.0 features:

https://ortus.gitbooks.io/commandbox-documentation/content/

And also, the new Command API docs.  

http://apidocs.ortussolutions.com/commandbox/3.0.0/index.html

If you have any questions or need help, please jump over to our mailing list, or hit up the #box-products channel in the CFML Slack team.  And finally, I'll leave you with the full release notes for this release:

Release Notes - CommandBox - Version 3.0.0

Bug

New Feature

  • [COMMANDBOX-52] - Provide a more programmatic way to run commands/tasks like a method
  • [COMMANDBOX-111] - Allow native binary execution with exclamation mark
  • [COMMANDBOX-266] - Add server.json to default server settings
  • [COMMANDBOX-291] - Global CommandBox setting file
  • [COMMANDBOX-294] - Disable sendfile in runwar server
  • [COMMANDBOX-296] - Refactor JSON handling out of package commands for reuse
  • [COMMANDBOX-302] - Allow # as a REPL shortcut to run CFML tags or functions
  • [COMMANDBOX-303] - Allow expressions in command parameters
  • [COMMANDBOX-306] - Add option to server start for enabling/disabling directory browsing module
  • [COMMANDBOX-312] - Allow commands to be piped in to box
  • [COMMANDBOX-313] - Override module settings with config settings on module load
  • [COMMANDBOX-314] - WireBox injection DSLs for module config and settings
  • [COMMANDBOX-319] - Handle struct of environment variables in server.json
  • [COMMANDBOX-320] - Add additional helper reference to the Executor

Task

  • [COMMANDBOX-301] - Remove bleeding edge builds from production Debian repo.

Improvement

Add Your Comment

Recent Entries

Why BoxLang When You Have Kotlin, Groovy, Scala, and more…

Why BoxLang When You Have Kotlin, Groovy, Scala, and more…

As we approach a stable release of BoxLang and our continued marketing reaches more folks, many have asked about its purpose. Why create a new language when the JVM ecosystem already includes established languages like Kotlin, Groovy, and Scala, to name a few.

Luis Majano
Luis Majano
December 18, 2024
ColdBox Free Tip 6 - Using Routing with Wildcard Domains!

ColdBox Free Tip 6 - Using Routing with Wildcard Domains!

ColdBox gives you the flexibility to create domain-specific routes, making it perfect for multi-tenant applications or projects that need to respond differently based on the domain or subdomain being accessed. In this tip, we’ll dive into how to use the withDomain() method to create routes that match specific domains or sub-domains.

Maria Jose Herrera
Maria Jose Herrera
December 18, 2024