Add bisq2 Gradle Tor Plugin

This commit is contained in:
Alva Swanson 2023-05-09 10:09:35 +02:00
parent 4bd8d421be
commit b5402d840b
No known key found for this signature in database
GPG Key ID: 004760E77F753090
8 changed files with 762 additions and 0 deletions

View File

@ -8,3 +8,4 @@ dependencyResolutionManagement {
include 'commons'
include 'gradle-tasks'
include 'tor-binary'

View File

@ -0,0 +1,21 @@
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.7.10'
id 'org.gradle.kotlin.kotlin-dsl' version '2.4.1'
}
repositories {
mavenCentral()
}
gradlePlugin {
plugins {
simplePlugin {
id = 'bisq.gradle.tor_binary.BisqTorBinaryPlugin'
implementationClass = 'bisq.gradle.tor_binary.BisqTorBinaryPlugin'
}
}
}
dependencies {
implementation project(':gradle-tasks')
}

View File

@ -0,0 +1,42 @@
package bisq.gradle.tor_binary
import bisq.gradle.tasks.PgpFingerprint
import bisq.gradle.tasks.download.SignedBinaryDownloader
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.file.RegularFile
import org.gradle.api.provider.Property
import org.gradle.api.provider.Provider
import org.gradle.kotlin.dsl.create
class BisqTorBinaryPlugin : Plugin<Project> {
companion object {
const val DOWNLOADS_DIR = "tor_binary/downloads"
}
override fun apply(project: Project) {
val extension = project.extensions.create<BisqTorBinaryPluginExtension>("tor")
val torBinaryDownloader = SignedBinaryDownloader(
project = project,
binaryName = "Tor",
version = extension.version,
perOsUrlProvider = { version -> TorBinaryUrlProvider(version) },
downloadDirectory = DOWNLOADS_DIR,
pgpFingerprintToKeyUrlMap = mapOf(
Pair(
PgpFingerprint.normalize("EF6E 286D DA85 EA2A 4BA7 DE68 4E2C 6E87 9329 8290"),
this::class.java.getResource("/Tor_Browser_Developers_(signing_key).asc")!!,
)
)
)
torBinaryDownloader.registerTasks()
val binaryTarFile: Provider<Property<Provider<RegularFile>>> =
torBinaryDownloader.verifySignatureTask.map { it.fileToVerify }
val torBinaryPackager = TorBinaryPackager(project)
torBinaryPackager.registerTasks(binaryTarFile)
}
}

View File

@ -0,0 +1,7 @@
package bisq.gradle.tor_binary
import org.gradle.api.provider.Property
abstract class BisqTorBinaryPluginExtension {
abstract val version: Property<String>
}

View File

@ -0,0 +1,53 @@
package bisq.gradle.tor_binary
import org.gradle.api.Project
import org.gradle.api.file.RegularFile
import org.gradle.api.provider.Property
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.Copy
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Zip
import org.gradle.kotlin.dsl.register
class TorBinaryPackager(private val project: Project) {
companion object {
private const val ARCHIVE_EXTRACTION_DIR = "${BisqTorBinaryPlugin.DOWNLOADS_DIR}/extracted"
private const val PROCESSED_DIR = "${BisqTorBinaryPlugin.DOWNLOADS_DIR}/processed"
}
fun registerTasks(tarFile: Provider<Property<Provider<RegularFile>>>) {
val unpackTarTask: TaskProvider<Copy> = project.tasks.register<Copy>("unpackTorBinaryTar") {
from(
tarFile.map {
project.tarTree(it.get().get().asFile.absolutePath)
}
)
into(project.layout.buildDirectory.dir(ARCHIVE_EXTRACTION_DIR))
}
val processUnpackedTorBinaryTar: TaskProvider<Copy> =
project.tasks.register<Copy>("processUnpackedTorBinaryTar") {
dependsOn(unpackTarTask)
from(project.layout.buildDirectory.dir("${ARCHIVE_EXTRACTION_DIR}/data"))
from(project.layout.buildDirectory.dir("${ARCHIVE_EXTRACTION_DIR}/tor"))
into(project.layout.buildDirectory.dir(PROCESSED_DIR))
}
val packageTorBinary: TaskProvider<Zip> =
project.tasks.register<Zip>("packageTorBinary") {
dependsOn(processUnpackedTorBinaryTar)
archiveFileName.set("tor.zip")
destinationDirectory.set(project.layout.buildDirectory.dir("generated/src/main/resources"))
from(project.layout.buildDirectory.dir(PROCESSED_DIR))
}
val processResourcesTask = project.tasks.named("processResources")
processResourcesTask.configure {
dependsOn(packageTorBinary)
}
}
}

