Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 28, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.mapstruct:mapstruct (source) 1.4.2.Final -> 1.6.3 age adoption passing confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

mapstruct/mapstruct (org.mapstruct:mapstruct)

v1.6.3

Compare Source

Bugs
  • Redundant if condition in Java record mapping with RETURN_DEFAULT strategy (#​3747)
  • Stackoverflow with Immutables custom builder (#​3370)
  • Unused import of java.time.LocalDate when mapping source LocalDateTime to target LocalDate (#​3732)
Documentation
  • Add section to README.md comparing mapstruct with Java Records (#​3751)

v1.6.2

Compare Source

Bugs
  • Regression from 1.6.1: ClassCastException when using records (#​3717)

v1.6.1

Compare Source

Enhancements
  • Use Java LinkedHashSet and LinkedHashMap new factory method with known capacity when on Java 19 or later (#​3113)
Bugs
  • Inverse Inheritance Strategy not working for ignored mappings only with target (#​3652)
  • Inconsistent ambiguous mapping method error when using SubclassMapping: generic vs raw types (#​3668)
  • Fix regression when using InheritInverseConfiguration with nested target properties and reversing target = "." (#​3670)
  • Deep mapping with multiple mappings broken in 1.6.0 (#​3667)
  • Two different constants are ignored in 1.6.0 (#​3673)
  • Inconsistent ambiguous mapping method error: generic vs raw types in 1.6.0 (#​3668)
  • Fix cross module records with interfaces not recognizing accessors (#​3661)
  • @AfterMapping methods are called twice when using target with builder (#​3678)
  • Compile error when using @AfterMapping method with Builder and TargetObject (#​3703)
Behaviour change
Inverse Inheritance Strategy not working for ignored mappings only with target

Prior to this fix @Mapping(target = "myProperty", ignore = true) was being ignored when using @InheritInverseConfiguration.

e.g.

@​Mapper
public interface ModelMapper {

    @​Mapping(target = "creationDate", ignore = true)
    Entity toEntity(Model model);    

    @​InheritInverseConfiguration
    Model toModel(Entity entity);
}

In the example above prior 1.6.1 the Model toModel(Entity entity) was going to map the id property. In order to keep that behavior you'll need to explicitly do the mapping for it.

@​Mapper
public interface ModelMappe {
    @​Mapping(target = "creationDate", ignore = true) // NOTE: Handled by JPA.
    Entity toEntity(Model model);    

    @​InheritInverseConfiguration
    @​Mapping(target = "creationDate", source = "creationDate") // Allow reading from Entity
    Model toModel(Entity entity);
}

v1.6.0

Compare Source

Previous Release Notes

v1.5.5.Final

Compare Source

Enhancements
  • Add support for Jakarta XML Binding (#​2730)
Bugs
  • BeanMappingOptions#ignoreUnmappedSourceProperties are not inherited via @InheritConfiguration (#​3248) - Regression from 1.5.3
Documentation
  • jakarta-cdi component model not in docs (#​3236)
  • Polish links in docs (#​3214)

v1.5.4.Final

Compare Source

Enhancements
  • Support for Jakarta @ApplicationScoped is missing (#​2950)
Bugs
  • Exceptions declared to be thrown by a mapping method, are not declared in generated mapping methods for nested types (#​3142)
  • DeepClone mapping control not generating third tier functions to clone (#​3135)
  • missing throws clauses when mapping enum with checked exceptions (#​3110)
  • Version 1.5.3 doesn't consider Mapping annotations for nested objects (worked with 1.5.2) (#​3057)
  • Cannot use only BeanMapping#mappingControl (#​3040)
Documentation
  • Document <THROW_EXCEPTION> in the reference guide (#​3112)

v1.5.3.Final

Compare Source

Bugs
  • Generic @AfterMapping does not consider @MappingTarget properly in 1.5 (#​3036)
  • Method annotated with @AfterMapping is not called (#​2955)
  • Ignored unknown source property error, but property exist (#​2743)
  • SubclassMapping doesn't honour mappingControl (#​3018)
  • Upgrade from 1.4.1 to 1.5.2 broke primitive to wrapper classes mapping (#​2921)
  • Conversion of BigDecimal to primitive double wrong with 1.5.2 (#​2913)
  • Ambiguous mapping methods when upgrading to MapStruct 1.5.0.RC1 (#​2840)
  • SubclassMapping stackoverflow exception (#​2825)
  • Optional wrapping pattern broken in 1.5.2.Final (#​2925)
  • Missing import in generated mapper when referencing a nested enum from an unrelated class (#​2945)
  • Unused import warning of nested classes (#​2907)
  • Compilation error in generated code for @Conditional and collection (#​2937)
  • Missing import of nested class (#​2897)
  • Ignoring unmapped source properties in inverse inheritance (#​2949)
  • Compilation error when mapping fields with the same type due to not wrapping in a try-catch block (#​2839)
  • Using @TargetType as a parameter for @Condition causes NPE during compiling (#​2882)
  • Cannot map from a covariant (extends) generic type (#​2677)
Documentation
Build
  • Build fails when running mvn test on an M1 Mac (#​2922)

v1.5.2.Final

Compare Source

Enhancements
  • Add support for Java Text Blocks in expressions (#​2837)
Bugs
  • Generated code does not include enclosing class when referring to nested class (#​2880)
  • SubclassExhaustiveStrategy.RUNTIME_EXCEPTION option does not work if the superclass has a non-empty constructor #​2891
Build
  • Codecov no longer publishes information for commits (#​2870)

v1.5.1.Final

Compare Source

Bugs
  • NullPointerException when reporting errors for non Mappers (#​2867)

v1.5.0.Final

Compare Source

Bugs
  • Compilation error due to missing import with nested classes (#​2797)
  • MapStruct 1.5.0 generates invalid code when using @Condition on a presence check for a generic wrapper (#​2795)
  • No compile error when conditionExpression and expression are used together (#​2794)
  • No import is added to generated class when using @BeforeMapping on a used mapper (#​2807)
Documentation
  • Error in the readme ( what is MapStruct paragraph ) (#​2851)
  • Enhance documentation around SPI usage (#​2739)
Build
  • Update jacoco maven plugin to compile on Java 17 (#​2835)
Previous Release Notes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot changed the title fix(deps): update mapstruct monorepo to v1.6.3 fix(deps): update dependency org.mapstruct:mapstruct to v1.6.3 Feb 11, 2025
@renovate renovate bot force-pushed the renovate/mapstruct-monorepo branch from 88a6e2e to b70301f Compare February 11, 2025 10:59
@renovate renovate bot force-pushed the renovate/mapstruct-monorepo branch from b70301f to 9466cd2 Compare March 3, 2025 16:22
@renovate renovate bot changed the title fix(deps): update dependency org.mapstruct:mapstruct to v1.6.3 fix(deps): update dependency org.mapstruct:mapstruct to v1.6.3 - autoclosed Apr 25, 2025
@renovate renovate bot closed this Apr 25, 2025
@renovate renovate bot deleted the renovate/mapstruct-monorepo branch April 25, 2025 04:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant