171 Commits

Author SHA1 Message Date
Filip Hrisafov
a91b93f357 [maven-release-plugin] prepare release 1.5.0.Beta1 2021-07-18 15:15:44 +02:00
Filip Hrisafov
fb9c7a3ded #2491 Do not use types not part of java.base in MapStruct processor
MapStruct should not use types that are outside of java.base.
This makes sure that no additional dependencies (such as jaxb-api) are needed on the annotation processor path
2021-06-27 07:34:14 +02:00
chaos
4c338fa1db fix(pom): fix gradle repo url 404
original url is 404 replace with new url
2021-06-23 13:02:14 +02:00
Filip Hrisafov
9ce9d4fb3a #2375 Add records cross module integration test 2021-06-12 09:23:36 +02:00
Filip Hrisafov
857f87276f #2466 Update dependencies so tests run on Java 16+
Update GitHub Actions for tests to run on Java 11, 13, 16 and 17-ea.
Update Lombok so tests can run on 16+
Add jaxb-runtime dependency to the maven-jaxb2-plugin see https://github.com/highsource/maven-jaxb2-plugin/issues/148
Disable cdi integration test on Java 16+ until we find a solution for them
2021-06-12 09:20:33 +02:00
Jeroen van Wilgenburg
d9fdd86b94 #2368 fix order of target parameter in tests (and removed some spaces) 2021-03-01 20:58:13 +01:00
Filip Hrisafov
dfc7528096 Small fixes for Java 16
* Upgrade japicmp-maven-plugin to 0.15.2
* Do not use deprecated for removal Long constructor
* Update Spring to 5.3.3
* Upgrade Lombok to 1.18.16 + add lombok-mapstruct-binding
2021-01-22 08:33:03 +01:00
Tomas Poledny
4223e3ab81 #2255 Add constants for componentModel 2021-01-17 15:13:42 +01:00
Filip Hrisafov
50aa9cdbdc Use junit version defined in parent in integration tests 2020-10-17 12:30:43 +02:00
Filip Hrisafov
58dbaee472 [maven-release-plugin] prepare for next development iteration 2020-10-11 09:35:30 +02:00
Filip Hrisafov
d8f22f8311 [maven-release-plugin] prepare release 1.4.1.Final 2020-10-11 09:35:30 +02:00
Filip Hrisafov
eb5b8bb71e [maven-release-plugin] prepare for next development iteration 2020-09-26 10:20:47 +02:00
Filip Hrisafov
9973b92ccb [maven-release-plugin] prepare release 1.4.0.Final 2020-09-26 10:20:45 +02:00
Filip Hrisafov
8b22654abd [maven-release-plugin] prepare for next development iteration 2020-08-30 16:31:45 +02:00
Filip Hrisafov
c962962546 [maven-release-plugin] prepare release 1.4.0.CR1 2020-08-30 16:31:44 +02:00
Filip Hrisafov
c1feafef4c
#2177 Mapping into a generic class / record with a typed constructor argument should work 2020-08-29 11:22:18 +02:00
Filip Hrisafov
ef4bfc9aad [maven-release-plugin] prepare for next development iteration 2020-07-19 18:10:13 +02:00
Filip Hrisafov
1d223284c2 [maven-release-plugin] prepare release 1.4.0.Beta3 2020-07-19 18:10:12 +02:00
Filip Hrisafov
2fede3583d [maven-release-plugin] prepare for next development iteration 2020-07-18 01:12:05 +02:00
Filip Hrisafov
fc4f65ddb6 [maven-release-plugin] prepare release 1.4.0.Beta2 2020-07-05 23:11:41 +02:00
Filip Hrisafov
d87d75a7a8 [maven-release-plugin] prepare for next development iteration 2020-06-01 13:42:32 +02:00
Filip Hrisafov
72ce5f3bd2 [maven-release-plugin] prepare release 1.4.0.Beta1 2020-06-01 13:42:32 +02:00
Filip Hrisafov
2b2299a730 #73 Add support for using constructor arguments when instantiating mapping targets
By default the constructor argument names are used to extract the target properties.
If a constructor is annotated with an annotation named `@ConstructorProperties` (from any package) then it would be used to extract the target properties.

If a mapping target has a parameterless empty constructor it would be used to instantiate the target.
When there are multiple constructors then an annotation named `@Default` (from any package) can be used to mark a constructor that should be used by default when instantiating the target.

