Skip to content

4.4.0

Compare
Choose a tag to compare
@jonorossi jonorossi released this 05 Apr 01:48
· 338 commits to master since this release
f0626e2

Enhancements

  • Added trace logging level below Debug; maps to Trace in log4net/NLog, and Verbose in Serilog (@pi3k14, #404)
  • Recognize read-only parameters by the In modreq (@zvirja, #406)
  • DictionaryAdapter: Exposed GetAdapter overloads with NameValueCollection parameter in .NET Standard (@rzontar, #423)
  • Ability to add delegate mixins to proxies using ProxyGenerationOptions.AddDelegate[Type]Mixin. You can bind to the mixed-in Invoke methods on the proxy using ProxyUtil.CreateDelegateToMixin. (@stakx, #436)
  • New IInvocation.CaptureProceedInfo() method to enable better implementations of asynchronous interceptors (@stakx, #439)

Deprecations

  • The API surrounding Lock has been deprecated. This consists of the members listed below. Consider using the Base Class Library's System.Threading.ReaderWriterLockSlim instead. (@stakx, #391)
    • Castle.Core.Internal.Lock (class)
    • Castle.Core.Internal.ILockHolder (interface)
    • Castle.Core.Internal.IUpgradeableLockHolder (interface)
  • You should no longer manually emit types into DynamicProxy's dynamic assembly. For this reason, the following member has been deprecated. (@stakx, #445)
    • Castle.DynamicProxy.ModuleScope.DefineType (method)
  • The proxy type cache in ModuleScope should no longer be accessed directly. For this reason, the members listed below have been deprecated. (@stakx, #391)
    • Castle.DynamicProxy.ModuleScope.Lock (property)
    • Castle.DynamicProxy.ModuleScope.GetFromCache (method)
    • Castle.DynamicProxy.ModuleScope.RegisterInCache (method)
    • Castle.DynamicProxy.Generators.BaseProxyGenerator.AddToCache (method)
    • Castle.DynamicProxy.Generators.BaseProxyGenerator.GetFromCache (method)
    • Castle.DynamicProxy.Generators.CacheKey (class)
    • Castle.DynamicProxy.Serialization.CacheMappingsAttribute.ApplyTo (method)
    • Castle.DynamicProxy.Serialization.CacheMappingsAttribute.GetDeserializedMappings (method)