RC3 Change log
Below is the change log for the MicroKernel and Windsor.
Release Candidate 3
...
The strong name could be omitted if not in the GAC
- Added checks to handle cycles in dependencies graphs and avoid deadly Stack Overflow Exceptions.
- Fixed IOC-24: "Allow user to provide an attribute which will customize how to inspect properties (PropertiesDependenciesModelInspector)"
Now users can add an 'inspectionBehavior' attribute to the component node that defines
the inspection strategy. Possible values are
- None: No properties inspection should happen
- All: All properties will be inspected and collected (on the class and on the superclasses).
This is the default behavior
- DeclaredOnly: Only properties specified on type are checked (superclasses will be ignored)
- Added overload to ITypeConvertor that accept the current node configuration as well as the type in CanHandleType()
- Change: Better error message when there's an exception
setting up properties
- Fixed IOC-25: Overrides on the configuration should be considered a non-optional dependency
This fix changes a little the MicroKernel behavior. Now if you specify an service override
through external configuration, it will be considered a _non-optional_ dependency
- Uri usage replaced by CustomUri which, differently than MS' Uri class, has the same
behavior on net-1.1, net-2.0 and mono
- EventWiring Facility: now when a publisher is requested, the subscribers
are automatically started.
The side effects are:
- when a subscriber is requested it won't be wired automatically.
- There no much sense in having a subscriber with a lifestyle other than singleton
I'm still evaluating this idea. Sometimes wiring only when the subscriber is requested
might make sense, but supporting both approaches is kinda hard.
- Applied patch by Alex Henderson adding
IWindsorContainer.RemoveChildContainer(IWindsorContainer childContainer)
and IKernel.RemoveChildKernel(IKernel kernel)
- Applied fix by Ahmed. Now defines can be used on properties nodes like
- x
- Now with DictionaryConverter you can specify the keyType and valueType on each entry (kudos to Ahmed)
- xmlinterpreter will throw an exception if a property is not defined but referenced
using #{propertyName} syntax.(Patch from Ahmed)
- XmlProcessor refactored from XmlInterpreter (kudos to Ahmed)
Now PI are also supported (don't forget to document this on the wiki)
- Support for nested nodes on the properties. (kudos to Ahmed)
Example:
Joe
Doe
#{ MyComponentParams }
Will result in
Joe
Doe
- Type converter for kernel components. This allows a usage like this:
- ${keytocomponent1}
- ${keytocomponent2}
- Removed support for MethodMeta on ComponentModel. The design decision here
is to make the facilities interested on it to extend MethodMetaInspector
reading from a specific node.
]]>