View File

@ -0,0 +1,17 @@
package bisq.gradle.tor_binary
import bisq.gradle.tasks.PerOsUrlProvider
class TorBinaryUrlProvider(private val version: String) : PerOsUrlProvider {
override val urlPrefix: String
get() = "https://archive.torproject.org/tor-package-archive/torbrowser/$version/"
override val linuxUrl: String
get() = "tor-expert-bundle-$version-linux-x86_64.tar.gz"
override val macOsUrl: String
get() = "tor-expert-bundle-$version-macos-x86_64.tar.gz"
override val windowsUrl: String
get() = "tor-expert-bundle-$version-windows-x86_64.tar.gz"
}

View File

@ -0,0 +1,273 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
IXALDCLwHP4mQfdN4NmceXquFF4wNUFEWkcjAsGMId54G+ifqyADG6u9CVnMEg9p
8OScJk4LQeFs5yyK7JisH8v/Vgo7OFjz4LkCDQRUjrBWARAAwe/WL4gxY2OpsIxQ
9LsNdObgkbDUXzyB/dgdXBIXt1l9R0dLh9vrl9WzgA9p8pmpCtqXSqMMiwjahmC5
53bj8gMX0khhZf4qSzlZsck/eTsaTrzANwYGcYxKhoq85C1z8vf/sAeeHGcW+2wP
xrJ21R8E0gEGI3MBex+k/9Z/60ZXrP7tT4JPvATdQKi3YStv9R3k9VKrwYwdlH4i
jjldsNkQcK2ZaCzeX7PzOHgucV/cc/5S4M2XY8KbECqX5Zc4jc1sHrjQ77hjiwjG
3TwLfDLMq4YfqQiVG9ca9juQL4k1+fygwbWScp47tZ/d0PO5Qr1C8IbE2bbPI5u/
PO336UK+Mmd2k0RQQOV7xujfFqNAF7GboIVgjeW5mMRssowjYVjRaXdHZsSYKTcb
6eVCWZz/7mzuqZhlKj9me+ChQNNQyG9XKmBOTJ0rj7OhC7J3qoUdt4pZo+vp5kiN
07kne3m/7ZZsWMCpdb/z2se/1pVpmJYvsOSyasGC/FYgeuJN3Cm0N81h4U6cgJCQ
IepShZDZaCtYO66hez63Rs6dro0kcpI1mfYbiYdmqLy1S/bYiaRhohVUOaSgZyJ1
s+/XqcO+ehTqbbZ+L0IqiqgVU0rDItHPu31WoIzZnZOqpzk8a/Deh/VyGog5XXwA
P9+TWQe18pyf0v0D1f5te4VSD50AEQEAAYkEWwQYAQoADwIbAgUCVd2iawUJBRFZ
EAJACRBOLG6HkymCkMFdIAQZAQoABgUCVI6wVgAKCRAuGsaO1AgU4JKjEACXrUoJ
M4iskF/tRCc67bl/QWVy4RDQlVhcCfnUAnuIr76f3EjuYqrD6c8QacbTFzggTwtt
YXx09Mf3A388T/jZHV/9HkPG3cxpgpNmq/YiQhxCVvdvHo/IGkpS9UMt4f7hFjsL
7dlW157ys8OQ8cgRSQ0A/FEeMvzE6uni7cYZ4lfLkrS896o0layi/uCg7BKRhz44
a9lYWpQ+d7BFC+rmMEk7nhWgUeLjb+oL22MsVunbRE4clEKYvyT63B4imtmzJsdG
iQPK/+xzCcwYqtROI9r7dOjSHKI5U0s1P/PvXbZipzyhNFxTPL8fORW8DJSW6dhd
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
7OCwu3RB
=omt+
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -196,6 +196,14 @@
<sha256 value="0428ee4b868d438d7e96e457bc71c249b68691a7332967d720741c6f04abeac6" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.github.gundy" name="semver4j" version="0.16.4">
<artifact name="semver4j-0.16.4-nodeps.jar">
<sha256 value="3f59eca516374ccd4fd3551625bf50f8a4b191f700508f7ce4866460a6128af0" origin="Generated by Gradle"/>
</artifact>
<artifact name="semver4j-0.16.4.pom">
<sha256 value="32001db2443b339dd21f5b79ff29d1ade722d1ba080c214bde819f0f72d1604d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.github.javaparser" name="javaparser-core" version="3.13.5">
<artifact name="javaparser-core-3.13.5.jar">
<sha256 value="3ad8087c59e6a13b699a4917897086ae30f9834b5d5718d88d1b321c887b461a" origin="Generated by Gradle"/>
@ -291,6 +299,14 @@
<sha256 value="2174415a647332d30fda04bd1cfc708a3ecc84eaf7517f596188d8244e103911" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.code.gson" name="gson" version="2.8.9">
<artifact name="gson-2.8.9.jar">
<sha256 value="d3999291855de495c94c743761b8ab5176cfeabe281a5ab0d8e8d45326fd703e" origin="Generated by Gradle"/>
</artifact>
<artifact name="gson-2.8.9.pom">
<sha256 value="afded6e6a690fbf3ad4ae65ada397f0a90a5f630b303d1b741b9c97926fdd4de" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.code.gson" name="gson-parent" version="2.8.5">
<artifact name="gson-parent-2.8.5.pom">
<sha256 value="8f1fec72b91a71ea39ec39f5f778c4d1124b6b097c6d55b3a50b554a52237b27" origin="Generated by Gradle"/>
@ -301,6 +317,11 @@
<sha256 value="3736463859ec19267295e894940ae82a8f684413031122fe35ce7cff7e30a774" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.code.gson" name="gson-parent" version="2.8.9">
<artifact name="gson-parent-2.8.9.pom">
<sha256 value="b16e026e63427c1972ad0fc68703ec379b1576e411ba49c32fa9a31ab0bbcffb" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.errorprone" name="error_prone_annotations" version="2.2.0">
<artifact name="error_prone_annotations-2.2.0.jar">
<sha256 value="6ebd22ca1b9d8ec06d41de8d64e0596981d9607b42035f9ed374f9de271a481a" origin="Generated by Gradle"/>
@ -309,6 +330,14 @@
<sha256 value="5e0258ea1ba4e51a133742680bc22448f7ab214be4073e8619f645ef1be42dd5" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.errorprone" name="error_prone_annotations" version="2.3.4">
<artifact name="error_prone_annotations-2.3.4.jar">
<sha256 value="baf7d6ea97ce606c53e11b6854ba5f2ce7ef5c24dddf0afa18d1260bd25b002c" origin="Generated by Gradle"/>
</artifact>
<artifact name="error_prone_annotations-2.3.4.pom">
<sha256 value="1326738a4b4f7ccacf607b866a11fb85193ef60f6a59461187ce7265f9be5bed" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.errorprone" name="error_prone_annotations" version="2.5.1">
<artifact name="error_prone_annotations-2.5.1.jar">
<sha256 value="ff80626baaf12a09342befd4e84cba9d50662f5fcd7f7a9b3490a6b7cf87e66c" origin="Generated by Gradle"/>
@ -330,6 +359,11 @@
<sha256 value="c460902ddf5ece68832c6b271ce52a0928b05cf3a6ac81a8f548c73cbd541138" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.errorprone" name="error_prone_parent" version="2.3.4">
<artifact name="error_prone_parent-2.3.4.pom">
<sha256 value="40495b437a60d2398f0fdfc054b89d9c394a82347a274a0721c2e950a4302186" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.errorprone" name="error_prone_parent" version="2.5.1">
<artifact name="error_prone_parent-2.5.1.pom">
<sha256 value="a17a7677482a3a51a45f5e08140072acd332ccb12f23899b0052d80a729c2e52" origin="Generated by Gradle"/>
@ -369,6 +403,14 @@
<sha256 value="6a8dd041f23a6bb14a86e440fccb993537b62271357a0dac0a3cb0ff39158f36" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.guava" name="guava" version="29.0-jre">
<artifact name="guava-29.0-jre.jar">
<sha256 value="b22c5fb66d61e7b9522531d04b2f915b5158e80aa0b40ee7282c8bfb07b0da25" origin="Generated by Gradle"/>
</artifact>
<artifact name="guava-29.0-jre.pom">
<sha256 value="9027e934098903d287f1ba61c8b65f01d1d1e1da7a6fbcc04bf3de0544014426" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.guava" name="guava" version="30.1.1-jre">
<artifact name="guava-30.1.1-jre.jar">
<sha256 value="44ce229ce26d880bf3afc362bbfcec34d7e6903d195bbb1db9f3b6e0d9834f06" origin="Generated by Gradle"/>
@ -387,6 +429,11 @@
<sha256 value="317e88291262e0cf2805e956c18850f1d4565c85c2e1112f5d9d08ab1732e696" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.guava" name="guava-parent" version="29.0-jre">
<artifact name="guava-parent-29.0-jre.pom">
<sha256 value="6a57f9e02f78dfa2f4bda3416065a64426ae1b66de228cf6e196e2e1912553bf" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="com.google.guava" name="guava-parent" version="30.1.1-jre">
<artifact name="guava-parent-30.1.1-jre.pom">
<sha256 value="0422bd45ca2497bfa18aad2698324965ed70da0907b8a7d459b7ab3b5eed3834" origin="Generated by Gradle"/>
@ -578,6 +625,14 @@
<sha256 value="1bb0abb32c6556c63fdb5ce181a4d38a81e385823915dbd9ebb65116ab99a021" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="de.undercouch" name="gradle-download-task" version="4.1.1">
<artifact name="gradle-download-task-4.1.1.jar">
<sha256 value="eb08b570e408d4646705e70a949614d439ea2b11455f1652ab0330de8954dab9" origin="Generated by Gradle"/>
</artifact>
<artifact name="gradle-download-task-4.1.1.pom">
<sha256 value="1109f1f71a54254d590337d8b9d443f9dfc08728c9c1d8335655cc1dcc88c0b9" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="io.github.microutils" name="kotlin-logging" version="1.5.4">
<artifact name="kotlin-logging-1.5.4.jar">
<sha256 value="4992504fd3c6ecdf9ed10874b9508e758bb908af9e9d7af19a61e9afb6b7e27a" origin="Generated by Gradle"/>
@ -738,6 +793,14 @@
<sha256 value="30f5789efa39ddbf96095aada3fc1260c4561faf2f714686717cb2dc5049475a" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="net.java.dev.jna" name="jna" version="5.6.0">
<artifact name="jna-5.6.0.jar">
<sha256 value="5557e235a8aa2f9766d5dc609d67948f2a8832c2d796cea9ef1d6cbe0b3b7eaf" origin="Generated by Gradle"/>
</artifact>
<artifact name="jna-5.6.0.pom">
<sha256 value="5fe81b0255978f24616d37b10608b79498a5f3073e1d9b2038d8736a831f2608" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="net.jcip" name="jcip-annotations" version="1.0">
<artifact name="jcip-annotations-1.0.jar">
<sha256 value="be5805392060c71474bf6c9a67a099471274d30b83eef84bfc4e0889a4f1dcc0" origin="Generated by Gradle"/>
@ -982,6 +1045,14 @@
<sha256 value="40bc5efb0aa8ecb08d180edb4758255648877df6fd44ef0815db960a6c4d828f" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.checkerframework" name="checker-qual" version="2.11.1">
<artifact name="checker-qual-2.11.1.jar">
<sha256 value="015224a4b1dc6de6da053273d4da7d39cfea20e63038169fc45ac0d1dc9c5938" origin="Generated by Gradle"/>
</artifact>
<artifact name="checker-qual-2.11.1.pom">
<sha256 value="cf2e0c90d8f757455f4a258ea609739053663bd5da6a79d9bd53f935a47de79c" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.checkerframework" name="checker-qual" version="2.5.2">
<artifact name="checker-qual-2.5.2.jar">
<sha256 value="64b02691c8b9d4e7700f8ee2e742dce7ea2c6e81e662b7522c9ee3bf568c040a" origin="Generated by Gradle"/>
@ -1105,6 +1176,19 @@
<sha256 value="28323c619c05bd0ef05bae81cd056b04f382d7d09ae9e46311e4ec828b611f2a" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.gradle.kotlin" name="gradle-kotlin-dsl-plugins" version="2.4.1">
<artifact name="gradle-kotlin-dsl-plugins-2.4.1.jar">
<sha256 value="24d7f385cdffff81648f11098688fd0a2f1986c5286364183c08958927e5307d" origin="Generated by Gradle"/>
</artifact>
<artifact name="gradle-kotlin-dsl-plugins-2.4.1.module">
<sha256 value="376a6bab4ecfcdcf4f634c36da95bb5e81c8cb8231a4c71230f34dfca9d3063d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.gradle.kotlin.kotlin-dsl" name="org.gradle.kotlin.kotlin-dsl.gradle.plugin" version="2.4.1">
<artifact name="org.gradle.kotlin.kotlin-dsl.gradle.plugin-2.4.1.pom">
<sha256 value="33deb55529b1a8bad499ae2fab7551720b4158ca414174c29fb61f0040423a50" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.hamcrest" name="hamcrest" version="2.2">
<artifact name="hamcrest-2.2.jar">
<sha256 value="5e62846a89f05cd78cd9c1a553f340d002458380c320455dd1f8fc5497a8a1c1" origin="Generated by Gradle"/>
@ -1145,6 +1229,193 @@
<sha256 value="965aeb2bedff369819bdde1bf7a0b3b89b8247dd69c88b86375d76163bb8c397" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.intellij.deps" name="trove4j" version="1.0.20200330">
<artifact name="trove4j-1.0.20200330.jar">
<sha256 value="c5fd725bffab51846bf3c77db1383c60aaaebfe1b7fe2f00d23fe1b7df0a439d" origin="Generated by Gradle"/>
</artifact>
<artifact name="trove4j-1.0.20200330.pom">
<sha256 value="87721cbaa65a3c97d8b1ba9d207840f164c9fe38759fc9ea10ffe26565f8d3e9" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-android-extensions" version="1.7.10">
<artifact name="kotlin-android-extensions-1.7.10.jar">
<sha256 value="8848ab3627e888adce1ca54d0e0f348f269928f327b1a305a9450cc41f599729" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-android-extensions-1.7.10.pom">
<sha256 value="3b26cfd3aa7605dcd7a44d51b90ecdd4a385bb12a72deeeddccea40b53317983" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-annotation-processing-gradle" version="1.7.10">
<artifact name="kotlin-annotation-processing-gradle-1.7.10.jar">
<sha256 value="5351105490f668a4582966ee149ccd5eaf286f7a0b4cf7a301268b8b8910dfd1" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-annotation-processing-gradle-1.7.10.pom">
<sha256 value="2f02f52c3c3504b0ff5b8df35e836e6028ee7b19dcb0b1e371cd9ab1709dd54d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-build-common" version="1.7.10">
<artifact name="kotlin-build-common-1.7.10.jar">
<sha256 value="5101113db206ee65fe865cc7ceb2ba298fe496fa55e3f6b1acd7234b110e98f7" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-build-common-1.7.10.pom">
<sha256 value="e29e8bfa1d1b479ac5bb4cc9c4c73dbdd50d2791175288e3dd50056a1e9422a7" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-compiler-embeddable" version="1.7.10">
<artifact name="kotlin-compiler-embeddable-1.7.10.jar">
<sha256 value="470ba8941794f818a34b0a8f387ee27e44268e95a108322d18d9749ae345e22b" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-compiler-embeddable-1.7.10.pom">
<sha256 value="b99ada3fe88852fdcec333c495fe8acd87a6bcc8aef6101c7b93971cb0727b96" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-compiler-runner" version="1.7.10">
<artifact name="kotlin-compiler-runner-1.7.10.jar">
<sha256 value="5f64c920faed6b4e14a4a2c9f531a4e2df1deef4201c2b29669f51354542878c" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-compiler-runner-1.7.10.pom">
<sha256 value="f3d9a4836afd05cfaa44366c709f46d8b9426b8b1e7ad3f8e71c96e2d0acca66" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-daemon-client" version="1.7.10">
<artifact name="kotlin-daemon-client-1.7.10.jar">
<sha256 value="5cc269f9e190a4d20eeb21802ac8ed31f59f9ed2908423b93e645d6d72a22b65" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-daemon-client-1.7.10.pom">
<sha256 value="b5e975cca4c69865caeffa568483b6c4d30a210b1740308800133d5f9348fdad" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-daemon-embeddable" version="1.7.10">
<artifact name="kotlin-daemon-embeddable-1.7.10.jar">
<sha256 value="77c5f3ab1ed653a899e96835937a9daf3a46e496fdfa6915ff6d20b2953619a4" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-daemon-embeddable-1.7.10.pom">
<sha256 value="86b6c43f974ad3de906eced70e2aa9df6e5bf86a8e0a5195ec36775147ab355b" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-gradle-plugin" version="1.7.10">
<artifact name="kotlin-gradle-plugin-1.7.10-gradle70.jar">
<sha256 value="93b7640a6db0e7172600f35d792a69fbb5a42b1f38cf2067d2ac011bde4dccd5" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-gradle-plugin-1.7.10.module">
<sha256 value="6653042b0cacbebbe6307132c552eda87c1d29c66153d42114b23e8b145be0cd" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-gradle-plugin-api" version="1.7.10">
<artifact name="kotlin-gradle-plugin-api-1.7.10-gradle70.jar">
<sha256 value="dd23ddb71d3918b5d1763cd7642d7a7515548de2942fc3fcede22fc7350131d9" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-gradle-plugin-api-1.7.10.jar">
<sha256 value="dd23ddb71d3918b5d1763cd7642d7a7515548de2942fc3fcede22fc7350131d9" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-gradle-plugin-api-1.7.10.module">
<sha256 value="d61f0a749a491d69cbf5edf1ea25c583e21c9ea84387540cff9403d9e1cbba3d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-gradle-plugin-idea" version="1.7.10">
<artifact name="kotlin-gradle-plugin-idea-1.7.10.jar">
<sha256 value="e464e2ffe4ddedefa291e7ee746ffa99be48e6724300c7b48798b10342666d45" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-gradle-plugin-idea-1.7.10.pom">
<sha256 value="cb6d04fb610d4508fe7009bb73aded412694af44053311a43b8065f4e3b4eb29" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-gradle-plugin-model" version="1.7.10">
<artifact name="kotlin-gradle-plugin-model-1.7.10.jar">
<sha256 value="bc812bd9800c6379f96577cea8cb296b746ab835c30b047f031ac2fc32f4c908" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-gradle-plugin-model-1.7.10.module">
<sha256 value="102facb6781d3acb8ff3d2b35d5254674ea63efcfe712eac9d0c253f3c7329a0" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-klib-commonizer-api" version="1.7.10">
<artifact name="kotlin-klib-commonizer-api-1.7.10.jar">
<sha256 value="95e82f46b80de8bce4413f6b1259c3916a4e8891820f2c2ca1f0520aa4d3b811" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-klib-commonizer-api-1.7.10.pom">
<sha256 value="acb8656817b31647eee6461b8d18352212c820f7581f5846f5574abb09fc7732" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-klib-commonizer-embeddable" version="1.7.10">
<artifact name="kotlin-klib-commonizer-embeddable-1.7.10.jar">
<sha256 value="1c2550f1e7ec4d1590aacddd7852b90a4cf05de6e66cee31ad747c8dc0834e33" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-klib-commonizer-embeddable-1.7.10.pom">
<sha256 value="1228a7a57d9bfc373b88f1419065ef27357f8fb38df68d0899370a8375fb3a0f" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-native-utils" version="1.7.10">
<artifact name="kotlin-native-utils-1.7.10.jar">
<sha256 value="718020a7f639cc536a1af14ecd98a5df506c97a1c40c6e50f3a7f3bf5269d360" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-native-utils-1.7.10.pom">
<sha256 value="d2e4516f7437906b3b3081c5d54e578dbb26ebaabe3e5badbe8f58ef56852e0b" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-project-model" version="1.7.10">
<artifact name="kotlin-project-model-1.7.10.jar">
<sha256 value="23d3658e64ef10522e1a5c24502a679798f6ab49bba233df2bc8e9dfeef3ace4" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-project-model-1.7.10.pom">
<sha256 value="d55f68d72d85052949ded8218e7968fc194d274377749b518ea29eae29883a4c" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-reflect" version="1.7.10">
<artifact name="kotlin-reflect-1.7.10.jar">
<sha256 value="187c5e5a588a6ed18c3a41b54df138a5944121bdb396be1c3fa4abee67397955" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-reflect-1.7.10.pom">
<sha256 value="6c3f87a68cd022481b5015a5c21b6ed014a67348d30e103bde970d84fe328eca" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-sam-with-receiver" version="1.7.10">
<artifact name="kotlin-sam-with-receiver-1.7.10-gradle70.jar">
<sha256 value="69eae6fccc77f45ebe744f230a33529950e8f0dca90165164d74518dd73a64a0" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-sam-with-receiver-1.7.10.module">
<sha256 value="d75e5f11c0be8c1cdc678c55b44ffcb778c695ab593f5f0c841e7dac1cb2d425" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-script-runtime" version="1.7.10">
<artifact name="kotlin-script-runtime-1.7.10.jar">
<sha256 value="84bfc2aa4eec6768113930cdaef8b5b9f59ac4138fbca3b11300fff4d076950c" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-script-runtime-1.7.10.pom">
<sha256 value="b8febe288c7dbcc37fa6cbfa815cdce0f59b70c43d41a7d3a40b7ff7dfbab661" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-scripting-common" version="1.7.10">
<artifact name="kotlin-scripting-common-1.7.10.jar">
<sha256 value="c3a346f38a3d6e242f2316c5a7a4a6b526f2cc42b44ebd40654a0f885cbc4940" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-scripting-common-1.7.10.pom">
<sha256 value="d52f258a7e97ee5d369030ce7e49a89f6bc9d373a3fd2386a5e8c9f212a9d519" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-scripting-compiler-embeddable" version="1.7.10">
<artifact name="kotlin-scripting-compiler-embeddable-1.7.10.jar">
<sha256 value="fcb8a0b3b7a95263dab8a0ccdd34fed02888700511eabb5613f75a007a4aa802" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-scripting-compiler-embeddable-1.7.10.pom">
<sha256 value="62f986b0802117b2daa1d63a1c01ef214453f5daf6843f1a5e6b4b2f762530f0" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-scripting-compiler-impl-embeddable" version="1.7.10">
<artifact name="kotlin-scripting-compiler-impl-embeddable-1.7.10.jar">
<sha256 value="7119205985ebd721179fb0f35d1d511f96de14fbd48e6465119fcac6bffc8090" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-scripting-compiler-impl-embeddable-1.7.10.pom">
<sha256 value="5e8362f4236e62099f269c51e0c2f708dc084c59287e6083e775e55f10a3d430" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-scripting-jvm" version="1.7.10">
<artifact name="kotlin-scripting-jvm-1.7.10.jar">
<sha256 value="cf85511ce4e26fa3286d722f95ed54f16f2513a39ce3b85f2b567e575cb45a60" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-scripting-jvm-1.7.10.pom">
<sha256 value="dc29a117132d8191bf138a3911f3c0c2a0b730a25ca3a15c9ae0fde7dd310c1f" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="1.3.41">
<artifact name="kotlin-stdlib-1.3.41.jar">
<sha256 value="6ea3d0921b26919b286f05cbdb906266666a36f9a7c096197114f7495708ffbc" origin="Generated by Gradle"/>
@ -1153,6 +1424,14 @@
<sha256 value="785b5b66f1146317d5ed5b18c8e0c10f83cd5c909434c799a4da9823f028cd63" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="1.7.10">
<artifact name="kotlin-stdlib-1.7.10.jar">
<sha256 value="e771fe74250a943e8f6346713201ff1d8cb95c3a5d1a91a22b65a9e04f6a8901" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-stdlib-1.7.10.pom">
<sha256 value="6cc0cf5a2bc02dee060ebb90c3535fc3ddbd7a3bab210ace3e142aaf81764d81" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.3.41">
<artifact name="kotlin-stdlib-common-1.3.41.jar">
<sha256 value="6c91dea17d7dce5f0b550c3de3305767e5fb46247b6d1eb7eca0ca1fe18458de" origin="Generated by Gradle"/>
@ -1161,6 +1440,14 @@
<sha256 value="d2e537cd1f7705276242d8cc903a0286b6dc86b41b6e728e967ef719022f2e15" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.7.10">
<artifact name="kotlin-stdlib-common-1.7.10.jar">
<sha256 value="19f102efe9629f8eabc63853ad15c533e47c47f91fca09285c5bde86e59f91d4" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-stdlib-common-1.7.10.pom">
<sha256 value="1011c63b88ee94cdff5d596937307559bc55037b733cc00ce63cda3cfae0a8eb" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.3.41">
<artifact name="kotlin-stdlib-jdk7-1.3.41.jar">
<sha256 value="25e2409aba0ec37d2fd7c77727d7835b511879de8d9bf4862af0b493aabbe39e" origin="Generated by Gradle"/>
@ -1169,6 +1456,14 @@
<sha256 value="54c3962d2cf839d41bbee8b4817a6b2d06990c305c2efea655f64973d468a5fd" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.7.10">
<artifact name="kotlin-stdlib-jdk7-1.7.10.jar">
<sha256 value="54f61351b1936ad88f4e53059fe781e723eae51d78ed9e7422d8b403574ec682" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-stdlib-jdk7-1.7.10.pom">
<sha256 value="121837fe00d003944c9faaa1c25f93cecccb03eb9dd8f10d9e8adf4b7a7d90dc" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.3.41">
<artifact name="kotlin-stdlib-jdk8-1.3.41.jar">
<sha256 value="f7dbbaee3e0841758187a213c052388a4e619e11c87ab16f4bc229cfe7ce5fed" origin="Generated by Gradle"/>
@ -1177,6 +1472,59 @@
<sha256 value="e3856758c3bb08b7c97ddcd493521c5e0bd0741717c93b292bf1a541513af082" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.7.10">
<artifact name="kotlin-stdlib-jdk8-1.7.10.jar">
<sha256 value="8aafdd60c94f454c92e5066d266a5ed53ecc63c78f623b3fd9db56fea4032873" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-stdlib-jdk8-1.7.10.pom">
<sha256 value="592b5252f018e3dbefeca1a535fd2315dda7cb9e7bde5a06d6b419cf3643d47d" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-tooling-core" version="1.7.10">
<artifact name="kotlin-tooling-core-1.7.10.jar">
<sha256 value="b06a1be22538d6d2db4a9be6e43de3691aeaa6c605aae20229f4e1bd39c0a539" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-tooling-core-1.7.10.pom">
<sha256 value="b7291cf92cb0f3a9c710c49d687dd62530db879d6557728830c7a18995226eff" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-tooling-metadata" version="1.7.10">
<artifact name="kotlin-tooling-metadata-1.7.10.jar">
<sha256 value="b35970b744025caddba4776d2bd6bfaf7dfd1bed7554cd2d21134b4c387b8d2d" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-tooling-metadata-1.7.10.pom">
<sha256 value="3df0102ea6382769b343539af140e319b8bdfa5dae0757fdf444278d15404158" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-util-io" version="1.7.10">
<artifact name="kotlin-util-io-1.7.10.jar">
<sha256 value="d8a53ec56e5ce84c8834717ba443f7b3d2ed957670cfcb984cf2aa456a18b449" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-util-io-1.7.10.pom">
<sha256 value="beaa2228c0d6ca72a3da5c5669b3ee94cfc85174c75b3791628eec61c46fbb5c" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin" name="kotlin-util-klib" version="1.7.10">
<artifact name="kotlin-util-klib-1.7.10.jar">
<sha256 value="dc9fb14d739fcc6c95d1029789c33f311a2f674c603e5af23934f915c47fee85" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlin-util-klib-1.7.10.pom">
<sha256 value="00cf4742331f5604ad79a68fdac83e8996ca4384e668cf5134c5dec92169f7d9" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlin.jvm" name="org.jetbrains.kotlin.jvm.gradle.plugin" version="1.7.10">
<artifact name="org.jetbrains.kotlin.jvm.gradle.plugin-1.7.10.pom">
<sha256 value="26e10284fe24a27e343ad146874c6fb02ec41fbba4f05db0f299fd20a2510c0a" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core-jvm" version="1.5.0">
<artifact name="kotlinx-coroutines-core-jvm-1.5.0.jar">
<sha256 value="78d6cc7135f84d692ff3752fcfd1fa1bbe0940d7df70652e4f1eaeec0c78afbb" origin="Generated by Gradle"/>
</artifact>
<artifact name="kotlinx-coroutines-core-jvm-1.5.0.module">
<sha256 value="c885dd0281076c5843826de317e3cbcdc3d8859dbeef53ae1cfacd1b9c60f96e" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jooq" name="joor" version="0.9.13">
<artifact name="joor-0.9.13.jar">
<sha256 value="4c64dcec5c3350d74527b8fb64647df63673cb272a7e34a9f3575d6e01315c3b" origin="Generated by Gradle"/>