Changelog
TBD
v2.4.20-2.4.4
Bumped Kotlin to version 2.4.20.
#408 Fixed incremental compilation state being inconsistent with the Gradle build cache, and compilations of the same project overwriting each others state.
#408 Mappers defined in the main source set are no longer resolved implicitly in the test source set, which was an undocumented side effect of the state of all compilations being stored in a single file.
Improved support for nullable mapping sources and targets.
v2.4.10-2.4.3
Bumped Kotlin to version 2.4.10.
Fixed several duplicate error messages.
#395 Fixed exception when transforming using a property reference.
v2.4.0-2.4.2
#393 Improved error message when a NoSuchElementException occurs.
v2.4.0-2.4.1
Bumped Kotlin to version 2.4.0.
v2.3.21-2.4.1
Bumped Kotlin to version 2.3.21.
v2.3.20-2.4.1
Bumped Kotlin to version 2.3.20.
v2.3.10-2.4.1
Fixed issue with incremental compilation.
Fixes issue where a non-existing Java setter used in
tocall is not reported on.Improved
NullPointerExceptionto explicit error message.
v2.3.10-2.4.0
#240 Fixed issue with incremental compilation where mappers cannot be found.
#355 Improved source selection priority. When a source is an exact subtype, this is now prioritized over a source which can be transformed.
#280 Moved builtin mappers between Java- and Kotlin Instant from module kotlinx-datetime to the generic API.
v2.3.10-2.3.1
Bumped Kotlin to version 2.3.10.
v2.3.0-2.3.1
#345 Fixed issue with generated Java class mappers.
v2.3.0-2.3.0
Improved error message when the target class has no visible constructor.
Added support for lenient property matching. See Naming Convention for more information
#323 Added support for kotlinx-collections-immutable mappers, which can be imported via a separate dependency.
#331 Fixed issue with star projections and generic super enum mappers.
#334 Fixed compilation error when deeply nested generated mappers get re-used.
v2.3.0-2.2.0
Added support for local conversion methods. See Local Conversion Methods for more information.
Improved error message when an internal mappie exception occurs.
v2.2.21-2.1.1
#324 Fixed multiplatform code generation bug.
v2.2.21-2.1.0
#320 Fixed a compilation error when referencing a mapper defined as a variable in an explicit via call.
Added support for re-using functionality of a base EnumMappie in other child mappers.
Prioritize exact inner mapper over nullable alternative.
Added support for forcing to select a specific target constructor to be called.
v2.2.21-2.0.0
Breaking change: removed forList and forSet in favour of
IterableToListMapperandIterableToSetMapper.Internal refactoring simplifying the Mappie type system and mapper generation.
Added config option to allow unsafe mapping of platform types to non-nullable target.
JVM implementation for mapArray (similar to mapList and mapSet).
v2.2.21-1.6.1
#290 Fix IndexOutOfBoundsException with generic target type.
v2.2.20-1.6.0
Allow
mappingto be used anywhere (at most once) in the body of the map function.Added support for kotlinx-datetime to JVM mappers, which can be imported via a separate dependency.
Fixed check of runtime usage of mapping DSL for multiple object mappie.
#264 Fix compilation error with ObjectMappie5.
#262 Fixed compilation error when mapper inherits from more than a Mappie subclass.
Minor performance enhancements.
Fix for missing reporting when both a mapper and its generated mapper have issues.
Improved reporting of type parameters.
AbstractListandAbstractMutableListare now supported as source type for mapping toList.
v2.2.20-1.5.0
Bumped Kotlin to version 2.2.20.
v2.2.10-1.5.0
Improved selection of implicit mapper when multiple of different subtypes are available.
#246 Fixed type checking of platform types.
Fixed null pointer exception that sometimes occurs when generating a mapper.
v2.2.0-1.4-1
#235 Fixed compatibility with pre Java 14.
v2.2.0-1.3.0
Bumped Kotlin to version 2.2.0.
v2.1.20-1.2.2
#173 fixed compilation error when calling generated functions other than map on multiplatform.
v2.1.20-1.2.0
Changed versioning methodology. See Compatibility for more information.
#179 made all mapping functions open.
v1.1.1
#173 fixed multiplatform class code-generation bug.
v1.0.0
Migrated multiple checks from the compiler back-end to the FIR compiler front-end.
#148 the
mappie-apidependency is now applied automatically.Fixed a bug where the constructor of a generated target class is not selected properly.
v0.10.0
v0.9.2
Fixed null pointer in some cases.
v0.9.1
#129 fixed bug where mappie will not run when the mappie-api comes in as a transitive dependency.
v0.9.0
#101 removed deprecated method 'parameter(String)'
#62 added support for local mapper configuration via annotations.
#125 added fromPropertyNotNull which automatically applies requireNotNull.
Fixed a bug where the
strictness.enumsoption set totruepossibly resulted in a compilation error.Fixed a bug where generating a mapper which has no accessible constructor resulted in an internal error instead of a nice error message.
v0.7.0
Added more built-in mappers.
Fixed a bug where mappers nested inside classes which are not a mapper are not generated.
Fixed warnings for newest Kotlin versions.
v0.3.0
#17 mappers can now be declared as inner declarations, instead of requiring them to be top-level.
#31 added the explicit mapping method
thrownByEnumEntryto throw an exception as a result when mapping an enum entry.#28 added implicit mapping inference of mappers with the same name but a different type, but a mapper for those types are defined.
#42 added a configuration option to disable resolving via default arguments.
#40 added
toalias to refer to for target properties as an alternative to the fully written outTOtype.#46 added support for Java get methods.
Several other bug fixes.
v0.2.0
#13 added support for declaring a mapper without an implementation of map.
#16 improved resolution of explicit parameter names.
#21 added global configuration option to report all warnings as errors.
#24 added explicit mapping
fromValueas a replacement of the much more restrictingfromConstant.#26 support for selecting nested properties.
Several other bug fixes.
v0.1.0
Initial release