Supports mapping into Java 14 Records and Kotlin data classes out of the box
2020-04-26 12:44:41 +02:00
Filip Hrisafov
3bffe96983 #1159: Do not fail loading AnnotationProcessorContext if loading AstModifyingAnnotationProcessor fails 2020-04-13 17:40:47 +02:00
Filip Hrisafov
a845197b0b #2056: Handle null TypeMirror in uses and import gracefully
Due to a bug in javac (JDK-8229535) for an annotation with Class values, instead of returning a TypeMirror with TypeKind#ERROR the compiler returns the string "<error>". Eclipse doesn't have this problem currently.
2020-04-10 11:20:20 +02:00
Filip Hrisafov
c410379f83 #1553: Update tycho-compiler-jdt to latest 1.6.0 version
Disable one test in GenericsHierarchyTest for Eclipse on Java 8 due to a bug in the Tycho compiler.
Disable freeBuilder integration test for Eclipse since there are some problems in the second round of annotation processing (no ModelElementProcessor(s) are found)
2020-04-10 09:33:09 +02:00
Filip Hrisafov
853ff7f74f #2060: MapStruct should work properly on the module path 2020-04-05 16:37:51 +02:00
Filip Hrisafov
f8a3924005 Use fix version for maven-processor-plugin
Using the latest (4.0-beta1) does not work on Java 8 since it is compiled with Java 9
2020-03-07 16:44:19 +01:00
Filip Hrisafov
f5771c4177 #2014 Add support for mapping from Java 14 records 2020-02-23 13:34:08 +01:00
Filip Hrisafov
c64e03468e Fix Checkstyle error 2020-02-07 17:35:51 +01:00
Filip Hrisafov
f382903bc6
Add proper attribution for the code for generating the sourceTargetVersion for other JRE 2020-02-04 13:05:53 +01:00
Filip Hrisafov
02a113b2d4
#1308 Switch to JUnit Jupiter and do not use Toolchains for the integration tests (#2013)
The CI should be setup to run on different Java versions, for which the integration tests are going to be run
2020-02-03 21:56:48 +01:00
ttzn
779eb1bd47 #1420 Add support for Gradle incremental annotation processing (#1971)
* Add relevant file in META-INF
* Add integration test with Gradle test kit dependencies
* Test with Gradle 5 and Gradle 6
2019-12-08 19:55:16 +01:00
Andrei Arlou
b26cd4e0cb
#1953 Fix TODO items for: integrationtest-java8Test, integrationtest-lombokBuilderTest, processor-nullvaluemappingTest (#1955) 2019-10-26 22:24:59 +03:00
Sjaak Derksen
7e0327767f
#1801 Using constructor as builderCreationMethod in custom builder (#1905) 2019-09-15 21:43:22 +02:00
Andrei Arlou
e068564017
#724 Remove JaxbMapper from integration test (#1892) 2019-09-14 02:48:22 +03:00
Andrei Arlou
59a5182dab Fix minor warnings:
remove unnecessary generic type for collections,
replace Charset.forName on StandartCharset
2019-08-18 16:24:14 +02:00
Gunnar Morling
ae3758674a #1675 Making MapStruct compileable with OpenJDK 11 2019-03-09 19:54:40 +01:00
Filip Hrisafov
a28f2cb9cf [maven-release-plugin] prepare for next development iteration 2019-02-10 11:48:20 +01:00
Filip Hrisafov
984423dfee [maven-release-plugin] prepare release 1.3.0.Final 2019-02-10 11:48:19 +01:00
Filip Hrisafov
ced7f3b024 [maven-release-plugin] prepare for next development iteration 2018-11-11 09:19:06 +01:00
Filip Hrisafov
3f2c1cee55 [maven-release-plugin] prepare release 1.3.0.Beta2 2018-11-11 09:19:05 +01:00
Florian Tavares
d81d3e46a4 #1301 Use Java 8 as baseline for MapStruct
* Move classes from mapstruct-common into mapstruct
* Use Java 8 @Repeatable for @Mappings and @ValueMappings in the mapstruct module
* Add relocation for mapstruct-jdk8 to mapstruct
* Use of 1.8 source and target versions from parent POM
* Update documentation to match
* Update versions of some maven plugin crashing build on Java 8
* Drop JDK 6 & 7 support in integration tests
* Remove mapstruct-common module (it was never deployed to Central)
2018-10-15 22:16:33 +02:00
Sjaak Derksen
13aa947421
#1569 Reproducer missing Immubable buildertype import (#1605) 2018-09-12 16:26:09 +02:00
Saheb Preet Singh
08067b7f17 #1524 replaced java.beans.Introspector with a custom IntrospectorUtils class to avoid java.desktop module 2018-08-11 22:19:21 +02:00
Christian Bandowski
0fa964038c #1499 Add Protobuf builder integration test
* Don't run the ProtobufBuilderTest with the processor_plugin_java8 and eclipse_jdt_java_8 (processor plugin runs before the proto java classes are created and the eclipse plugin has some bug)
* Include *.proto for license checks
2018-07-15 20:53:13 +02:00
Filip Hrisafov
e29c25e5cb [maven-release-plugin] prepare for next development iteration 2018-07-15 19:51:45 +02:00
Filip Hrisafov
c189aa7bb5 [maven-release-plugin] prepare release 1.3.0.Beta1 2018-07-15 19:51:44 +02:00
MapStruct Team
b35126e609 #1411 Update copyright header on all files
* Use new shorter copyright header without a year
* Use SLASHSTAR_STYLE for Java files
2018-07-15 19:29:28 +02:00
Filip Hrisafov
7306c52529 #1415 Use Immutables AccesorNamingStrategy and BuilderProvider when immutables are present
This allows out of the box support for Immutables by picking the right default strategy when immutables are present
2018-05-01 18:26:34 +02:00