What's New With v5.5.0
We are very excited to bring you ColdBox Platform v5.5.0! This is a minor release packed with a punch of improvements and some cool new features. The major libraries upgraded are ColdBox MVC and WireBox in this release. You can easily update your ColdBox or WireBox installation by using the following CommandBox Commands:
update coldbox
- Update ColdBox Platformupdate logbox
- Update standalone LogBoxupdate wirebox
- Update standalone WireBoxupdate cachebox
- Update standalone CacheBox
Compatibility Notes
If you are using annotations for component aliases you will have to tell WireBox explicitly to process those mappings. As by default, we no longer process mappings on startup.
// Process a single mapping immediately map( name ).process(); // Process all mappings in the mapDiretory() call mapDirectory( packagePath="my.path", process=true ) mapDirectory( "my.path" ).process(); // Map all models in a module via the this.autoProcessModels in the ModuleConfig.cfc this.autoProcessModels = true
Major Updates
Performance
This release is a big performance boost for two areas of operation: modules, and models. The Module Service has been completely revised to make it as fast as possible when registering and activating modules. If you have an extensive usage of modules, you will feel the difference when booting up or re-initing the framework.
The other area is the inspection of models that has been lazy evaluated. This allows for faster bootups and reinits as models are only inspected on demand or when explicitly marked.
More Environment Detection
Our environment functions have now been added to the Framework SuperType and thus all objects in the ColdBox eco-system receive it:
getEnv(), getSystemSetting() and getSystemProperty()
Custom Resource Patterns
As resources have become more mainstream in ColdBox, we now give you the ability to choose the URL pattern you want to attach to the resource. This allows you to create a-la-carte resource patterns and also allow you to nest resources via patterns.
resources( pattern="/site/:siteId/agents", resource="agents" );
ColdBox MVC Release Notes
Bugs
- [COLDBOX-786] - HTMLHelper typo on
getSetting
call viaelixirpath()
- [COLDBOX-788] - Private method in handler is accessible from public ( direct link )
New Features
- [COLDBOX-783] - New module directive:
autoProcessModels
which defaults to false to defer to lazy processing of models - [COLDBOX-789] - Added
getEnv(), getSystemSetting() and getSystemProperty()
to super type for easier environment setting retrievals - [COLDBOX-790] - Added much more logging and info when booting up the Module Service
- [COLDBOX-791] -
buildLink(), relocate()
now will translate raw: to / in URL
with appropriate module entry points thanks to richard herbert - [COLDBOX-792] - Allow nested resources and the ability for custom URL patterns for resources
Improvements
- [COLDBOX-782] - Add TestBox 3 and code coverage to the core
- [COLDBOX-785] - Module service performance optimizations for module activations.
- [COLDBOX-787] - Update RequestContext.cfc
getFullUrl()
to include port number
WireBox Release Notes
New Features
- [WIREBOX-84] - Remove auto processing of all mappings defer to lazy loading
- [WIREBOX-85] -
MapDirectory
new boolean argumentprocess
which defers to false, if true, the mappings will be auto processed - [WIREBOX-86] - New binder method:
process()
if chained from a mapping, it will process the mapping's metadata automatically.
Improvement
- [WIREBOX-87] - AOP debug logging as serialized CFCs which clogs log files
Add Your Comment