openwallet-foundation-labs / wallet-framework-dotnet

Apache License 2.0
19 stars 5 forks source link

Bump Autofac.Extensions.DependencyInjection from 6.0.0 to 10.0.0 in /src #179

Closed dependabot[bot] closed 1 week ago

dependabot[bot] commented 2 weeks ago

Bumps Autofac.Extensions.DependencyInjection from 6.0.0 to 10.0.0.

Release notes

Sourced from Autofac.Extensions.DependencyInjection's releases.

v10.0.0

Breaking Changes

All instance dependencies are now considered ExternallyOwned which means if you register an object instance in the dependency injection container through this package, when you dispose of the container it will not dispose of the provided instance. This is different than default Autofac behavior. Autofac normally assumes control of registered instances, where the Microsoft DI container does not. This change only affects instances registered using the Microsoft syntax and then populated into Autofac; it does not change the underlying Autofac container.

public class Startup
{
  public void ConfigureServices(IServiceCollection services)
  {
      // The instance `item` here WILL NOT be disposed when the container is disposed
      // because it's registered using Microsoft syntax and will be imported into Autofac.
      var item = new MyDisposableItem();
      services.AddSingleton(item);
  }

public void ConfigureContainer(ContainerBuilder builder)
{
// The instance item here WILL be disposed when the container is disposed
// because it's registered using Autofac syntax directly with Autofac.
var item = new MyDisposableItem();
builder.RegisterInstance(item);
}
}

Additional Changes

  • Optimization for reflection-activated components to avoid adding a parameter in the resolve path if possible. (@​alistairjevans #119)
  • Updated Autofac dependency to 8.1.0.

Full Changelog: https://github.com/autofac/Autofac.Extensions.DependencyInjection/compare/v9.0.0...v10.0.0

v9.0.0

Breaking Changes

Additional Changes

  • Added keyed service support (IKeyedServiceProvider, IServiceProviderIsKeyedService, support for AnyKey) to match Microsoft.Extensions.DependencyInjection feature updates for .NET 8. (#115)

Full Changelog: https://github.com/autofac/Autofac.Extensions.DependencyInjection/compare/v8.0.0...v9.0.0

v8.0.0

BREAKING CHANGE: IServiceScopeFactory is now a singleton and child scopes are flat, not hierarchical. Based on #83 and dotnet/runtime#67391, the IServiceScopeFactory is now registered as a singleton. Any scope you create from it is a peer, not a hierarchy like you might see in core Autofac. Even if you create a scope from a scope, it'll use the singleton factory under the covers and all scopes will be peers.

If you are using scopes to isolate units of work, be aware that this breaks the parent/child lifetime scope relationship.

... (truncated)

Commits
  • f2170d3 Dispose tracker in tests before it loses scope.
  • 344c14b Update all dependencies/build frameworks.
  • eb20702 Merge pull request #120 from autofac/external-dependency-switch
  • ecec468 Bump major version.
  • 4110c93 Switch singletons to be externally owned.
  • dc03f10 Merge pull request #119 from autofac/bug/keyed-middleware-performance
  • a690c3c Add additional test, and comments for the delegate perf choice.
  • 8e83d8c Consider additional activator types.
  • fa4b37e Reword a note.
  • ed2188e Simplify back to a single middleware, added at component registration level r...
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 1 week ago

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.