Releases: dadhi/DryIoc
Releases · dadhi/DryIoc
v4.0.3
DryIoc v4.0.3 Bug-fix version
DryIoc.Microsoft.DepenencyInjection v3.0.3
- removed: conflicting support for ASP .Net Core 2.1 and moving it into the separate package DryIoc.Microsoft.DependencyInjection.AspNetCore2_1
DryIoc.Microsoft.DependencyInjection.AspNetCore2_1 v3.0.3
- removing conflicting support for ASP .Net Core 2.1 and moving it into the separate package DryIoc.Microsoft.DependencyInjection.AspNetCore2_1
v4.0.2
v4.0.1
DryIoc v4.0.1 Bug-fix version
- added: #95: Serializable ContainerException for supported targets
- fixed: #85 To avoid issues with code analyzers when this file is used in NuGet
- fixed: #97: Resolving last registration from multiple default services bug
- fixed: #89: DryIoC.CommonServiceLocator.dll package out-of-date link
DryIoc.Microsoft.DependencyInjection v3.0.1 Bug-fix version
- fixed: #97: Resolving last registration from multiple default services bug
v4.0.0
v4.0.0 Release notes
Highlights
- DryIoc.dll and all extensions are strongly-signed.
- Greatly improved performance and decreased memory allocations for bootstrapping and first-time resolution, as well as for the rest of operations. The results were measured on realistic mid-sized object graph with ~40 dependencies and mixed registration types.
IResolver
is directly implementingIServiceProvider
for supported platformsUseInstance
is split intoRegisterInstance
andUse
methods #78- The docs now are generated from
.cs
files in DryIoc.Docs project with up-to-date runnable examples using CsToMd project.
Features
- added: #4 Rule for Func and Lazy to be resolved even without requested service registered
- added: #8 Parity of registration methods between IContainer and IRegistrator (RegisterMapping and RegisterPlaceholder are available in IRegistrator)
- added: #9 RegisterMany should indicate if no registration was made
- added: #11 Resolution root bound dependency expression de-duplication
- added: #17 Rules.DefaultRegistrationServiceKey enhancement
- added: #20 Enhance error message with current container Rules info
- added: #32 Integrate MediatR like middleware directly to DryIoc #32
- added: #39 For troubleshooting purposes add ability to opt-out FastExpressionCompiler
- Added: #45 Consider expression interpretation to speed-up first time resolution
- added: #78 Split UseInstance two roles into separate RegisterInstance and Use
- added: DryIoc IResolver now directly implements IServiceProvider - no need for BuildServiceProvider anymore
- added: DryIoc.Rules.Rules.MicrosoftDependencyInjectionRules - the set of rules for MS.DI available directly in DryIoc
- added: FactoryInfo.Of(MemberInfo factoryMember, object factoryInstance)
- added: Explicit Factory.RegistrationOrder and adapted its usage for open-generics
- added: IRegistrator.GetRegisteredFactories
- added: FactoryType to Registrator.RegisterMapping
- added: AsyncExecutionFlowScopeContext.Default member
- added: Support for FEC v2.0
Fixes
- fixed: #6 Open generic singleton service registration that satisfies multiple interfaces
- fixed: #7 Context-based injection
- fixed: #16 AutoConcreteTypeResolution should not consider a primitive type
- fixed: #25 Decorator with serviceKey throws exception which gives invalid advice on how to fix the issue for the most common reason to use the servicekey
- fixed: #26 Speed Optimization for short living applications
- fixed: #27 DryIoc cold start performance
- fixed: #28 FastExpressionCompiler is not used in Net Standard 1.3, 2.0 packages and not used in .Net Core
- fixed: #29 Resolve caches object[] args values
- fixed: #33 Memory leak with ResolveManyBehavior.AzLazyEnumerable?
- fixed: #41 ErrorCode: RegisteredFactoryMethodResultTypesIsNotAssignableToImplementationType
- fixed: #46 Operation is not supported on this platform exception on Xamarin iOS
- fixed: #61 Rules.SelectLastRegisteredFactory() does not account for OpenGenerics
- fixed: #63 Func wrapper resolving #63
- fixed: #75 Scoped call to Resolve() with args seems to leak memory
- fixed: BB-593 Add auto-generated tag to PCL FEC
- fixed: BB-594 Conflicting type is not working in .NET Core 2.1
- fixed: BB-596 The problem was in non-public service type- fixed: RegisterMapping for open-generic service type
- fixed: Using facadeKey in CreateFacade