Compatibility Guide for ColdBox 2.6.0

This guide is a review of the major changes starting in ColdBox 2.6.0. The major compatibility issues will be covered and also how to smoothly upgrade to this release from previous ColdBox versions. You can also check out the What's New with 2.6.0 guide to give you an in-depth overview.

ColdFusion 6, Bluedragon 6 Support

Since Adobe is no longer supporting ColdFusion 6, so have we. The core pretty much stays the same, but it might or might not work on cfmx 6. I no longer support it and you can tweak the framework to make it work, but I do not support or condone it.

Interceptors Return Type

In pre-2.6 ColdBox applications, the interceptor methods had a return type of void. On 2.6 applications, this has changed to boolean. The default return value is false. Why? Well, this boolean variable can determine if the processing service should continue to execute interceptors in the chain. If you return a true, this means that the interceptor service should STOP executing the other interceptors in the chain. In summary, the return value acts as a stop command for the chain. You do not need to change anything in order for your previous interceptors to work. However, the knowledge of this feature is now useful.

Renderer plugin: RenderExternalView()

The render external view method has been updated to act in similar fashion to the render view method. Therefore, it will append a .cfm extension to the view name. So if you had any calls using the .cfm extension, then please update your code to eliminate the .cfm extension

Deprecations

fileUtilities Plugin

The fileUtilities plugin has been finally deprecated as announced in previous versions. The new plugin name is called Utilities. So please update all references to fileUtilities to Utilities. This deprecation was mentioned over 3 versions ago.

MessageBoxStyleClass Setting

This setting was mentioned as no longer supported in version 2.5.0. It was left on the XSD for compatibility. However, now it has come out of the XSD. Please note that this setting is now called: MessageBoxStyleOverride. See Config Guide

New Complex Settings

The complex settings processor has been updated to use JSON syntax. The notation used before complied with JSON, but just in case, verify your syntax.

Base Test : Unit Testing

The baseTest.cfc has been moved to its own package to allow for the development of more testing classes. You can now find the baseTest.cfc under coldbox.system.extras.testing.baseTest. Please make sure you update your unit tests to reflect this.