Skip to content
Ian Johnson edited this page Aug 2, 2021 · 37 revisions

7.2.1

  • #283 - Implemented IExportStrategyProviderAttribute to allow for custom strategy attributes
  • #277 - fixed issue where attribute is being processed twice.

7.2.0

  • #266 - Fixed typo in method name GetMemeberType
  • #264 - Added option to do non-rooted singleton dependencies
  • #261 - Adjust AttributeUsage for ExportAttribute
  • #256 - SingletonPerKey disposing per request in Aspnet
  • #255 - Add the ability to prioritize decorators
  • #254 - ExportDecorator signature changed to return configuration object

7.1.1

  • #245 - Change to the activation type returned when exporting <object> constant
  • #241 - fix for GetPropertiesFromObject to return base properties
  • #176 - @uygary completed PR to use nameof through out the code base (thanks!)

7.1.0

  • #230 - fix for Scoped<> where it wasn't working correct in IEnumerable
  • #229 - fix for generic type with complex constraint
  • #228 - add SingletonPerKey lifestyle

7.0.0

  • #218 - fix for using multiple MetadataAttribute on one class
  • #217 - add logo for Grace from @silkfire
  • #216 - throw exception when registering closed implementation as open exports
  • #214 - fix for parameters with default struct values
  • #213 - order of IEnumerable with open and closed exports now are in order of registration (breaking change)
  • #212 - fix for WhatDoIHave not showing keyed exports
  • #209 - Change support for custom LifetimeScope construction (breaking change)
  • #208 - Change default scope provider support (breaking change)
  • #207 - IExportLocatorService inherit IServiceProvider
  • #206 - Asp.Net Core 3.0 support
  • #205 - Add ByKeyed<T> extention

6.4.2

  • #192 - Fix for issue with exported decorators
  • #193 - Add ExportAsKeyed C# extension
  • #194 - Add registration methods for non generic registration.

6.4.1

  • #186 - Fix for issue with PerScopeSingleton, keyed and required = false
  • #185 - Fix for custom wrapped, keyed exports resolved directly from the container
  • #181 - Import Attribute processing by default for constructor parameters

6.4.0

  • #172 - fixed issue where IInjectionScope is not returned when resolved directly from scope
  • #170 - wrong scope used when multiple child scopes used
  • #169 - Add IMissingDependencyExpressionProvider
  • #160 - PR for adding method injection info

6.3.4

  • #159 - Adding support for Source Link
  • #156 - Fix for circular reference with factory.

6.3.3

  • #149 - Fix for decorator application

6.3.2

  • #148 - Fix for bulk registration ByInterface
  • #151 - Fix for race condition in ReflectionService.GetPropertiesFromObject
  • #151 - Fix to locate from context if no dependency found

6.3.1

  • #138 - Fix bug in dynamic constructor resolution when specifying parameters
  • #145 - Fix problem with keyed generic resolution

6.3.0

  • #120 - Add ExportInitialize<T> for cross cutting initialization
  • #119 - Fix ImportAttribute key problem
  • #118 - Fix ImportMembers base properties not being injected
  • #116 - Add ExcludeTypeFromAutoRegistration
  • #115 - Created Grace.Factory to be similar to NInject
  • #113 - Add ExportExpression to allow for more complex registrations
  • #112 - Add DefinesNamedScope to match NInject

6.2.3

  • #111 - Fixes problem with ASP.Net Core 2.0 support

6.2.2

  • #109 - Best matching constructor selection take known values into account
  • #108 - Dynamic constructor selection bug not inspecting correct type
  • #107 - Simplified property injection IL
  • #106 - Add UsingFallbackExpression to result expression
  • #105 - Create generic base strategy for easy strategy extensions
  • #100 - ImmutableLinkedList<T> implement IReadOnlyList<T>
  • #99 - Carrylocate key through wrappers

6.2.1

  • #44 - Adding IfNotRegistered and OnlyIf methods for Export methods
  • #95 - Adding AddModule method for registration block

6.2.0

  • #83 - Support clearing exports from registration block
  • #87 - Strongly typed Metadata support
  • #89 - Deprecate ExportInstance(delegate) methods
  • #90 - Disposal order incorrect for Singleton
  • #91 - Fix for Func<IEnumerable<T>
  • #92 - Lifestyle disposal for Generic exports

6.1.0

  • #74 - Allow null return from factory when not required or default provided
  • #75 - Convert project to vs 2017
  • #76 - Simplifying unique id creation
  • #77 - Add lifestyle support for concrete auto registration
  • #78 - Add support for dynamically picking constructor based on context
  • #79 - Configure constructor selection per export not just per container
  • #80 - Support property injection for more complex scenarios
  • #84 - Bug fix for complex missing export scenario

6.0.1

  • #72 - Generate smaller unique strings
  • #73 - Fix for VS 2017 Android project nuget package

6.0.0

  • #67 - Fixes problem with recursive loop when applying decorator before lifestyle.
  • #68 - Make ImportMember return IExportRegistrationBlock
  • #69 - Handle null from GetAttributes
  • #70 - Add digital signature for assemblies
  • #71 - Add support for exporting and locating by name only no type.

5.1.0

  • #54 - shorten message for recursive exceptions
  • #55 - make property and parameter name lookup case agnostic
  • #56 - Add Inject method to inject properties and methods of constructed objects.
  • #57 - Add TrackDisposableTransient option to container configuration
  • #58 - Add property to ICompiledLifestyle to categorizes lifestyle as transient, scoped, or singleton
  • #59 - Fix typo in method name for ICompiledLifestyle
  • #61 - Add conditions for decorators
  • #62 - Add support for Func<Type,object>
  • #63 - Check IExportLocatorScope for missing dependencies
  • #64 - Add Use method to WithCtorParam interface
  • #65 - Add WithCtorParam for decorator

5.0.0

Change Notes - this release is a major rework/rewrite.