Blog

ColdBox Platform v3.7.0 Released!

Luis Majano July 10, 2013

Spread the word

Luis Majano

July 10, 2013

Spread the word


Share your thoughts

logoWe are proud to announce ColdBox Platform release version 3.7.0 and ColdBox DevBox 2.4. This is an important release that addresses many important issues, but also introduces some great enhancements. There are no compatibility updates needed and here are our "What's New" guideline:

This update includes updates to all of our major internal libraries as well (blog posts coming as well):

The most considerable new features in this release are done in the areas of the HTML helper and generation, RESTFul services, rendering data, ORM relationship compositions via population, i18n enhancements and integration testing enhancements.

Bugs Squashed

  • [COLDBOX-130] - Error in MethodValidator.cfc when it recives a null from an orm relationship.
  • [COLDBOX-135] - Usage of parent factories overrides local adapter in the ColdBox IOC bridge
  • [COLDBOX-143] - InterceptorService in compatible with ACF 8
  • [COLDBOX-163] - "Unique" missing from validValidators list in ValidationManager
  • [COLDBOX-170] - The location argument in the event.renderData() method was not being passed dynamically but as a string.
  • [COLDBOX-180] - Bug when inflating relationships with population, getRelationalMetadata should not bring back non-relational columns

Improvements

  • [COLDBOX-133] - Allow struct arguments to all HTML elements so it can do KEY-XXX elements for you within the tag
  • [COLDBOX-138] - Ability to choose your own rendering template for the core MessageBox
  • [COLDBOX-141] - Allow {placeHolder} replacements for custom messages
  • [COLDBOX-144] - Update all application templates to new versions and standards
  • [COLDBOX-149] - Allow message placeholder replacements with getResource()
  • [COLDBOX-153] - Validation "required" doesn't work for complex objects.
  • [COLDBOX-157] - BugReport.cfm assumes form values are all simple
  • [COLDBOX-161] - ORM Relationship compositions and null support in object populators
  • [COLDBOX-167] - Make non-inhertance approach the default for application templates
  • [COLDBOX-172] - Lite Sample app doesn't escape HTML in error message.
  • [COLDBOX-173] - BaseTestCase new method: getMockController() that returns a mocked controller object

New Features

  • [COLDBOX-26] - allow the definition of security rules as a JSON file
  • [COLDBOX-146] - Ability to override messagebox template via renderMessage() and renderit() methods, 'template' arg
  • [COLDBOX-148] - New HTML 5 Field shortcuts: urlfield, emailfield
  • [COLDBOX-150] - Add group and label wrappers to HTMLHelper to allow for wrapping of controls as such is done with Bootstrap
  • [COLDBOX-151] - All module configuration objects now are decorated in the variables scope with "wirebox,logbox,cachebox"
  • [COLDBOX-164] - Ability to route responses inline via addRoute() with new parameters: response, statusCode and statusText
  • [COLDBOX-165] - addRoute() enhance to support a new argument 'condition' which can be a closure or UDF that MUSt return boolean as a secondary check on pattern checks. So pattern must match and condition must execute and validate
  • [COLDBOX-166] - Update query sim to do queryToArrayOfStructures thanks to Winston Yee!
  • [COLDBOX-168] - Ability to generate ANY tag via HTML helper as onMissingMethod calls: h2("hi"), p("hello"), div("what up")
  • [COLDBOX-169] - Create new script only template
  • [COLDBOX-171] - All interceptors now receive a third "buffer" argument which is a reference to a request buffer that can produce elegant output if needed.
  • [COLDBOX-174] - New "formats" and "formatsView" argument to renderdata so it can automatically marshall and setup a request for rendering with the passed in formats
  • [COLDBOX-178] - New Testing Decorator: ORMTransactionRollback that will automatically transaction and rollback your test methods using ColdBox ORM Services
  • [COLDBOX-179] - Integration testing execute() method now can render the results of the request by passing *renderResults=true* as an argument. This will create a cbox_rendered_content variable in the RC for you to assert the renderings

Thanks for always supporting us!

Resources:

Add Your Comment

Recent Entries

BX-AI 1.2 Released: Claude 4 Support, New Tooling API, CFML Compatibility & More!

BX-AI 1.2 Released: Claude 4 Support, New Tooling API, CFML Compatibility & More!

We’re excited to announce the release of BoxLang AI v1.2, a major update to the BoxLang AI module that powers intelligent applications with a unified AI abstraction layer across even more providers: OpenAI, Claude, Grok, Gemini, and more. This release packs new features for providers, tools, debugging, and customization — making it easier than ever to build multi-runtime, AI-driven BoxLang and CFML applications.

Luis Majano
Luis Majano
June 19, 2025
Ortus Solutions invited at America Digital 2025

Ortus Solutions invited at America Digital 2025

Our participation is more than a presence, it is a commitment to represent El Salvador’s growing influence in the global tech ecosystem and to inspire others to embrace modern software practices.

This invitation is a recognition of our contributions to open source and a reminder of the importance of building with purpose. Whether through BoxLang, ColdBox, or any of our other tools, our focus remains the same: to empower developers, elevate teams, and enable the future of digital transformation.

Maria Jose Herrera
Maria Jose Herrera
June 18, 2025
Introducing the BoxLang Version Manager!

Introducing the BoxLang Version Manager!

We're excited to announce the release of BVM (BoxLang Version Manager), a powerful new tool that makes managing multiple BoxLang installations effortless across Mac, Linux, and Windows Subsystem for Linux (WSL). Whether you're a BoxLang developer working on multiple projects or testing across different versions, BVM is designed to streamline your workflow.

Luis Majano
Luis Majano
June 17, 2025