Skip to content

5.0.0-beta001

Pre-release
Pre-release
Compare
Choose a tag to compare
@jonorossi jonorossi released this 26 Oct 04:47
· 172 commits to master since this release
09751a4

Enhancements

  • Upgraded to Castle.Core 4.2.0 to 4.3.1 (@fir3pho3nixx, #413)
  • Created Castle.Facilities.AspNetCore facility to support ASP.NET Core web applications on .NET Core and .NET Framework (@fir3pho3nixx, #120)
  • Created Castle.Facilities.AspNet.Mvc facility to support ASP.NET MVC web applications on .NET Framework (@fir3pho3nixx, #283)
  • Created Castle.Facilities.AspNet.WebApi facility to support ASP.NET Web API IIS and self hosted applications on .NET Framework (@fir3pho3nixx, #283)
  • Added XML documentation to BeginScope and RequireScope lifetime extensions (@jonorossi)
  • Upgraded build to use NUnit Adapters (@fir3pho3nixx, #243)
  • Make formatting of type names with TypeUtil.ToCSharpString (and hence in diagnostic messages) resemble C# more closely (@stakx, #404, #406)

Breaking Changes

  • Built-in System.Web support has been moved to the new Castle.Facilities.AspNet.SystemWeb facility (@fir3pho3nixx, #283)
  • Removed obsolete ActAs, Parameters, Properties and ServiceOverrides methods from component registration (@fir3pho3nixx, #338)
  • Removed obsolete indexer, AddComponent*, AddFacility and Resolve methods from IKernel and IWindsorContainer (@fir3pho3nixx, #338)
  • Facility XML configuration specifying an 'id' attribute will now throw, it has been ignored since v3.0 (@fir3pho3nixx, #338)
  • Removed deprecated classes AllTypes and AllTypesOf (@fir3pho3nixx, #338)
  • Removed deprecated BasedOn methods that reset registrations when fluently chained (@fir3pho3nixx, #338)
  • Removed deprecated member LifestyleHandlerType on CustomLifestyleAttribute (@fir3pho3nixx, #338)
  • Removed Event Wiring, Factory Support and Synchronize facilities (@jonorossi, #403)
  • Arguments class and Resolve overloads refactor (@fir3pho3nixx, @jonorossi, #444)
    • Removed WindsorContainer.Resolve(object/IDictionary) overloads in favour of new WindsorContainer.Resolve(Arguments)
    • Reworked Arguments class, including to no longer implement IDictionary
    • Removed IArgumentsComparer[] constructors from Arguments
    • Added WindsorContainer.Resolve(IEnumerable<KeyValuePair<string, object>>) extension methods
    • Changed CreationContext.AdditionalArguments to use Arguments instead of IDictionary
    • Replaced ComponentDependencyRegistrationExtensions(Insert, InsertAnonymous, InsertTyped, InsertTypedCollection) with Add, AddNamed and AddTyped Arguments instance methods
    • Changed ComponentRegistration.DependsOn and ComponentRegistration.DynamicParameters to use Arguments via DynamicParametersDelegate
    • Added ComponentRegistration.DependsOn(Arguments) overload
    • Changed ComponentModel CustomDependencies and ExtendedProperties to use Arguments instead of IDictionary
    • Changed IComponentModelBuilder.BuildModel to use Arguments instead of IDictionary
    • Changed ILazyComponentLoader.Load to use Arguments instead of IDictionary