Skip to content

Releases: riok/mapperly

v4.0.0-next.2

06 Aug 01:40
2654e9a
Compare
Choose a tag to compare
v4.0.0-next.2 Pre-release
Pre-release

🚀 Features

  • Add MappingTarget attribute to set the mapping target as the first parameter by @latonz in #1376
  • support additional mapping method parameters by @latonz in #1400
  • feat: inline methods consisting of a single return statement or local variable declaration expression by @hartmair in #1422

🐛 Bug Fixes

  • Fix failing projection with static mapper from another assembly by @trejjam in #1418
  • fix: Collect EnumerateUnmappedOrConfiguredTargetMembers to prevent collection was modified exception by @trejjam in #1438
  • Support inline expression with casting by @trejjam in #1419

Full Changelog: v4.0.0-next.1...v4.0.0-next.2

v4.0.0-next.1

30 Jun 01:38
be76178
Compare
Choose a tag to compare
v4.0.0-next.1 Pre-release
Pre-release

🚨 Breaking Changes

🚀 Features

  • Refactor member matching and member mapping building process by @latonz in #1334
  • Introduce MapValueAttribute to map constant values and method provided values by @latonz in #1335

🐛 Bug Fixes

  • adjust diagnostic messages to be correct when applied with MapValue by @latonz in #1332
  • allow same-name members with different casings by @latonz in #1350
  • Replace invalid MapPropertyAttribute constructors with valid versions by @latonz in #1354

Full Changelog: v3.6.0...v4.0.0-next.0
Breaking changes migration guide: Breaking Changes

v3.6.0

18 Jun 20:40
51aa1da
Compare
Choose a tag to compare

3.6.0 (2024-06-18)

Bug Fixes

  • correct syntax in nameof clause of throw null exceptions (#1263) (3d43a6f)
  • fixes using the wrong object factory when multiple factories with the same target type but different source types are used (#1313) (51aa1da)
  • In disable nullable reference type contexts do not assume nullable IQueryable generic types (#1268) (56b03d2)
  • prefer coalesce operator over if-else to simplify generated source code (#1262) (b4548d2)

Features

  • add a warning when a referenced mapping types do not match (#1256) (2fd22e3)
  • Adds an option to include all members of a single member (#1245) (b69b2a9)
  • Map from source object (#1247) (d790055)

v3.6.0-next.2

03 Jun 15:39
51aa1da
Compare
Choose a tag to compare
v3.6.0-next.2 Pre-release
Pre-release

3.6.0-next.2 (2024-06-03)

Bug Fixes

  • fixes using the wrong object factory when multiple factories with the same target type but different source types are used (#1313) (51aa1da)
  • In disable nullable reference type contexts do not assume nullable IQueryable generic types (#1268) (56b03d2)

v3.6.0-next.1

03 May 18:39
d790055
Compare
Choose a tag to compare
v3.6.0-next.1 Pre-release
Pre-release

3.6.0-next.1 (2024-05-03)

Bug Fixes

  • correct syntax in nameof clause of throw null exceptions (#1263) (3d43a6f)
  • prefer coalesce operator over if-else to simplify generated source code (#1262) (b4548d2)

Features

  • add a warning when a referenced mapping types do not match (#1256) (2fd22e3)
  • Adds an option to include all members of a single member (#1245) (b69b2a9)
  • Map from source object (#1247) (d790055)

v3.5.1

23 Apr 03:15
840b6e1
Compare
Choose a tag to compare

3.5.1 (2024-04-23)

Bug Fixes

  • Add missing generic constraints to generated methods (#1227) (5324612)
  • Do not discover mapping methods marked as [ObjectFactory] automatically (#1234) (1cd6814)
  • expand target type new when inlining in queryable projection mappings (#1238) (840b6e1)
  • extend queryable project inlined arguments with full namespace (#1233) (de3b332)
  • respect user mapping attributes in generic mappings (#1230) (f753ceb)
  • use correct nullable types when referencing named mappings (#1237) (b3f79e8)

v3.5.1-next.2

15 Apr 12:10
840b6e1
Compare
Choose a tag to compare
v3.5.1-next.2 Pre-release
Pre-release

3.5.1-next.2 (2024-04-15)

Bug Fixes

  • Do not discover mapping methods marked as [ObjectFactory] automatically (#1234) (1cd6814)
  • expand target type new when inlining in queryable projection mappings (#1238) (840b6e1)
  • extend queryable project inlined arguments with full namespace (#1233) (de3b332)
  • respect user mapping attributes in generic mappings (#1230) (f753ceb)
  • use correct nullable types when referencing named mappings (#1237) (b3f79e8)

v3.5.1-next.1

09 Apr 04:57
5324612
Compare
Choose a tag to compare
v3.5.1-next.1 Pre-release
Pre-release

3.5.1-next.1 (2024-04-09)

Bug Fixes

  • Add missing generic constraints to generated methods (#1227) (5324612)

v3.5.0

05 Apr 15:02
1e78844
Compare
Choose a tag to compare

3.5.0 (2024-04-05)

Bug Fixes

  • correctly assign null if target is nullable instead of throwing (#1191) (f08b7b4)
  • do not generalise enumerable dictionary value types (#1155) (b4d5e74)
  • Increase RMG060 default severity from info to warning (#1173) (3cba05b)
  • map init only collection in existing target mapping correctly (#1190) (c9b4b17)
  • resolve user mappings correctly when reference handling is enabled (#1162) (d303198)

Features

  • add diagnostic if no members are mapped (#1129) (732cec4)
  • Add MapperIgnoreMemberAttribute to ignore members at declaration (#1143) (ebce68e)
  • Add option to disable automatic discovery of user implemented mapping method and to include/exclude specific user implemented mapping methods (#1070) (4e4937c)
  • allow property mappings to use specific conversion (#1072) (61716b9)
  • allow usage of mappings in MapPropertyAttribute.Use which are attributed with UserMappingAttribute (#1151) (1f0b3c5)
  • allow user implemented mappings to be marked as default (#1071) (79f60cd)
  • improve generated method names by including generic type names (#1168) (fb482a0)
  • Inline user implemented queryable mapping expressions (#1169) (530066f), closes #953
  • report a diagnostic for invalid MapPropertyAttribute usages (#1130) (b8b9e2a)
  • rework generic type matching (#1199) (1e78844)
  • support required mapping strategies on enums (#1073) (edc4933)
  • validate usage of MapProperty attributes on enum and queryable mapping methods (#1074) (fbe7894)

v3.5.0-next.4

27 Mar 12:26
1e78844
Compare
Choose a tag to compare
v3.5.0-next.4 Pre-release
Pre-release

3.5.0-next.4 (2024-03-27)

Bug Fixes

  • correctly assign null if target is nullable instead of throwing (#1191) (f08b7b4)
  • map init only collection in existing target mapping correctly (#1190) (c9b4b17)

Features