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 Platform
update logbox- Update standalone LogBox
update wirebox- Update standalone WireBox
update cachebox- Update standalone CacheBox
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
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.
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()
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-786] - HTMLHelper typo on
- [COLDBOX-788] - Private method in handler is accessible from public ( direct link )
- [COLDBOX-783] - New module directive:
autoProcessModelswhich 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 URLwith appropriate module entry points thanks to richard herbert
- [COLDBOX-792] - Allow nested resources and the ability for custom URL patterns for resources
- [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-84] - Remove auto processing of all mappings defer to lazy loading
- [WIREBOX-85] -
MapDirectorynew boolean argument
processwhich 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.
- [WIREBOX-87] - AOP debug logging as serialized CFCs which clogs log files