We 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