ColdBox 4.2.0 Released!

Luis Majano April 01, 2016

Spread the word

Luis Majano

April 01, 2016

Spread the word

Share your thoughts

We are excited to announce the general availability of ColdBox 4.2.0. This release includes tons of fixes but also great new features and speed improvements. If you have CommandBox installed, you can upgrade now by just typing: box update coldbox or get started with a new ColdBox app by typing: box coldbox create app --installColdBox.



Here is a synopsis of the major feature updates and improvements in this release.

Travis Integration


All pull requests will now have Travis integration to verify the consistency and quality of them. This will also help promote our collaborators to enhance our test suites and feel good that what they are sending doesn't break the core. Check out our new Travis page:

CommandBox Integration


We have fully documented the approach to hack in our source code. This will allow collaborators to just download CommandBox, fork our repo, and type box install && box server start and start collaborating. We are incredibly focused in this release to make it easier for people to collaborate with ColdBox.

Route Support for Integration Testing

Our integration testing method execute() now supports a route and querystring arguments. This will allow you to test any route in your system and make sure that they are parsed correctly by the url mapping and routing services. This is great for testing your RESTFul services and routing.

Get rendered content easily

If you are doing integration tests and you pass in the renderResults argument to the execute() method, you can now very easily retrieve the rendered content from the event object via the new method: event.getRenderedContent(). No more trying to figure out what rc variable it was placed in.

New event.getHTTPBaseURL() method

We have added a convenience method usually used in <base> tags to give you a protocol sensitive base URL for your applicaiton. This will determine if you are in SSL mode or not and give you the rigth base URL.

Population Enhancements

The populateModel method has been enhanced to take in new arguments:

  • memento So you can populate directly with any a-la-carte structure
  • json So you can populate from any JSON packet
  • xml So you can populate from any XML packet
  • query So you can populate from any query

No more config ma!

This update allows you to create ColdBox apps with no ColdBox.cfc configuration object. Great for simple mockups and no fancy configs

No more handlers ma!

Since we introduced modularization, the core app no longer requires handlers to function. You can even create applications with no handlers, just views now.

View Caching Flag

You can now declare a new coldbox directive flag: viewCaching which can enable or disable view caching globally in your application. Great for environments.

Release Notes

New Features

  • [COLDBOX-477] - Update testing docs for collaboration and update core for CommandBox development
  • [COLDBOX-483] - Add a test browser by default to the test harness
  • [COLDBOX-492] - Add a new 'route,querystring' argument to the 'execute' method to allow for SES route testing
  • [COLDBOX-493] - Added a 'memento' argument to the 'populateModel' method to allow for overriding of what struct to populate with
  • [COLDBOX-494] - Added json,xml,query additions to the populateModel() method to allow for more populations
  • [COLDBOX-498] - Update build process for DocBox and travis integrations
  • [COLDBOX-499] - Update and Cleanup of app templates
  • [COLDBOX-500] - Allow for applications with no ColdBox.cfc config, full convention mode
  • [COLDBOX-501] - new convenience method on testing request context to retrieve rendered content: getRenderedContent()
  • [COLDBOX-506] - Refactor app templates to their own repo
  • [COLDBOX-507] - New context method: getHTMLBaseURL() to get a http protocol sensitive request context base url


  • [COLDBOX-191] - Flag to turn view caching on/off
  • [COLDBOX-246] - Autowire remote proxies, changed to manual instead of automatic
  • [COLDBOX-348] - Remove requirement to have at least one handler
  • [COLDBOX-472] - Update the documentation URL in box.json
  • [COLDBOX-476] - Review duplication of error object in ExceptionBean.cfc
  • [COLDBOX-486] - Support for german characters for slugify
  • [COLDBOX-495] - Load internal system modules first rather than last in module hierarchy discovery
  • [COLDBOX-496] - Error detail, message empty on CF10 CF11
  • [COLDBOX-503] - Replace StringBuffer with StringBuilder for performance

Bugs Squashed

  • [COLDBOX-429] - Bundling Modules w/ module excludes does not respect excludes
  • [COLDBOX-453] - API docs have broken links
  • [COLDBOX-462] - acf incompatibillty on restful template response object
  • [COLDBOX-463] - addAsset does not recognize urls that ends with say "app.js?123" as js, not css.
  • [COLDBOX-467] - fix for tomcat 8 not removingr repeating slashes on path info
  • [COLDBOX-471] - HTML Helper's startForm() doesn't pick up if current request is HTTPS
  • [COLDBOX-474] - doctype default switch case was on the wrong type, thanks to Hector Cruz
  • [COLDBOX-475] - _counter does not increment in rendering query-based view collections
  • [COLDBOX-485] - Bean Populator not working correctly when ORM entity inherits from other
  • [COLDBOX-487] - Bean populator errors on null values in JSON string
  • [COLDBOX-490] - syntax and wrong argument type matching on exception bean
  • [COLDBOX-497] - double forward slash generated in buildLink
  • [COLDBOX-509] - SES interceptor has poor query string parsing

Add Your Comment

Recent Entries

CBWIRE 2.2 Released

CBWIRE 2.2 Released

We're excited to announce the release of CBWIRE 2.2. This release includes several added enhancements, such as new lifecycle hooks and simplified Turbo Drive integration. We changed the previous lifecycle hook of mount() to onMount() to be consistent, and several bugs were squashed.

Maria Jose Herrera
Maria Jose Herrera
January 09, 2023
FORGEBOX v7.1.0 Released

FORGEBOX v7.1.0 Released

We are so happy to announce a minor release for our package management system. In this release, we take care of some bug fixes reported and a lot of work for our elastic search engine. Now better search results with an improved response time. We have updated our core modules to the latest versions for better security and performance.

Javier Quintero
Javier Quintero
December 30, 2022
Favorite 2022 Ortus Content

Favorite 2022 Ortus Content

2022 was quite the year. For us, it was all about delivering exceptional content and service to our amazing community of developers. That's why we updated our tools, released new products, and announce upcoming projects and initiatives we are working on for 2023.

We know 2023 will be awesome but 2022 was amazing too. Read on and don't miss anything, review the top content we released in 2022 and improve your projects in 2023. Happy New Year!

Maria Jose Herrera
Maria Jose Herrera
December 29, 2022