Skip to content

Releases: AutoMapper/AutoMapper

8.1.1

03 Jun 18:28
94bd958
Compare
Choose a tag to compare

As part of this release we had 10 issues closed.

Improvements

  • #3102 Deprecate CreateMissingTypeMaps and change the default to false
  • #3082 Deprecate the static mapper
  • #3101 Validate all member maps, not only the property maps
  • #3096 Type.EmptyTypes instead of new Type[0]
  • #3050 Enabled multiple usage of AutoMapAttribute

Bugs

  • #3098 IncludeMembers with Include
  • #3072 Revert a recent change to Include
  • #3061 Null check
  • #3060 Check for extension methods
  • #3056 Resolve can create new maps

Where to get it

You can download this release from nuget

8.1.0

25 Apr 20:56
d1c77a4
Compare
Choose a tag to compare

As part of this release we had 31 issues closed.

New feature: attribute-based maps

Bugs

  • #3040 Match members by name
  • #3038 ForAllOtherMembers rewrites mapping of properties.
  • #3021 Checking collections for null is not allowed in EF6
  • #3020 fixed enum values caseinsensitivity bug
  • #2977 Skip generic mappings when precompiling
  • #2967 Handle redirected properties in the let clause
  • #2927 Generics with untyped MapFrom
  • #2902 Validation fails despite a value resolver being configured
  • #2901 A value converter/resolver always returns a value of the destination …
  • #2887 A constructor parameter with no name won't match anything

Improvements/Features

  • #3041 Refactor feature extensions
  • #3030 Features cleanup
  • #3004 Obsolete Profile.CreateMissingTypeMaps
  • #3003 IncludeMembers with MemberList.Source validation
  • #3001 Respect PathMappings in unmapped property names list
  • #2997 Dropping value tuples.
  • #2981 AutoMap attribute configuration options
  • #2978 AutoMap attribute configuration options
  • #2972 Include members
  • #2969 Consolidate ProjectTo parameters handling
  • #2960 Add support to specify ShouldMapMethod
  • #2952 Added AddProfiles method that takes an IEnumerable
  • #2944 Attribute map configuration
  • #2940 Flow resolution context to nested mappings
  • #2938 Assume single automap attribute
  • #2936 Support configuring attribute maps with additional properties
  • #2933 Attributes to define a type map configuration
  • #2930 Support creating maps via attributes
  • #2928 Set UseDestinationValue for readonly members
  • #2895 Throw a detailed exception when sourceExpression is null in MapFrom.
  • #2892 Added methods BeforeMap and AfterMap for IMappingExpression with ResolutionContext

Where to get it

You can download this release from nuget

8.0.0

17 Nov 14:17
af60a49
Compare
Choose a tag to compare

As part of this release we had 45 issues closed.

Bugs

  • #2746 Check for generic instances of included maps
  • #2742 IncludeBase doesn't work with a generic map
  • #2741 fix PropertiesWithAnInaccessibleSetter
  • #2740 IgnoreAllPropertiesWithAnInaccessibleSetter not working with base classes

