Releases: autofac/Autofac.Extras.DynamicProxy
Releases · autofac/Autofac.Extras.DynamicProxy
Release list
v8.0.1
v8.0.0
Breaking Changes
- Dropped support for
net6.0. This target framework has reached end of life and is no longer built. Consumers must targetnet8.0or later (or one of the supportednetstandardtargets). - Minimum Autofac version raised to 9.x. The Autofac dependency moved from
6.5.0to9.3.0. Projects must be compatible with Autofac 9 to upgrade.
Other Changes
- Conditional interception via a type predicate (#42).
EnableClassInterceptorsandEnableInterfaceInterceptorsnow accept an optionalFunc<Type, bool> shouldInterceptpredicate so interception can be applied selectively based on the implementation type. This is especially useful with assembly scanning, where only some scanned types should be intercepted. For interface interception the predicate is evaluated at resolve time against the resolved implementation type; for class interception it is evaluated per type at registration. All new overloads are additive — existing signatures are unchanged, preserving binary compatibility. - Interface interception now works with open generic assembly scanning (#27). Previously, scanning an assembly with
AsClosedTypesOfand enabling interface interception could throw because the concrete type registered alongside the interface failed the interface-only check. Interception now validates only the service actually being resolved. - Added support for
net10.0andnet8.0; retained support fornetstandard2.1andnetstandard2.0. - Updated Castle.Core from
5.1.1to5.2.1. - Known issue: Using
[KeyFilter]with an enum key together with class interception does not work, because Castle DynamicProxy reproduces the enum attribute argument as its underlying integer type, so the key no longer matches the registered keyed service (upstream castleproject/Core#748). Workarounds: use a string key, or use interface interception instead of class interception (#56).
v7.1.0
v7.0.0
What's Changed
- Update Castle.Core to v5.1.1 (thanks @sstassen-wowcorp!)
- Enabled nullable reference type annotations.
Full Changelog: v6.0.1...v7.0.0
v6.0.1
What's Changed
- Update the dependency on Autofac to version 6.2.0 by @Dmitrii-Naumov in #44
- Distributing symbols as .snupkg instead of embedded in the .nupkg. Add https://symbols.nuget.org/download/symbols to your list of symbol servers.
New Contributors
- @Dmitrii-Naumov made their first contribution in #44
Full Changelog: v6.0.0...v6.0.1
v6.0.0
This release is an update for compatibility with Autofac 6.0.0. The Autofac dependency has been updated to require 6.0.0 or later. There are some breaking changes in 6.0.0 - see the Autofac release notes for more information.
- Fix #40 -
PropertiesAutowirednot working whenEnableInterfaceInterceptorsandAllowCircularDependencies - Removed
net461target framework - this also removes the ability to intercept transparent proxies (WCF, .NET Remoting) because those are classic .NET constructs. - Autofac minimum bumped to
6.0.0
v5.0.0
This release is an update for compatibility with Autofac 5.0.0 and requires that new version. Autofac 5.0.0 does have some breaking changes - see the Autofac release notes for more information.
- No longer targeting
net45ornetstandard1.3 - New targets for
net461,netstandard2.0,netstandard2.1 - Minimum Autofac 5.1.0.
v4.5.0
v4.4.0
Updated the Castle.Core minimum version to 4.2.1 due to the new "slow-assembly-versioning" approach taken by Castle.Core. See the "Known Issues" section of the Autofac interceptors doc for additional info.