Closed armiol closed 2 years ago
Merging #169 (1ef1832) into master (5ee6d4b) will increase coverage by
0.23%
. The diff coverage is88.59%
.
@@ Coverage Diff @@
## master #169 +/- ##
============================================
+ Coverage 87.14% 87.37% +0.23%
- Complexity 460 461 +1
============================================
Files 74 74
Lines 1742 1719 -23
Branches 81 81
============================================
- Hits 1518 1502 -16
+ Misses 194 188 -6
+ Partials 30 29 -1
This changeset migrates the project to JDK 11.
In particular, the changes were made to both build scripts and the source code.
Java 11 Target
Compilation target is now set to Java 11 for both the project source code and
buildSrc
.Please note that the Kotlin sources in the
buildSrc
are still compiled to Java 8. This is because of the compiler shipped along with thekotlin-dsl
plugin, which isn't capable of configuring the compilation target. See the corresponding issue in Kotlin, which has been already addressed in 1.6.0 — but not in Gradle'skotlin-dsl
.var
Implicit
var
syntax is now used instead of explicit type declaration where appropriate.In fact, we tend to write our code in a way that makes
var
s suitable in almost 100% of cases. In scope of this changeset, it's up to reviewers to judge whether such an approach is still comprehensible and readable. But the final policy onvar
usage is yet to be defined.Javac
ExtensionThe
Javac
extensions which we have inbuildSrc
are modified to exclude that JDK8-only restriction that we had previously. This is only done in scope of this repository. Eventually, this restriction will have to be removed inconfig
.Error Prone
Error Prone's
javac
module is no longer enabled, as no custom compiler is required for Error Prone starting JDK 9.Minor changes:
The GitHub Actions workflows are modified to run on JDK 11. This change has also been done locally. And similar to other
config
-related updates, that will be eventually moved toconfig
repository.The
README.md
has been updated with the JDK information — and! — the new badge, which displays the current GitHub Actions status.The latest
config
contents were used, so that the build scripts had to be updated toconfig
's latest API.The version of the library is now set to
2.0.0-SNAPSHOT.63
.