Skip to content

Releases: MapsterMapper/Mapster

Mapster 7.4.0, Mapster.Tool 8.4.0

21 Sep 20:58
Compare
Choose a tag to compare

Welp, this is a big one! It's been just over a year since 7.3.0, but in the meantime we've had plenty of time to thoroughly test this release through 6 pre-releases. This release bring support for .NET 7 as well as a fairly long list of bugfixes. Thank you everyone for your contributions! Packages are as usual available on NuGet, along with symbol packages for convenient debugging.

Known issues

  • Unfortunately, #537 continues to be an unsolved issue, but it does not seem to affect a significant amount of users, and workarounds are simple to implement. Any help to trace down the source of this issue will be greatly appreciated.

Backwards compatibility

  • With #454 we introduced a change to the public API -- previously where TypeAdapterConfig was returned, Mapster will now return an ITypeAdapterConfig interface instead. So make sure to check that your build pipelines succeed before merging this upgrade ;) This change makes it easier to mock and test your mappings.

What's Changed

  • Fix RequireDestinationMemberSource for immutable UseDestinationValue field by @foriequal0 in #415
  • Bump Newtonsoft.Json from 10.0.3 to 13.0.1 in /src/Mapster.JsonNet by @dependabot in #448
  • Added IOrderedQueryable Interface on MapsterQueryable by @noelmugnier in #431
  • Support ConstructUsing in CollectionAdapter by @devbased in #436
  • Add destination parameter to before and after mapping delegates by @devbased in #437
  • Removed directory separator character and use Path.DirectorySeparatorChar instead by @GuimoBear in #440
  • Added ability to skip generating of existing files by @psynomorph in #447
  • Fixes #385 Private Sets by @JMPSequeira in #449
  • Update #397 to fix conflicts by @andrerav in #473
  • Make the project compile and pass tests under net6.0 by @Philippe-Laval in #397
  • Add a non generic overload to ForDestinationType by @Dewera in #465
  • The culture problem has been fixed by @mehmetemineker in #472
  • Refactor IMapper.From to return interface by @gritcsenko in #454
  • Improve installation instructions in the readme by @r-52 in #481
  • Add .net 7.0 TFM to all projects (except benchmark) by @cedwards-telis in #496
  • Add extension method for adding IMapper to service collection by @stormaref in #516
  • Bump Newtonsoft.Json from 13.0.1 to 13.0.2 in /src/Mapster.Tests by @dependabot in #506
  • Add options to Mapster.Tool to generate files with #nullable directives by @kescherCode in #530
  • Add IMapFrom interface for automatic mapping configuration by @stormaref in #533
  • Fix Issues #536 -> Set properties with reflection if destination has init only properties. by @stormaref in #545
  • Mapster.Tool catch ReflectionTypeLoadException by @EniacMlezi in #544
  • Backmerge from main by @andrerav in #549
  • Fix test bug by @stormaref in #552
  • Merge latest from master to development by @andrerav in #553
  • Applying clean code principles by @stormaref in #555
  • Merge latest from master to development by @andrerav in #558
  • Remove mentions to old unsupported frameworks from projects by @satano in #579
  • 🐛 fix(TypeAdapter.cs): Make source parameter nullable by @msadeqsirjani in #583
  • Generating valid, meaningful method name from destination type by @rafalka in #586
  • Fix #370 where capitalized abbreviations are not mapped … by @joshslark in #590
  • Fixing incorrect mapping generation when ShallowCopyForSameType, UseDestinationValue and UseDestinationValue are used by @rafalka in #601
  • Added types used in rules to types hashset by @rafalka in #606
  • Reversing execution order of Before/AfterMapping by @rafalka in #603
  • Not using shallow copy if mapping rule exists by @rafalka in #629
  • Added primary key handling - EntityFromContext EF Core by @lucascaser in #597
  • Add XML documentation comments for public methods by @HoseinHabibiyan in #626
  • Merge development to main pending new release by @andrerav in #591

New Contributors

Full Changelog: v7.3.0...v7.4.0

Mapster 7.3.0, Mapster.Tool 8.3.0

20 Feb 12:16
Compare
Choose a tag to compare

This release finally resolves the long awaited support for .NET 6.0 in Mapster and Mapster.Tool! 🎉 Fresh packages can be downloaded from NuGet. With this release we also pushed symbol packages for Mapster and Mapster.Tool, so now you can finally step into the inner workings of Mapster when debugging your mappings.

What's Changed

New Contributors

Full Changelog: 7.2.0...v7.3.0

Mapster 7.2.0, Mapster.Tool 8.2.0

10 Apr 12:47
Compare
Choose a tag to compare

Mapster [7.2.0], Mapster.Core [1.2.0]
feature: RequireDestinationMemberSourc per type pair
fix: mapping inherited interface without members causes CompileException

Mapster.Tool [8.2.0]
feature: generate record DTO (flag -r)
feature: generate dynamic outputs & namespaces (flag -b)
feature: support nullable reference for model generation
fix: flag p produce invalid name
fix: cannot load library with multiple runtime assemblies

Mapster 7.1.5, Mapster.Tool 8.0.0

24 Feb 13:28
Compare
Choose a tag to compare

Mapster.Async [2.0]

Mapster.EFCore [5.1]

  • Fix passing param for EFCore

Mapster [7.1.5]

  • Small message update

Mapster.Core [1.1.5]

  • Support for new Mapster.Async & Mapster.Tool

Mapster.Tool [8.0.0]

  • BREAKING CHANGES: no more generate projection by default
  • BREAKING CHANGES: ForAllTypesInNamespace will also looking types in subnamespace
  • Fix using types from different assemblies
  • Fix to filter out generated types for ForAllTypesInNamespace

7.1.3: - Fluent API for code generation

24 Jan 15:48
Compare
Choose a tag to compare
  • Fluent API for code generation
  • support MemberSide for AdaptMemberAttribute
  • fix #293 condition map should return null if dest type is nullable

7.0.1

26 Nov 08:16
Compare
Choose a tag to compare

fix #281 null propagation should return nullable type
fix #282 map error on record type with empty ctor

7.0.0 - Mapster.Core for codegen project

12 Nov 12:14
Compare
Choose a tag to compare
  • Split attributes and helper classes to Mapster.Core (for codegen project)
  • Support C# 9.0 record type
  • [Codegen] Support NET 5.0
  • [Codegen] Fluent API to generate mapping

6.5.1

23 Oct 01:22
Compare
Choose a tag to compare

fix CreateNewIfNull
fix UseDestinationValue with collection
fix #272 IEnumerable is enumerating twice when adapted to array
fix #269 RequireExplicitMapping should validate child mapping
fix #266 ProjectToType doesn't work with DI(MapContext)

6.5.0: Generating models & extension methods

19 Aug 22:18
Compare
Choose a tag to compare

[mapster] non-generic ProjectToType
[mapster] fix #263 fix when source path is Dictionary
[mapster] fix #258 enforce cast projection type to prevent EF error
[codegen] generate models
[codegen] generate extension methods
[codegen] support access modifier
[sample] codegen sample

6.1.1

06 Aug 05:33
Compare
Choose a tag to compare

fix #256 exclude backing fields from EnableNonPublicMembers
fix code generation for Include