Improvements/Features

  • #2874 [Simplify include base with IncludeAllDerived](http://docs.automapper.org/en/stable/Mapping-inheritance.html?highlight=includeallderived
  • #2873 Read only dictionaries support
  • #2867 Update Dependency-injection.md
  • #2866 Added IMapper.ProjectTo
  • #2859 Generic maps validation
  • #2857 IMapper.ProjectTo
  • #2850 Added example for Castle Windsor
  • #2849 Validate closed generic maps
  • #2848 Closed generic maps validation
  • #2846 ForPath works only with Map
  • #2844 Dynamic child maps validation
  • #2840 Xml docs
  • #2838 Consider ISet as a collection type when mapping null
  • #2834 Remove the symbols package
  • #2827 Rename ISourceMemberConfigurationExpression.Ignore to DoNotValidate
  • #2826 Replace all .DestinationMember.Name with .DestinationName and revert …
  • #2820 Contextual exceptions for path maps
  • #2817 Path property map refactor
  • #2814 Set ignored in the property map constructed from a path map
  • #2813 Mapping with ForPath causes StackOverflowException
  • #2809 Consolidate ResolveUsing to MapFrom
  • #2808 Consolidate construct using
  • #2807 Consolidating ProjectUsing to ConvertUsing
  • #2806 Value converters
  • #2804 Drop netstandard13
  • #2800 fixed whitespace
  • #2795 Remove ConstructProjectionUsing
  • #2794 Support readonly collection types
  • #2790 ProxyGenerator: The fully qualified type name must be less than 1,024 characters.
  • #2780 Remove Substitute
  • #2778 AssertConfigurationIsValid(profileName) should throw if name does not exist
  • #2776 Proposal: Kill Substitute
  • #2774 Update Value-transformers.md
  • #2764 Open generic and destination type redirect not working
  • #2751 System.ValueTuple is included from 4.7 on
  • #2728 Allow PreCondition to modify destination object.
  • #2727 Provide the destination object in a PreCondition overload
  • #2698 Implement ShouldUseConstructor
  • #2691 Limit which constructors can be used
  • #2684 Drop netstandard1.3 support
  • #2628 Simplify inclusion of base mappings

Where to get it

You can download this release from nuget

7.0.1

18 Jun 13:04
Compare
Choose a tag to compare

As part of this release we had 11 issues closed.

This is a bugfix release to remove the dependency on the deprecated System.Reflection.Emit package from Microsoft.

Bugs

  • #2661 Regression: Exception during Expression Builder Map Creation

Improvements/Features

  • #2682 Remove package references to System.Reflection.Emit
  • #2681 ProjectTo : An edge case with the let clause
  • #2679 Adding sourcelink to enable PDB debugging
  • #2677 Parameterized queries
  • #2675 Unable to cast TypedConstantExpression to MemberExpression in ProjectTo
  • #2671 Include with open generics
  • #2669 Fix SetTraceIdentifierAction constructor name
  • #2665 Does AutoMapper support Open Generics with inheritance from a non-generic base class?
  • #2664 Link to the new expressions package
  • #2662 Fix bad similar type replacement in parameters

Where to get it

You can download this release from nuget

7.0.0

05 Jun 18:38
1b2c759
Compare
Choose a tag to compare

As part of this release we had 48 issues closed.

This release contains mainly bug fixes and a few breaking API changes, as well as an explicit netstandard2.0 target.

Bugs

  • #2521 #2520 - Fixed Effort- and ODataQueryTests and a bug in ExpressionVisitor
  • #2502 Return the same type on both branches
  • #2501 ProjectTo Exception: Argument types do not match
  • #2466 Mapping from ExpandoObject to existing destination
  • #2461 The MapFrom should have higher priority than postfixes
  • #2459 ForMember doesn't work after AddMemberConfiguration().AddName()

