Bump Autofac from 6.5.0 to 8.0.0
Bumps Autofac from 6.5.0 to 8.0.0.
Release notes
Sourced from Autofac's releases.
v8.0.0
Breaking Changes
- Removed
netcoreapp3.1
support/testing (#1401).- Converted
ResolveRequest
into areadonly struct
(#1397 - thanks @SergeiPavlov!).Additional Changes
- Added
net8.0
target (#1401).- Replaced use of Moq in tests with NSubstitute (#1390 - thanks @aydjay!).
Full Changelog: https://github.com/autofac/Autofac/compare/v7.1.0...v8.0.0
v7.1.0
What's Changed
- Fix #1388: Re-enabled
RegsiterTypes
filtering. This was an accidental behavior regression where theRegisterTypes
method wouldn't filter out non-registerable types.RegisterType<T>
andRegisterType(Type t)
will now throw when non-registerable types are provided, for examplecontainerBuilder.RegisterType<IInterface>()
(you can't register interfaces - you can register thingsAs<IInterface>
). This used to throw at container build time; now it throws atRegisterType
time and it has a more precise error message so you can handle these issues more proactively.Full Changelog: https://github.com/autofac/Autofac/compare/v7.0.1...v7.1.0
v7.0.1
What's Changed
- Reduced lock contention in
LifetimeScope.CreateSharedInstance
(thanks @botinko)- Optimized
Autofac.Features.OpenGenerics.OpenGenericServiceBinder.TryBindOpenGenericTypedService
(thanks @SergeiPavlov)Full Changelog: https://github.com/autofac/Autofac/compare/v7.0.0...v7.0.1
v7.0.0
Version 7.0.0 is a major increment due to some changes in the target frameworks and some behavioral changes. We summarize these in the documentation, but included here as well:
New Features
- Properties marked
required
will now be injected by default. As part of this, the default property injector usingPropertiesAutowired()
will not inject properties markedrequired
. The documentation has more explanation with examples.- Ability to isolate
AssemblyLoadContext
by lifetime scope. A new method,BeginLoadContextLifetimeScope
, has been added that allows you to create a lifetime scope tied to a specificAssemblyLoadContext
. When the scope is disposed, Autofac will perform a best-effort release of all references to types from that context so the assemblies can be unloaded. The documentation explains this in greater detail.- Documentation links in exception messages. Common Autofac exceptions now include links to our online documentation to help you understand what the exceptions mean and how to troubleshoot them.
Issues and PRs
- Add documentation links to common exceptions by @tillig in https://github.com/autofac/Autofac/pull/1359
- Fix #1360: Unify the "no constructors found" reporting by @tillig in https://github.com/autofac/Autofac/pull/1362
- Add support for required properties by @alistairjevans in https://github.com/autofac/Autofac/pull/1364
- Mark RegisterGeneratedFactory obsolete by @tillig in https://github.com/autofac/Autofac/pull/1366
- Isolate service information computed in child scopes from the parent scope by @alistairjevans in https://github.com/autofac/Autofac/pull/1350
Full Changelog: https://github.com/autofac/Autofac/compare/v6.5.0...v7.0.0
Breaking Changes
... (truncated)
Commits
-
b843130
Use released .NET 8. -
a518a48
Merge pull request #1397 from SergeiPavlov/struct_ResolveRequest -
e61a651
Merge pull request #1401 from autofac/feature/net8 -
7a25198
Major version bump for breaking changes. -
095a0c3
Remove unrelevant null-checking test -
bbdcda7
Merge branch 'develop' into struct_ResolveRequest -
0b78ed3
Breaking: DRE is no longer serializable -
334ae01
Analyzer changes. -
7f43baa
Suppress rules we can't follow. -
70cfee2
Spelling: netcoreapp. - Additional commits viewable in compare view