Blog

ColdBox 7.1.0 Released

Luis Majano August 03, 2023

Spread the word

Luis Majano

August 03, 2023

Spread the word


Share your thoughts

ColdBox, the popular ColdFusion (CFML) development platform, has released version 7.1, bringing exciting new features, bug fixes, and improvements to further empower developers. This release focuses on enhancing productivity, improving debugging capabilities, and ensuring more reliable and efficient application development. In this blog post, we will explore the key highlights of ColdBox 7.1 and how they can benefit developers in their day-to-day coding activities. You can read the in-depth release notes here: https://coldbox.ortusbooks.com/readme/release-history/whats-new-with-7.1.0

Update

The best way to update is using CommandBox:

box update coldbox

That's it! You are up to date now!

Major Highlights

ColdBox 7.1 introduces several new features that expand the capabilities of the framework and facilitate better development practices:

Scheduled Tasks Debugging

You can now add a debug argument to your task definitions, and your console will add tons of debugging for your tasks:

task( name : "My Task", debug : true )

toRedirectTo() Matcher

You can now use this matcher to test relocations in a nice fluent expectation:

expect( event ).toRedirectTo( "main.index" )

REST on{errorType}Exception() Convention

Thanks to our very own Gavin Pickin you can now create exception handlers in your REST Handlers that follow the on{type}Exception() convention and you can listen to specific error type exceptions:

function onTypeMismatchException( event, rc, prc )

New Features

  1. COLDBOX-1229: Added debug argument to ScheduleExecutor and Scheduler when creating tasks for consistency. This feature enables developers to add debug information to the ScheduleExecutor and Scheduler components, providing valuable insights during task creation.

  2. COLDBOX-1235: New StringUtil.prettySQL method for usage in debugging and whoops reports. This handy addition simplifies SQL debugging and troubleshooting by formatting SQL queries in a readable manner.

  3. COLDBOX-1238: New testing matcher: toRedirectTo for easier testing against relocations. With this new testing matcher, developers can now perform easier and more precise testing of redirections in their applications.

  4. COLDBOX-1239: New REST convention for custom error handlers: on{errorType}Exception(). This feature allows developers to define custom error handlers specifically for RESTful services, improving error handling and providing better user experiences.

WireBox Updates

WireBox, the powerful dependency injection framework integrated into ColdBox, also receives important updates in version 7.1:

  1. WIREBOX-149: toWebservice() is now deprecated. Developers are encouraged to migrate away from toWebservice() and use modern approaches for better maintainability and compatibility.

  2. WIREBOX-147: Improve debug logging to not send the full memento on several debug operations. This improvement optimizes debug logging operations within WireBox, providing developers with cleaner and more concise debug information.

Improvements

ColdBox 7.1 includes various improvements that refine existing functionalities and enrich the overall development experience:

  1. COLDBOX-1041: Logging category in ColdBox scheduler is generic. This improvement enhances logging in the ColdBox scheduler, making it more generic and easier to configure.

  2. COLDBOX-1231: Improve RestHandler Exception handler with on#ExceptionType#Exception() convention. By introducing this convention, error handling for RESTful services becomes more flexible and customizable.

  3. COLDBOX-1234: Account for null or empty incoming JSON to prettyjson output. This enhancement ensures that the prettyjson output handles null or empty JSON data gracefully, avoiding potential issues during debugging.

  4. COLDBOX-1236: Incorporate appName into the appHash to give more uniqueness to locks internally. This change enhances internal locking mechanisms, improving performance and reliability.

Bug Fixes

With every release, the ColdBox team strives to address known issues, and version 7.1 is no exception. Some of the critical bug fixes included in this release are:

  1. COLDBOX-1233: Exception bean can't cast "i" to a number value. This fix ensures smoother handling of data type conversions, avoiding casting errors during processing.

  2. WIREBOX-148: Several AOP and Internal WireBox methods not excluded from delegations. This bug fix improves the reliability of WireBox by addressing issues related to Aspect-Oriented Programming (AOP) and internal method handling.

Conclusion

ColdBox 7.1 represents a significant step forward for CFML developers, offering powerful new features, critical bug fixes, and enhancements that streamline development workflows and boost productivity. Whether you are a seasoned ColdBox user or just getting started, version 7.1 provides a more reliable and efficient platform for building web applications.

Always remember to fork and start: https://github.com/coldbox/coldbox-platform

To experience the latest ColdBox release, head over to their official website and check out the updated documentation. Happy coding!

Add Your Comment

Recent Entries

Partner with BoxLang and Ortus at Into the Box 2025: Empowering the Future of Modern Software Development!

Partner with BoxLang and Ortus at Into the Box 2025: Empowering the Future of Modern Software Development!

At Ortus Solutions, we’ve always been at the forefront of innovation in the ColdFusion ecosystem. From pioneering modern ColdFusion practices to developing cutting-edge tools and frameworks, we’ve been passionate to help and sup[port the community into shaping the future of web development.That’s why we decided to build BoxLang, our new JVM programming language that not only builds on the strengths of ColdFusion but takes modern software development to the next level.

Maria Jose Herrera
Maria Jose Herrera
December 23, 2024
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