Improvements/Features

  • #2658 Break out expression mapper
  • #2651 Add a section about conditions and resolvers
  • #2650 Condition vs PreCondition docs
  • #2641 Nullable untyped MapFrom
  • #2640 Dynamic mapping : Map null to the default for value types
  • #2633 Exception when mapping from an ExpandoObject.
  • #2632 Add repository information to csproj
  • #2621 Say that it's a dynamic map when validation fails
  • #2616 Fixed documentation to not have DuplicateTypeMap
  • #2614 Update unit test to match behavior as explained
  • #2610 Extract NullsafeQueryRewriter to separate licensed file
  • #2606 From #2515
  • #2605 Removing preview version of VS 2017
  • #2604 Fix to issue #2578
  • #2603 Fix TypeDetails ignoring non-generic extension methods #2593
  • #2602 Fix projection to destinations using extension methods #2593
  • #2596 ##2594: Remove empty profile name from MapperConfigurationException
  • #2594 Exception Message for DuplicateTypeMapConfigurationException
  • #2593 ProjectTo error with aggregate functions on IEnumerable
  • #2586 Update build status link
  • #2580 Fix for Issue #2578
  • #2578 Automapper should sort properties in ProjectTo consistently
  • #2575 .NET Standard 2.0 support
  • #2568 ProjectTo : Expose binders and result converters
  • #2560 Define ComVisible Attribute
  • #2541 Missing closing bracket in example code
  • #2518 Use resolve when looking for included maps
  • #2513 Open generics in combination with mapping inheritance do not work
  • #2504 fix whitespace
  • #2499 Let clause : explicitly generate just the properties we need
  • #2495 Update Lists-and-arrays.md
  • #2494 Ignore properties that are not expanded
  • #2491 Update copy of NeinLinq.NullsafeQueryRewriter
  • #2490 Massive performance issues from 6.1.0 upwards
  • #2488 Custom validation docs
  • #2487 Test for #2486
  • #2477 Added doc for IMappingAction and Asp.Net Core Dependency Injection.
  • #2476 Include<,> and IncludeBase<,> is not creating equal TypeMap.IncludedBaseTypes
  • #2475 Include<,> and IncludeBase<,> is not creating equal TypeMap.IncludedBaseTypes
  • #2471 Update Value-transformers.md
  • #2469 Make mapping at runtime closer to inline mapping
  • #2446 Adding missing docs from wiki

Where to get it

You can download this release from nuget

6.2.2

06 Dec 15:24
877d917
Compare
Choose a tag to compare

As part of this release we had 7 issues closed.

Improvement

  • #2421 Better error message when the creation of the instantiation expression fails

Bugs

  • #2450 Collection bug
  • #2438 We don't need the property map when mapping the item; for nested coll…
  • #2437 NullReferenceException when mapping List to ObservableCollection and CollectionChanged event not fired
  • #2419 Consider value types
  • #2418 Struct self-mapping
  • #2397 Mapping between different ICollection implementations fails

Where to get it

You can download this release from nuget

6.2.1

16 Nov 14:53
146be21
Compare
Choose a tag to compare

As part of this release we had 7 issues closed.

Improvements

  • #2407 Add Mapper.Reset to reset static mapping
  • #2406 Adding ability to configure the member list to validate; closes #2402
  • #2404 Add Mapper.Reset back

Bugs

  • #2403 Moving inline map creation back to inside type map resolving
  • #2402 6.2.0 Broke Conventions-Based Mappings With Missing Target Members
  • #2399 After upgrade to 6.2.0 - xUnit test fixtures throw exception
  • #2394 Inline maps broke missing type map creation for ProjectTo.

Where to get it

You can download this release from nuget

6.2.0

09 Nov 13:10
Compare
Choose a tag to compare

As part of this release we had 70 issues closed.

Features

Improvements

  • #2389 Allow ToList/ToArray for primitive types
  • #2387 Can't map IEnumerable to List
  • #2382 Better error message
  • #2380 Identified property parent incorrect in error message following ReverseMap() in nested models.
  • #2362 Consider derived maps when setting PreserveReferences
  • #2356 PreserveReferences with inheritance
  • #2308 Mention ForPath
  • #2307 Added NeutralResourcesLanguageAttribute
  • #2303 Missing NeutralResourcesLanguageAttribute
  • #2297 Enforce calling Mapper.Initialize once
  • #2295 Enforce calling Mapper.Initialize once
  • #2282 Null check static methods too
  • #2252 Add PreCondition overload that takes source and ResolutionContext as parameters
  • #2247 Make debugging easier
  • #2243 Speed up the tests
  • #2224 Inherit ForPath
  • #2222 Validate included types
  • #2221 Allow constructor mapping for value types
  • #2207 Constructor mapping with struct
  • #2191 Reverse mapping unflattening not working with IncludeBase
  • #2190 Use Resolve instead of Find for expression generation
  • #2185 Allow simple MapFrom-s to pass validation
  • #2180 Sdk style tests
  • #2177 Fix for #2166 and #2167.
  • #2172 AssertConfigurationIsValid with MemberList.Source doesn't recognize inherited ForMember mapping
  • #2166 Issue with MapExpression when expression checks if a string equals null

