It’s my pleasure to announce the second candidate release of MapStruct 1.1!
This release fixes several bugs discovered in the first CR but also adds some new built-in conversions around date/time types (e.g. from/to the
java.sql.* types and between
Normally, we wouldn’t add new functionality during the CR phase, but as these conversions have been contributed by community members (kudos to you!), we thought it’d be nice to put them into a release as soon as possible.
Please check out the change log for the complete list of closed issues. Also take a look at the migration notes as there has been a slight behavioral change related to nested source properties requiring conversion and the null checks in the generated code. We strongly recommend testing against MapStruct 1.1.0.CR2 to everyone. If you find any further bugs when using the CR in your project, please report them to our issue tracker as soon as possible.
Many thanks to all the bug reporters and everyone contributing to the CR2 release, be it with code or documentation: Filip Hrisafov, Stefan May, Peter Larson, Pavel Makhov, Maxim Kolesnikov and Dominik Gruntz. You guys rock!
Unless any further issues arise, we’ve planned to do the 1.1 Final release by the end of next week.
After that we’d like to come to MapStruct 1.2 rather quickly. The backlog is filled and there are already some pull requests for new features waiting to be merged. So you can look forward to support of field based mappings, support for immutable beans on the target side by using non-default constructors and some more.
The 1.2 release can be expected to be much more focused in scope than 1.1. We’ve felt that it took a bit too long to get from 1.0 to 1.1, one reason being that we kept on adding new features during the Beta phase which got a bit in the way of finalizing the release. From 1.2 onwards, we’ll keep the number of new features per release lower which should allow us to release more often and get the features already done into your hands more quickly. “Release early, release often” as they say!
To fetch MapStruct 1.1.0.CR2 via Maven, Gradle or similar dependency management tools, use the following GAV coordinates:
- org.mapstruct:mapstruct:1.1.0.CR2 for the annotation JAR (to be used with Java <= 7) or org.mapstruct:mapstruct-jdk8:1.1.0.CR2 (for usage with Java >= 8)
- org.mapstruct:mapstruct-processor:1.1.0.CR2 for the annotation processor.