233 Commits

Author SHA1 Message Date
Filip Hrisafov
08016d9ef2
#2446 Use DefaultLocale and DefaultTimeZone from JUnit Pioneer
Configure the JUnit Platform to run the processor tests in parallel by running different test classes in concurrent threads
2021-06-12 10:16:40 +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
dependabot[bot]
5c22eee6c3 Bump commons-io from 2.6 to 2.7 in /parent
Bumps commons-io from 2.6 to 2.7.

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 13:41:46 +02:00
Filip Hrisafov
5bbd1a78ea Migrate the processor test infrastructure from JUnit 4 to JUnit Jupiter
With JUnit Jupiter it is still not possible to set the ClassLoader for loading the test class.
However, since 5.8 M1 there is a way to hook into the launcher discovery process and change the Current Thread ContextClassLoader which would load the classes with our customer ClassLoader.
Once JUnit Jupiter 201 is resolved we can simplify this.

The CompilationCache is stored in the GlobalCache with the CompilationRequest as key.
This means that even when methods are not executed in some particular order if they have same WithClasses then they would reuse the cache.
2021-04-25 13:05:26 +02: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
dependabot[bot]
4ddfd2ff51 Bump junit from 4.12 to 4.13.1 in /parent
Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.12...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-14 15:46:19 +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
e17e744b20 Dependency upgrades
Upgrades:
* Maven Enforcer Plugin to 3.0.0-M3
* Maven Surefire Plugin to 3.0.0-M5
* Maven Checkstyle Plugin to 3.1.1
* Maven Bundle Plugin to 5.1.1
* Jacoco Maven Plugin to 0.8.6
* Checkstyle to 8.36.1
* JUnit Jipiter to 5.7.0
* AssertJ to 3.17.2
* Guava to 29.0-jre

Fix AssertJ breaking changes
Use Java 8 or Apache Commons IO instead of Guava where possible
Update GitHub Actions to use JDK 14 and JDK 15-ea
2020-09-20 11:37:23 +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
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
b5fe96c9da Add myself as developer 2020-05-17 18:46:33 +02:00
Filip Hrisafov
73a79cf009 #1857 Use flatten-maven-plugin to remove test dependencies from released pom
For some reason when using annotationProcessorPaths IntelliJ includes the provided and test scoped dependencies on the annotation processor paths.
With this change there would be no test dependencies that IntelliJ can add.
2020-05-17 18:45:05 +02:00
Gunnar Morling
f7c1182ae6
Updating my developer URL 2020-05-17 13:27:32 +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
551c104295 #2019 Setup GitHub Actions
Add Maven Wrapper for using in GitHub Actions
Remove Travis
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
Sean C. Sullivan
273487f152 maven-compiler-plugin 3.8.1 2020-02-18 07:16:31 +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
Filip Hrisafov
95ceba1a1e #2016 Update Checkstyle to 8.29
Adapt checkstyle configuration with new changes:
* Move cacheFile to Checker module
* Move LineLength to Checker module
* Use SuppressWithPlainTextCommentFilter
2020-02-02 14:33:45 +01:00
Sjaak Derksen
2d3761051a
#2011 Introduce gem as replacement of hickory:prism (#2007) 2020-01-27 20:16:04 +01:00
Filip Hrisafov
f5ee2c6729
Remove use of prerequisites from parent pom.xml (#1766) 2019-03-23 21:27:15 +01:00
Filip Hrisafov
39481f98c5
Update checkstyle to latest version and replace deprecated methods (#1764) 2019-03-23 21:25:08 +01:00
Filip Hrisafov
4f2f546ffc Update plugins to latest versions 2019-03-15 20:35:13 +01:00
Filip Hrisafov
3e6ea0ef8f Update Javadoc and set source to 8 for proper compilation on Java 11
See https://bugs.openjdk.java.net/browse/JDK-8212233 for more information
2019-03-09 20:19:28 +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
b46682f95b Go back to using 3.0.0-M1 of the maven-enforcer-plugin
Once https://issues.apache.org/jira/browse/MENFORCER-306 is fixed we can upgrade the plugin again
2019-01-20 15:28:55 +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
Sjaak Derksen
cf668bea77
#1576 Delay determining whether a Type needs to be imported & java.time cleanup (#1642) 2018-11-06 07:36:09 +00:00
Filip Hrisafov
a0ae8750a1 Adapt japicmp-maven-plugin to not consider adding a new default method to an interface as incompatible
According to https://docs.oracle.com/javase/specs/jls/se8/html/jls-13.html#jls-13.5.3
Adding an abstract (default) method to an interface does not break compatibility with pre-existing binaries.
2018-11-03 08:55:10 +01:00
Filip Hrisafov
ec413118d6
Update build with latest dependencies and Java 8 baseline: (#1636)
* Do not use maven-processor-plugin and use the maven-compiler-plugin annotationProcessors instead
* Update NoPackageCyclesRule and exclude tests
* Update checkstyle to 8.14 and remove FIleContentsHolder module and move SuppressionCommentFilter to the TreeWalker
* Update assertj to 3.11.1 and replace usage of RuntimeIOException (from AssertJ) with UncheckedIOException (from java 8)
* Add how to import MapStruct into IntelliJ and Eclipse into the readme
2018-10-28 21:39:35 +01:00
Florian Tavares
71e9bd3699 #1301 code improvements / adaptations after language-level upgrade 2018-10-19 20:36:07 +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
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
dbc7c8a84d #782 Add integration tests for builders with FreeBuilder 2018-04-04 19:26:22 +02:00
Filip Hrisafov
45ab6e1c52 #782 Add integration tests for builders with AutoValue 2018-04-04 19:26:22 +02:00