Bugs

  • #2383 Fix for #2378 Expression mapping with coalesce operator is extremely slow or just hangs up.
  • #2378 Expression mapping with coalesce operator is extremely slow or just hangs up
  • #2376 Preserve references with ctor mapping
  • #2363 ArgumentException: An item with the same key has already been added.
  • #2348 Preserve references doesn't make sense for value types
  • #2343 If it's a dynamically created type map, we need to seal it outside Ge…
  • #2338 Adding member name inheritance; fixes #2333; fixing type usage inheri…
  • #2333 typeof() version of IncludeBase() is not working
  • #2286 Issue 2246 - UseAsDataSource throwing ArgumentNullException.
  • #2245 Help the CLR find the assemblies it needs
  • #2233 We have to set everything in the plan, we don't get a second chance
  • #2230 Allow nullable to string conversion
  • #2227 The map is for the interface, not for the class, so return a proxy
  • #2223 Throw when we cannot create the destination
  • #2219 Introduce a global lock when creating type maps on the fly
  • #2205 Ignore properties with no setter
  • #2202 Proposed fix for Error when mapping nested expressions #2201
  • #2201 Error when mapping expressions with array members
  • #2170 Use List for most IEnumerable-s
  • #2169 AllowNullCollections=false not honored for IEnumerable
  • #2167 Fix for issue #2166

Where to get it

You can download this release from nuget

6.1.1

27 Jun 03:18
Compare
Choose a tag to compare

As part of this release we had 12 issues closed.

This release includes the ability to turn off the un-flattening behavior added in 6.1.0 using ForPath.Ignore

Bugs

  • #2156 Generate setters only when they are required
  • #2155 NotSupportedException exception with EF unmapped members
  • #2152 Unexpected behavior for CustomValueResolver
  • #2151 ReverseMap creates object for navigation property
  • #2147 Allow null colections
  • #2145 AllowNullCollections=false not honored for ICollection
  • #2144 Avoid conflicts between path maps and property maps
  • #2143 ResolveUsing not working correctly after ReverseMap

Improvements/Features

  • #2162 Allow ignores on reverse map paths
  • #2161 Allow ignoring a path in ReverseMap
  • #2158 Request a repro
  • #2153 Fix ExpressionBuilder GetMapExpression behaviour

Where to get it

You can download this release from nuget

6.1.0

14 Jun 11:12
Compare
Choose a tag to compare

As part of this release we had 28 issues closed.

Bugs

  • #2115 Null checks
  • #2109 Consider only constructors that can resolve all parameters
  • #2102 ResolveUsing problem
  • #2100 Check the underlying type
  • #2097 Use the runtime type for the destination too
  • #2096 ArgumentException when trying to map a ViewModel List to Domain List
  • #2065 Use the existing destination
  • #2064 Mapping to readonly IEnumerable property
  • #2054 Regression - Exception in System.Linq from NullableSourceMapper
  • #2025 Passing the type doesn't seem to help

Improvements/Features

  • #2136 Disallow duplicate create map calls
  • #2131 Let clause
  • #2128 Disallow duplicate CreateMap calls per mapping
  • #2124 Detect cycles at config time and set PreserveReferences accordingly
  • #2114 Inefficient query produced
  • #2110 AddProfiles() includes internal types when scanning assemblies
  • #2107 Make object mappers help with validation
  • #2085 Project nullable to GetValueOrDefault
  • #2082 Unable to create a map expression from Person.FKContactTypeID (System.Nullable`1[System.Int64]) to RelatedPersonDTO.FKContactTypeID (System.Int64)
  • #2080 Reverse MapFrom
  • #2074 Unflatten
  • #2068 Support un-flattening
  • #2063 AddProfiles() should be able to include internal profiles
  • #2059 Allow source struct collections
  • #2058 InvalidOperationException when mapping a collection from struct enumerator
  • #2038 Consider abstract types
  • #2037 Instances of abstract classes cannot be created
  • #2023 Introducing Internal namespaces and classes to support extensibility

Where to get it

You can download this release from nuget