Blog

ColdBox 2.6.0 RC 1 and more news.

Luis Majano October 15, 2008

Spread the word

Luis Majano

October 15, 2008

Spread the word


Share your thoughts

After much hard work by Team ColdBox, we are glad to put out our first release candidate. Below are some of the new features introduced and the fixes introduced in the release candidate. So please enjoy this release as we approach a final 2.6 version. We will probably have one more release candidate before release and we need all the testing you can give us. If you would like to find out all about the 2.6.0 release, please visit the What's New page in our wiki. Also, please remember that there are a few compatibility issues with version 2.5.X, that may or may not apply to you, so please read the Compatibility Guide to learn if you need to alter something or not. The documentation revisions have started for version 2.6 and all documentation is right now in constant update, not only in English, but in Spanish and Japanese. We are also looking for people or companies interested in the translation efforts, if you are interested, please contact us at partners@coldboxframework.com for more information of how to partner with ColdBox.

Download RC 1

New Features

  • Plugin/Handler Cache integration services re-built. This provides a huge performance boost on object retrievals..
  • New method: uploadFile() on the Utilities plugin for easy file uploading
  • Environment interceptor re factored to include a new method: detectEnvironement() that can be easily extended by your own custom environment interceptor. This will allow you to do any kind of detection algorithm.
  • Query Helper new method: filterNull(qry, field, NULL or IS NOT NULL) a cute utility method to filter out rows.
  • Autowire interceptor can now read cfproperty tags from plugins/handlers/interceptors or anything you send to it. So now the interceptor can inject via cfproperty annotations or via setters. I like cfproperty because of the following:

  • As you can see from above, the cfproperty tag will grab all the properties of type ioc and then will inject them into the object according to the scope attribute you provide. The default scope is the variables scope. How cool is that. The interceptor will still search for setters and will inject them via setter injection if they have not been injected before. cfproperty takes precedence over the setter.
  • The Attesoro i18n tool has been updated to version 1.8
  • The JavaLoader utility has been updated to version 0.6
  • The request context decorator now receives a reference to the ColdBox controller and a getController() method. You can now develop even richer request context objects by using settings, plugins, or anything that you have available from the ColdBox controller. This really expands on the effectiveness of building request context decorators.
  • Interceptor Service: you now have the ability to register and unregister interceptors at runtime. You don't even need to declare them via the config if you want. You can load them up at runtime. You can even now append custom interception points at runtime. This is a great features that can provide auto-registration systems or drop and play functionality to systems by just tapping into the API and register interceptors and observers. Not only that, but you know have access to retrieve the state containers so you can build your own debugging panels, or interact with any of the observable states. You can add/remove and do all kinds of reporting via the interceptor service API.

Bug Fixes-Optimizations

  • Handler dictionaries not clearing on reinitializations or auto reloads
  • ColdBox factory missing a throw() method
  • Unnecessary creation of request context objects during a request. Instead of creating just one it was re-creating about 5-6 objects. This has been fixed and optimized. A common request was optimized by over 100-300 ms due to this bug.
  • ColdBox reader sample application bugs and fixes
  • Flex Tester sample application bugs and fixes
  • Transfer Sample application bugs and fixes
  • Logger plugin was appending an extra OS slash on the log full path
  • Login Sample application refactored
  • Autowire interceptor was not correctly traversing the inheritance tree to find dependencies
  • Handler Service error on exception string when no handlers found in system.
  • Debugging panel css/html cleanup.
  • More unit testing and complete migration to MXUnit for all our test cases and suites.

Add Your Comment

(1)

May 23, 2008 17:46:02 UTC

by Ernst van der Linden

The autowire interceptor ROCKS!

Recent Entries

Coming Soon:  Version 4 Docker CommandBox Images with Enhanced Performance

Coming Soon: Version 4 Docker CommandBox Images with Enhanced Performance

CommandBox Docker images were the first CFML docker images and have nearly 2 million pulls, since their inception, to date. It's been a source of pride at Ortus that these images have been the most popular and reliable way to run CFML in containers and we are so very pleased to announce the next evolution, which will be the v4 images which run entirely on the BoxLang CLI and represent a significant overhaul of the image architecture.

These images are now available to test by appending -snapshot to your existing version tags and wil be released as stable, once CommandBox v6 emerges from release candidate status and is published as stable.

Jon Clausen
Jon Clausen
October 30, 2026
Free observability with BxMCP: give your AI agents eyes inside a live BoxLang runtime

Free observability with BxMCP: give your AI agents eyes inside a live BoxLang runtime

Ortus Solutions today announces that bx-mcp, the Model Context Protocol (MCP) server for BoxLang, is now free for everyone. Install it, point any MCP capable client at it, and your AI coding assistant, IDE agent or automation pipeline can inspect and operate a live BoxLang runtime: JVM, caches, datasources, slow requests, schedulers, logs and more. No BoxLang+ subscription required.

Luis Majano
Luis Majano
October 29, 2026
Inherited a CFML Application With Few Tests? Here’s Where to Start!

Inherited a CFML Application With Few Tests? Here’s Where to Start!

You need to change an application that has been running for years.

It might be a ColdFusion customer portal, a Lucee application supporting internal operations, or a CFML system your team is preparing to modernize. People depend on it, but some of its behavior lives in old tickets, scattered documentation, and the memory of whoever has supported it longest.

Now a release is approaching. You know more testing would help. The difficult part is deciding where to begin without putting every other priority on hold.

Start with one important workflow and build evidence around what it needs to do.

Explore Ortus Quality Assurance Services

Maria Jose Herrera
Maria Jose Herrera
October 27, 2026