Blog

Luis Majano

August 16, 2019

Spread the word


Share your thoughts

We are very excited to announce the release of ColdBox version 5.6.0 alongside all the companion standalone libraries: WireBox, LogBox and CacheBox.

What's New With 5.6.0

ColdBox 5.6.0 is a minor version update with lots of fixes, improvements, performance enhancements and some nice new features. Below are the major areas of improvement and the full release notes. To update ColdBox or any of the standalone libraries just leverage CommandBox:

  • update coldbox
  • update logbox
  • update wirebox
  • update cachebox

Major Updates

Performance

We had two specific tickets that have resulted in extreme performance improvements for ALL ColdBox requests. You will feel and see the difference:

  • [COLDBOX-799] - Event Handler Bean: Single instance per handler action for major performance improvements

This ticket was contributed by Dom Watson (https://twitter.com/dom_watson) one of the lead engineers of the amazing PresideCMS project built on top of ColdBox. We worked together to avoid the creation of handler beans on each runnable event. We now cache each event handler bean representation which results in an extreme boost in performance. Thanks Dom!

  • [COLDBOX-810] - Remove afterInstanceAutowire interceptor in handlerService as afterHandlerCreation is now officially removed.

Thanks to our local mad scientist Brad Wood, he reported that the handler services still listened to ALL CFC creations in an application in order to relay an afterHandlerCreation interception point from the good 'ol 2.6 days. This has been finally removed and boom, another big boost in performance!

Better Bug Reports

We have enhanced the bug reporting templates to include much more information when dealing with exceptions:

  • Show SQL error details on Adobe CF
  • Current route, params and debug info
  • Contributing module for the current routed URL

Merging of HTTP Verbs

Thanks to our very own Eric Peterson, you can now merge HTTP verbs on the same route pattern, which you could not do before:

router
    .post( "photos/", "photos.create" )
    .get( "photos/", "photos.index" )
    .delete( "photos/", "photos.remove" );

ColdBox Core Release Notes

Bugs

  • [COLDBOX-778] - ModuleService to add default route doesn't work correctly
  • [COLDBOX-794] - Fix default bug report to show SQL error detail for adobe SQL exceptions
  • [COLDBOX-796] - When doing package resolving if you are in a module it still tries to resolve a module
  • [COLDBOX-806] - Error in HTML helper WRAPPERATTRS doesn't exist in argument scope
  • [COLDBOX-811] - Include the colon for non 80 or 443 port numbers #419 in github

New Features

  • [COLDBOX-812] - Allow merging of HTTP verbs when doing separate verbs for the same route
  • [COLDBOX-813] - Update cfconfig to use env variables instead of inline mixins, modernizeOrDie

Improvements

  • [COLDBOX-795] - Add more current route information to the BugReport.cfm template
  • [COLDBOX-797] - Ability for bug reports and app to know which module contributed the incoming URL route.
  • [COLDBOX-798] - Use of .keyExists() can needlessly use memory in requests, suggest StructKeyExists() instead
  • [COLDBOX-799] - Event Handler Bean: Single instance per handler action for major performance improvements
  • [COLDBOX-800] - HandlerService.cfc$newHandler(): declares variables that are never used
  • [COLDBOX-810] - Remove afterInstanceAutowire interceptor in handlerService as afterHandlerCreation is now officially removed.

CacheBox Release Notes

Bugs

  • [CACHEBOX-56] - AbstractCacheProvider.getOrSet(): local var unscoped when checking if null

Add Your Comment

Recent Entries

12 Days of BoxLang - Day 4: TestBox

12 Days of BoxLang - Day 4: TestBox

Today we’re celebrating one of the most exciting new additions to the BoxLang ecosystem:

the TestBox BoxLang CLI Runner — a fast, native way to run your TestBox tests directly through the BoxLang Runtime. ⚡

No server required. No CommandBox needed. Just pure, ultra-fast BoxLang-powered testing from the command lineon Windows, Mac, and Linux.

If you’re building modern applications with BoxLang — web apps, CLIs, serverless functions, Android apps, or OS-level utilities — this new feature gives you a unified, flexible testing workflow you can run anywhere.

Victor Campos
Victor Campos
December 13, 2025
12 days of BoxLang - Day 3: SocketBox!

12 days of BoxLang - Day 3: SocketBox!

As BoxLang continues evolving into a modern, high-performance, JVM-based runtime, real-time communication becomes essential for the applications we all want to build: dashboards, collaboration tools, notifications, live feeds, multiplayer features, and more.

That’s where SocketBox steps in — the WebSocket upgrade listener built to work seamlessly with CommandBox and the BoxLang MiniServer. ⚡

Today, for Day 3, we’re highlighting how SocketBox supercharges BoxLang development by giving you fast, flexible, and framework-agnostic WebSocket capabilities.

Maria Jose Herrera
Maria Jose Herrera
December 12, 2025
12 Days of BoxLang - Day 2: CommandBox

12 Days of BoxLang - Day 2: CommandBox

BoxLang + CommandBox: The Enterprise Engine Behind Your Deployments

For Day 2 of our 12 Days of Christmas series, we’re diving into one of the most powerful parts of the BoxLang ecosystem: CommandBox the defacto enterprise servlet deployment platform for BoxLang.

If BoxLang is the language powering your applications, CommandBox is the engine room behind it all. ⚙️

Victor Campos
Victor Campos
December 11, 2025