Releases: cfchris/cfc_loader
BugFix: Correctly handle properties that override type of extended CFC
It was pointed out that a CFC that extended a base CFC was being populated with the property type specified in the base CFC. This library should prefer the type specified at the top level (as CF does).
This update fixes that.
Feature: Skip GetMetaData()
This is a backwards compatible addition of a feature to counter an Adobe ColdFusion bug (https://tracker.adobe.com/#/view/CF-4206904).
If you optionally pass in cfcName in addition to the CFC, the main loader will not use GetMetaData(cfc) to get the component name.
Most people will not need this. If you are not getting NPE errors around MetaData, you do not need this update.
BugFix: Coerce truthy values to booleans
CF will let you cfc.setIsFoo(1) and then SerializeJson() to "IsFoo": 1. That is not desirable in stricter languages.
This update forces truthy values to be true or false.
Initial Release
cfc_loader does one specific thing (load data into components). The requirements are simple. Make data components with accessors=true and define properties with appropriate types. Load them with loader.load(new Thing(), data). It does it fast and it does it well.
This version of the library is in production, under heavy load on our subscription based software platform. I consider it production ready.