ACF defaults are not set in the CFC if they are created from CreateObject(). They are only set if they are instantiated with the 'new' operator.
The problem to using `new` is that WireBox cannot call the constructor until it discovers the constructor instances. Therefore it leverages createobject first and then calls the constructor.
Can you explain what you mean ? Are you talking about a scenario in which a developer tells WireBox to use a custom name like "myAwesomeInit()" instead of the default method called "init()"?
If so, I'd be interested if even a single developer has ever used that feature. Even if so, would it be likely that they would also have a method called init() that they didn't want called by default? I think we should be guiding developers to the "init" standard and away from the legacy weirdness of createObject().
There are situations where I do not want the constructor called first.