From dc9d94541445f9ff6968589188a6dadb91391b2d Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Tue, 5 May 2020 14:48:36 +0300 Subject: [PATCH 01/32] Translate `settings.gradle` into Kotlin --- license-report.md | 30 ++++++++++---------- settings.gradle => settings.gradle.kts | 38 +++++++++++++------------- 2 files changed, 34 insertions(+), 34 deletions(-) rename settings.gradle => settings.gradle.kts (68%) diff --git a/license-report.md b/license-report.md index acd9b28a8c..0ba7bcf9f4 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon Apr 27 19:58:27 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon Apr 27 19:58:28 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon Apr 27 19:58:29 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon Apr 27 19:58:29 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon Apr 27 19:58:30 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:17 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon Apr 27 19:58:30 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon Apr 27 19:58:31 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon Apr 27 19:58:31 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:32 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon Apr 27 19:58:32 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:32 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon Apr 27 19:58:32 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon Apr 27 19:58:33 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 13:29:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon Apr 27 19:58:34 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon Apr 27 19:58:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Tue May 05 13:29:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/settings.gradle b/settings.gradle.kts similarity index 68% rename from settings.gradle rename to settings.gradle.kts index b84f12d402..165102efb7 100644 --- a/settings.gradle +++ b/settings.gradle.kts @@ -18,33 +18,33 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -rootProject.name = 'spine-base' +rootProject.name = "spine-base" -include 'base' +include("base") -include 'testlib' +include("testlib") /** * Includes a module and sets custom project directory to it. */ -final def module = { final String name -> - include name - project(":$name").projectDir = new File("$rootDir/tools/$name") +fun module(name: String) { + include(name) + project(":$name").projectDir = File("$rootDir/tools/$name") } -module 'tool-base' -module 'plugin-base' -module 'plugin-testlib' +module("tool-base") +module("plugin-base") +module("plugin-testlib") -module 'mute-logging' -module 'errorprone-checks' -module 'javadoc-filter' -module 'javadoc-prettifier' -module 'model-compiler' +module("mute-logging") +module("errorprone-checks") +module("javadoc-filter") +module("javadoc-prettifier") +module("model-compiler") -module 'proto-dart-plugin' -module 'proto-js-plugin' +module("proto-dart-plugin") +module("proto-js-plugin") -module 'protoc-api' -module 'validation-generator' -module 'protoc-plugin' +module("protoc-api") +module("validation-generator") +module("protoc-plugin") From 207f593e2320cde1c4a2606f255fdab0724e4213 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Tue, 5 May 2020 15:48:11 +0300 Subject: [PATCH 02/32] Translate `version.gradle` into Kotlin --- base-validating-builders/build.gradle | 2 +- build.gradle | 6 ++-- license-report.md | 30 +++++++++---------- .../src/test/resources/build.gradle | 2 +- .../src/test/resources/build.gradle | 2 +- .../tools/gradle/testing/ProjectRoot.java | 11 +++---- .../src/test/resources/build.gradle | 2 +- .../src/test/resources/build.gradle | 2 +- tools/smoke-tests/build.gradle | 2 +- version.gradle => version.gradle.kts | 10 +++---- 10 files changed, 35 insertions(+), 34 deletions(-) rename version.gradle => version.gradle.kts (84%) diff --git a/base-validating-builders/build.gradle b/base-validating-builders/build.gradle index e5ecf222e9..4f86242182 100644 --- a/base-validating-builders/build.gradle +++ b/base-validating-builders/build.gradle @@ -19,7 +19,7 @@ */ buildscript { - apply from: "$projectDir/../version.gradle" + apply from: "$projectDir/../version.gradle.kts" apply from: "$projectDir/../config/gradle/dependencies.gradle" repositories { diff --git a/build.gradle b/build.gradle index d0af99995a..21ecb1d29d 100644 --- a/build.gradle +++ b/build.gradle @@ -22,7 +22,7 @@ buildscript { final scriptHandler -> // As long as `buildscript` section is always evaluated first, // we need to apply explicitly here. apply from: "$rootDir/config/gradle/dependencies.gradle" - apply from: "$rootDir/version.gradle" + apply from: "$rootDir/version.gradle.kts" defaultRepositories(scriptHandler) dependencies { @@ -34,7 +34,7 @@ buildscript { final scriptHandler -> forceConfiguration(scriptHandler) } -apply from: 'version.gradle' +apply from: 'version.gradle.kts' ext { groupId = 'io.spine' @@ -76,7 +76,7 @@ allprojects { subprojects { buildscript { final scriptHandler -> - apply from: "$rootDir/version.gradle" + apply from: "$rootDir/version.gradle.kts" defaultRepositories(scriptHandler) dependencies { diff --git a/license-report.md b/license-report.md index 0ba7bcf9f4..a6be021514 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:46:57 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Tue May 05 13:29:14 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:46:58 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:46:58 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Tue May 05 13:29:15 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:46:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:46:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Tue May 05 13:29:16 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:17 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:00 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Tue May 05 13:29:17 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:00 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Tue May 05 13:29:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Tue May 05 13:29:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Tue May 05 13:29:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Tue May 05 15:47:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Tue May 05 13:29:21 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Tue May 05 13:29:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Tue May 05 15:47:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/tools/javadoc-prettifier/src/test/resources/build.gradle b/tools/javadoc-prettifier/src/test/resources/build.gradle index 20d79ce57f..0622af5297 100644 --- a/tools/javadoc-prettifier/src/test/resources/build.gradle +++ b/tools/javadoc-prettifier/src/test/resources/build.gradle @@ -24,7 +24,7 @@ buildscript { apply from: "$rootDir/test-env.gradle" apply from: "$enclosingRootDir/config/gradle/dependencies.gradle" - apply from: "$enclosingRootDir/version.gradle" + apply from: "$enclosingRootDir/version.gradle.kts" repositories { mavenLocal() diff --git a/tools/model-compiler/src/test/resources/build.gradle b/tools/model-compiler/src/test/resources/build.gradle index 156bd81b1a..977e4c973c 100644 --- a/tools/model-compiler/src/test/resources/build.gradle +++ b/tools/model-compiler/src/test/resources/build.gradle @@ -26,7 +26,7 @@ buildscript { apply from: "$rootDir/test-env.gradle" apply from: "$enclosingRootDir/config/gradle/dependencies.gradle" - apply from: "$enclosingRootDir/version.gradle" + apply from: "$enclosingRootDir/version.gradle.kts" repositories { mavenLocal() diff --git a/tools/plugin-testlib/src/main/java/io/spine/tools/gradle/testing/ProjectRoot.java b/tools/plugin-testlib/src/main/java/io/spine/tools/gradle/testing/ProjectRoot.java index 8e58121c32..2126da6c60 100644 --- a/tools/plugin-testlib/src/main/java/io/spine/tools/gradle/testing/ProjectRoot.java +++ b/tools/plugin-testlib/src/main/java/io/spine/tools/gradle/testing/ProjectRoot.java @@ -28,17 +28,18 @@ import static java.nio.file.Files.exists; /** - * Finds a root of a project by presence of the {@link #VERSION_GRADLE_NAME version.gradle} file. + * Finds a root of a project by presence of the {@link #VERSION_GRADLE_NAME version.gradle.kts} + * file. * *

Starts from the current directory, climbing up, until the file is found. By convention - * a project should have only one {@link #VERSION_GRADLE_NAME version.gradle} file, which is + * a project should have only one {@link #VERSION_GRADLE_NAME version.gradle.kts} file, which is * placed in the root directory of the project. */ enum ProjectRoot { INSTANCE; - private static final String VERSION_GRADLE_NAME = "version.gradle"; + private static final String VERSION_GRADLE_NAME = "version.gradle.kts"; static ProjectRoot instance() { return INSTANCE; @@ -48,7 +49,7 @@ static ProjectRoot instance() { * Obtains a root directory of the project. * * @throws IllegalStateException - * if the {@link #VERSION_GRADLE_NAME version.gradle} file is not found + * if the {@link #VERSION_GRADLE_NAME version.gradle.kts} file is not found */ Path toPath() { Path workingFolderPath = Paths.get(".") @@ -69,7 +70,7 @@ Path toPath() { * Obtains root directory of the project. * * @throws IllegalStateException - * if the {@link #VERSION_GRADLE_NAME version.gradle} file is not found + * if the {@link #VERSION_GRADLE_NAME version.gradle.kts} file is not found * @see #toPath() */ File toFile() { diff --git a/tools/plugin-testlib/src/test/resources/build.gradle b/tools/plugin-testlib/src/test/resources/build.gradle index 21cab52cdc..8c46ee78b8 100644 --- a/tools/plugin-testlib/src/test/resources/build.gradle +++ b/tools/plugin-testlib/src/test/resources/build.gradle @@ -23,4 +23,4 @@ apply plugin: 'java' // NOTE: this file is copied from the root project in the test setup. apply from: "$rootDir/test-env.gradle" -apply from: "$enclosingRootDir/version.gradle" +apply from: "$enclosingRootDir/version.gradle.kts" diff --git a/tools/proto-js-plugin/src/test/resources/build.gradle b/tools/proto-js-plugin/src/test/resources/build.gradle index 313f62a4c4..b26a4c8d17 100644 --- a/tools/proto-js-plugin/src/test/resources/build.gradle +++ b/tools/proto-js-plugin/src/test/resources/build.gradle @@ -24,7 +24,7 @@ buildscript { apply from: "$rootDir/test-env.gradle" apply from: "$enclosingRootDir/config/gradle/dependencies.gradle" - apply from: "$enclosingRootDir/version.gradle" + apply from: "$enclosingRootDir/version.gradle.kts" repositories { mavenLocal() diff --git a/tools/smoke-tests/build.gradle b/tools/smoke-tests/build.gradle index 4098ded5bb..9802cec52a 100644 --- a/tools/smoke-tests/build.gradle +++ b/tools/smoke-tests/build.gradle @@ -20,7 +20,7 @@ buildscript { ext.baseRoot = "$rootDir/../.." - ext.versionGradle = "$baseRoot/version.gradle" + ext.versionGradle = "$baseRoot/version.gradle.kts" apply from: versionGradle diff --git a/version.gradle b/version.gradle.kts similarity index 84% rename from version.gradle rename to version.gradle.kts index 0d6aa31763..1371462425 100644 --- a/version.gradle +++ b/version.gradle.kts @@ -25,11 +25,11 @@ * as we want to manage the versions in a single source. */ -final def SPINE_VERSION = '1.5.11' +val SPINE_VERSION = "1.5.11" -ext { - spineVersion = SPINE_VERSION - spineBaseVersion = SPINE_VERSION // Used by `filter-internal-javadoc.gradle`. +project.extra.apply { + set("spineVersion", SPINE_VERSION) + set("spineBaseVersion", SPINE_VERSION) // Used by `filter-internal-javadoc.gradle`. - versionToPublish = SPINE_VERSION + set("versionToPublish", SPINE_VERSION) } From 72ab492a22af0eba87f450465af25aca12d3b31c Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 7 May 2020 15:49:58 +0300 Subject: [PATCH 03/32] Update Gradle --- gradle/wrapper/gradle-wrapper.jar | Bin 58695 -> 58694 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- license-report.md | 30 +++++++++--------- .../io/spine/tools/gradle/GradleTask.java | 6 ++-- .../gradle/wrapper/gradle-wrapper.jar | Bin 58695 -> 58694 bytes .../gradle/wrapper/gradle-wrapper.properties | 2 +- 6 files changed, 21 insertions(+), 19 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index f3d88b1c2faf2fc91d853cd5d4242b5547257070..490fda8577df6c95960ba7077c43220e5bb2c0d9 100644 GIT binary patch delta 6577 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 MViXjGx&OBR0?kH%b^rhX delta 6547 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 MViXjGx&OBR0?kH%b^rhX delta 6547 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 Date: Thu, 7 May 2020 15:50:17 +0300 Subject: [PATCH 04/32] Update config --- config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config b/config index cb8f3e1700..6d2a1b1388 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit cb8f3e170024a9972d0b89cfa25044d83bfb9b3e +Subproject commit 6d2a1b138818df7f89d5b00ef9cbd8fab59301e0 From 57c171bac33198f636977bafe250ea686977b783 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Fri, 8 May 2020 15:57:17 +0300 Subject: [PATCH 05/32] Translate root `build.gradle` into Kotlin and stage `Deps` object --- build.gradle | 257 --------------- build.gradle.kts | 235 ++++++++++++++ buildSrc/build.gradle.kts | 28 ++ .../kotlin/io/spine/gradle/internal/deps.kt | 306 ++++++++++++++++++ 4 files changed, 569 insertions(+), 257 deletions(-) delete mode 100644 build.gradle create mode 100644 build.gradle.kts create mode 100644 buildSrc/build.gradle.kts create mode 100644 buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 21ecb1d29d..0000000000 --- a/build.gradle +++ /dev/null @@ -1,257 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -buildscript { final scriptHandler -> - - // As long as `buildscript` section is always evaluated first, - // we need to apply explicitly here. - apply from: "$rootDir/config/gradle/dependencies.gradle" - apply from: "$rootDir/version.gradle.kts" - - defaultRepositories(scriptHandler) - dependencies { - classpath deps.build.guava - classpath deps.build.gradlePlugins.protobuf - classpath deps.build.gradlePlugins.errorProne - } - - forceConfiguration(scriptHandler) -} - -apply from: 'version.gradle.kts' - -ext { - groupId = 'io.spine' - credentialsPropertyFile = 'credentials.properties' - - projectsToPublish = [ - 'base', - 'tool-base', - 'testlib', - 'mute-logging', - 'errorprone-checks', - - // Gradle plugins - 'plugin-base', - 'javadoc-filter', - 'javadoc-prettifier', - 'proto-dart-plugin', - 'proto-js-plugin', - 'model-compiler', - - 'plugin-testlib', - - // Protoc compiler plugin - 'protoc-api', - 'validation-generator', - 'protoc-plugin' - ] -} - -allprojects { - apply plugin: 'jacoco' - apply plugin: 'idea' - apply plugin: 'project-report' - - // Use the same version numbering for the Spine Base library. - version = versionToPublish -} - -subprojects { - buildscript { final scriptHandler -> - - apply from: "$rootDir/version.gradle.kts" - - defaultRepositories(scriptHandler) - dependencies { - classpath deps.build.guava - classpath deps.build.gradlePlugins.protobuf - } - - forceConfiguration(scriptHandler) - } - - project.ext { - spineProtobufPluginId = 'io.spine.tools.spine-model-compiler' - - sourcesRootDir = "$projectDir/src" - generatedRootDir = "$projectDir/generated" - - generatedJavaDir = "$generatedRootDir/main/java" - generatedTestJavaDir = "$generatedRootDir/test/java" - - generatedGrpcDir = "$generatedRootDir/main/grpc" - generatedTestGrpcDir = "$generatedRootDir/test/grpc" - - generatedSpineDir = "$generatedRootDir/main/spine" - generatedTestSpineDir = "$generatedRootDir/test/spine" - - runsOnWindows = org.gradle.internal.os.OperatingSystem.current().isWindows() - } - - apply plugin: 'java-library' - apply plugin: 'pmd' - apply plugin: 'com.google.protobuf' - apply plugin: 'net.ltgt.errorprone' - - apply plugin: 'maven-publish' - - apply from: deps.scripts.projectLicenseReport - - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - - defaultRepositories(project) - dependencies { - errorprone deps.build.errorProneCore - errorproneJavac deps.build.errorProneJavac - // For dependencies config. based on version of Java, see: - // https://github.com/epeee/junit-jupiter-extension-testing/blob/57b7ba75ab64ed8c229d2a5b14a954d6ae359189/gradle/errorprone.gradle - - api( - deps.build.protobuf, - deps.build.flogger - ) - implementation( - deps.build.guava, - deps.build.checkerAnnotations, - deps.build.errorProneAnnotations, - deps.build.jsr305Annotations - ) - testImplementation( - deps.test.guavaTestlib, - deps.test.junit5Api, - deps.test.junit5Runner, - deps.test.junitPioneer - ) - runtimeOnly deps.runtime.floggerSystemBackend - } - - forceConfiguration(project) - configurations { - // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` - runtime.exclude group: "com.google.protobuf", module: "protobuf-lite" - testRuntime.exclude group: "com.google.protobuf", module: "protobuf-lite" - } - - sourceSets { - main { - java.srcDirs generatedJavaDir, "$sourcesRootDir/main/java", generatedSpineDir - resources.srcDirs "$sourcesRootDir/main/resources", "$generatedRootDir/main/resources" - } - test { - java.srcDirs generatedTestJavaDir, "$sourcesRootDir/test/java", generatedTestSpineDir - resources.srcDirs "$sourcesRootDir/test/resources", "$generatedRootDir/test/resources" - } - } - - protobuf { - generatedFilesBaseDir = generatedRootDir - - protoc { - artifact = deps.build.protoc - } - } - - test { - useJUnitPlatform { - includeEngines 'junit-jupiter' - } - - include "**/*Test.class" - } - - apply from: deps.scripts.testOutput - apply from: deps.scripts.javadocOptions - apply from: deps.scripts.javacArgs - - task sourceJar(type: Jar) { - from sourceSets.main.allJava - archiveClassifier.set("sources") - } - - task testOutputJar(type: Jar) { - from sourceSets.test.output - archiveClassifier.set("test") - } - - task javadocJar(type: Jar, dependsOn: 'javadoc') { - from "$projectDir/build/docs/javadoc" - archiveClassifier.set("javadoc") - } - - // Apply the same IDEA module configuration for each of sub-projects. - idea { - module { - generatedSourceDirs += file(generatedJavaDir) - testSourceDirs += file(generatedTestJavaDir) - downloadJavadoc = true - downloadSources = true - - iml { - beforeMerged { final module -> - module.dependencies.clear() - } - whenMerged { final module -> - module.dependencies*.exported = true - } - } - } - } - - task cleanGenerated(type: Delete) { - delete = "$projectDir/generated" - } - - clean.dependsOn cleanGenerated - - apply from: deps.scripts.pmd -} - -// IDEA project configuration. -idea { - project { - ipr { - beforeMerged { final project -> - project.modulePaths.clear() - } - withXml { final provider -> - provider.node.component - .find { it.@name == 'VcsDirectoryMappings' } - .mapping.@vcs = 'Git' - } - } - } -} - -apply from: deps.scripts.jacoco -apply from: deps.scripts.publish -apply from: deps.scripts.runBuild -apply from: deps.scripts.generatePom -apply from: deps.scripts.repoLicenseReport - -task smokeTests { - doLast { - runBuild("$rootDir/tools/smoke-tests") - } -} - -task buildAll { - dependsOn build, smokeTests -} diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000000..58132f9ae5 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,235 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import io.spine.gradle.internal.DependencyResolution +import io.spine.gradle.internal.Deps +import io.spine.gradle.internal.PublishingRepos +import org.gradle.internal.os.OperatingSystem + +buildscript { + apply(from = "$rootDir/version.gradle.kts") + + @Suppress("RemoveRedundantQualifierName") // Cannot use imports here. + val resolution = io.spine.gradle.internal.DependencyResolution + @Suppress("RemoveRedundantQualifierName") + val deps = io.spine.gradle.internal.Deps + resolution.defaultRepositories(repositories) + dependencies { + classpath(deps.build.gradlePlugins.protobuf) + classpath(deps.build.gradlePlugins.errorProne) + } + resolution.forceConfiguration(configurations) +} + +// Apply some plugins to make type-safe extension accessors available in this script file. +plugins { + java + idea + @Suppress("RemoveRedundantQualifierName") // Cannot use imports here. + id("com.google.protobuf").version(io.spine.gradle.internal.Deps.versions.protobufPlugin) +} + +apply(from = "$rootDir/version.gradle.kts") + +extra.apply { + this["groupId"] = "io.spine" + this["publishToRepository"] = PublishingRepos.cloudRepo + this["projectsToPublish"] = listOf( + "base", + "tool-base", + "testlib", + "mute-logging", + "errorprone-checks", + + // Gradle plugins + "plugin-base", + "javadoc-filter", + "javadoc-prettifier", + "proto-dart-plugin", + "proto-js-plugin", + "model-compiler", + + "plugin-testlib", + + // Protoc compiler plugin + "protoc-api", + "validation-generator", + "protoc-plugin" + ) +} + +allprojects { + apply { + plugin("jacoco") + plugin("idea") + plugin("project-report") + from("$rootDir/config/gradle/dependencies.gradle") + } + version = rootProject.extra["versionToPublish"]!! + version = rootProject.extra["versionToPublish"]!! +} + +subprojects { + buildscript { + apply(from = "$rootDir/version.gradle.kts") + + DependencyResolution.defaultRepositories(repositories) + dependencies { + classpath(Deps.build.gradlePlugins.protobuf) + classpath(Deps.build.gradlePlugins.errorProne) + } + DependencyResolution.forceConfiguration(configurations) + } + + val sourcesRootDir by extra("$projectDir/src") + val generatedRootDir by extra("$projectDir/generated") + val generatedJavaDir by extra("$generatedRootDir/main/java") + val generatedTestJavaDir by extra("$generatedRootDir/test/java") + val generatedSpineDir by extra("$generatedRootDir/main/spine") + val generatedTestSpineDir by extra("$generatedRootDir/test/spine") + + // TODO: Move to the usage site. + extra["runsOnWindows"] = OperatingSystem.current().isWindows + + apply { + plugin("java-library") + plugin("pmd") + plugin("com.google.protobuf") + plugin("net.ltgt.errorprone") + plugin("maven-publish") + from(Deps.scripts.projectLicenseReport(project)) + } + + the().apply { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + + DependencyResolution.defaultRepositories(repositories) + dependencies { + "errorprone"(Deps.build.errorProneCore) + "errorproneJavac"(Deps.build.errorProneJavac) + Deps.build.protobuf.forEach { "api"(it) } + "api"(Deps.build.flogger) + "implementation"(Deps.build.guava) + "implementation"(Deps.build.checkerAnnotations) + "implementation"(Deps.build.jsr305Annotations) + Deps.build.errorProneAnnotations.forEach { "implementation"(it) } + "testImplementation"(Deps.test.guavaTestlib) + "testImplementation"(Deps.test.junit5Runner) + "testImplementation"(Deps.test.junitPioneer) + Deps.test.junit5Api.forEach { "testImplementation"(it) } + "runtimeOnly"(Deps.runtime.floggerSystemBackend) + } + + DependencyResolution.forceConfiguration(configurations) + configurations { + named("runtime").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + named("testRuntime").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + } + + java { + sourceSets["main"].apply { + java.srcDirs(generatedJavaDir, "$sourcesRootDir/main/java", generatedSpineDir) + resources.srcDirs("$sourcesRootDir/main/resources", "$generatedRootDir/main/resources") + } + sourceSets["test"].apply { + java.srcDirs(generatedTestJavaDir, "$sourcesRootDir/test/java", generatedTestSpineDir) + resources.srcDirs("$sourcesRootDir/test/resources", "$generatedRootDir/test/resources") + } + } + + protobuf { + protobuf.generatedFilesBaseDir = generatedRootDir + + protobuf.protoc(object : groovy.lang.Closure(this) { + private fun doCall(locator: com.google.protobuf.gradle.ExecutableLocator) { + locator.artifact = Deps.build.protoc + } + }) + } + + (tasks["test"] as Test).apply { + useJUnitPlatform { + includeEngines("junit-jupiter") + } + include("**/*Test.class") + } + + apply { + from(Deps.scripts.testOutput(project)) + from(Deps.scripts.javadocOptions(project)) + from(Deps.scripts.javacArgs(project)) + } + + tasks.create("sourceJar", Jar::class) { + from(sourceSets["main"].allJava) + archiveClassifier.set("sources") + } + + tasks.create("testOutputJar", Jar::class) { + from(sourceSets["test"].output) + archiveClassifier.set("test") + } + + tasks.register("javadocJar", Jar::class) { + from("$projectDir/build/docs/javadoc") + archiveClassifier.set("javadoc") + dependsOn("javadoc") + } + + idea { + module { + generatedSourceDirs.add(project.file(generatedJavaDir)) + testSourceDirs.add(project.file(generatedTestJavaDir)) + isDownloadJavadoc = true + isDownloadSources = true + } + } + + val cleanGenerated by tasks.registering(Delete::class) { + delete("$projectDir/generated") + } + + tasks["clean"].dependsOn(cleanGenerated) + + apply(from = Deps.scripts.pmd(project)) +} + +apply { + from(Deps.scripts.jacoco(project)) + from(Deps.scripts.publish(project)) + from(Deps.scripts.runBuild(project)) + from(Deps.scripts.generatePom(project)) + from(Deps.scripts.repoLicenseReport(project)) +} + +val smokeTests = "smokeTests" + +tasks.register(smokeTests) { + doLast { + val runBuild: (String) -> Unit by extra + runBuild("$rootDir/tools/smoke-tests") + } +} + +tasks.register("buildAll") { + dependsOn("build", smokeTests) +} diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts new file mode 100644 index 0000000000..bdfd32a6d6 --- /dev/null +++ b/buildSrc/build.gradle.kts @@ -0,0 +1,28 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +plugins { + kotlin("jvm").version("1.3.72") +} + +repositories { + mavenLocal() + jcenter() +} diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt new file mode 100644 index 0000000000..c34fee5d76 --- /dev/null +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -0,0 +1,306 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package io.spine.gradle.internal + +import org.gradle.api.Project +import org.gradle.api.artifacts.ConfigurationContainer +import org.gradle.api.artifacts.dsl.RepositoryHandler +import java.net.URI + +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * This file describes shared dependencies of Spine sub-projects. + * + * Inspired by dependency management of the Uber's NullAway project: + * https://github.com/uber/NullAway/blob/master/gradle/dependencies.gradle + */ + +// Repositories to which we may publish. Normally, only one repository will be used. +// See `publish.gradle.kts` for details of the publishing process. + +data class Repository(val releases: String, + val snapshots: String, + val credentials: String) + +object PublishingRepos { + val mavenTeamDev = Repository( + releases = "http://maven.teamdev.com/repository/spine", + snapshots = "http://maven.teamdev.com/repository/spine-snapshots", + credentials = "credentials.properties" + ) + val cloudRepo = Repository( + releases = "https://spine.mycloudrepo.io/public/repositories/releases", + snapshots = "https://spine.mycloudrepo.io/public/repositories/snapshots", + credentials = "cloudrepo.properties" + ) +} + +// Specific repositories. +object Repos { + val oldSpine: String = PublishingRepos.mavenTeamDev.releases + val oldSpineSnapshots: String = PublishingRepos.mavenTeamDev.snapshots + + val spine: String = PublishingRepos.cloudRepo.releases + val spineSnapshots: String = PublishingRepos.cloudRepo.snapshots + + val sonatypeSnapshots: String = "https://oss.sonatype.org/content/repositories/snapshots" + val gradlePlugins = "https://plugins.gradle.org/m2/" +} + +object Versions { + val slf4j = "1.7.29" // deprecated, remove after full migration + val checkerFramework = "3.3.0" + val errorProne = "2.3.4" + val errorProneJavac = "9+181-r4173-1" // taken from here: https://github.com/tbroyer/gradle-errorprone-plugin/blob/v0.8/build.gradle.kts + val errorPronePlugin = "1.1.1" + val pmd = "6.20.0" + val checkstyle = "8.29" + val protobufPlugin = "0.8.12" + val appengineApi = "1.9.79" + val appenginePlugin = "2.2.0" + val findBugs = "3.0.2" + val guava = "29.0-jre" + val protobuf = "3.11.4" + val grpc = "1.28.1" + val flogger = "0.5.1" + val junit4 = "4.12" + val junit5 = "5.6.2" + val junitPlatform = "1.6.2" + val junitPioneer = "0.4.2" + val truth = "1.0.1" + val httpClient = "1.34.2" + val apacheHttpClient = "2.1.2" + val firebaseAdmin = "6.12.2" + val roaster = "2.21.2.Final" + val licensePlugin = "1.13" + val javaPoet = "1.12.1" + val autoService = "1.0-rc6" + val autoCommon = "0.10" + val jackson = "2.9.10.4" + val animalSniffer = "1.18" + val apiguardian = "1.1.0" +} + +object GradlePlugins { + val errorProne = "net.ltgt.gradle:gradle-errorprone-plugin:${Versions.errorPronePlugin}" + val protobuf = "com.google.protobuf:protobuf-gradle-plugin:${Versions.protobufPlugin}" + val appengine = "com.google.cloud.tools:appengine-gradle-plugin:${Versions.appenginePlugin}" + val licenseReport = "com.github.jk1:gradle-license-report:${Versions.licensePlugin}" +} + +object AutoService { + val annotations = "com.google.auto.service:auto-service-annotations:${Versions.autoService}" + val processor = "com.google.auto.service:auto-service:${Versions.autoService}" +} + +object Build { + val errorProneJavac = "com.google.errorprone:javac:${Versions.errorProneJavac}" + val errorProneAnnotations = listOf( + "com.google.errorprone:error_prone_annotations:${Versions.errorProne}", + "com.google.errorprone:error_prone_type_annotations:${Versions.errorProne}" + ) + val errorProneCheckApi = "com.google.errorprone:error_prone_check_api:${Versions.errorProne}" + val errorProneCore = "com.google.errorprone:error_prone_core:${Versions.errorProne}" + val errorProneTestHelpers = "com.google.errorprone:error_prone_test_helpers:${Versions.errorProne}" + val checkerAnnotations = "org.checkerframework:checker-qual:${Versions.checkerFramework}" + val checkerDataflow = listOf( + "org.checkerframework:dataflow:${Versions.checkerFramework}", + "org.checkerframework:javacutil:${Versions.checkerFramework}" + ) + val autoCommon = "com.google.auto:auto-common:${Versions.autoCommon}" + val autoService = AutoService + val jsr305Annotations = "com.google.code.findbugs:jsr305:${Versions.findBugs}" + val guava = "com.google.guava:guava:${Versions.guava}" + val flogger = "com.google.flogger:flogger:${Versions.flogger}" + val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" + val protobuf = listOf( + "com.google.protobuf:protobuf-java:${Versions.protobuf}", + "com.google.protobuf:protobuf-java-util:${Versions.protobuf}" + ) + val protoc = "com.google.protobuf:protoc:${Versions.protobuf}" + val googleHttpClient = "com.google.http-client:google-http-client:${Versions.httpClient}" + val googleHttpClientApache = "com.google.http-client:google-http-client-apache:${Versions.apacheHttpClient}" + val appengineApi = "com.google.appengine:appengine-api-1.0-sdk:${Versions.appengineApi}" + val firebaseAdmin = "com.google.firebase:firebase-admin:${Versions.firebaseAdmin}" + val jacksonDatabind = "com.fasterxml.jackson.core:jackson-databind:${Versions.jackson}" + val roasterApi = "org.jboss.forge.roaster:roaster-api:${Versions.roaster}" + val roasterJdt = "org.jboss.forge.roaster:roaster-jdt:${Versions.roaster}" + val animalSniffer = "org.codehaus.mojo:animal-sniffer-annotations:${Versions.animalSniffer}" + val ci = "true".equals(System.getenv("CI")) + val gradlePlugins = GradlePlugins +} + +object Gen { + val javaPoet = "com.squareup:javapoet:${Versions.javaPoet}" +} + +object Grpc { + val grpcCore = "io.grpc:grpc-core:${Versions.grpc}" + val grpcStub = "io.grpc:grpc-stub:${Versions.grpc}" + val grpcOkHttp = "io.grpc:grpc-okhttp:${Versions.grpc}" + val grpcProtobuf = "io.grpc:grpc-protobuf:${Versions.grpc}" + val grpcNetty = "io.grpc:grpc-netty:${Versions.grpc}" + val grpcNettyShaded = "io.grpc:grpc-netty-shaded:${Versions.grpc}" + val grpcContext = "io.grpc:grpc-context:${Versions.grpc}" +} + +object Runtime { + val floggerSystemBackend = "com.google.flogger:flogger-system-backend:${Versions.flogger}" + val floggerLog4J = "com.google.flogger:flogger-log4j:${Versions.flogger}" + val floggerSlf4J = "com.google.flogger:slf4j-backend-factory:${Versions.flogger}" +} + +object Test { + val junit4 = "junit:junit:${Versions.junit4}" + val junit5Api = listOf( + "org.junit.jupiter:junit-jupiter-api:${Versions.junit5}", + "org.junit.jupiter:junit-jupiter-params:${Versions.junit5}", + "org.apiguardian:apiguardian-api:${Versions.apiguardian}" + ) + val junit5Runner = "org.junit.jupiter:junit-jupiter-engine:${Versions.junit5}" + val junitPioneer = "org.junit-pioneer:junit-pioneer:${Versions.junitPioneer}" + val slf4j = "org.slf4j:slf4j-jdk14:${Versions.slf4j}" + val guavaTestlib = "com.google.guava:guava-testlib:${Versions.guava}" + val mockito = "org.mockito:mockito-core:2.12.0" + val hamcrest = "org.hamcrest:hamcrest-all:1.3" + val truth = listOf( + "com.google.truth:truth:${Versions.truth}", + "com.google.truth.extensions:truth-java8-extension:${Versions.truth}", + "com.google.truth.extensions:truth-proto-extension:${Versions.truth}" + ) +} + +object Scripts { + fun testArtifacts(p: Project) = "${p.rootDir}/config/gradle/test-artifacts.gradle" + fun testOutput(p: Project) = "${p.rootDir}/config/gradle/test-output.gradle" + fun slowTests(p: Project) = "${p.rootDir}/config/gradle/slow-tests.gradle" + fun javadocOptions(p: Project) = "${p.rootDir}/config/gradle/javadoc-options.gradle" + fun filterInternalJavadocs(p: Project) = "${p.rootDir}/config/gradle/filter-internal-javadoc.gradle" + fun jacoco(p: Project) = "${p.rootDir}/config/gradle/jacoco.gradle" + fun publish(p: Project) = "${p.rootDir}/config/gradle/publish.gradle" + fun publishProto(p: Project) = "${p.rootDir}/config/gradle/publish-proto.gradle" + fun javacArgs(p: Project) = "${p.rootDir}/config/gradle/javac-args.gradle" + fun jsBuildTasks(p: Project) = "${p.rootDir}/config/gradle/js/build-tasks.gradle" + fun jsConfigureProto(p: Project) = "${p.rootDir}/config/gradle/js/configure-proto.gradle" + fun npmPublishTasks(p: Project) = "${p.rootDir}/config/gradle/js/npm-publish-tasks.gradle" + fun npmCli(p: Project) = "${p.rootDir}/config/gradle/js/npm-cli.gradle" + fun updatePackageVersion(p: Project) = "${p.rootDir}/config/gradle/js/update-package-version.gradle" + fun dartBuildTasks(p: Project) = "${p.rootDir}/config/gradle/dart/build-tasks.gradle" + fun pubPublishTasks(p: Project) = "${p.rootDir}/config/gradle/dart/pub-publish-tasks.gradle" + fun pmd(p: Project) = "${p.rootDir}/config/gradle/pmd.gradle" + fun checkstyle(p: Project) = "${p.rootDir}/config/gradle/checkstyle.gradle" + fun runBuild(p: Project) = "${p.rootDir}/config/gradle/run-build.gradle" + fun modelCompiler(p: Project) = "${p.rootDir}/config/gradle/model-compiler.gradle" + fun licenseReportCommon(p: Project) = "${p.rootDir}/config/gradle/license-report-common.gradle" + fun projectLicenseReport(p: Project) = "${p.rootDir}/config/gradle/license-report-project.gradle" + fun repoLicenseReport(p: Project) = "${p.rootDir}/config/gradle/license-report-repo.gradle" + fun generatePom(p: Project) = "${p.rootDir}/config/gradle/generate-pom.gradle" + fun updateGitHubPages(p: Project) = "${p.rootDir}/config/gradle/update-gh-pages.gradle" +} + +object Deps { + val build = Build + val grpc = Grpc + val gen = Gen + val runtime = Runtime + val test = Test + val versions = Versions + val scripts = Scripts +} + +object DependencyResolution { + + fun forceConfiguration(configurations: ConfigurationContainer) { + configurations.all { config -> + config.resolutionStrategy { strategy -> + strategy.failOnVersionConflict() + strategy.cacheChangingModulesFor(0, "seconds") + strategy.force( + Deps.build.slf4j, + Deps.build.errorProneAnnotations, + Deps.build.jsr305Annotations, + Deps.build.checkerAnnotations, + Deps.build.autoCommon, + Deps.build.guava, + Deps.build.animalSniffer, + Deps.build.protobuf, + Deps.test.guavaTestlib, + Deps.test.truth, + Deps.test.junit5Api, + Deps.test.junit4, + + // Transitive dependencies of 3rd party components that we don"t use directly. + "com.google.code.gson:gson:2.8.6", + "com.google.j2objc:j2objc-annotations:1.3", + "org.codehaus.plexus:plexus-utils:3.3.0", + "com.squareup.okio:okio:1.17.5", // Last version before next major. + "commons-cli:commons-cli:1.4", + + // Force discontinued transitive dependency until everybody migrates off it. + "org.checkerframework:checker-compat-qual:2.5.5", + + "commons-logging:commons-logging:1.2", + + // Force the Gradle Protobuf plugin version. + Deps.build.gradlePlugins.protobuf + ) + } + } + } + + fun defaultRepositories(repositories: RepositoryHandler) { + repositories.mavenLocal() + repositories.maven { repository -> + repository.url = URI(Repos.spine) + repository.content { descriptor -> + descriptor.includeGroup("io.spine") + descriptor.includeGroup("io.spine.tools") + descriptor.includeGroup("io.spine.gcloud") + } + } + repositories.jcenter() + repositories.maven { repository -> + repository.url = URI(Repos.gradlePlugins) + } + } +} + + + From 2d1f833dd19035de36db0ad93bd4d8cb14d09d22 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Fri, 8 May 2020 16:13:41 +0300 Subject: [PATCH 06/32] Make `version.gradle.kts` prettier --- version.gradle.kts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/version.gradle.kts b/version.gradle.kts index 1371462425..d307d56558 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -28,8 +28,7 @@ val SPINE_VERSION = "1.5.11" project.extra.apply { - set("spineVersion", SPINE_VERSION) - set("spineBaseVersion", SPINE_VERSION) // Used by `filter-internal-javadoc.gradle`. - - set("versionToPublish", SPINE_VERSION) + this["spineVersion"] = SPINE_VERSION + this["spineBaseVersion"] = SPINE_VERSION // Used by `filter-internal-javadoc.gradle`. + this["versionToPublish"] = SPINE_VERSION } From 771b67dcfa3017ae7a9ba0aab569e28bca478a0a Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Fri, 8 May 2020 17:32:38 +0300 Subject: [PATCH 07/32] Extract `RunBuild` as a task class --- build.gradle.kts | 9 +-- .../io/spine/gradle/internal/RunBuild.kt | 79 +++++++++++++++++++ license-report.md | 30 +++---- .../io/spine/tools/gradle/GradleTask.java | 29 +++---- 4 files changed, 110 insertions(+), 37 deletions(-) create mode 100644 buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt diff --git a/build.gradle.kts b/build.gradle.kts index 58132f9ae5..e731a4164d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -21,6 +21,7 @@ import io.spine.gradle.internal.DependencyResolution import io.spine.gradle.internal.Deps import io.spine.gradle.internal.PublishingRepos +import io.spine.gradle.internal.RunBuild import org.gradle.internal.os.OperatingSystem buildscript { @@ -216,18 +217,14 @@ subprojects { apply { from(Deps.scripts.jacoco(project)) from(Deps.scripts.publish(project)) - from(Deps.scripts.runBuild(project)) from(Deps.scripts.generatePom(project)) from(Deps.scripts.repoLicenseReport(project)) } val smokeTests = "smokeTests" -tasks.register(smokeTests) { - doLast { - val runBuild: (String) -> Unit by extra - runBuild("$rootDir/tools/smoke-tests") - } +tasks.register(smokeTests, RunBuild::class) { + directory = "$rootDir/tools/smoke-tests" } tasks.register("buildAll") { diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt new file mode 100644 index 0000000000..aa90585467 --- /dev/null +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt @@ -0,0 +1,79 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package io.spine.gradle.internal + +import org.gradle.api.GradleException +import org.gradle.api.internal.AbstractTask +import org.gradle.api.tasks.TaskAction +import org.gradle.internal.os.OperatingSystem +import java.io.File + +open class RunBuild : AbstractTask() { + + lateinit var directory: String + + @TaskAction + private fun execute() { + val runsOnWindows = OperatingSystem.current().isWindows() + val script = if (runsOnWindows) "gradlew.bat" else "gradlew" + val command = buildCommand(script) + + // Ensure build error output log. + // Since we're executing this task in another process, we redirect error output to + // the file under the `build` directory. + val buildDir = File(directory, "build") + if (!buildDir.exists()) { + buildDir.mkdir() + } + val errorOut = File(buildDir, "error-out.txt") + val debugOut = File(buildDir, "debug-out.txt") + + val process = buildProcess(command, errorOut, debugOut) + if (process.waitFor() != 0) { + throw GradleException("Build FAILED. See $errorOut for details.") + } + } + + private fun buildCommand(script: String): List { + val command = mutableListOf() + command.add("${project.rootDir}/$script") + val shouldClean = project.gradle + .getTaskGraph() + .hasTask(":clean") + if (shouldClean) { + command.add("clean") + } + command.add("build") + command.add("--console=plain") + command.add("--debug") + command.add("--stacktrace") + return command + } + + private fun buildProcess(command: List, errorOut: File, debugOut: File) = + ProcessBuilder() + .command(command) + .directory(project.file(directory)) + .redirectError(errorOut) + .redirectOutput(debugOut) + .start() + +} diff --git a/license-report.md b/license-report.md index fda0e4d2f2..828d33a5cc 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:33 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Wed May 06 16:20:33 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Wed May 06 16:20:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:36 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Wed May 06 16:20:36 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Wed May 06 16:20:37 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Wed May 06 16:20:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Wed May 06 16:20:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Wed May 06 16:20:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Wed May 06 16:20:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Wed May 06 16:20:40 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:41 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Wed May 06 16:20:41 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:41 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Wed May 06 16:20:41 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Wed May 06 16:20:42 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 06 16:20:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/tools/plugin-base/src/main/java/io/spine/tools/gradle/GradleTask.java b/tools/plugin-base/src/main/java/io/spine/tools/gradle/GradleTask.java index d7e857e838..f37f92d4b6 100644 --- a/tools/plugin-base/src/main/java/io/spine/tools/gradle/GradleTask.java +++ b/tools/plugin-base/src/main/java/io/spine/tools/gradle/GradleTask.java @@ -22,18 +22,19 @@ import com.google.common.base.MoreObjects; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import org.checkerframework.checker.nullness.qual.MonotonicNonNull; import org.checkerframework.checker.nullness.qual.Nullable; import org.gradle.api.Action; import org.gradle.api.Project; import org.gradle.api.Task; import org.gradle.api.file.FileCollection; -import org.gradle.api.internal.file.UnionFileCollection; import org.gradle.api.tasks.TaskContainer; +import java.io.File; import java.io.Serializable; +import java.util.HashSet; import java.util.Map; import java.util.Objects; +import java.util.Set; import static com.google.common.base.Preconditions.checkNotNull; import static com.google.common.base.Preconditions.checkState; @@ -99,9 +100,11 @@ public static final class Builder { private boolean allowNoDependencies; - private @MonotonicNonNull UnionFileCollection inputs; + private boolean hasInputFiles = false; + private final Set inputs = new HashSet<>(); private Map inputProperties; - private @MonotonicNonNull UnionFileCollection outputs; + private boolean hasOutputFiles = false; + private final Set outputs = new HashSet<>(); Builder(TaskName name, Action action) { this.name = name; @@ -203,11 +206,8 @@ public Builder allowNoDependencies() { */ public Builder withInputFiles(FileCollection inputs) { checkNotNull(inputs, "Task inputs"); - if (this.inputs == null) { - this.inputs = new UnionFileCollection(); - } else { - this.inputs = new UnionFileCollection(this.inputs, inputs); - } + this.inputs.addAll(inputs.getFiles()); + hasInputFiles = true; return this; } @@ -248,11 +248,8 @@ public Builder withInputProperty(String propertyName, @Nullable Serializable val */ public Builder withOutputFiles(FileCollection outputs) { checkNotNull(outputs, "Task outputs"); - if (this.outputs == null) { - this.outputs = new UnionFileCollection(); - } else { - this.outputs = new UnionFileCollection(this.outputs, outputs); - } + this.outputs.addAll(outputs.getFiles()); + hasOutputFiles = true; return this; } @@ -319,7 +316,7 @@ private void dependTaskOnAllProjects(Task task, Project rootProject) { } private void addTaskIO(Task task) { - if (inputs != null) { + if (hasInputFiles) { task.getInputs() .files(inputs) .skipWhenEmpty() @@ -329,7 +326,7 @@ private void addTaskIO(Task task) { task.getInputs() .properties(inputProperties); } - if (outputs != null) { + if (hasOutputFiles) { task.getOutputs() .files(outputs) .optional(); From 17f578114c1d74c12c846d3fd9fabb145a30b4dd Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 11 May 2020 13:44:42 +0300 Subject: [PATCH 08/32] Document `RunBuild` task --- .../kotlin/io/spine/gradle/internal/RunBuild.kt | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt index aa90585467..c083ad952a 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/RunBuild.kt @@ -26,8 +26,20 @@ import org.gradle.api.tasks.TaskAction import org.gradle.internal.os.OperatingSystem import java.io.File +/** + * A Gradle task which runs another Gradle build. + * + * Launches Gradle wrapper under a given [directory] with the `build` task. The `clean` task is also + * run if current build includes a `clean` task. + * + * The build writes verbose log into `$directory/build/debug-out.txt`. The error output is written + * into `$directory/build/error-out.txt`. + */ open class RunBuild : AbstractTask() { + /** + * Path to the directory which contains a Gradle wrapper script. + */ lateinit var directory: String @TaskAction @@ -56,7 +68,7 @@ open class RunBuild : AbstractTask() { val command = mutableListOf() command.add("${project.rootDir}/$script") val shouldClean = project.gradle - .getTaskGraph() + .taskGraph .hasTask(":clean") if (shouldClean) { command.add("clean") @@ -75,5 +87,4 @@ open class RunBuild : AbstractTask() { .redirectError(errorOut) .redirectOutput(debugOut) .start() - } From 340a48e6c4bb6043e3cce511706991ac001da397 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Tue, 12 May 2020 15:35:46 +0300 Subject: [PATCH 09/32] Use Gradle `all` distro for debug purposes --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4c5803d13c..fd0c5a38e9 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists From ec40086bf389c6355998e9577c845964e4ce682a Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Tue, 12 May 2020 15:36:04 +0300 Subject: [PATCH 10/32] Update config --- config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config b/config index 6d2a1b1388..754754afca 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit 6d2a1b138818df7f89d5b00ef9cbd8fab59301e0 +Subproject commit 754754afca3133c7748a055bd053f19151f0daaa From c13f231c647f20909cb89e87a42597d3b6751836 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Tue, 12 May 2020 15:36:42 +0300 Subject: [PATCH 11/32] Use `RunBuild` instead of `run-build.gradle` --- base/build.gradle | 13 +++++++------ license-report.md | 30 +++++++++++++++--------------- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/base/build.gradle b/base/build.gradle index 834d5b960e..c3d437cbfb 100644 --- a/base/build.gradle +++ b/base/build.gradle @@ -18,6 +18,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ + +import io.spine.gradle.internal.RunBuild + import java.nio.file.Files group = 'io.spine' @@ -25,7 +28,6 @@ group = 'io.spine' apply from: "$projectDir/script/protobuf.gradle" apply from: deps.scripts.testArtifacts -apply from: deps.scripts.runBuild dependencies { annotationProcessor deps.build.autoService.processor @@ -81,12 +83,11 @@ jar { apply from: deps.scripts.publishProto -task rebuildProtobuf { - dependsOn(rootProject.subprojects*.getTasksByName('publishToMavenLocal', false)) +task rebuildProtobuf(type: RunBuild) { - doLast { - runBuild("$rootDir/base-validating-builders") - } + directory = "$rootDir/base-validating-builders" + + dependsOn(rootProject.subprojects*.getTasksByName('publishToMavenLocal', false)) } project.getTasksByName('publish', false)*.dependsOn rebuildProtobuf diff --git a/license-report.md b/license-report.md index 828d33a5cc..7b3f4125c9 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Fri May 08 16:58:14 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Fri May 08 16:58:16 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Fri May 08 16:58:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Fri May 08 16:58:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Fri May 08 16:58:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Fri May 08 16:58:21 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Fri May 08 16:58:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri May 08 16:58:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 11 14:26:40 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From 248150531e3a2d6432181509a7b381e6e3b8d125 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Wed, 13 May 2020 13:29:38 +0300 Subject: [PATCH 12/32] Translate `base/build.gradle` into Kotlin --- base/build.gradle | 95 ----------------------- base/build.gradle.kts | 150 ++++++++++++++++++++++++++++++++++++ base/script/protobuf.gradle | 86 --------------------- license-report.md | 30 ++++---- 4 files changed, 165 insertions(+), 196 deletions(-) delete mode 100644 base/build.gradle create mode 100644 base/build.gradle.kts delete mode 100644 base/script/protobuf.gradle diff --git a/base/build.gradle b/base/build.gradle deleted file mode 100644 index c3d437cbfb..0000000000 --- a/base/build.gradle +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -import io.spine.gradle.internal.RunBuild - -import java.nio.file.Files - -group = 'io.spine' - -apply from: "$projectDir/script/protobuf.gradle" - -apply from: deps.scripts.testArtifacts - -dependencies { - annotationProcessor deps.build.autoService.processor - compileOnly deps.build.autoService.annotations - - // Since we use `@CanIgnoreReturnValue` when annotating Validating Builders - // ErrorProne Annotations is part of our API. - api deps.build.errorProneAnnotations - - testImplementation( - project(path: ":testlib"), - project(path: ":mute-logging") - ) -} - -sourceSets { - main { - resources.srcDirs += "$buildDir/descriptors/main" - proto.srcDirs = ["$projectDir/src/main/proto"] - } - test { - resources.srcDirs += "$buildDir/descriptors/test" - proto.srcDirs = ["$projectDir/src/test/proto"] - } -} - -/** - * The JAR task assembles class files with a respect to the re-built message classes. - * - * The task checks each input file for a newer version in the `base-validating-builders`. If such - * a version is found, the older version is excluded. - */ -jar { - // See `base-validating-builders/README.md` - final compiledProtoPath = "$rootDir/base-validating-builders/compiled-proto" - final compiledProtos = fileTree(compiledProtoPath) - - from compiledProtos - - eachFile { final file -> - logger.info "Appending $file" - final classFile = file.file.toPath() - final isProto = compiledProtos.filter { it.path.endsWith file.relativePath.toString() } - .filter { !Files.isSameFile(it.toPath(), classFile) } - if (!isProto.empty) { - logger.info "File $classFile is excluded" - file.exclude() - } else { - logger.debug "File $classFile is not excluded" - } - } -} - -apply from: deps.scripts.publishProto - -task rebuildProtobuf(type: RunBuild) { - - directory = "$rootDir/base-validating-builders" - - dependsOn(rootProject.subprojects*.getTasksByName('publishToMavenLocal', false)) -} - -project.getTasksByName('publish', false)*.dependsOn rebuildProtobuf - -build.finalizedBy rebuildProtobuf diff --git a/base/build.gradle.kts b/base/build.gradle.kts new file mode 100644 index 0000000000..230b2ca01a --- /dev/null +++ b/base/build.gradle.kts @@ -0,0 +1,150 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import com.google.protobuf.gradle.ProtobufConfigurator +import groovy.lang.Closure +import groovy.lang.GString +import io.spine.gradle.internal.Deps +import io.spine.gradle.internal.RunBuild +import java.nio.file.Files.isSameFile + +plugins { + id("com.google.protobuf") +} + +group = "io.spine" + +apply(from = Deps.scripts.testArtifacts(project)) + +configurations { + // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` + named("runtimeClasspath").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + named("testRuntimeClasspath").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") +} + +dependencies { + Deps.build.protobuf.forEach { "protobuf"(it) } + "annotationProcessor"(Deps.build.autoService.processor) + "compileOnly"(Deps.build.autoService.annotations) + Deps.build.errorProneAnnotations.forEach { "api"(it) } + "testImplementation"(project(":testlib")) + "testImplementation"(project(":mute-logging")) +} + +the().apply { + named("main") { + resources.srcDir("$buildDir/descriptors/main") + proto.setSrcDirs(listOf("$projectDir/src/main/proto")) + } + named("test") { + resources.srcDir("$buildDir/descriptors/test") + proto.setSrcDirs(listOf("$projectDir/src/test/proto")) + } +} + + +/** + * The JAR task assembles class files with a respect to the re-built message classes. + * + * The task checks each input file for a newer version in the `base-validating-builders`. If such + * a version is found, the older version is excluded. + */ +val jar by tasks.getting(type = Jar::class) + +jar.apply { + // See `base-validating-builders/README.md` + val compiledProtoPath = "$rootDir/base-validating-builders/compiled-proto" + val compiledProtos = fileTree(compiledProtoPath) + + from(compiledProtos) + + eachFile { + logger.info("Appending $this") + val classFile = file.toPath() + val isProto = compiledProtos.filter { it.path.endsWith(relativePath.toString()) } + .filter { !isSameFile(it.toPath(), classFile) } + if (!isProto.isEmpty) { + logger.info("File $classFile is excluded") + this.exclude() + } else { + logger.debug("File $classFile is not excluded") + } + } +} + +apply(from = Deps.scripts.publishProto(project)) + +tasks.register(name = "rebuildProtobuf", type = RunBuild::class) { + directory = "$rootDir/base-validating-builders" + dependsOn(rootProject.subprojects.map { p -> p.tasks["publishToMavenLocal"] }) +} + +tasks["publish"].dependsOn("rebuildProtobuf") +tasks["build"].finalizedBy("rebuildProtobuf") + +val compiledProtoRoot = "$projectDir/generated" +val googlePackagePrefix = "com/google" + +val pruneGoogleProtos by tasks.registering(type = Delete::class) { + delete("$compiledProtoRoot/main/java/$googlePackagePrefix") + tasks["compileJava"].dependsOn(this) +} + +val pruneTestGoogleProtos by tasks.registering(type = Delete::class) { + delete("$compiledProtoRoot/test/java/$googlePackagePrefix") + tasks["compileTestJava"].dependsOn(this) +} + +protobuf { + protobuf.generatedFilesBaseDir = compiledProtoRoot + protobuf.generateProtoTasks(object : Closure(this) { + fun doCall(tasks: ProtobufConfigurator.JavaGenerateProtoTaskCollection) { + for (task in tasks.all()) { + val scope = task.sourceSet.name + task.generateDescriptorSet = true + task.descriptorSetOptions.path = GString.EMPTY.plus("$buildDir/descriptors/$scope/known_types_${scope}.desc") + task.descriptorSetOptions.includeImports = true + task.descriptorSetOptions.includeSourceInfo = true + + if (scope.contains("test")) { + pruneTestGoogleProtos.configure { dependsOn(task) } + } else { + pruneGoogleProtos.configure { dependsOn(task) } + } + } + } + }) +} + +/** + * Checks if the given file belongs to the Google `.proto` sources. + */ +fun isGoogleProtoSource(file: FileTreeElement): Boolean { + val pathSegments = file.relativePath.segments + return pathSegments.isNotEmpty() && pathSegments[0].equals("google") +} + +/** + * From all artifacts, exclude Google `.proto` sources. + */ +tasks.withType(Jar::class) { + exclude { isGoogleProtoSource(it) } +} + diff --git a/base/script/protobuf.gradle b/base/script/protobuf.gradle deleted file mode 100644 index 5de38d377e..0000000000 --- a/base/script/protobuf.gradle +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -apply plugin: 'com.google.protobuf' - -configurations { - // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` - runtimeClasspath.exclude group: "com.google.protobuf", module: "protobuf-lite" - testRuntimeClasspath.exclude group: "com.google.protobuf", module: "protobuf-lite" -} - -dependencies { - // Re-generate standard Proto types, so they are included in `known_types.desc`. - protobuf deps.build.protobuf -} - -ext { - compiledProtoRoot = "$projectDir/generated" - mainCompiledProto = "$compiledProtoRoot/main/java" - testCompiledProto = "$compiledProtoRoot/test/java" - googlePackagePrefix = 'com/google' -} - -final def mainPruneTask = task pruneGoogleProtos(type: Delete) { - delete "$mainCompiledProto/$googlePackagePrefix" - compileJava.dependsOn it -} - -final def testPruneTask = task pruneTestGoogleProtos(type: Delete) { - delete "$testCompiledProto/$googlePackagePrefix" - compileTestJava.dependsOn it -} - -protobuf { - generatedFilesBaseDir = compiledProtoRoot - protoc { - artifact = deps.build.protoc - } - generateProtoTasks { - all().each { final task -> - final def scope = task.sourceSet.name - task.generateDescriptorSet = true - task.descriptorSetOptions.path = "$buildDir/descriptors/$scope/known_types_${scope}.desc" - task.descriptorSetOptions.includeImports = true - task.descriptorSetOptions.includeSourceInfo = true - - if (task.sourceSet.name.contains('test')) { - testPruneTask.dependsOn task - } else { - mainPruneTask.dependsOn task - } - } - } -} - -/** - * Checks if the given file belongs to the Google `.proto` sources. - */ -static boolean isGoogleProtoSource(final FileTreeElement file) { - final String[] pathSegments = file.relativePath.segments - return pathSegments.length >= 1 && pathSegments[0].equals('google') -} - -/** - * From all artifacts, exclude Google `.proto` sources. - */ -tasks.withType(Jar) { - it.exclude { final FileTreeElement file -> isGoogleProtoSource(file) } -} diff --git a/license-report.md b/license-report.md index 7b3f4125c9..fe33cf6635 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:43 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon May 11 14:26:34 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon May 11 14:26:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon May 11 14:26:36 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon May 11 14:26:37 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon May 11 14:26:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon May 11 14:26:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 11 14:26:40 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Wed May 13 13:17:49 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From f8932ea919428d323a07623bb442c8e481acec80 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 12:18:24 +0300 Subject: [PATCH 13/32] Use type-safe accessors --- build.gradle.kts | 2 ++ license-report.md | 30 +++++++++---------- .../{build.gradle => build.gradle.kts} | 14 +++++---- .../{build.gradle => build.gradle.kts} | 6 ++-- 4 files changed, 29 insertions(+), 23 deletions(-) rename tools/plugin-testlib/{build.gradle => build.gradle.kts} (83%) rename tools/proto-dart-plugin/{build.gradle => build.gradle.kts} (90%) diff --git a/build.gradle.kts b/build.gradle.kts index e731a4164d..ddffcab209 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -99,6 +99,8 @@ subprojects { DependencyResolution.forceConfiguration(configurations) } + apply(from = "$rootDir/version.gradle.kts") + val sourcesRootDir by extra("$projectDir/src") val generatedRootDir by extra("$projectDir/generated") val generatedJavaDir by extra("$generatedRootDir/main/java") diff --git a/license-report.md b/license-report.md index fe33cf6635..879f56759f 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Wed May 13 13:17:42 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:43 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Wed May 13 13:17:43 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:25 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:26 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Wed May 13 13:17:44 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Wed May 13 13:17:45 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Wed May 13 13:17:46 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Wed May 13 13:17:47 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Wed May 13 18:46:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Wed May 13 13:17:48 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 13:17:49 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Wed May 13 18:46:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/tools/plugin-testlib/build.gradle b/tools/plugin-testlib/build.gradle.kts similarity index 83% rename from tools/plugin-testlib/build.gradle rename to tools/plugin-testlib/build.gradle.kts index ebcf42a55e..76c325296c 100644 --- a/tools/plugin-testlib/build.gradle +++ b/tools/plugin-testlib/build.gradle.kts @@ -18,11 +18,15 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +plugins { + `java-library` +} + +group = "io.spine.tools" dependencies { - implementation project(':plugin-base') - implementation project(':testlib') - implementation gradleApi() - implementation gradleTestKit() + implementation(project(":plugin-base")) + implementation(project(":testlib")) + implementation(gradleApi()) + implementation(gradleTestKit()) } diff --git a/tools/proto-dart-plugin/build.gradle b/tools/proto-dart-plugin/build.gradle.kts similarity index 90% rename from tools/proto-dart-plugin/build.gradle rename to tools/proto-dart-plugin/build.gradle.kts index 9bb2d36599..e296f20353 100644 --- a/tools/proto-dart-plugin/build.gradle +++ b/tools/proto-dart-plugin/build.gradle.kts @@ -18,9 +18,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +group = "io.spine.tools" dependencies { - implementation project(':plugin-base') - testImplementation project(':testlib') + implementation(project(":plugin-base")) + testImplementation(project(":testlib")) } From 25845e4d8821608df2a7dfea566d55dc7a9d4f06 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 12:20:26 +0300 Subject: [PATCH 14/32] Translate some `build.gradle` files into Kotlin --- tools/errorprone-checks/build.gradle | 61 ---------- tools/errorprone-checks/build.gradle.kts | 63 ++++++++++ .../{build.gradle => build.gradle.kts} | 31 ++--- .../{build.gradle => build.gradle.kts} | 25 ++-- tools/model-compiler/build.gradle | 110 ------------------ tools/model-compiler/build.gradle.kts | 110 ++++++++++++++++++ .../{build.gradle => build.gradle.kts} | 14 ++- tools/plugin-base/build.gradle | 82 ------------- tools/plugin-base/build.gradle.kts | 88 ++++++++++++++ 9 files changed, 301 insertions(+), 283 deletions(-) delete mode 100644 tools/errorprone-checks/build.gradle create mode 100644 tools/errorprone-checks/build.gradle.kts rename tools/javadoc-filter/{build.gradle => build.gradle.kts} (66%) rename tools/javadoc-prettifier/{build.gradle => build.gradle.kts} (67%) delete mode 100644 tools/model-compiler/build.gradle create mode 100644 tools/model-compiler/build.gradle.kts rename tools/mute-logging/{build.gradle => build.gradle.kts} (81%) delete mode 100644 tools/plugin-base/build.gradle create mode 100644 tools/plugin-base/build.gradle.kts diff --git a/tools/errorprone-checks/build.gradle b/tools/errorprone-checks/build.gradle deleted file mode 100644 index e5d0cd2db3..0000000000 --- a/tools/errorprone-checks/build.gradle +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -group = 'io.spine.tools' - -repositories { - maven { url = repos.sonatypeSnapshots } -} - -dependencies { - annotationProcessor deps.build.autoService.processor - compileOnly deps.build.autoService.annotations - - implementation project(':base') - implementation project(':plugin-base') - - implementation deps.build.errorProneCore - implementation deps.build.errorProneAnnotations - - testImplementation deps.build.errorProneTestHelpers -} - -def getResolvedArtifactFor(final dependency) { - final def resolvedTestClasspath = configurations.testRuntimeClasspath.resolvedConfiguration - final def javacDependency = resolvedTestClasspath.resolvedArtifacts.findAll { - it.name == dependency - } - if (javacDependency.empty) { - throw new MissingResourceException("The 'javac' dependency is not found among the " + - "resolved artifacts") - } - final def path = javacDependency[0].file.absolutePath - return path -} - -test.dependsOn project(':base').getTasksByName('rebuildProtobuf', false) - -afterEvaluate { - final def javacPath = getResolvedArtifactFor("javac") - - test { - jvmArgs "-Xbootclasspath/p:$javacPath" - } -} diff --git a/tools/errorprone-checks/build.gradle.kts b/tools/errorprone-checks/build.gradle.kts new file mode 100644 index 0000000000..5f8317266f --- /dev/null +++ b/tools/errorprone-checks/build.gradle.kts @@ -0,0 +1,63 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import io.spine.gradle.internal.Deps +import io.spine.gradle.internal.Repos +import java.net.URI + +plugins { + `java-library` +} + +group = "io.spine.tools" + +repositories { + maven { url = URI(Repos.sonatypeSnapshots) } +} + +dependencies { + annotationProcessor(Deps.build.autoService.processor) + compileOnly(Deps.build.autoService.annotations) + implementation(project(":base")) + implementation(project(":plugin-base")) + implementation(Deps.build.errorProneCore) + Deps.build.errorProneAnnotations.forEach { implementation(it) } + testImplementation(Deps.build.errorProneTestHelpers) +} + +fun getResolvedArtifactFor(dependency: String): String { + val resolvedTestClasspath = configurations.testRuntimeClasspath.get().resolvedConfiguration + val javacDependency = resolvedTestClasspath.resolvedArtifacts.filter { + it.name == dependency + } + if (javacDependency.isEmpty()) { + throw MissingResourceException("The 'javac' dependency is not found among the " + + "resolved artifacts") + } + return javacDependency[0].file.absolutePath +} + +val test: Test = tasks.test.get() +test.dependsOn(project(":base").getTasksByName("rebuildProtobuf", false)) + +afterEvaluate { + val javacPath = getResolvedArtifactFor("javac") + test.jvmArgs("-Xbootclasspath/p:$javacPath") +} diff --git a/tools/javadoc-filter/build.gradle b/tools/javadoc-filter/build.gradle.kts similarity index 66% rename from tools/javadoc-filter/build.gradle rename to tools/javadoc-filter/build.gradle.kts index 0d0dae4a08..c8641d97df 100644 --- a/tools/javadoc-filter/build.gradle +++ b/tools/javadoc-filter/build.gradle.kts @@ -18,26 +18,29 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +import io.spine.gradle.internal.Deps -ext { - javaxAnnotationsVersion = '1.3.1' +plugins { + java } +group = "io.spine.tools" + +val javaxAnnotationsVersion = "1.3.1" + dependencies { - implementation files("${System.properties['java.home']}/../lib/tools.jar") - implementation project(':base') - implementation "javax.annotation:javax.annotation-api:$javaxAnnotationsVersion" - implementation deps.grpc.grpcCore - - testImplementation project(':testlib') - testImplementation project(':mute-logging') + implementation(files("${System.getProperty("java.home")}/../lib/tools.jar")) + implementation(project(":base")) + implementation("javax.annotation:javax.annotation-api:$javaxAnnotationsVersion") + implementation(Deps.grpc.grpcCore) + testImplementation(project(":testlib")) + testImplementation(project(":mute-logging")) } // We need to include module dependencies to JAR. // In particular, we need @Internal Spine annotation. -jar { - from { - configurations.runtime.collect { it.isDirectory() ? it : zipTree(it) } - } +tasks.jar.configure { + from(configurations.runtime.get().map { + if(it.isDirectory()) it else zipTree(it) + }) } diff --git a/tools/javadoc-prettifier/build.gradle b/tools/javadoc-prettifier/build.gradle.kts similarity index 67% rename from tools/javadoc-prettifier/build.gradle rename to tools/javadoc-prettifier/build.gradle.kts index 17973a87ad..7643afb5ae 100644 --- a/tools/javadoc-prettifier/build.gradle +++ b/tools/javadoc-prettifier/build.gradle.kts @@ -18,19 +18,20 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +import io.spine.gradle.internal.Deps -dependencies { - implementation deps.build.guava - - implementation project(':base') - implementation project(':plugin-base') +group = "io.spine.tools" - testImplementation project(':plugin-testlib') - testImplementation gradleTestKit() +dependencies { + "implementation"(Deps.build.guava) + "implementation"(project(":base")) + "implementation"(project(":plugin-base")) + "testImplementation"(project(":plugin-testlib")) + "testImplementation"(gradleTestKit()) } -test.dependsOn(publishToMavenLocal, - project(':base').publishToMavenLocal, - project(':tool-base').publishToMavenLocal, - project(':plugin-base').publishToMavenLocal) +val test by tasks.getting(Test::class) +test.dependsOn("publishToMavenLocal", + ":base:publishToMavenLocal", + ":tool-base:publishToMavenLocal", + ":plugin-base:publishToMavenLocal") diff --git a/tools/model-compiler/build.gradle b/tools/model-compiler/build.gradle deleted file mode 100644 index 676db92608..0000000000 --- a/tools/model-compiler/build.gradle +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -import java.nio.file.Files -import java.nio.file.StandardCopyOption - -ext { - spineFolder = "${project.projectDir}/.spine" as File - protocPluginDependency = null -} - -group = 'io.spine.tools' - -dependencies { - implementation project(':plugin-base') - implementation project(':protoc-api') - - implementation deps.gen.javaPoet - - // A library for parsing Java sources. - // Used for parsing Java sources generated from Protobuf files - // to make their annotation more convenient. - implementation(deps.build.roasterApi) { - exclude group: 'com.google.guava' - } - - implementation(deps.build.roasterJdt) { - exclude group: 'com.google.guava' - } - - implementation deps.build.gradlePlugins.protobuf - - testImplementation project(':testlib') - testImplementation deps.test.junitPioneer - testImplementation gradleTestKit() - testImplementation project(':plugin-testlib') - - // The freshest version of the plugin required for tests - protocPluginDependency = testCompileOnly "io.spine.tools:spine-protoc-plugin:$spineVersion@jar" -} - -protobuf { - generatedFilesBaseDir = generatedRootDir - - protoc { - artifact = deps.build.protoc - } - - generateProtoTasks { - all().each { final task -> - final def scope = task.sourceSet.name - task.generateDescriptorSet = true - task.descriptorSetOptions.path = "$buildDir/descriptors/${scope}/io.spine.tools.spine-model-compiler-${scope}.desc" - task.descriptorSetOptions.includeImports = true - task.descriptorSetOptions.includeSourceInfo = true - } - } -} - -sourceSets { - main { - java.srcDirs += "$projectDir/generated/main/spine" - resources.srcDirs += "$projectDir/generated/main/resources" - resources.srcDirs += "$buildDir/descriptors/main" - } - test { - java.srcDirs += "$projectDir/generated/test/spine" - resources.srcDirs += "$buildDir/descriptors/test" - } -} - -final def copyPluginJarAction = { - final def from = configurations.testCompileClasspath.fileCollection(protocPluginDependency).singleFile - final def srcPath = from.toPath() - final def dest = project.spineFolder.toPath().resolve(from.name) - dest.toFile().mkdirs() - Files.copy(srcPath, dest, StandardCopyOption.REPLACE_EXISTING) -} - -// We cannot use standard Copy task here as it resolves the `from` property not lazily. -// Since we use use a dependency in the `from`, it may cause some issues with the Maven plugin -// See https://discuss.gradle.org/t/right-way-to-copy-contents-from-dependency-archives/7449 -task copyProtocPluginTestArtifact { - description = "Spawns the Spine Protoc plugin artifact in the project directory for tests" -} - -copyProtocPluginTestArtifact.doLast(copyPluginJarAction) -copyProtocPluginTestArtifact.dependsOn project.project(':protoc-plugin').publishToMavenLocal - -// Tests use the Protobuf plugin. -compileTestJava.dependsOn copyProtocPluginTestArtifact - -test.dependsOn project(':errorprone-checks').publishToMavenLocal diff --git a/tools/model-compiler/build.gradle.kts b/tools/model-compiler/build.gradle.kts new file mode 100644 index 0000000000..83607e7b46 --- /dev/null +++ b/tools/model-compiler/build.gradle.kts @@ -0,0 +1,110 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import com.google.protobuf.gradle.ProtobufConfigurator.JavaGenerateProtoTaskCollection +import groovy.lang.Closure +import groovy.lang.GString +import io.spine.gradle.internal.Deps +import java.nio.file.Files +import java.nio.file.StandardCopyOption + +plugins { + java + id("com.google.protobuf") +} + +group = "io.spine.tools" + +var protocPluginDependency: Dependency? = null +val spineVersion: String by extra + +dependencies { + implementation(project(":plugin-base")) + implementation(project(":protoc-api")) + implementation(Deps.gen.javaPoet) + + // A library for parsing Java sources. + // Used for parsing Java sources generated from Protobuf files + // to make their annotation more convenient. + implementation(Deps.build.roasterApi) { + exclude(group = "com.google.guava") + } + implementation(Deps.build.roasterJdt) { + exclude(group = "com.google.guava") + } + implementation(Deps.build.gradlePlugins.protobuf) + testImplementation(project(":testlib")) + testImplementation(Deps.test.junitPioneer) + testImplementation(gradleTestKit()) + testImplementation(project(":plugin-testlib")) + // The freshest version of the plugin required for tests + protocPluginDependency = testCompileOnly("io.spine.tools:spine-protoc-plugin:$spineVersion@jar") +} + +protobuf { + protobuf.generateProtoTasks( + object : Closure(this) { + private fun doCall(tasks: JavaGenerateProtoTaskCollection) { + tasks.all().forEach { task -> + val scope = task.sourceSet.name + task.generateDescriptorSet = true + task.descriptorSetOptions.path = GString.EMPTY.plus("$buildDir/descriptors/${scope}/io.spine.tools.spine-model-compiler-${scope}.desc") + task.descriptorSetOptions.includeImports = true + task.descriptorSetOptions.includeSourceInfo = true + } + } + } + ) +} + +sourceSets { + main { + java.srcDir("$projectDir/generated/main/spine") + resources.srcDir("$projectDir/generated/main/resources") + resources.srcDir("$buildDir/descriptors/main") + } + test { + java.srcDir("$projectDir/generated/test/spine") + resources.srcDir("$buildDir/descriptors/test") + } +} + +val spineFolder = file(".spine") + +// We cannot use standard Copy task here as it resolves the `from` property not lazily. +// Since we use use a dependency in the `from`, it may cause some issues with the Maven plugin +// See https://discuss.gradle.org/t/right-way-to-copy-contents-from-dependency-archives/7449 +val copyProtocPluginTestArtifact by tasks.registering { + description = "Spawns the Spine Protoc plugin artifact in the project directory for tests" + dependsOn(":protoc-plugin:publishToMavenLocal") + + doLast { + val from = configurations.testCompileClasspath.get().fileCollection(protocPluginDependency).singleFile + val srcPath = from.toPath() + val dest = spineFolder.toPath().resolve(from.name) + dest.toFile().mkdirs() + Files.copy(srcPath, dest, StandardCopyOption.REPLACE_EXISTING) + } + +} + +// Tests use the Protobuf plugin. +tasks.compileTestJava.configure { dependsOn(copyProtocPluginTestArtifact) } +tasks.test.configure { dependsOn(":errorprone-checks:publishToMavenLocal") } diff --git a/tools/mute-logging/build.gradle b/tools/mute-logging/build.gradle.kts similarity index 81% rename from tools/mute-logging/build.gradle rename to tools/mute-logging/build.gradle.kts index a3bdcbc0e8..acb961ebab 100644 --- a/tools/mute-logging/build.gradle +++ b/tools/mute-logging/build.gradle.kts @@ -18,10 +18,16 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +import io.spine.gradle.internal.Deps + +plugins { + `java-library` +} + +group = "io.spine.tools" dependencies { - implementation project(':base') - implementation project(':testlib') - implementation deps.test.junit5Api + implementation(project(":base")) + implementation(project(":testlib")) + Deps.test.junit5Api.forEach { implementation(it) } } diff --git a/tools/plugin-base/build.gradle b/tools/plugin-base/build.gradle deleted file mode 100644 index a72013dab0..0000000000 --- a/tools/plugin-base/build.gradle +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -import static com.google.common.io.Files.createParentDirs - -group = 'io.spine.tools' - -dependencies { - api gradleApi() - api deps.build.gradlePlugins.protobuf - api project(':tool-base') - - testImplementation project(':testlib') - testImplementation project(':plugin-testlib') -} - -protobuf { - generatedFilesBaseDir = generatedRootDir - - protoc { - artifact = deps.build.protoc - } - - generateProtoTasks { - all().each { final task -> - task.generateDescriptorSet = true - task.descriptorSetOptions.path = "$buildDir/descriptors/${task.sourceSet.name}/known_types.desc" - } - } -} - -/** - * Prepares the `versions.properties` file and puts it into the resources of this project. - * - *

The file contains versions of dependencies which are configured by - * the `ProtocConfigurationPlugin`. - */ -task prepareProtocConfigVersions { - description = "Prepares the versions.properties file." - - final def file = file("$projectDir/generated/main/resources/versions.properties") - - outputs.file(file) - - final Properties versions = new Properties() - versions.setProperty("baseVersion", spineBaseVersion) - versions.setProperty("protobufVersion", deps.versions.protobuf) - versions.setProperty("gRPCVersion", deps.versions.grpc) - - doLast { - createParentDirs(file) - file.createNewFile() - file.withOutputStream { final stream -> - versions.store(stream, "Versions of dependencies of the Model Compiler plugin and the Spine Protoc plugin.") - } - } -} - -processResources.dependsOn prepareProtocConfigVersions - -sourceSets { - test { - resources.srcDirs += "$sourcesRootDir/test/resources" - } -} diff --git a/tools/plugin-base/build.gradle.kts b/tools/plugin-base/build.gradle.kts new file mode 100644 index 0000000000..c762d6e4f6 --- /dev/null +++ b/tools/plugin-base/build.gradle.kts @@ -0,0 +1,88 @@ +/* + * Copyright 2020, TeamDev. All rights reserved. + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import com.google.common.io.Files +import com.google.protobuf.gradle.ProtobufConfigurator.JavaGenerateProtoTaskCollection +import groovy.lang.Closure +import groovy.lang.GString +import io.spine.gradle.internal.Deps +import java.util.* +import kotlin.collections.HashMap +import kotlin.collections.MutableMap + +plugins { + `java-library` + id("com.google.protobuf") +} + +group = "io.spine.tools" + +dependencies { + api(gradleApi()) + api(Deps.build.gradlePlugins.protobuf) + api(project(":tool-base")) + + testImplementation(project(":testlib")) + testImplementation(project(":plugin-testlib")) +} + +protobuf { + protobuf.generateProtoTasks(object : Closure(this) { + private fun doCall(tasks: JavaGenerateProtoTaskCollection) { + for (task in tasks.all()) { + task.generateDescriptorSet = true + task.descriptorSetOptions.path = GString.EMPTY.plus("$buildDir/descriptors/${task.sourceSet.name}/known_types.desc") + } + } + }) +} + +val spineBaseVersion: String by extra + +val prepareProtocConfigVersions by tasks.registering { + description = "Prepares the versions.properties file." + + val file = file("$projectDir/generated/main/resources/versions.properties") + outputs.file(file) + + val versions = Properties() + versions.setProperty("baseVersion", spineBaseVersion) + versions.setProperty("protobufVersion", Deps.versions.protobuf) + versions.setProperty("gRPCVersion", Deps.versions.grpc) + + @Suppress("UNCHECKED_CAST") + inputs.properties(HashMap(versions) as MutableMap) + + doLast { + Files.createParentDirs(file) + file.createNewFile() + file.outputStream().use { + versions.store(it, "Versions of dependencies of the Model Compiler plugin and the Spine Protoc plugin.") + } + } +} + +tasks.processResources.get().dependsOn(prepareProtocConfigVersions) + +sourceSets.test { + resources.srcDir("$projectDir/src/test/resources") +} + + From 9a65a5229349396defb43ef469e85628422a47b3 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 12:20:56 +0300 Subject: [PATCH 15/32] Use type-safe accessors --- base/build.gradle.kts | 42 ++++++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/base/build.gradle.kts b/base/build.gradle.kts index 230b2ca01a..1ce468b75a 100644 --- a/base/build.gradle.kts +++ b/base/build.gradle.kts @@ -18,7 +18,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import com.google.protobuf.gradle.ProtobufConfigurator +import com.google.protobuf.gradle.ProtobufConfigurator.JavaGenerateProtoTaskCollection import groovy.lang.Closure import groovy.lang.GString import io.spine.gradle.internal.Deps @@ -26,6 +26,7 @@ import io.spine.gradle.internal.RunBuild import java.nio.file.Files.isSameFile plugins { + `java-library` id("com.google.protobuf") } @@ -35,40 +36,37 @@ apply(from = Deps.scripts.testArtifacts(project)) configurations { // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` - named("runtimeClasspath").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") - named("testRuntimeClasspath").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + runtimeClasspath.get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + testRuntimeClasspath.get().exclude(group = "com.google.protobuf", module = "protobuf-lite") } dependencies { - Deps.build.protobuf.forEach { "protobuf"(it) } - "annotationProcessor"(Deps.build.autoService.processor) - "compileOnly"(Deps.build.autoService.annotations) - Deps.build.errorProneAnnotations.forEach { "api"(it) } - "testImplementation"(project(":testlib")) - "testImplementation"(project(":mute-logging")) + Deps.build.protobuf.forEach { protobuf(it) } + annotationProcessor(Deps.build.autoService.processor) + compileOnly(Deps.build.autoService.annotations) + Deps.build.errorProneAnnotations.forEach { api(it) } + testImplementation(project(":testlib")) + testImplementation(project(":mute-logging")) } -the().apply { - named("main") { +sourceSets { + main { resources.srcDir("$buildDir/descriptors/main") proto.setSrcDirs(listOf("$projectDir/src/main/proto")) } - named("test") { + test { resources.srcDir("$buildDir/descriptors/test") proto.setSrcDirs(listOf("$projectDir/src/test/proto")) } } - /** * The JAR task assembles class files with a respect to the re-built message classes. * * The task checks each input file for a newer version in the `base-validating-builders`. If such * a version is found, the older version is excluded. */ -val jar by tasks.getting(type = Jar::class) - -jar.apply { +tasks.jar.configure { // See `base-validating-builders/README.md` val compiledProtoPath = "$rootDir/base-validating-builders/compiled-proto" val compiledProtos = fileTree(compiledProtoPath) @@ -91,31 +89,31 @@ jar.apply { apply(from = Deps.scripts.publishProto(project)) -tasks.register(name = "rebuildProtobuf", type = RunBuild::class) { +val rebuildProtobuf by tasks.registering(RunBuild::class) { directory = "$rootDir/base-validating-builders" dependsOn(rootProject.subprojects.map { p -> p.tasks["publishToMavenLocal"] }) } -tasks["publish"].dependsOn("rebuildProtobuf") -tasks["build"].finalizedBy("rebuildProtobuf") +tasks.publish.get().dependsOn(rebuildProtobuf) +tasks.build.get().finalizedBy(rebuildProtobuf) val compiledProtoRoot = "$projectDir/generated" val googlePackagePrefix = "com/google" val pruneGoogleProtos by tasks.registering(type = Delete::class) { delete("$compiledProtoRoot/main/java/$googlePackagePrefix") - tasks["compileJava"].dependsOn(this) + tasks.compileJava.get().dependsOn(this) } val pruneTestGoogleProtos by tasks.registering(type = Delete::class) { delete("$compiledProtoRoot/test/java/$googlePackagePrefix") - tasks["compileTestJava"].dependsOn(this) + tasks.compileTestJava.get().dependsOn(this) } protobuf { protobuf.generatedFilesBaseDir = compiledProtoRoot protobuf.generateProtoTasks(object : Closure(this) { - fun doCall(tasks: ProtobufConfigurator.JavaGenerateProtoTaskCollection) { + private fun doCall(tasks: JavaGenerateProtoTaskCollection) { for (task in tasks.all()) { val scope = task.sourceSet.name task.generateDescriptorSet = true From 663d8dda6b64ad57e0106b4137a7d0d086930514 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 13:37:50 +0300 Subject: [PATCH 16/32] Translate `build.gradle` files into Kotlin and remove unnecessary `plugin` blocks --- license-report.md | 30 ++++---- testlib/{build.gradle => build.gradle.kts} | 27 +++---- tools/errorprone-checks/build.gradle.kts | 4 - tools/javadoc-filter/build.gradle.kts | 4 - tools/javadoc-prettifier/build.gradle.kts | 21 ++--- tools/model-compiler/build.gradle.kts | 5 -- tools/mute-logging/build.gradle.kts | 4 - tools/plugin-base/build.gradle.kts | 6 -- tools/plugin-testlib/build.gradle.kts | 4 - .../{build.gradle => build.gradle.kts} | 29 +++---- .../{build.gradle => build.gradle.kts} | 18 ++--- .../{build.gradle => build.gradle.kts} | 76 +++++++++---------- .../{build.gradle => build.gradle.kts} | 10 ++- 13 files changed, 93 insertions(+), 145 deletions(-) rename testlib/{build.gradle => build.gradle.kts} (75%) rename tools/proto-js-plugin/{build.gradle => build.gradle.kts} (68%) rename tools/protoc-api/{build.gradle => build.gradle.kts} (76%) rename tools/protoc-plugin/{build.gradle => build.gradle.kts} (57%) rename tools/tool-base/{build.gradle => build.gradle.kts} (85%) diff --git a/license-report.md b/license-report.md index 879f56759f..b26ea3aa32 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:17 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Wed May 13 18:46:23 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Wed May 13 18:46:24 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:25 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Wed May 13 18:46:25 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:26 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Wed May 13 18:46:26 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Wed May 13 18:46:27 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Wed May 13 18:46:28 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Wed May 13 18:46:29 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Wed May 13 18:46:30 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Wed May 13 18:46:31 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Wed May 13 18:46:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/testlib/build.gradle b/testlib/build.gradle.kts similarity index 75% rename from testlib/build.gradle rename to testlib/build.gradle.kts index 10cd830716..4b5cedaa55 100644 --- a/testlib/build.gradle +++ b/testlib/build.gradle.kts @@ -1,3 +1,5 @@ +import io.spine.gradle.internal.Deps + /* * Copyright 2020, TeamDev. All rights reserved. * @@ -17,27 +19,18 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine' + +group = "io.spine" dependencies { /* Expose tools we use as transitive dependencies to simplify dependency management in sub-projects. */ - api(deps.build.protobuf, - deps.test.junit5Api, - deps.test.truth, - deps.test.guavaTestlib, - deps.test.hamcrest) - implementation project(':base') -} - -/* - * This module declares protobuf messages and uses them in tests, hence the need for the Protobuf - * compiler - */ -protobuf { - protoc { - artifact = deps.build.protoc - } + Deps.build.protobuf.forEach { api(it) } + Deps.test.junit5Api.forEach { api(it) } + Deps.test.truth.forEach { api(it) } + api(Deps.test.guavaTestlib) + api(Deps.test.hamcrest) + implementation(project(":base")) } diff --git a/tools/errorprone-checks/build.gradle.kts b/tools/errorprone-checks/build.gradle.kts index 5f8317266f..605112dc95 100644 --- a/tools/errorprone-checks/build.gradle.kts +++ b/tools/errorprone-checks/build.gradle.kts @@ -22,10 +22,6 @@ import io.spine.gradle.internal.Deps import io.spine.gradle.internal.Repos import java.net.URI -plugins { - `java-library` -} - group = "io.spine.tools" repositories { diff --git a/tools/javadoc-filter/build.gradle.kts b/tools/javadoc-filter/build.gradle.kts index c8641d97df..62893fa6aa 100644 --- a/tools/javadoc-filter/build.gradle.kts +++ b/tools/javadoc-filter/build.gradle.kts @@ -20,10 +20,6 @@ import io.spine.gradle.internal.Deps -plugins { - java -} - group = "io.spine.tools" val javaxAnnotationsVersion = "1.3.1" diff --git a/tools/javadoc-prettifier/build.gradle.kts b/tools/javadoc-prettifier/build.gradle.kts index 7643afb5ae..4192c96f96 100644 --- a/tools/javadoc-prettifier/build.gradle.kts +++ b/tools/javadoc-prettifier/build.gradle.kts @@ -23,15 +23,16 @@ import io.spine.gradle.internal.Deps group = "io.spine.tools" dependencies { - "implementation"(Deps.build.guava) - "implementation"(project(":base")) - "implementation"(project(":plugin-base")) - "testImplementation"(project(":plugin-testlib")) - "testImplementation"(gradleTestKit()) + implementation(Deps.build.guava) + implementation(project(":base")) + implementation(project(":plugin-base")) + testImplementation(project(":plugin-testlib")) + testImplementation(gradleTestKit()) } -val test by tasks.getting(Test::class) -test.dependsOn("publishToMavenLocal", - ":base:publishToMavenLocal", - ":tool-base:publishToMavenLocal", - ":plugin-base:publishToMavenLocal") +tasks.test.configure { + dependsOn("publishToMavenLocal", + ":base:publishToMavenLocal", + ":tool-base:publishToMavenLocal", + ":plugin-base:publishToMavenLocal") +} diff --git a/tools/model-compiler/build.gradle.kts b/tools/model-compiler/build.gradle.kts index 83607e7b46..15a893b713 100644 --- a/tools/model-compiler/build.gradle.kts +++ b/tools/model-compiler/build.gradle.kts @@ -25,11 +25,6 @@ import io.spine.gradle.internal.Deps import java.nio.file.Files import java.nio.file.StandardCopyOption -plugins { - java - id("com.google.protobuf") -} - group = "io.spine.tools" var protocPluginDependency: Dependency? = null diff --git a/tools/mute-logging/build.gradle.kts b/tools/mute-logging/build.gradle.kts index acb961ebab..45210681a9 100644 --- a/tools/mute-logging/build.gradle.kts +++ b/tools/mute-logging/build.gradle.kts @@ -20,10 +20,6 @@ import io.spine.gradle.internal.Deps -plugins { - `java-library` -} - group = "io.spine.tools" dependencies { diff --git a/tools/plugin-base/build.gradle.kts b/tools/plugin-base/build.gradle.kts index c762d6e4f6..415ba213ea 100644 --- a/tools/plugin-base/build.gradle.kts +++ b/tools/plugin-base/build.gradle.kts @@ -25,12 +25,6 @@ import groovy.lang.GString import io.spine.gradle.internal.Deps import java.util.* import kotlin.collections.HashMap -import kotlin.collections.MutableMap - -plugins { - `java-library` - id("com.google.protobuf") -} group = "io.spine.tools" diff --git a/tools/plugin-testlib/build.gradle.kts b/tools/plugin-testlib/build.gradle.kts index 76c325296c..1a215c39ac 100644 --- a/tools/plugin-testlib/build.gradle.kts +++ b/tools/plugin-testlib/build.gradle.kts @@ -18,10 +18,6 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -plugins { - `java-library` -} - group = "io.spine.tools" dependencies { diff --git a/tools/proto-js-plugin/build.gradle b/tools/proto-js-plugin/build.gradle.kts similarity index 68% rename from tools/proto-js-plugin/build.gradle rename to tools/proto-js-plugin/build.gradle.kts index 68eb03b7f0..df887a3303 100644 --- a/tools/proto-js-plugin/build.gradle +++ b/tools/proto-js-plugin/build.gradle.kts @@ -18,24 +18,17 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +import io.spine.gradle.internal.Deps -dependencies { - implementation project(':base') - implementation project(':plugin-base') - - testProtobuf project(':base') - testImplementation project(':testlib') - testImplementation project(':plugin-testlib') - testImplementation gradleTestKit() +group = "io.spine.tools" - testImplementation deps.test.junit5Api - testImplementation deps.test.junit5Runner -} - -protobuf { - generatedFilesBaseDir = generatedRootDir - protoc { - artifact = deps.build.protoc - } +dependencies { + implementation(project(":base")) + implementation(project(":plugin-base")) + testProtobuf(project(":base")) + testImplementation(project(":testlib")) + testImplementation(project(":plugin-testlib")) + testImplementation(gradleTestKit()) + Deps.test.junit5Api.forEach { testImplementation(it) } + testImplementation(Deps.test.junit5Runner) } diff --git a/tools/protoc-api/build.gradle b/tools/protoc-api/build.gradle.kts similarity index 76% rename from tools/protoc-api/build.gradle rename to tools/protoc-api/build.gradle.kts index cdd881b1ad..dc714defa3 100644 --- a/tools/protoc-api/build.gradle +++ b/tools/protoc-api/build.gradle.kts @@ -18,22 +18,14 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +group = "io.spine.tools" dependencies { - implementation project(':base') - - testImplementation project(':testlib') + implementation(project(":base")) + testImplementation(project(":testlib")) } sourceSets.main { - java.srcDir "$projectDir/generated/main/java" - proto.srcDir "$projectDir/src/main/proto" -} - -protobuf { - generatedFilesBaseDir = "$projectDir/generated" - protoc { - artifact = deps.build.protoc - } + java.srcDir("$projectDir/generated/main/java") + proto.srcDir("$projectDir/src/main/proto") } diff --git a/tools/protoc-plugin/build.gradle b/tools/protoc-plugin/build.gradle.kts similarity index 57% rename from tools/protoc-plugin/build.gradle rename to tools/protoc-plugin/build.gradle.kts index 3d7c86e92b..22eb518519 100644 --- a/tools/protoc-plugin/build.gradle +++ b/tools/protoc-plugin/build.gradle.kts @@ -18,58 +18,49 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +import io.spine.gradle.internal.Deps import java.nio.file.Files -group = 'io.spine.tools' +group = "io.spine.tools" dependencies { - implementation( - project(':tool-base'), - project(':protoc-api'), - project(':validation-generator'), - deps.gen.javaPoet - ) + implementation(project(":tool-base")) + implementation(project(":protoc-api")) + implementation(project(":validation-generator")) + implementation(Deps.gen.javaPoet) - testImplementation project(':base') - testImplementation( - project(':testlib'), - project(':mute-logging'), - deps.test.truth - ) + testImplementation(project(":base")) + testImplementation(project(":testlib")) + testImplementation(project(":mute-logging")) + Deps.test.truth.forEach { testImplementation(it) } } -protobuf { - generatedFilesBaseDir = generatedRootDir - protoc { - artifact = deps.build.protoc - } -} - -jar { - dependsOn( - project(':protoc-api').jar, - project(':tool-base').jar, - project(':validation-generator').jar - ) +tasks.jar { + dependsOn(":protoc-api:jar", + ":tool-base:jar", + ":validation-generator:jar") manifest { - attributes 'Main-Class': 'io.spine.tools.protoc.Plugin' + attributes(mapOf("Main-Class" to "io.spine.tools.protoc.Plugin")) } // Assemble "Fat-JAR" artifact containing all the dependencies. - from { - configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } - } + from(configurations.runtimeClasspath.get().map { + when { + it.isDirectory() -> it + else -> zipTree(it) + } + }) } -final def shellRunner = injectVersion(file('plugin_runner.sh')) -final def batchRunner = injectVersion(file('plugin_runner.bat')) +val shellRunner = injectVersion(file("plugin_runner.sh")) +val batchRunner = injectVersion(file("plugin_runner.bat")) artifacts { archives(shellRunner) { - classifier "script" + classifier = "script" } archives(batchRunner) { - classifier "script" + classifier = "script" } } @@ -87,11 +78,14 @@ artifacts { * @param scriptFile the script file to modify * @return the new script file to publish */ -def injectVersion(final File scriptFile) { - def text = scriptFile.text - text = text.replace("{version}", project.version) - final def tempFile = Files.createTempFile("build", scriptFile.name.endsWith(".sh") ? ".sh" : ".bat") - tempFile.text = text - final result = file(tempFile.toAbsolutePath()) - return result +fun injectVersion(scriptFile: File): File { + var text = scriptFile.readText() + text = text.replace("{version}", project.version as String) + val extension = when { + scriptFile.name.endsWith(".sh") -> ".sh" + else -> ".bat" + } + val tempFile = Files.createTempFile("build", extension) + tempFile.toFile().writeText(text) + return project.file(tempFile.toAbsolutePath()) } diff --git a/tools/tool-base/build.gradle b/tools/tool-base/build.gradle.kts similarity index 85% rename from tools/tool-base/build.gradle rename to tools/tool-base/build.gradle.kts index 80fa4f7d7a..054400491f 100644 --- a/tools/tool-base/build.gradle +++ b/tools/tool-base/build.gradle.kts @@ -18,11 +18,13 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -group = 'io.spine.tools' +import io.spine.gradle.internal.Deps + +group = "io.spine.tools" dependencies { - api project(':base') - implementation deps.gen.javaPoet + api(project(":base")) + implementation(Deps.gen.javaPoet) - testImplementation project(':testlib') + testImplementation(project(":testlib")) } From e6238b9b12fcedafe050b167eb331e03b408e2c2 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 16:44:03 +0300 Subject: [PATCH 17/32] Update config --- .../kotlin/io/spine/gradle/internal/deps.kt | 156 ++++++++++-------- 1 file changed, 84 insertions(+), 72 deletions(-) diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt index c34fee5d76..1d5d95fd44 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -25,26 +25,6 @@ import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.dsl.RepositoryHandler import java.net.URI -/* - * Copyright 2020, TeamDev. All rights reserved. - * - * Redistribution and use in source and/or binary forms, with or without - * modification, must retain the above copyright notice and the following - * disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - /* * This file describes shared dependencies of Spine sub-projects. * @@ -52,13 +32,15 @@ import java.net.URI * https://github.com/uber/NullAway/blob/master/gradle/dependencies.gradle */ -// Repositories to which we may publish. Normally, only one repository will be used. -// See `publish.gradle.kts` for details of the publishing process. - data class Repository(val releases: String, val snapshots: String, val credentials: String) +/** + * Repositories to which we may publish. Normally, only one repository will be used. + * + * See `publish.gradle` for details of the publishing process. + */ object PublishingRepos { val mavenTeamDev = Repository( releases = "http://maven.teamdev.com/repository/spine", @@ -85,7 +67,8 @@ object Repos { } object Versions { - val slf4j = "1.7.29" // deprecated, remove after full migration + @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) + val slf4j = "1.7.29" val checkerFramework = "3.3.0" val errorProne = "2.3.4" val errorProneJavac = "9+181-r4173-1" // taken from here: https://github.com/tbroyer/gradle-errorprone-plugin/blob/v0.8/build.gradle.kts @@ -125,11 +108,6 @@ object GradlePlugins { val licenseReport = "com.github.jk1:gradle-license-report:${Versions.licensePlugin}" } -object AutoService { - val annotations = "com.google.auto.service:auto-service-annotations:${Versions.autoService}" - val processor = "com.google.auto.service:auto-service:${Versions.autoService}" -} - object Build { val errorProneJavac = "com.google.errorprone:javac:${Versions.errorProneJavac}" val errorProneAnnotations = listOf( @@ -145,11 +123,9 @@ object Build { "org.checkerframework:javacutil:${Versions.checkerFramework}" ) val autoCommon = "com.google.auto:auto-common:${Versions.autoCommon}" - val autoService = AutoService val jsr305Annotations = "com.google.code.findbugs:jsr305:${Versions.findBugs}" val guava = "com.google.guava:guava:${Versions.guava}" val flogger = "com.google.flogger:flogger:${Versions.flogger}" - val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" val protobuf = listOf( "com.google.protobuf:protobuf-java:${Versions.protobuf}", "com.google.protobuf:protobuf-java-util:${Versions.protobuf}" @@ -165,6 +141,13 @@ object Build { val animalSniffer = "org.codehaus.mojo:animal-sniffer-annotations:${Versions.animalSniffer}" val ci = "true".equals(System.getenv("CI")) val gradlePlugins = GradlePlugins + @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) + val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" + + object autoService { + val annotations = "com.google.auto.service:auto-service-annotations:${Versions.autoService}" + val processor = "com.google.auto.service:auto-service:${Versions.autoService}" + } } object Gen { @@ -172,19 +155,44 @@ object Gen { } object Grpc { - val grpcCore = "io.grpc:grpc-core:${Versions.grpc}" - val grpcStub = "io.grpc:grpc-stub:${Versions.grpc}" - val grpcOkHttp = "io.grpc:grpc-okhttp:${Versions.grpc}" - val grpcProtobuf = "io.grpc:grpc-protobuf:${Versions.grpc}" - val grpcNetty = "io.grpc:grpc-netty:${Versions.grpc}" - val grpcNettyShaded = "io.grpc:grpc-netty-shaded:${Versions.grpc}" - val grpcContext = "io.grpc:grpc-context:${Versions.grpc}" + val core = "io.grpc:grpc-core:${Versions.grpc}" + val stub = "io.grpc:grpc-stub:${Versions.grpc}" + val okHttp = "io.grpc:grpc-okhttp:${Versions.grpc}" + val protobuf = "io.grpc:grpc-protobuf:${Versions.grpc}" + val netty = "io.grpc:grpc-netty:${Versions.grpc}" + val nettyShaded = "io.grpc:grpc-netty-shaded:${Versions.grpc}" + val context = "io.grpc:grpc-context:${Versions.grpc}" + + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("core")) + val grpcCore = core + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("stub")) + val grpcStub = stub + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("okHttp")) + val grpcOkHttp = okHttp + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("protobuf")) + val grpcProtobuf = protobuf + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("netty")) + val grpcNetty = netty + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("nettyShaded")) + val grpcNettyShaded = nettyShaded + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("context")) + val grpcContext = context } - + object Runtime { - val floggerSystemBackend = "com.google.flogger:flogger-system-backend:${Versions.flogger}" - val floggerLog4J = "com.google.flogger:flogger-log4j:${Versions.flogger}" - val floggerSlf4J = "com.google.flogger:slf4j-backend-factory:${Versions.flogger}" + + object flogger { + val systemBackend = "com.google.flogger:flogger-system-backend:${Versions.flogger}" + val log4J = "com.google.flogger:flogger-log4j:${Versions.flogger}" + val slf4J = "com.google.flogger:slf4j-backend-factory:${Versions.flogger}" + } + + @Deprecated("Use the `flogger` object.", replaceWith = ReplaceWith("flogger.systemBackend")) + val floggerSystemBackend = flogger.systemBackend + @Deprecated("Use the `flogger` object.", replaceWith = ReplaceWith("flogger.log4J")) + val floggerLog4J = flogger.log4J + @Deprecated("Use the `flogger` object.", replaceWith = ReplaceWith("flogger.slf4J")) + val floggerSlf4J = flogger.slf4J } object Test { @@ -196,7 +204,6 @@ object Test { ) val junit5Runner = "org.junit.jupiter:junit-jupiter-engine:${Versions.junit5}" val junitPioneer = "org.junit-pioneer:junit-pioneer:${Versions.junitPioneer}" - val slf4j = "org.slf4j:slf4j-jdk14:${Versions.slf4j}" val guavaTestlib = "com.google.guava:guava-testlib:${Versions.guava}" val mockito = "org.mockito:mockito-core:2.12.0" val hamcrest = "org.hamcrest:hamcrest-all:1.3" @@ -205,34 +212,42 @@ object Test { "com.google.truth.extensions:truth-java8-extension:${Versions.truth}", "com.google.truth.extensions:truth-proto-extension:${Versions.truth}" ) + @Deprecated("Use Flogger over SLF4J.", + replaceWith = ReplaceWith("Deps.runtime.floggerSystemBackend")) + val slf4j = "org.slf4j:slf4j-jdk14:${Versions.slf4j}" } object Scripts { - fun testArtifacts(p: Project) = "${p.rootDir}/config/gradle/test-artifacts.gradle" - fun testOutput(p: Project) = "${p.rootDir}/config/gradle/test-output.gradle" - fun slowTests(p: Project) = "${p.rootDir}/config/gradle/slow-tests.gradle" - fun javadocOptions(p: Project) = "${p.rootDir}/config/gradle/javadoc-options.gradle" - fun filterInternalJavadocs(p: Project) = "${p.rootDir}/config/gradle/filter-internal-javadoc.gradle" - fun jacoco(p: Project) = "${p.rootDir}/config/gradle/jacoco.gradle" - fun publish(p: Project) = "${p.rootDir}/config/gradle/publish.gradle" - fun publishProto(p: Project) = "${p.rootDir}/config/gradle/publish-proto.gradle" - fun javacArgs(p: Project) = "${p.rootDir}/config/gradle/javac-args.gradle" - fun jsBuildTasks(p: Project) = "${p.rootDir}/config/gradle/js/build-tasks.gradle" - fun jsConfigureProto(p: Project) = "${p.rootDir}/config/gradle/js/configure-proto.gradle" - fun npmPublishTasks(p: Project) = "${p.rootDir}/config/gradle/js/npm-publish-tasks.gradle" - fun npmCli(p: Project) = "${p.rootDir}/config/gradle/js/npm-cli.gradle" - fun updatePackageVersion(p: Project) = "${p.rootDir}/config/gradle/js/update-package-version.gradle" - fun dartBuildTasks(p: Project) = "${p.rootDir}/config/gradle/dart/build-tasks.gradle" - fun pubPublishTasks(p: Project) = "${p.rootDir}/config/gradle/dart/pub-publish-tasks.gradle" - fun pmd(p: Project) = "${p.rootDir}/config/gradle/pmd.gradle" - fun checkstyle(p: Project) = "${p.rootDir}/config/gradle/checkstyle.gradle" - fun runBuild(p: Project) = "${p.rootDir}/config/gradle/run-build.gradle" - fun modelCompiler(p: Project) = "${p.rootDir}/config/gradle/model-compiler.gradle" - fun licenseReportCommon(p: Project) = "${p.rootDir}/config/gradle/license-report-common.gradle" - fun projectLicenseReport(p: Project) = "${p.rootDir}/config/gradle/license-report-project.gradle" - fun repoLicenseReport(p: Project) = "${p.rootDir}/config/gradle/license-report-repo.gradle" - fun generatePom(p: Project) = "${p.rootDir}/config/gradle/generate-pom.gradle" - fun updateGitHubPages(p: Project) = "${p.rootDir}/config/gradle/update-gh-pages.gradle" + + private const val COMMON_PATH = "/config/gradle/" + + fun testArtifacts(p: Project) = p.script("test-artifacts.gradle") + fun testOutput(p: Project) = p.script("test-output.gradle") + fun slowTests(p: Project) = p.script("slow-tests.gradle") + fun javadocOptions(p: Project) = p.script("javadoc-options.gradle") + fun filterInternalJavadocs(p: Project) = p.script("filter-internal-javadoc.gradle") + fun jacoco(p: Project) = p.script("jacoco.gradle") + fun publish(p: Project) = p.script("publish.gradle") + fun publishProto(p: Project) = p.script("publish-proto.gradle") + fun javacArgs(p: Project) = p.script("javac-args.gradle") + fun jsBuildTasks(p: Project) = p.script("js/build-tasks.gradle") + fun jsConfigureProto(p: Project) = p.script("js/configure-proto.gradle") + fun npmPublishTasks(p: Project) = p.script("js/npm-publish-tasks.gradle") + fun npmCli(p: Project) = p.script("js/npm-cli.gradle") + fun updatePackageVersion(p: Project) = p.script("js/update-package-version.gradle") + fun dartBuildTasks(p: Project) = p.script("dart/build-tasks.gradle") + fun pubPublishTasks(p: Project) = p.script("dart/pub-publish-tasks.gradle") + fun pmd(p: Project) = p.script("pmd.gradle") + fun checkstyle(p: Project) = p.script("checkstyle.gradle") + fun runBuild(p: Project) = p.script("run-build.gradle") + fun modelCompiler(p: Project) = p.script("model-compiler.gradle") + fun licenseReportCommon(p: Project) = p.script("license-report-common.gradle") + fun projectLicenseReport(p: Project) = p.script("license-report-project.gradle") + fun repoLicenseReport(p: Project) = p.script("license-report-repo.gradle") + fun generatePom(p: Project) = p.script("generate-pom.gradle") + fun updateGitHubPages(p: Project) = p.script("update-gh-pages.gradle") + + private fun Project.script(name: String) = "${rootDir}$COMMON_PATH$name" } object Deps { @@ -266,7 +281,7 @@ object DependencyResolution { Deps.test.junit5Api, Deps.test.junit4, - // Transitive dependencies of 3rd party components that we don"t use directly. + // Transitive dependencies of 3rd party components that we don't use directly. "com.google.code.gson:gson:2.8.6", "com.google.j2objc:j2objc-annotations:1.3", "org.codehaus.plexus:plexus-utils:3.3.0", @@ -301,6 +316,3 @@ object DependencyResolution { } } } - - - From 3e5a802ecb3cf3ac174fda9e724c443bc166fe34 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 16:49:23 +0300 Subject: [PATCH 18/32] Update config --- buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt | 7 +++++-- config | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt index 1d5d95fd44..96321d9e63 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -123,6 +123,7 @@ object Build { "org.checkerframework:javacutil:${Versions.checkerFramework}" ) val autoCommon = "com.google.auto:auto-common:${Versions.autoCommon}" + val autoService = AutoService val jsr305Annotations = "com.google.code.findbugs:jsr305:${Versions.findBugs}" val guava = "com.google.guava:guava:${Versions.guava}" val flogger = "com.google.flogger:flogger:${Versions.flogger}" @@ -144,7 +145,7 @@ object Build { @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" - object autoService { + object AutoService { val annotations = "com.google.auto.service:auto-service-annotations:${Versions.autoService}" val processor = "com.google.auto.service:auto-service:${Versions.autoService}" } @@ -181,7 +182,9 @@ object Grpc { object Runtime { - object flogger { + val flogger = Flogger + + object Flogger { val systemBackend = "com.google.flogger:flogger-system-backend:${Versions.flogger}" val log4J = "com.google.flogger:flogger-log4j:${Versions.flogger}" val slf4J = "com.google.flogger:slf4j-backend-factory:${Versions.flogger}" diff --git a/config b/config index 754754afca..24d1610d06 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit 754754afca3133c7748a055bd053f19151f0daaa +Subproject commit 24d1610d065dde622ddbacc3741b0d655f16d96a From ac2c47ea686fe5bc59031a66e26d41e2f8655bab Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 16:52:21 +0300 Subject: [PATCH 19/32] Update config --- buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt index 96321d9e63..fc692a3a7a 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -143,6 +143,7 @@ object Build { val ci = "true".equals(System.getenv("CI")) val gradlePlugins = GradlePlugins @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) + @Suppress("DEPRECATION") val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" object AutoService { @@ -163,7 +164,7 @@ object Grpc { val netty = "io.grpc:grpc-netty:${Versions.grpc}" val nettyShaded = "io.grpc:grpc-netty-shaded:${Versions.grpc}" val context = "io.grpc:grpc-context:${Versions.grpc}" - + @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("core")) val grpcCore = core @Deprecated("Use the shorter form.", replaceWith = ReplaceWith("stub")) @@ -217,6 +218,7 @@ object Test { ) @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("Deps.runtime.floggerSystemBackend")) + @Suppress("DEPRECATION") val slf4j = "org.slf4j:slf4j-jdk14:${Versions.slf4j}" } @@ -270,6 +272,7 @@ object DependencyResolution { config.resolutionStrategy { strategy -> strategy.failOnVersionConflict() strategy.cacheChangingModulesFor(0, "seconds") + @Suppress("DEPRECATION") strategy.force( Deps.build.slf4j, Deps.build.errorProneAnnotations, From c3d948cd76be630715250bd29449816372d45b5a Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Thu, 14 May 2020 16:53:43 +0300 Subject: [PATCH 20/32] Clean up --- build.gradle.kts | 4 ---- license-report.md | 30 +++++++++++++-------------- tools/javadoc-filter/build.gradle.kts | 2 +- 3 files changed, 16 insertions(+), 20 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index ddffcab209..de5139dbde 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -22,7 +22,6 @@ import io.spine.gradle.internal.DependencyResolution import io.spine.gradle.internal.Deps import io.spine.gradle.internal.PublishingRepos import io.spine.gradle.internal.RunBuild -import org.gradle.internal.os.OperatingSystem buildscript { apply(from = "$rootDir/version.gradle.kts") @@ -108,9 +107,6 @@ subprojects { val generatedSpineDir by extra("$generatedRootDir/main/spine") val generatedTestSpineDir by extra("$generatedRootDir/test/spine") - // TODO: Move to the usage site. - extra["runsOnWindows"] = OperatingSystem.current().isWindows - apply { plugin("java-library") plugin("pmd") diff --git a/license-report.md b/license-report.md index b26ea3aa32..48b91cab3f 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:17 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:11 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Thu May 14 13:31:17 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Thu May 14 13:31:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Thu May 14 13:31:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Thu May 14 13:31:20 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Thu May 14 13:31:21 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:50 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:01:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Thu May 14 13:31:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:02:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:02:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Thu May 14 13:31:23 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:02:07 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Thu May 14 16:02:12 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 13:31:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Thu May 14 16:02:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/tools/javadoc-filter/build.gradle.kts b/tools/javadoc-filter/build.gradle.kts index 62893fa6aa..cf446c5174 100644 --- a/tools/javadoc-filter/build.gradle.kts +++ b/tools/javadoc-filter/build.gradle.kts @@ -28,7 +28,7 @@ dependencies { implementation(files("${System.getProperty("java.home")}/../lib/tools.jar")) implementation(project(":base")) implementation("javax.annotation:javax.annotation-api:$javaxAnnotationsVersion") - implementation(Deps.grpc.grpcCore) + implementation(Deps.grpc.core) testImplementation(project(":testlib")) testImplementation(project(":mute-logging")) } From 38079490c9c78a70c42d8897531967f0d7c55571 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 11:52:14 +0300 Subject: [PATCH 21/32] Update config --- config | 2 +- license-report.md | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/config b/config index 24d1610d06..ba9e13ac5a 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit 24d1610d065dde622ddbacc3741b0d655f16d96a +Subproject commit ba9e13ac5ada8de9abbb3846bb4cbc56442b4721 diff --git a/license-report.md b/license-report.md index 48b91cab3f..7816d4e5f6 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:11 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:48:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Thu May 14 16:01:11 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Thu May 14 16:01:15 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:07 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Thu May 14 16:01:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Thu May 14 16:01:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Thu May 14 16:01:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:25 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Thu May 14 16:01:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Thu May 14 16:01:42 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Thu May 14 16:01:47 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:50 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:41 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Thu May 14 16:01:50 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:01:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:49 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Thu May 14 16:01:59 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:02:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:53 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Thu May 14 16:02:04 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:02:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:54 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Thu May 14 16:02:05 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:02:07 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:49:57 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Thu May 14 16:02:07 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:02:12 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 11:50:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Thu May 14 16:02:12 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Thu May 14 16:02:15 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 18 11:50:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From 051f6ee2e63904054d6d40236b1e82a6f57af211 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 12:08:22 +0300 Subject: [PATCH 22/32] Use `bin` Gradle distro --- gradle/wrapper/gradle-wrapper.properties | 2 +- license-report.md | 30 ++++++++++++------------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index fd0c5a38e9..4c5803d13c 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/license-report.md b/license-report.md index 7816d4e5f6..956aafe1d3 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:48:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon May 18 11:48:59 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon May 18 11:49:04 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:07 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon May 18 11:49:07 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon May 18 11:49:10 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon May 18 11:49:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:25 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon May 18 11:49:25 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:31 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon May 18 11:49:31 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:37 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:50 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon May 18 11:49:37 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:41 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:03:53 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon May 18 11:49:41 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:49 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:04:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon May 18 11:49:49 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:53 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:04:09 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon May 18 11:49:53 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:54 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:04:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon May 18 11:49:54 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:49:57 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:04:13 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon May 18 11:49:57 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:50:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:04:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon May 18 11:50:01 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 11:50:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 18 12:04:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From 69f96a2d89f51aaf08e89231941d4cc40af1d856 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 12:20:04 +0300 Subject: [PATCH 23/32] Update Gradle --- gradle/wrapper/gradle-wrapper.jar | Bin 58694 -> 58910 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 2 ++ gradlew.bat | 1 + license-report.md | 30 +++++++++++------------ 5 files changed, 19 insertions(+), 16 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 490fda8577df6c95960ba7077c43220e5bb2c0d9..62d4c053550b91381bbd28b1afc82d634bf73a8a 100644 GIT binary patch delta 6447 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 F{|nTN-B$nr diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4c5803d13c..a4f0001d20 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.4.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 2fe81a7d95..fbd7c51583 100755 --- a/gradlew +++ b/gradlew @@ -82,6 +82,7 @@ esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + # Determine the Java command to use to start the JVM. if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then @@ -129,6 +130,7 @@ fi if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath diff --git a/gradlew.bat b/gradlew.bat index 62bd9b9cce..5093609d51 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -84,6 +84,7 @@ set CMD_LINE_ARGS=%* set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% diff --git a/license-report.md b/license-report.md index 956aafe1d3..c5eddbc82b 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:18:57 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon May 18 12:03:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:18:58 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon May 18 12:03:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:24 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon May 18 12:03:24 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:28 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon May 18 12:03:28 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:39 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:00 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon May 18 12:03:39 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:42 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon May 18 12:03:42 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:46 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon May 18 12:03:46 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:50 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon May 18 12:03:50 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:03:53 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon May 18 12:03:53 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon May 18 12:04:01 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:09 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon May 18 12:04:09 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon May 18 12:04:10 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:13 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon May 18 12:04:13 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:18 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 12:19:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon May 18 12:04:18 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:04:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 18 12:19:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From 6ba55690fd8bfcccd8a15b9c0583a34f22b4c72f Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 12:59:09 +0300 Subject: [PATCH 24/32] Manually add path to JDK 8 to $PATH --- .travis.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.travis.yml b/.travis.yml index 38c0f5d09b..fdb4ff1beb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,8 @@ env: # Encrypted `GCS_SECRET` variable. - secure: "i8MhONZu7QjyM2V887A1Tydr1WMqQP5jJZNjIJjc1Uae8F0/z8cJZIZ1hstodN7FpoR4VF92zyhUwbt6fz/dsdPEJFccsiMlEc9vlqecQCd267160wgRZneaB6Xe/y/EUmq9XsGdn/k1Ey+QZwX9au/8RU191v+fDsCtMRYXzyEa/BvbQuSwuYRgQDxTAxuJgTmG5Sxl9jWqKw1BfxUcEoErc/jqymU58w6z2TxKxVzIXT29Jy/Z12VuSiS8opigSrIP8e/1fctC84wI7S52mext2ZfhPYSTHFKS+xg1vQDYPb8m5aomL8E6Of7hVD5BTnEnyjj+/Gr63GAzHXtkHhWoxo+vB+xBFfDu8wxM5Aqna3H7LMDD5kGCxQEz8qmzHBHMAhLnhsRzjNVu2+tLCZdeMN88Ud2uemL2SCAcR8Juleg7DGMj3D0SAbPyUH3+9yYYWzSg6iaxgTdHBnJ+uXUJp0Nu+M2EK6Kl+pYAsCLVfZRPGaajFXVnJEPPeSr2PYzk7F4pIzgn/E8AtYEJ0gcEbjoTItS8EjliJKDXM4HdkluXBFLvzIH1O1nCtxKNv4UkUmPhFbfHrPXDcsYq2zsEe+NkvsJlxjAwYnOMkT4NLiEsec1a7K9bBC+iQA9e8rriMbu6/1w63JErQyx05avPjgO8XRDK8hxTf4rhBmY=" - GRADLE_OPTS="-Xmx2G" + - JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" + - PATH="$JAVA_HOME/bin:$PATH" before_install: - chmod +x gradlew From 0068cb38172131b534488cd9054ce4429947dd2e Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 13:11:17 +0300 Subject: [PATCH 25/32] Add a TODO --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index fdb4ff1beb..8db80c645c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ env: # Encrypted `GCS_SECRET` variable. - secure: "i8MhONZu7QjyM2V887A1Tydr1WMqQP5jJZNjIJjc1Uae8F0/z8cJZIZ1hstodN7FpoR4VF92zyhUwbt6fz/dsdPEJFccsiMlEc9vlqecQCd267160wgRZneaB6Xe/y/EUmq9XsGdn/k1Ey+QZwX9au/8RU191v+fDsCtMRYXzyEa/BvbQuSwuYRgQDxTAxuJgTmG5Sxl9jWqKw1BfxUcEoErc/jqymU58w6z2TxKxVzIXT29Jy/Z12VuSiS8opigSrIP8e/1fctC84wI7S52mext2ZfhPYSTHFKS+xg1vQDYPb8m5aomL8E6Of7hVD5BTnEnyjj+/Gr63GAzHXtkHhWoxo+vB+xBFfDu8wxM5Aqna3H7LMDD5kGCxQEz8qmzHBHMAhLnhsRzjNVu2+tLCZdeMN88Ud2uemL2SCAcR8Juleg7DGMj3D0SAbPyUH3+9yYYWzSg6iaxgTdHBnJ+uXUJp0Nu+M2EK6Kl+pYAsCLVfZRPGaajFXVnJEPPeSr2PYzk7F4pIzgn/E8AtYEJ0gcEbjoTItS8EjliJKDXM4HdkluXBFLvzIH1O1nCtxKNv4UkUmPhFbfHrPXDcsYq2zsEe+NkvsJlxjAwYnOMkT4NLiEsec1a7K9bBC+iQA9e8rriMbu6/1w63JErQyx05avPjgO8XRDK8hxTf4rhBmY=" - GRADLE_OPTS="-Xmx2G" + # TODO:2020-05-18:dmytro.dashenkov: Remove there 2 lines when Travis stops failing when installing JDK 8. - JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" - PATH="$JAVA_HOME/bin:$PATH" From 548886a9fb7e8ca7fe0f8a4fc978a9883f257130 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 15:23:34 +0300 Subject: [PATCH 26/32] Use type-safe accessors --- build.gradle.kts | 60 ++++++++++++++++++++++++----------------------- license-report.md | 30 ++++++++++++------------ 2 files changed, 46 insertions(+), 44 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index de5139dbde..4ac6fb3195 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -31,19 +31,17 @@ buildscript { @Suppress("RemoveRedundantQualifierName") val deps = io.spine.gradle.internal.Deps resolution.defaultRepositories(repositories) - dependencies { - classpath(deps.build.gradlePlugins.protobuf) - classpath(deps.build.gradlePlugins.errorProne) - } resolution.forceConfiguration(configurations) } // Apply some plugins to make type-safe extension accessors available in this script file. plugins { - java + `java-library` idea @Suppress("RemoveRedundantQualifierName") // Cannot use imports here. id("com.google.protobuf").version(io.spine.gradle.internal.Deps.versions.protobufPlugin) + @Suppress("RemoveRedundantQualifierName") // Cannot use imports here. + id("net.ltgt.errorprone").version(io.spine.gradle.internal.Deps.versions.errorPronePlugin) } apply(from = "$rootDir/version.gradle.kts") @@ -123,33 +121,37 @@ subprojects { DependencyResolution.defaultRepositories(repositories) dependencies { - "errorprone"(Deps.build.errorProneCore) - "errorproneJavac"(Deps.build.errorProneJavac) - Deps.build.protobuf.forEach { "api"(it) } - "api"(Deps.build.flogger) - "implementation"(Deps.build.guava) - "implementation"(Deps.build.checkerAnnotations) - "implementation"(Deps.build.jsr305Annotations) - Deps.build.errorProneAnnotations.forEach { "implementation"(it) } - "testImplementation"(Deps.test.guavaTestlib) - "testImplementation"(Deps.test.junit5Runner) - "testImplementation"(Deps.test.junitPioneer) - Deps.test.junit5Api.forEach { "testImplementation"(it) } - "runtimeOnly"(Deps.runtime.floggerSystemBackend) + errorprone(Deps.build.errorProneCore) + errorproneJavac(Deps.build.errorProneJavac) + Deps.build.protobuf.forEach { api(it) } + api(Deps.build.flogger) + implementation(Deps.build.guava) + implementation(Deps.build.checkerAnnotations) + implementation(Deps.build.jsr305Annotations) + Deps.build.errorProneAnnotations.forEach { implementation(it) } + testImplementation(Deps.test.guavaTestlib) + testImplementation(Deps.test.junit5Runner) + testImplementation(Deps.test.junitPioneer) + Deps.test.junit5Api.forEach { testImplementation(it) } + runtimeOnly(Deps.runtime.flogger.systemBackend) } DependencyResolution.forceConfiguration(configurations) configurations { - named("runtime").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") - named("testRuntime").get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + runtime { + exclude(group = "com.google.protobuf", module = "protobuf-lite") + } + testRuntime { + exclude(group = "com.google.protobuf", module = "protobuf-lite") + } } - java { - sourceSets["main"].apply { + sourceSets { + main { java.srcDirs(generatedJavaDir, "$sourcesRootDir/main/java", generatedSpineDir) resources.srcDirs("$sourcesRootDir/main/resources", "$generatedRootDir/main/resources") } - sourceSets["test"].apply { + test { java.srcDirs(generatedTestJavaDir, "$sourcesRootDir/test/java", generatedTestSpineDir) resources.srcDirs("$sourcesRootDir/test/resources", "$generatedRootDir/test/resources") } @@ -165,7 +167,7 @@ subprojects { }) } - (tasks["test"] as Test).apply { + tasks.test.configure { useJUnitPlatform { includeEngines("junit-jupiter") } @@ -207,7 +209,9 @@ subprojects { delete("$projectDir/generated") } - tasks["clean"].dependsOn(cleanGenerated) + tasks.clean.configure { + dependsOn(cleanGenerated) + } apply(from = Deps.scripts.pmd(project)) } @@ -219,12 +223,10 @@ apply { from(Deps.scripts.repoLicenseReport(project)) } -val smokeTests = "smokeTests" - -tasks.register(smokeTests, RunBuild::class) { +val smokeTests by tasks.registering(RunBuild::class) { directory = "$rootDir/tools/smoke-tests" } tasks.register("buildAll") { - dependsOn("build", smokeTests) + dependsOn(tasks.build, smokeTests) } diff --git a/license-report.md b/license-report.md index c5eddbc82b..4ee837aa76 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:18:57 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:18:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon May 18 12:18:57 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:18:58 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:18:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon May 18 12:18:58 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:18:26 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:18:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon May 18 12:18:59 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:00 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon May 18 12:19:00 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon May 18 12:19:01 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon May 18 12:19:02 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon May 18 12:19:03 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon May 18 12:19:04 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 15:19:43 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon May 18 12:19:05 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 12:19:05 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 18 15:19:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file From a87f8bb98a8ed4cbdea971b9909e6884b72ce8af Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 15:24:40 +0300 Subject: [PATCH 27/32] Remove empty lines --- tools/plugin-base/build.gradle.kts | 2 -- 1 file changed, 2 deletions(-) diff --git a/tools/plugin-base/build.gradle.kts b/tools/plugin-base/build.gradle.kts index 415ba213ea..a7d89c0f41 100644 --- a/tools/plugin-base/build.gradle.kts +++ b/tools/plugin-base/build.gradle.kts @@ -78,5 +78,3 @@ tasks.processResources.get().dependsOn(prepareProtocConfigVersions) sourceSets.test { resources.srcDir("$projectDir/src/test/resources") } - - From 71febad9b53f4f2462cbdfd8abcc2ef03e67a4af Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 16:28:07 +0300 Subject: [PATCH 28/32] Update config --- .../kotlin/io/spine/gradle/internal/deps.kt | 20 ++++++++++++++----- config | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt index fc692a3a7a..a9c51955a0 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -67,8 +67,6 @@ object Repos { } object Versions { - @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) - val slf4j = "1.7.29" val checkerFramework = "3.3.0" val errorProne = "2.3.4" val errorProneJavac = "9+181-r4173-1" // taken from here: https://github.com/tbroyer/gradle-errorprone-plugin/blob/v0.8/build.gradle.kts @@ -99,6 +97,18 @@ object Versions { val jackson = "2.9.10.4" val animalSniffer = "1.18" val apiguardian = "1.1.0" + + /** + * Version of the SLF4J library. + * + * Spine used to log with SLF4J. Now we use Flogger. Whenever a coice comes up, we recommend to + * use the latter. + * + * Some third-party libraries may clash with different versions of the library. Thus, we specify + * this version and force it via [forceConfiguration(..)][DependencyResolution.forceConfiguration]. + */ + @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) + val slf4j = "1.7.29" } object GradlePlugins { @@ -143,7 +153,7 @@ object Build { val ci = "true".equals(System.getenv("CI")) val gradlePlugins = GradlePlugins @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("flogger")) - @Suppress("DEPRECATION") + @Suppress("DEPRECATION") // Version of SLF4J. val slf4j = "org.slf4j:slf4j-api:${Versions.slf4j}" object AutoService { @@ -218,7 +228,7 @@ object Test { ) @Deprecated("Use Flogger over SLF4J.", replaceWith = ReplaceWith("Deps.runtime.floggerSystemBackend")) - @Suppress("DEPRECATION") + @Suppress("DEPRECATION") // Version of SLF4J. val slf4j = "org.slf4j:slf4j-jdk14:${Versions.slf4j}" } @@ -272,7 +282,7 @@ object DependencyResolution { config.resolutionStrategy { strategy -> strategy.failOnVersionConflict() strategy.cacheChangingModulesFor(0, "seconds") - @Suppress("DEPRECATION") + @Suppress("DEPRECATION") // Force SLF4J version. strategy.force( Deps.build.slf4j, Deps.build.errorProneAnnotations, diff --git a/config b/config index ba9e13ac5a..c122affe4e 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit ba9e13ac5ada8de9abbb3846bb4cbc56442b4721 +Subproject commit c122affe4e1bfabaab0e03ef81d33dd4cc6d0177 From 19bc1ad3b56d62923c6d2eba4a0b936637c3e316 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 16:28:58 +0300 Subject: [PATCH 29/32] Fix a typo --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 8db80c645c..2e2089acf2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,7 +11,7 @@ env: # Encrypted `GCS_SECRET` variable. - secure: "i8MhONZu7QjyM2V887A1Tydr1WMqQP5jJZNjIJjc1Uae8F0/z8cJZIZ1hstodN7FpoR4VF92zyhUwbt6fz/dsdPEJFccsiMlEc9vlqecQCd267160wgRZneaB6Xe/y/EUmq9XsGdn/k1Ey+QZwX9au/8RU191v+fDsCtMRYXzyEa/BvbQuSwuYRgQDxTAxuJgTmG5Sxl9jWqKw1BfxUcEoErc/jqymU58w6z2TxKxVzIXT29Jy/Z12VuSiS8opigSrIP8e/1fctC84wI7S52mext2ZfhPYSTHFKS+xg1vQDYPb8m5aomL8E6Of7hVD5BTnEnyjj+/Gr63GAzHXtkHhWoxo+vB+xBFfDu8wxM5Aqna3H7LMDD5kGCxQEz8qmzHBHMAhLnhsRzjNVu2+tLCZdeMN88Ud2uemL2SCAcR8Juleg7DGMj3D0SAbPyUH3+9yYYWzSg6iaxgTdHBnJ+uXUJp0Nu+M2EK6Kl+pYAsCLVfZRPGaajFXVnJEPPeSr2PYzk7F4pIzgn/E8AtYEJ0gcEbjoTItS8EjliJKDXM4HdkluXBFLvzIH1O1nCtxKNv4UkUmPhFbfHrPXDcsYq2zsEe+NkvsJlxjAwYnOMkT4NLiEsec1a7K9bBC+iQA9e8rriMbu6/1w63JErQyx05avPjgO8XRDK8hxTf4rhBmY=" - GRADLE_OPTS="-Xmx2G" - # TODO:2020-05-18:dmytro.dashenkov: Remove there 2 lines when Travis stops failing when installing JDK 8. + # TODO:2020-05-18:dmytro.dashenkov: Remove these 2 lines when Travis stops failing when installing JDK 8. - JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" - PATH="$JAVA_HOME/bin:$PATH" From 5c21405fead28f3a02dece50163ed1c015c178f9 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 16:32:34 +0300 Subject: [PATCH 30/32] Fix a typo --- build.gradle.kts | 1 - 1 file changed, 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 4ac6fb3195..083d3fb836 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -81,7 +81,6 @@ allprojects { from("$rootDir/config/gradle/dependencies.gradle") } version = rootProject.extra["versionToPublish"]!! - version = rootProject.extra["versionToPublish"]!! } subprojects { From 542574522f9ad8dafe41507357901565fe922e06 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 16:32:46 +0300 Subject: [PATCH 31/32] Clean up a build script --- base/build.gradle.kts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/base/build.gradle.kts b/base/build.gradle.kts index 1ce468b75a..ee5c6a2377 100644 --- a/base/build.gradle.kts +++ b/base/build.gradle.kts @@ -36,8 +36,10 @@ apply(from = Deps.scripts.testArtifacts(project)) configurations { // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` - runtimeClasspath.get().exclude(group = "com.google.protobuf", module = "protobuf-lite") - testRuntimeClasspath.get().exclude(group = "com.google.protobuf", module = "protobuf-lite") + val group = "com.google.protobuf" + val name = "protobuf-lite" + runtimeClasspath.get().exclude(group = group, module = name) + testRuntimeClasspath.get().exclude(group = group, module = name) } dependencies { @@ -134,8 +136,8 @@ protobuf { /** * Checks if the given file belongs to the Google `.proto` sources. */ -fun isGoogleProtoSource(file: FileTreeElement): Boolean { - val pathSegments = file.relativePath.segments +fun FileTreeElement.isGoogleProtoSource(): Boolean { + val pathSegments = relativePath.segments return pathSegments.isNotEmpty() && pathSegments[0].equals("google") } @@ -143,6 +145,6 @@ fun isGoogleProtoSource(file: FileTreeElement): Boolean { * From all artifacts, exclude Google `.proto` sources. */ tasks.withType(Jar::class) { - exclude { isGoogleProtoSource(it) } + exclude { it.isGoogleProtoSource() } } From 45db0981f2dcb7dc870cf608a4bb65ec483e54d1 Mon Sep 17 00:00:00 2001 From: Dmytro Dashenkov Date: Mon, 18 May 2020 17:07:23 +0300 Subject: [PATCH 32/32] Update config --- base/build.gradle.kts | 9 ++---- build.gradle.kts | 9 +----- .../kotlin/io/spine/gradle/internal/deps.kt | 11 +++++++ config | 2 +- license-report.md | 30 +++++++++---------- 5 files changed, 30 insertions(+), 31 deletions(-) diff --git a/base/build.gradle.kts b/base/build.gradle.kts index ee5c6a2377..ef2db74b57 100644 --- a/base/build.gradle.kts +++ b/base/build.gradle.kts @@ -21,6 +21,7 @@ import com.google.protobuf.gradle.ProtobufConfigurator.JavaGenerateProtoTaskCollection import groovy.lang.Closure import groovy.lang.GString +import io.spine.gradle.internal.DependencyResolution import io.spine.gradle.internal.Deps import io.spine.gradle.internal.RunBuild import java.nio.file.Files.isSameFile @@ -34,13 +35,7 @@ group = "io.spine" apply(from = Deps.scripts.testArtifacts(project)) -configurations { - // Avoid collisions of Java classes defined both in `protobuf-lite` and `protobuf-java` - val group = "com.google.protobuf" - val name = "protobuf-lite" - runtimeClasspath.get().exclude(group = group, module = name) - testRuntimeClasspath.get().exclude(group = group, module = name) -} +DependencyResolution.excludeProtobufLite(configurations) dependencies { Deps.build.protobuf.forEach { protobuf(it) } diff --git a/build.gradle.kts b/build.gradle.kts index 083d3fb836..22c5dbcb5d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -136,14 +136,7 @@ subprojects { } DependencyResolution.forceConfiguration(configurations) - configurations { - runtime { - exclude(group = "com.google.protobuf", module = "protobuf-lite") - } - testRuntime { - exclude(group = "com.google.protobuf", module = "protobuf-lite") - } - } + DependencyResolution.excludeProtobufLite(configurations) sourceSets { main { diff --git a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt index a9c51955a0..2636036af2 100644 --- a/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt +++ b/buildSrc/src/main/kotlin/io/spine/gradle/internal/deps.kt @@ -316,6 +316,17 @@ object DependencyResolution { } } + fun excludeProtobufLite(configurations: ConfigurationContainer) { + excludeProtoLite(configurations, "runtime") + excludeProtoLite(configurations, "testRuntime") + } + + private fun excludeProtoLite(configurations: ConfigurationContainer, + configurationName: String) { + configurations.named(configurationName).get() + .exclude(mapOf("group" to "com.google.protobuf", "module" to "protobuf-lite")) + } + fun defaultRepositories(repositories: RepositoryHandler) { repositories.mavenLocal() repositories.maven { repository -> diff --git a/config b/config index c122affe4e..5ffcb1a8db 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit c122affe4e1bfabaab0e03ef81d33dd4cc6d0177 +Subproject commit 5ffcb1a8dbe4b9f14aacb9ecf663c5e639eac4b5 diff --git a/license-report.md b/license-report.md index 4ee837aa76..cac8d088b0 100644 --- a/license-report.md +++ b/license-report.md @@ -328,7 +328,7 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:18:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:11 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -773,7 +773,7 @@ This report was generated on **Mon May 18 15:18:16 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:18:22 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:16 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1156,7 +1156,7 @@ This report was generated on **Mon May 18 15:18:22 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:18:26 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1521,7 +1521,7 @@ This report was generated on **Mon May 18 15:18:26 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:18:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:23 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -1902,7 +1902,7 @@ This report was generated on **Mon May 18 15:18:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:01 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2281,7 +2281,7 @@ This report was generated on **Mon May 18 15:19:01 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -2646,7 +2646,7 @@ This report was generated on **Mon May 18 15:19:04 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:10 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:43 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3065,7 +3065,7 @@ This report was generated on **Mon May 18 15:19:10 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:14 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:49 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3430,7 +3430,7 @@ This report was generated on **Mon May 18 15:19:14 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:19 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:02:54 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -3795,7 +3795,7 @@ This report was generated on **Mon May 18 15:19:19 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:29 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:03:04 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4120,7 +4120,7 @@ This report was generated on **Mon May 18 15:19:29 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:03:09 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4453,7 +4453,7 @@ This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:03:09 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -4832,7 +4832,7 @@ This report was generated on **Mon May 18 15:19:35 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:38 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:03:13 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5165,7 +5165,7 @@ This report was generated on **Mon May 18 15:19:38 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:43 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Mon May 18 17:03:17 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). @@ -5498,4 +5498,4 @@ This report was generated on **Mon May 18 15:19:43 EEST 2020** using [Gradle-Lic The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Mon May 18 15:19:47 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Mon May 18 17:03:21 EEST 2020** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file