Skip to content

4.3.0

Compare
Choose a tag to compare
@jonorossi jonorossi released this 06 Jun 15:08
· 444 commits to master since this release
38acf78

Enhancements

  • Added .NET Standard/.NET Core support for NLog (@snakefoot, #200)
  • Added .NET Standard/.NET Core support for log4net (@snakefoot, #201)
  • DynamicProxy supported C# in parameter modifiers only on the .NET Framework up until now. Adding .NET Standard 1.5 as an additional target to the NuGet package makes them work on .NET Core, too (@stakx, #339)
  • Replicate custom attributes on constructor parameters in the generated proxy type constructors to fulfill introspection of constructors. This does not change the proxying behavior. (@stakx, #341)
  • Improve performance of InvocationHelper cache lookups (@tangdf, #358)
  • Improve fidelity of default value replication of optional parameters to fulfill inspection of the generated proxies. This does not change the proxying behavior. (@stakx, #356)
  • Improve cache performance of MethodFinder.GetAllInstanceMethods (@tangdf, #357)

Bugfixes

  • Fix Castle.Services.Logging.Log4netIntegration assembly file name casing which breaks on Linux (@beginor, #324)
  • Fix Castle.DynamicProxy.Generators.AttributesToAvoidReplicating not being thread safe (InvalidOperationException "Collection was modified; enumeration operation may not execute.") (@BrunoJuchli, #334)
  • Fix TraceLoggerFactory to allow specifying the default logger level (@acjh, #342)
  • Ensure that DynamicProxy doesn't create invalid dynamic assemblies when proxying types from non-strong-named assemblies (@stakx, #327)
  • Fix interceptor selectors being passed System.RuntimeType for class proxies instead of the target type (@stakx, #359)
  • Replace NullReferenceException with descriptive one thrown when interceptors swallow exceptions and cause a null value type to be returned (@jonorossi, #85)