From 6a3d2642da86e6b9a9225719bdadd39fbe1f8908 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Fri, 12 Nov 2021 23:29:28 +0100 Subject: [PATCH 01/13] Upgrade to Gradle 7.3 This commit does what is necessary to upgrade from Gradle 6.6.1 to 7.3, including: - generating the new Gradle wrapper - replacing uses of 'compile' with 'implementation' - replacing uses of 'testCompile' with 'testImplementation' Moving from *compile to *implementation results in many more duplicated dependency declarations throughout the file. These will be tidied up in a subsequent commit. Several dependencies needed to be upgraded in order to support this change. One of them was Spring Boot, from 1.5.1 to 2.5.6. This is a major upgrade that contained some breaking changes to the Spring Boot Actuator. These changes required the removal of the pricenode's /getVersion endpoint. The Gradle Witness plugin has been disabled in this commit, because it uses the now-removed 'compile' configuration. Use of the Witness plugin will be removed entirely in a subsequent commit in favor of using Gradle's new built-in dependency verification feature. --- build.gradle | 366 ++++++++++++------ gradle/witness/gradle-witness.gradle | 5 - gradle/wrapper/gradle-wrapper.properties | 3 +- pricenode/README.md | 1 - .../bisq/price/util/VersionController.java | 55 --- .../price/util/VersionControllerTest.java | 21 - 6 files changed, 254 insertions(+), 197 deletions(-) delete mode 100644 pricenode/src/main/java/bisq/price/util/VersionController.java delete mode 100644 pricenode/src/test/java/bisq/price/util/VersionControllerTest.java diff --git a/build.gradle b/build.gradle index 038281abc49..d989da56736 100644 --- a/build.gradle +++ b/build.gradle @@ -5,12 +5,12 @@ buildscript { maven { url "https://plugins.gradle.org/m2/" } } dependencies { - classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.10' + classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17' classpath 'com.google.gradle:osdetector-gradle-plugin:1.6.0' classpath 'com.github.jengelman.gradle.plugins:shadow:5.2.0' classpath 'org.openjfx:javafx-plugin:0.0.10' classpath files('gradle/witness/gradle-witness.jar') - classpath 'org.springframework.boot:spring-boot-gradle-plugin:1.5.10.RELEASE' + classpath 'org.springframework.boot:spring-boot-gradle-plugin:2.5.6' } } @@ -42,7 +42,7 @@ configure(subprojects) { fontawesomefxVersion = '8.0.0' fontawesomefxCommonsVersion = '9.1.2' fontawesomefxMaterialdesignfontVersion = '2.0.26-9.1.2' - grpcVersion = '1.25.0' + grpcVersion = '1.42.1' gsonVersion = '2.8.5' guavaVersion = '28.2-jre' guiceVersion = '5.0.1' @@ -69,13 +69,13 @@ configure(subprojects) { lombokVersion = '1.18.12' mockitoVersion = '3.5.15' netlayerVersion = '0.7.2' // Tag from https://github.com/bisq-network/netlayer/tags based on externaltor branch - protobufVersion = '3.10.0' + protobufVersion = '3.19.1' protocVersion = protobufVersion pushyVersion = '0.13.2' qrgenVersion = '1.3' slf4jVersion = '1.7.30' sparkVersion = '2.5.2' - springBootVersion = '1.5.10.RELEASE' + springBootVersion = '2.5.6' os = osdetector.os == 'osx' ? 'mac' : osdetector.os == 'windows' ? 'win' : osdetector.os } @@ -86,7 +86,7 @@ configure(subprojects) { } dependencies { - testCompile "junit:junit:$junitVersion" + testImplementation "junit:junit:$junitVersion" } tasks.withType(JavaCompile) { @@ -218,7 +218,7 @@ configure(project(':proto')) { configure(project(':assets')) { dependencies { - compile("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { exclude(module: 'jsr305') exclude(module: 'slf4j-api') exclude(module: 'guava') @@ -227,9 +227,9 @@ configure(project(':assets')) { exclude(module: 'okhttp') exclude(module: 'okio') } - compile "com.google.guava:guava:$guavaVersion" - compile "org.slf4j:slf4j-api:$slf4jVersion" - compile "org.apache.commons:commons-lang3:$langVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" } } @@ -243,20 +243,21 @@ configure(project(':common')) { } dependencies { - compile project(':proto') + implementation project(':proto') + compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion" - compile "com.google.protobuf:protobuf-java:$protobufVersion" - compile "com.google.code.gson:gson:$gsonVersion" - compile "net.sf.jopt-simple:jopt-simple:$joptVersion" - compile "org.slf4j:slf4j-api:$slf4jVersion" - compile "ch.qos.logback:logback-core:$logbackVersion" - compile "ch.qos.logback:logback-classic:$logbackVersion" - compile "com.google.code.findbugs:jsr305:$findbugsVersion" - compile "com.google.guava:guava:$guavaVersion" - compile("com.google.inject:guice:$guiceVersion") { + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "com.google.code.findbugs:jsr305:$findbugsVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') } - compile("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { exclude(module: 'jsr305') exclude(module: 'slf4j-api') exclude(module: 'guava') @@ -269,13 +270,13 @@ configure(project(':common')) { exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') } - compile "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" - compile "org.bouncycastle:bcpg-jdk15on:$bcVersion" - compile "commons-io:commons-io:$ioVersion" - compile "org.apache.commons:commons-lang3:$langVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "org.bouncycastle:bcpg-jdk15on:$bcVersion" + implementation "commons-io:commons-io:$ioVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.hamcrest:hamcrest-all:$hamcrestVersion" + testImplementation "org.hamcrest:hamcrest-all:$hamcrestVersion" } } @@ -289,22 +290,41 @@ configure(project(':p2p')) { } dependencies { - compile project(':common') - compile("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { + implementation project(':proto') + implementation project(':common') + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'jsr305') + exclude(module: 'slf4j-api') + exclude(module: 'guava') + exclude(module: 'protobuf-java') + exclude(module: 'bcprov-jdk15on') + exclude(module: 'okhttp') + exclude(module: 'okio') + } + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { exclude(module: 'slf4j-api') } - compile("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { + implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { exclude(module: 'slf4j-api') } implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { exclude(module: 'commons-codec') } - compile "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "org.fxmisc.easybind:easybind:$easybindVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" + testImplementation "ch.qos.logback:logback-core:$logbackVersion" + testImplementation "ch.qos.logback:logback-classic:$logbackVersion" + testImplementation "org.apache.commons:commons-lang3:$langVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile("org.mockito:mockito-core:$mockitoVersion") + testImplementation("org.mockito:mockito-core:$mockitoVersion") } processResources.doFirst { @@ -329,32 +349,61 @@ configure(project(':core')) { } dependencies { - compile project(':proto') - compile project(':assets') - compile project(':p2p') + implementation project(':proto') + implementation project(':assets') + implementation project(':common') + implementation project(':p2p') + compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "commons-io:commons-io:$ioVersion" + implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { + exclude(module: 'slf4j-api') + } + implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { + exclude(module: 'slf4j-api') + } + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'jsr305') + exclude(module: 'slf4j-api') + exclude(module: 'guava') + exclude(module: 'protobuf-java') + exclude(module: 'bcprov-jdk15on') + exclude(module: 'okhttp') + exclude(module: 'okio') + } + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "com.google.code.findbugs:jsr305:$findbugsVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" implementation "commons-codec:commons-codec:$codecVersion" implementation "com.google.code.gson:gson:$gsonVersion" implementation "org.apache.httpcomponents:httpcore:$httpcoreVersion" implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { exclude(module: 'commons-codec') } - compile "com.google.guava:guava:$guavaVersion" - compile("com.github.bisq-network:jsonrpc4j:$jsonrpc4jVersion") { + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } + implementation "com.google.guava:guava:$guavaVersion" + implementation("com.github.bisq-network:jsonrpc4j:$jsonrpc4jVersion") { exclude(module: 'base64') exclude(module: 'httpcore-nio') } - compile "com.fasterxml.jackson.core:jackson-core:$jacksonVersion" - compile "com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion" - compile("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") { + implementation "com.fasterxml.jackson.core:jackson-core:$jacksonVersion" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion" + implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") { exclude(module: 'jackson-annotations') } implementation "com.google.protobuf:protobuf-java:$protobufVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.hamcrest:hamcrest-all:$hamcrestVersion" - testCompile "org.mockito:mockito-core:$mockitoVersion" - testCompile "com.natpryce:make-it-easy:$easyVersion" + testImplementation "org.hamcrest:hamcrest-all:$hamcrestVersion" + testImplementation "org.mockito:mockito-core:$mockitoVersion" + testImplementation "com.natpryce:make-it-easy:$easyVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" } @@ -368,7 +417,7 @@ configure(project(':cli')) { mainClassName = 'bisq.cli.CliMain' dependencies { - compile project(':proto') + implementation project(':proto') implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" @@ -395,7 +444,7 @@ configure(project(':cli')) { testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testRuntime "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + testRuntimeOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" testImplementation "org.bitbucket.cowwoc:diff-match-patch:$cowwocVersion" } @@ -407,8 +456,8 @@ configure(project(':cli')) { configure(project(':desktop')) { apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'org.openjfx.javafxplugin' - apply plugin: 'witness' - apply from: '../gradle/witness/gradle-witness.gradle' + //apply plugin: 'witness' + //apply from: '../gradle/witness/gradle-witness.gradle' apply from: 'package/package.gradle' javafx { @@ -424,7 +473,7 @@ configure(project(':desktop')) { mainClassName = 'bisq.desktop.app.BisqAppMain' - tasks.withType(AbstractArchiveTask) { + jar { preserveFileTimestamps = false reproducibleFileOrder = true } @@ -432,20 +481,46 @@ configure(project(':desktop')) { sourceSets.main.resources.srcDirs += ['src/main/java'] // to copy fxml and css files dependencies { - compile project(':core') - compile "net.glxn:qrgen:$qrgenVersion" - compile "de.jensd:fontawesomefx:$fontawesomefxVersion" - compile "de.jensd:fontawesomefx-commons:$fontawesomefxCommonsVersion" - compile "de.jensd:fontawesomefx-materialdesignfont:$fontawesomefxMaterialdesignfontVersion" - compile "com.google.guava:guava:$guavaVersion" - compile "com.googlecode.jcsv:jcsv:$jcsvVersion" - compile "com.jfoenix:jfoenix:$jfoenixVersion" + implementation project(':assets') + implementation project(':common') + implementation project(':proto') + implementation project(':p2p') + implementation project(':core') + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "commons-io:commons-io:$ioVersion" + implementation "org.bouncycastle:bcpg-jdk15on:$bcVersion" + implementation "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "net.glxn:qrgen:$qrgenVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } + implementation "de.jensd:fontawesomefx:$fontawesomefxVersion" + implementation "de.jensd:fontawesomefx-commons:$fontawesomefxCommonsVersion" + implementation "de.jensd:fontawesomefx-materialdesignfont:$fontawesomefxMaterialdesignfontVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.googlecode.jcsv:jcsv:$jcsvVersion" + implementation "com.jfoenix:jfoenix:$jfoenixVersion" + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'jsr305') + exclude(module: 'slf4j-api') + exclude(module: 'guava') + exclude(module: 'protobuf-java') + exclude(module: 'bcprov-jdk15on') + exclude(module: 'okhttp') + exclude(module: 'okio') + } compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.mockito:mockito-core:$mockitoVersion" - testCompile "com.natpryce:make-it-easy:$easyVersion" + testImplementation "org.mockito:mockito-core:$mockitoVersion" + testImplementation "com.natpryce:make-it-easy:$easyVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" } @@ -474,20 +549,32 @@ configure(project(':monitor')) { } dependencies { - compile project(':core') - compile "org.slf4j:slf4j-api:$slf4jVersion" - compile "ch.qos.logback:logback-core:$logbackVersion" - compile "ch.qos.logback:logback-classic:$logbackVersion" - compile "com.google.guava:guava:$guavaVersion" + implementation project(':assets') + implementation project(':common') + implementation project(':core') + implementation project(':p2p') + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } + implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { + exclude(module: 'slf4j-api') + } + implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { + exclude(module: 'slf4j-api') + } + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "com.google.guava:guava:$guavaVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" - testCompile "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" - testRuntime("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } } @@ -502,45 +589,46 @@ configure(project(':pricenode')) { "Implementation-Version": version) dependencies { - compile project(":core") + implementation project(":common") + implementation project(":core") compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" + implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.code.gson:gson:$gsonVersion" implementation "commons-codec:commons-codec:$codecVersion" implementation "org.apache.httpcomponents:httpcore:$httpcoreVersion" implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { exclude(module: 'commons-codec') } - compile("org.knowm.xchange:xchange-bitbay:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-btcmarkets:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-binance:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-bitfinex:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-bitflyer:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-bitstamp:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-cexio:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-coinmate:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-coinmarketcap:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-coinone:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-exmo:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-hitbtc:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-huobi:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-independentreserve:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-kraken:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-luno:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-mercadobitcoin:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-paribu:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-poloniex:$knowmXchangeVersion") - compile("org.knowm.xchange:xchange-quoine:$knowmXchangeVersion") - compile("org.springframework.boot:spring-boot-starter-web:$springBootVersion") - compile("org.springframework.boot:spring-boot-starter-actuator") - testCompile "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" - testCompile "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testRuntime("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") + implementation("org.knowm.xchange:xchange-bitbay:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-btcmarkets:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-binance:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-bitfinex:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-bitflyer:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-bitstamp:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-cexio:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-coinmate:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-coinmarketcap:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-coinone:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-exmo:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-hitbtc:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-huobi:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-independentreserve:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-kraken:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-luno:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-mercadobitcoin:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-paribu:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-poloniex:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-quoine:$knowmXchangeVersion") + implementation("org.springframework.boot:spring-boot-starter-web:$springBootVersion") + testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.mockito:mockito-core:$mockitoVersion" + testImplementation "org.mockito:mockito-core:$mockitoVersion" } test { @@ -565,17 +653,19 @@ configure(project(':relay')) { mainClassName = 'bisq.relay.RelayMain' dependencies { - compile project(':common') + implementation project(':common') + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" implementation "io.grpc:grpc-auth:$grpcVersion" - compile "com.sparkjava:spark-core:$sparkVersion" - compile "com.turo:pushy:$pushyVersion" + implementation "com.sparkjava:spark-core:$sparkVersion" + implementation "com.turo:pushy:$pushyVersion" implementation("com.google.firebase:firebase-admin:$firebaseVersion") { exclude(module: 'commons-logging') exclude(module: 'httpclient') exclude(module: 'httpcore') exclude(module: 'grpc-auth') } - compile "commons-codec:commons-codec:$codecVersion" + implementation "commons-codec:commons-codec:$codecVersion" } } @@ -586,11 +676,17 @@ configure(project(':seednode')) { mainClassName = 'bisq.seednode.SeedNodeMain' dependencies { - compile project(':core') + implementation project(':common') + implementation project(':p2p') + implementation project(':core') + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "com.google.guava:guava:$guavaVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.mockito:mockito-core:$mockitoVersion" + testImplementation "org.mockito:mockito-core:$mockitoVersion" } } @@ -599,8 +695,14 @@ configure(project(':statsnode')) { mainClassName = 'bisq.statistics.StatisticsMain' dependencies { - compile project(':core') + implementation project(':common') + implementation project(':p2p') + implementation project(':core') + implementation "org.slf4j:slf4j-api:$slf4jVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } annotationProcessor "org.projectlombok:lombok:$lombokVersion" } } @@ -609,9 +711,18 @@ configure(project(':daemon')) { mainClassName = 'bisq.daemon.app.BisqDaemonMain' dependencies { - compile project(':core') + implementation project(':proto') + implementation project(':common') + implementation project(':p2p') + implementation project(':core') + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } implementation("io.grpc:grpc-protobuf:$grpcVersion") { exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') @@ -624,6 +735,15 @@ configure(project(':daemon')) { exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') } + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'jsr305') + exclude(module: 'slf4j-api') + exclude(module: 'guava') + exclude(module: 'protobuf-java') + exclude(module: 'bcprov-jdk15on') + exclude(module: 'okhttp') + exclude(module: 'okio') + } implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" @@ -631,11 +751,11 @@ configure(project(':daemon')) { compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testCompile "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" - testCompile "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" - testRuntime("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } } @@ -645,9 +765,17 @@ configure(project(':inventory')) { mainClassName = 'bisq.inventory.InventoryMonitorMain' dependencies { - compile project(':core') - compile "com.google.guava:guava:$guavaVersion" - compile "com.sparkjava:spark-core:$sparkVersion" + implementation project(':common') + implementation project(':p2p') + implementation project(':core') + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.sparkjava:spark-core:$sparkVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" @@ -716,12 +844,24 @@ configure(project(':apitest')) { } dependencies { - compile project(':proto') - compile project(':common') - compile project(':seednode') - compile project(':desktop') - compile project(':daemon') - compile project(':cli') + implementation project(':proto') + implementation project(':common') + implementation project(':core') + implementation project(':seednode') + implementation project(':desktop') + implementation project(':daemon') + implementation project(':cli') + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'jsr305') + exclude(module: 'slf4j-api') + exclude(module: 'guava') + exclude(module: 'protobuf-java') + exclude(module: 'bcprov-jdk15on') + exclude(module: 'okhttp') + exclude(module: 'okio') + } implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" @@ -746,7 +886,7 @@ configure(project(':apitest')) { testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testRuntime "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + testRuntimeOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" } } diff --git a/gradle/witness/gradle-witness.gradle b/gradle/witness/gradle-witness.gradle index ca5ea906cd4..7c5749a5cf2 100644 --- a/gradle/witness/gradle-witness.gradle +++ b/gradle/witness/gradle-witness.gradle @@ -34,16 +34,12 @@ dependencyVerification { 'com.github.bisq-network:jsonrpc4j:842b4a660440ef53cd436da2e21c3e1fed939b620a3fc7542307deb3e77fdeb6', 'com.github.ravn:jsocks:3c71600af027b2b6d4244e4ad14d98ff2352a379410daebefff5d8cd48d742a4', 'com.google.android:annotations:ba734e1e84c09d615af6a09d33034b4f0442f8772dec120efb376d86a565ae15', - 'com.google.api.grpc:proto-google-common-protos:bd60cd7a423b00fb824c27bdd0293aaf4781be1daba6ed256311103fb4b84108', 'com.google.code.findbugs:jsr305:766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7', - 'com.google.code.gson:gson:233a0149fc365c9f6edbd683cfe266b19bdc773be98eabdaf6b3c924b48e7d81', - 'com.google.errorprone:error_prone_annotations:baf7d6ea97ce606c53e11b6854ba5f2ce7ef5c24dddf0afa18d1260bd25b002c', 'com.google.guava:failureaccess:a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26', 'com.google.guava:guava:fc3aa363ad87223d1fbea584eee015a862150f6d34c71f24dc74088a635f08ef', 'com.google.guava:listenablefuture:b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99', 'com.google.inject:guice:3bae18be3e0f0940375d1ebdd2f3b84d87ae16026ae663b2f5d4667fe5b04036', 'com.google.j2objc:j2objc-annotations:21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b', - 'com.google.protobuf:protobuf-java:161d7d61a8cb3970891c299578702fd079646e032329d6c2cabf998d191437c9', 'com.google.zxing:core:11aae8fd974ab25faa8208be50468eb12349cd239e93e7c797377fa13e381729', 'com.google.zxing:javase:0ec23e2ec12664ddd6347c8920ad647bb3b9da290f897a88516014b56cc77eb9', 'com.googlecode.jcsv:jcsv:73ca7d715e90c8d2c2635cc284543b038245a34f70790660ed590e157b8714a2', @@ -55,7 +51,6 @@ dependencyVerification { 'de.jensd:fontawesomefx-materialdesignfont:dbad8dfdd1c85e298d5bbae25b2399aec9e85064db57b2427d10f3815aa98752', 'de.jensd:fontawesomefx:73bacc991a0a6f5cf0f911767c8db161e0949dbca61e8371eb4342e3da96887b', 'io.github.microutils:kotlin-logging:4992504fd3c6ecdf9ed10874b9508e758bb908af9e9d7af19a61e9afb6b7e27a', - 'io.grpc:grpc-api:a269094009588213ab5386a6fb92426b8056a130b2653d3b4e59e971f2f1ef08', 'io.grpc:grpc-context:f4c8f878c320f6fb56c1c14692618f6df8253314b556176e32727afbc5921a73', 'io.grpc:grpc-core:d67fa113fd9cc45a02710f9c41dda9c15191448c14e9e96fcc21839a41345d4c', 'io.grpc:grpc-netty-shaded:9edfd45da473d2efbb5683fc3eaf1857e82d2148033d82dd558a7ac38731ea33', diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0e422340018..fbce071a31a 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=11657af6356b7587bfb37287b5992e94a9686d5c8a0a1b60b87b9928a2decde5 -distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/pricenode/README.md b/pricenode/README.md index d71dcda6e60..2c5330e56f8 100644 --- a/pricenode/README.md +++ b/pricenode/README.md @@ -47,7 +47,6 @@ To manually test endpoints, run each of the following: curl http://localhost:8080/getAllMarketPrices curl http://localhost:8080/getFees curl http://localhost:8080/getParams -curl http://localhost:8080/getVersion curl http://localhost:8080/info ``` diff --git a/pricenode/src/main/java/bisq/price/util/VersionController.java b/pricenode/src/main/java/bisq/price/util/VersionController.java deleted file mode 100644 index d754e551bc3..00000000000 --- a/pricenode/src/main/java/bisq/price/util/VersionController.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * This file is part of Bisq. - * - * Bisq is free software: you can redistribute it and/or modify it - * under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or (at - * your option) any later version. - * - * Bisq is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public - * License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with Bisq. If not, see . - */ - -package bisq.price.util; - -import bisq.price.PriceController; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.actuate.info.Info; -import org.springframework.boot.actuate.info.InfoContributor; -import org.springframework.core.io.Resource; -import org.springframework.util.FileCopyUtils; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.io.IOException; -import java.io.InputStreamReader; - -@RestController -class VersionController extends PriceController implements InfoContributor { - - private final String version; - - public VersionController(@Value("classpath:version.txt") Resource versionTxt) throws IOException { - this.version = FileCopyUtils.copyToString( - new InputStreamReader( - versionTxt.getInputStream() - ) - ).trim(); - } - - @GetMapping(path = "/getVersion") - public String getVersion() { - return version; - } - - @Override - public void contribute(Info.Builder builder) { - builder.withDetail("version", version); - } -} diff --git a/pricenode/src/test/java/bisq/price/util/VersionControllerTest.java b/pricenode/src/test/java/bisq/price/util/VersionControllerTest.java deleted file mode 100644 index 86e4f9bb760..00000000000 --- a/pricenode/src/test/java/bisq/price/util/VersionControllerTest.java +++ /dev/null @@ -1,21 +0,0 @@ -package bisq.price.util; - -import org.springframework.core.io.FileSystemResource; - -import java.io.IOException; - -import org.junit.jupiter.api.Test; - -import static org.junit.jupiter.api.Assertions.assertTrue; - -public class VersionControllerTest { - - @Test - public void getVersion() throws IOException { - VersionController controller = new VersionController( - new FileSystemResource("src/main/resources/version.txt")); - - String version = controller.getVersion(); - assertTrue(version.length() > 0); - } -} From 6f8197b41971c50e4994cfe60e6f83e55f9c4b40 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 12:51:41 +0100 Subject: [PATCH 02/13] Migrate to Gradle's built-in dependency verification This commit removes the use of our fork of the gradle-witness plugin in favor of Gradle's relatively new built-in dependency verification feature [1]. The gradle/verification-metadata.xml file was produced using the following command: ./gradlew --write-verification-metadata sha256 build Where `build` is the usual `gradle build` command. All dependency configurations are resolved this way, and written out to the file. The resulting file contains 273 unique dependency declarations, as compared to just 64 in our now-removed gradle-witness.gradle file. This means that the coverage of dependencies verified is much more complete. The new file contains the same sha256 checksums for each dependency as the old file. This was manually spot-checked for a significant number of the dependencies. Like with gradle-witness, builds will break when dependencies are upgraded (and now also when they are added). To fix these breakages, the `--write-verification-metadata sha256` option must be provided to the build. Note that new entries will be added for upgraded depedencies, but old entries are not removed automatically from the file. These must be removed manually. [1]: https://docs.gradle.org/current/userguide/dependency_verification.html --- build.gradle | 3 - gradle/verification-metadata.xml | 2689 ++++++++++++++++++++++++++ gradle/witness/gradle-witness.gradle | 84 - gradle/witness/gradle-witness.jar | Bin 18967 -> 0 bytes 4 files changed, 2689 insertions(+), 87 deletions(-) create mode 100644 gradle/verification-metadata.xml delete mode 100644 gradle/witness/gradle-witness.gradle delete mode 100644 gradle/witness/gradle-witness.jar diff --git a/build.gradle b/build.gradle index d989da56736..ccdf32b7b4b 100644 --- a/build.gradle +++ b/build.gradle @@ -9,7 +9,6 @@ buildscript { classpath 'com.google.gradle:osdetector-gradle-plugin:1.6.0' classpath 'com.github.jengelman.gradle.plugins:shadow:5.2.0' classpath 'org.openjfx:javafx-plugin:0.0.10' - classpath files('gradle/witness/gradle-witness.jar') classpath 'org.springframework.boot:spring-boot-gradle-plugin:2.5.6' } } @@ -456,8 +455,6 @@ configure(project(':cli')) { configure(project(':desktop')) { apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'org.openjfx.javafxplugin' - //apply plugin: 'witness' - //apply from: '../gradle/witness/gradle-witness.gradle' apply from: 'package/package.gradle' javafx { diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml new file mode 100644 index 00000000000..81c95faa0ee --- /dev/null +++ b/gradle/verification-metadata.xml @@ -0,0 +1,2689 @@ + + + + true + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gradle/witness/gradle-witness.gradle b/gradle/witness/gradle-witness.gradle deleted file mode 100644 index 7c5749a5cf2..00000000000 --- a/gradle/witness/gradle-witness.gradle +++ /dev/null @@ -1,84 +0,0 @@ -// To update the `dependencyVerification` block below (we don't add local bisq modules and org.openjfx libraries as -// those cause problems): -// -// 1. Remove the block entirely -// 2. Replace the block with the following command: -// -// ./gradlew -q calculateChecksums | grep -v 'bisq:\|org.openjfx:' >> gradle/witness/gradle-witness.gradle -// -// 3. Run `git diff` to verify that expected hashes have changed -// 4. Commit the changes -// -// Note: The checksums are SHA-256. -// -// See https://github.com/signalapp/gradle-witness#using-witness for further details. - -dependencyVerification { - verify = [ - 'aopalliance:aopalliance:0addec670fedcd3f113c5c8091d783280d23f75e3acb841b61a9cdb079376a08', - 'ch.qos.logback:logback-classic:86a0268c3c96888d4e49d8a754b5b2173286aee100559e803efcbb0df676c66e', - 'ch.qos.logback:logback-core:58738067842476feeae5768e832cd36a0e40ce41576ba5739c3632d376bd8c86', - 'com.fasterxml.jackson.core:jackson-annotations:203cefdfa6c81e6aa84e11f292f29ca97344a3c3bc0293abea065cd837592873', - 'com.fasterxml.jackson.core:jackson-core:cc899cb6eae0c80b87d590eea86528797369cc4feb7b79463207d6bb18f0c257', - 'com.fasterxml.jackson.core:jackson-databind:f2ca3c28ebded59c98447d51afe945323df961540af66a063c015597af936aa0', - 'com.github.JesusMcCloud:jtorctl:389d61b1b5a85eb2f23c582c3913ede49f80c9f2b553e4762382c836270e57e5', - 'com.github.bisq-network.netlayer:tor.external:45daf9b30f753c49b62cf56226539e824886ce1ff430e03dbef1bddff919cbfc', - 'com.github.bisq-network.netlayer:tor.native:ebb37e76fa14461be1ab2750daa3f8e5b78c8ff0d2adb72832ca0d38a1fb8f0d', - 'com.github.bisq-network.netlayer:tor:48b097d756bf1221a2fe7f9bfd4ec6c505719502997d87cc18d912d4323e59d3', - 'com.github.bisq-network.tor-binary:tor-binary-geoip:5a55df3a5bed0aa57165e9bae9ecda8b14d5e85b97dd1a266fa77602fbdaec54', - 'com.github.bisq-network.tor-binary:tor-binary-linux32:fe8b0ddb1c109b453adf9b055e067be04b6ca4cda9d2b33c875b99d2092f0eae', - 'com.github.bisq-network.tor-binary:tor-binary-linux64:7f58d31dd684b2e361e2980ba23922cadd5d9d8f8dbab9b3a2c6737741b21f7e', - 'com.github.bisq-network.tor-binary:tor-binary-macos:a23802ff66d4ac01366ebe712879e2f51df960572dc34db269588da87453a70d', - 'com.github.bisq-network.tor-binary:tor-binary-windows:8e0dee7429228aa0c9f7a36f40f303a016ed8dfb40fea77382f7076c13fc27f1', - 'com.github.bisq-network:bitcoinj:eccd3b5250d40ac3147d0e087e856ebaa8665720351b802d30ac53cf17b559c5', - 'com.github.bisq-network:jsonrpc4j:842b4a660440ef53cd436da2e21c3e1fed939b620a3fc7542307deb3e77fdeb6', - 'com.github.ravn:jsocks:3c71600af027b2b6d4244e4ad14d98ff2352a379410daebefff5d8cd48d742a4', - 'com.google.android:annotations:ba734e1e84c09d615af6a09d33034b4f0442f8772dec120efb376d86a565ae15', - 'com.google.code.findbugs:jsr305:766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7', - 'com.google.guava:failureaccess:a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26', - 'com.google.guava:guava:fc3aa363ad87223d1fbea584eee015a862150f6d34c71f24dc74088a635f08ef', - 'com.google.guava:listenablefuture:b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99', - 'com.google.inject:guice:3bae18be3e0f0940375d1ebdd2f3b84d87ae16026ae663b2f5d4667fe5b04036', - 'com.google.j2objc:j2objc-annotations:21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b', - 'com.google.zxing:core:11aae8fd974ab25faa8208be50468eb12349cd239e93e7c797377fa13e381729', - 'com.google.zxing:javase:0ec23e2ec12664ddd6347c8920ad647bb3b9da290f897a88516014b56cc77eb9', - 'com.googlecode.jcsv:jcsv:73ca7d715e90c8d2c2635cc284543b038245a34f70790660ed590e157b8714a2', - 'com.jfoenix:jfoenix:8060235fec5eb49617ec8d81d379e8c945f6cc722d0645e97190045100de2084', - 'commons-codec:commons-codec:61f7a3079e92b9fdd605238d0295af5fd11ac411a0a0af48deace1f6c5ffa072', - 'commons-io:commons-io:f877d304660ac2a142f3865badfc971dec7ed73c747c7f8d5d2f5139ca736513', - 'commons-logging:commons-logging:daddea1ea0be0f56978ab3006b8ac92834afeefbd9b7e4e6316fca57df0fa636', - 'de.jensd:fontawesomefx-commons:5539bb3335ecb822dbf928546f57766eeb9f1516cc1417a064b5709629612149', - 'de.jensd:fontawesomefx-materialdesignfont:dbad8dfdd1c85e298d5bbae25b2399aec9e85064db57b2427d10f3815aa98752', - 'de.jensd:fontawesomefx:73bacc991a0a6f5cf0f911767c8db161e0949dbca61e8371eb4342e3da96887b', - 'io.github.microutils:kotlin-logging:4992504fd3c6ecdf9ed10874b9508e758bb908af9e9d7af19a61e9afb6b7e27a', - 'io.grpc:grpc-context:f4c8f878c320f6fb56c1c14692618f6df8253314b556176e32727afbc5921a73', - 'io.grpc:grpc-core:d67fa113fd9cc45a02710f9c41dda9c15191448c14e9e96fcc21839a41345d4c', - 'io.grpc:grpc-netty-shaded:9edfd45da473d2efbb5683fc3eaf1857e82d2148033d82dd558a7ac38731ea33', - 'io.grpc:grpc-protobuf-lite:9ba9aaa3e6997a04c707793c25e3ec88c6bad86f8d6f6b8b7a1a0c33ea2429d8', - 'io.grpc:grpc-protobuf:454dae7e246dac25526ed5b795d97a5dafedd3cc2042cfc810f02051d7d3e3cb', - 'io.grpc:grpc-stub:1532e291c0e9fd8230a6416c8ebbd902d99c7e2760241ae638ea761aa3dd5f43', - 'io.opencensus:opencensus-api:8e2cb0f6391d8eb0a1bcd01e7748883f0033b1941754f4ed3f19d2c3e4276fc8', - 'io.opencensus:opencensus-contrib-grpc-metrics:29fc79401082301542cab89d7054d2f0825f184492654c950020553ef4ff0ef8', - 'io.perfmark:perfmark-api:b734ba2149712409a44eabdb799f64768578fee0defe1418bb108fe32ea43e1a', - 'javax.inject:javax.inject:91c77044a50c481636c32d916fd89c9118a72195390452c81065080f957de7ff', - 'net.glxn:qrgen:c85d9d8512d91e8ad11fe56259a7825bd50ce0245447e236cf168d1b17591882', - 'net.jcip:jcip-annotations:be5805392060c71474bf6c9a67a099471274d30b83eef84bfc4e0889a4f1dcc0', - 'net.sf.jopt-simple:jopt-simple:df26cc58f235f477db07f753ba5a3ab243ebe5789d9f89ecf68dd62ea9a66c28', - 'org.apache.commons:commons-compress:5f2df1e467825e4cac5996d44890c4201c000b43c0b23cffc0782d28a0beb9b0', - 'org.apache.commons:commons-lang3:4ee380259c068d1dbe9e84ab52186f2acd65de067ec09beff731fca1697fdb16', - 'org.apache.httpcomponents:httpclient:bc5f065aba5dd815ee559dd24d9bcb797fb102ff9cfa036f5091ebc529bd3b93', - 'org.apache.httpcomponents:httpcore:e06e89d40943245fcfa39ec537cdbfce3762aecde8f9c597780d2b00c2b43424', - 'org.bouncycastle:bcpg-jdk15on:dc4f51adfc46583c2543489c82708fef5660202bf264c7cd453f081a117ea536', - 'org.bouncycastle:bcprov-jdk15on:28155c8695934f666fabc235f992096e40d97ecb044d5b6b0902db6e15a0b72f', - 'org.bouncycastle:bcprov-jdk15to18:82c28318b178da751d174b1adf6c43e0199f0fcf80a7bf6483caa226ae0d30b3', - 'org.checkerframework:checker-qual:d261fde25d590f6b69db7721d469ac1b0a19a17ccaaaa751c31f0d8b8260b894', - 'org.fxmisc.easybind:easybind:666af296dda6de68751668a62661571b5238ac6f1c07c8a204fc6f902b222aaf', - 'org.jetbrains.kotlin:kotlin-stdlib-common:6c91dea17d7dce5f0b550c3de3305767e5fb46247b6d1eb7eca0ca1fe18458de', - 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:25e2409aba0ec37d2fd7c77727d7835b511879de8d9bf4862af0b493aabbe39e', - 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:f7dbbaee3e0841758187a213c052388a4e619e11c87ab16f4bc229cfe7ce5fed', - 'org.jetbrains.kotlin:kotlin-stdlib:6ea3d0921b26919b286f05cbdb906266666a36f9a7c096197114f7495708ffbc', - 'org.jetbrains:annotations:ace2a10dc8e2d5fd34925ecac03e4988b2c0f851650c94b8cef49ba1bd111478', - 'org.slf4j:slf4j-api:cdba07964d1bb40a0761485c6b1e8c2f8fd9eb1d19c53928ac0d7f9510105c57', - 'org.tukaani:xz:a594643d73cc01928cf6ca5ce100e094ea9d73af760a5d4fb6b75fa673ecec96', - ] -} diff --git a/gradle/witness/gradle-witness.jar b/gradle/witness/gradle-witness.jar deleted file mode 100644 index 028ea7eda71e3c215669f4c524beabbb37b04f48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18967 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 Xk}Smg>?a5a>if^YyTmX0$AAAHlzzb1 From 695fe39cf78a1d6ffd003a49ff8be888b65ac410 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 13:26:03 +0100 Subject: [PATCH 03/13] Add verification metadata for linux-specific artifacts CI build failed after the previous commit because the new dependency verification file was generated on a Mac and therefore did not include linux-specification artifact variants. This same process will need to be done under Windows as well. --- gradle/verification-metadata.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 81c95faa0ee..9c4c2547327 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -178,7 +178,9 @@ - + + + @@ -893,6 +895,9 @@ + + + @@ -1143,6 +1148,9 @@ + + + @@ -2317,6 +2325,9 @@ + + + @@ -2328,6 +2339,9 @@ + + + @@ -2339,6 +2353,9 @@ + + + @@ -2347,6 +2364,9 @@ + + + From 3557fe9844924bbc6a4134989e021778f8b2d1c8 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 13:33:26 +0100 Subject: [PATCH 04/13] Add verification metadata for MacOS x86 artifacts This commit updates the verification-metadata.xml file to include osx-x86_64 variants of protoc dependencies. --- gradle/verification-metadata.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 9c4c2547327..7f2a13c32c4 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -901,6 +901,9 @@ + + + @@ -1154,6 +1157,9 @@ + + + From 990365d5b9a247b6d7ac4fda248c328a40952cd8 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 13:43:00 +0100 Subject: [PATCH 05/13] Upgrade Lombok to support JDK16+ This fixes the IllegalAccessError problem documented at https://stackoverflow.com/a/66981165/622403 --- build.gradle | 2 +- gradle/verification-metadata.xml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index ccdf32b7b4b..6ce1ee11503 100644 --- a/build.gradle +++ b/build.gradle @@ -65,7 +65,7 @@ configure(subprojects) { langVersion = '3.11' logbackVersion = '1.1.11' loggingVersion = '1.2' - lombokVersion = '1.18.12' + lombokVersion = '1.18.22' mockitoVersion = '3.5.15' netlayerVersion = '0.7.2' // Tag from https://github.com/bisq-network/netlayer/tags based on externaltor branch protobufVersion = '3.19.1' diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 7f2a13c32c4..815c83a6751 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -2444,12 +2444,12 @@ - - - + + + - - + + From e09d56b696c5f049390df843ab53bc9154fab41f Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 13:53:38 +0100 Subject: [PATCH 06/13] Upgrade Mockito to 4.0.0 This fixes the 'Unsupported class file major version 60' problem documented at mockito/mockito#2065 to allow building Bisq on JDK 16+. --- build.gradle | 2 +- .../core/payment/ReceiptValidatorTest.java | 2 +- gradle/verification-metadata.xml | 52 +++++++++---------- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/build.gradle b/build.gradle index 6ce1ee11503..d43735ac164 100644 --- a/build.gradle +++ b/build.gradle @@ -66,7 +66,7 @@ configure(subprojects) { logbackVersion = '1.1.11' loggingVersion = '1.2' lombokVersion = '1.18.22' - mockitoVersion = '3.5.15' + mockitoVersion = '4.0.0' netlayerVersion = '0.7.2' // Tag from https://github.com/bisq-network/netlayer/tags based on externaltor branch protobufVersion = '3.19.1' protocVersion = protobufVersion diff --git a/core/src/test/java/bisq/core/payment/ReceiptValidatorTest.java b/core/src/test/java/bisq/core/payment/ReceiptValidatorTest.java index 12dbe054b92..4f31ff6053b 100644 --- a/core/src/test/java/bisq/core/payment/ReceiptValidatorTest.java +++ b/core/src/test/java/bisq/core/payment/ReceiptValidatorTest.java @@ -46,7 +46,7 @@ public void setUp() { @After public void tearDown() { - verifyZeroInteractions(offer); + verifyNoMoreInteractions(offer); } @Test diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 815c83a6751..a7fabacace2 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -1410,25 +1410,25 @@ - - - + + + - - + + - - - + + + - - + + - - - + + + @@ -2304,25 +2304,25 @@ - - - + + + - - + + - - - + + + - - + + - - - + + + From d7129a2d196eeab30790ef0bd461291f62c6edb8 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 14:43:03 +0100 Subject: [PATCH 07/13] Disable verification for javadoc and source jars Prior to this commit, IDEA would fail to build the project because it downloads javadoc and source jars that do not have entries in the verification file. These artifacts are now trusted by default as documented at https://docs.gradle.org/current/userguide/dependency_verification.html#sec:skipping-javadocs --- gradle/verification-metadata.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index a7fabacace2..9c1fb01ff42 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -3,6 +3,10 @@ true false + + + + From 1460914757b1e17d54189dcde9a9497cad46a6b8 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 14:45:14 +0100 Subject: [PATCH 08/13] Organize dependency entries As mentioned in a prior commit, the upgrade to Gradle 7.x results in many more dependency declarations in the file, many of which are effectively duplicates. This change does not attempt to eliminate those duplications in any clever way, but rather just tidies up and organizes all dependency declarations by sorting them alphabetically. --- build.gradle | 413 +++++++++++++++++++++++++-------------------------- 1 file changed, 200 insertions(+), 213 deletions(-) diff --git a/build.gradle b/build.gradle index d43735ac164..527a9396a97 100644 --- a/build.gradle +++ b/build.gradle @@ -177,22 +177,22 @@ configure(project(':proto')) { apply plugin: 'com.google.protobuf' dependencies { + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("io.grpc:grpc-protobuf:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } implementation("io.grpc:grpc-stub:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } - implementation "com.google.guava:guava:$guavaVersion" - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" - implementation "ch.qos.logback:logback-classic:$logbackVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" } sourceSets.main.java.srcDirs += [ @@ -218,17 +218,17 @@ configure(project(':proto')) { configure(project(':assets')) { dependencies { implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') - exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') } implementation "com.google.guava:guava:$guavaVersion" - implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" } } @@ -243,39 +243,39 @@ configure(project(':common')) { dependencies { implementation project(':proto') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion" - implementation "com.google.protobuf:protobuf-java:$protobufVersion" - implementation "com.google.code.gson:gson:$gsonVersion" - implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" - implementation "com.google.code.findbugs:jsr305:$findbugsVersion" - implementation "com.google.guava:guava:$guavaVersion" - implementation("com.google.inject:guice:$guiceVersion") { - exclude(module: 'guava') - } + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') - exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') } - runtimeOnly("io.grpc:grpc-netty-shaded:$grpcVersion") { + implementation "com.google.code.findbugs:jsr305:$findbugsVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') - exclude(module: 'animal-sniffer-annotations') } - implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" - implementation "org.bouncycastle:bcpg-jdk15on:$bcVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" implementation "commons-io:commons-io:$ioVersion" + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" implementation "org.apache.commons:commons-lang3:$langVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" + implementation "org.bouncycastle:bcpg-jdk15on:$bcVersion" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" testImplementation "org.hamcrest:hamcrest-all:$hamcrestVersion" + runtimeOnly("io.grpc:grpc-netty-shaded:$grpcVersion") { + exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') + } } } @@ -291,38 +291,38 @@ configure(project(':p2p')) { dependencies { implementation project(':proto') implementation project(':common') - implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') + } + implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { + exclude(module: 'slf4j-api') + } + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') } - implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') } - implementation "com.google.guava:guava:$guavaVersion" - implementation "com.google.protobuf:protobuf-java:$protobufVersion" - implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { - exclude(module: 'slf4j-api') - } - implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { - exclude(module: 'slf4j-api') - } implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { exclude(module: 'commons-codec') } - implementation "org.fxmisc.easybind:easybind:$easybindVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - testImplementation "ch.qos.logback:logback-core:$logbackVersion" + testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" testImplementation "ch.qos.logback:logback-classic:$logbackVersion" + testImplementation "ch.qos.logback:logback-core:$logbackVersion" testImplementation "org.apache.commons:commons-lang3:$langVersion" - testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testImplementation("org.mockito:mockito-core:$mockitoVersion") } @@ -352,59 +352,58 @@ configure(project(':core')) { implementation project(':assets') implementation project(':common') implementation project(':p2p') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" - implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion" + implementation "com.fasterxml.jackson.core:jackson-core:$jacksonVersion" + implementation "com.google.code.findbugs:jsr305:$findbugsVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "commons-codec:commons-codec:$codecVersion" implementation "commons-io:commons-io:$ioVersion" - implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { - exclude(module: 'slf4j-api') + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "org.apache.httpcomponents:httpcore:$httpcoreVersion" + implementation "org.fxmisc.easybind:easybind:$easybindVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") { + exclude(module: 'jackson-annotations') } implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { exclude(module: 'slf4j-api') } - implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') + implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') + } + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') } - implementation "org.apache.commons:commons-lang3:$langVersion" - implementation "com.google.code.findbugs:jsr305:$findbugsVersion" - implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" - implementation "commons-codec:commons-codec:$codecVersion" - implementation "com.google.code.gson:gson:$gsonVersion" - implementation "org.apache.httpcomponents:httpcore:$httpcoreVersion" - implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { - exclude(module: 'commons-codec') - } - implementation("com.google.inject:guice:$guiceVersion") { - exclude(module: 'guava') - } - implementation "com.google.guava:guava:$guavaVersion" implementation("com.github.bisq-network:jsonrpc4j:$jsonrpc4jVersion") { exclude(module: 'base64') exclude(module: 'httpcore-nio') } - implementation "com.fasterxml.jackson.core:jackson-core:$jacksonVersion" - implementation "com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion" - implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") { - exclude(module: 'jackson-annotations') + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') } - implementation "com.google.protobuf:protobuf-java:$protobufVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - + implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { + exclude(module: 'commons-codec') + } + testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" + testImplementation "com.natpryce:make-it-easy:$easyVersion" testImplementation "org.hamcrest:hamcrest-all:$hamcrestVersion" testImplementation "org.mockito:mockito-core:$mockitoVersion" - testImplementation "com.natpryce:make-it-easy:$easyVersion" - testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" } test { @@ -417,34 +416,33 @@ configure(project(':cli')) { dependencies { implementation project(':proto') - implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("io.grpc:grpc-core:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } implementation("io.grpc:grpc-stub:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } runtimeOnly("io.grpc:grpc-netty-shaded:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" - implementation "ch.qos.logback:logback-classic:$logbackVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - - testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" - testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testRuntimeOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" testImplementation "org.bitbucket.cowwoc:diff-match-patch:$cowwocVersion" + testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" + testRuntimeOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } test { @@ -483,43 +481,41 @@ configure(project(':desktop')) { implementation project(':proto') implementation project(':p2p') implementation project(':core') - implementation "ch.qos.logback:logback-core:$logbackVersion" + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "com.google.code.gson:gson:$gsonVersion" + implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "com.googlecode.jcsv:jcsv:$jcsvVersion" + implementation "com.jfoenix:jfoenix:$jfoenixVersion" implementation "commons-io:commons-io:$ioVersion" + implementation "de.jensd:fontawesomefx-commons:$fontawesomefxCommonsVersion" + implementation "de.jensd:fontawesomefx-materialdesignfont:$fontawesomefxMaterialdesignfontVersion" + implementation "de.jensd:fontawesomefx:$fontawesomefxVersion" + implementation "net.glxn:qrgen:$qrgenVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" implementation "org.bouncycastle:bcpg-jdk15on:$bcVersion" implementation "org.fxmisc.easybind:easybind:$easybindVersion" - implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" - implementation "com.google.code.gson:gson:$gsonVersion" - implementation "org.apache.commons:commons-lang3:$langVersion" - implementation "net.glxn:qrgen:$qrgenVersion" - implementation("com.google.inject:guice:$guiceVersion") { - exclude(module: 'guava') - } - implementation "de.jensd:fontawesomefx:$fontawesomefxVersion" - implementation "de.jensd:fontawesomefx-commons:$fontawesomefxCommonsVersion" - implementation "de.jensd:fontawesomefx-materialdesignfont:$fontawesomefxMaterialdesignfontVersion" - implementation "com.google.guava:guava:$guavaVersion" - implementation "com.googlecode.jcsv:jcsv:$jcsvVersion" - implementation "com.jfoenix:jfoenix:$jfoenixVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') - exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') + } + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') } - - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - - testImplementation "org.mockito:mockito-core:$mockitoVersion" - testImplementation "com.natpryce:make-it-easy:$easyVersion" - testCompileOnly "org.projectlombok:lombok:$lombokVersion" testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" + testImplementation "com.natpryce:make-it-easy:$easyVersion" + testImplementation "org.mockito:mockito-core:$mockitoVersion" } test { @@ -550,27 +546,25 @@ configure(project(':monitor')) { implementation project(':common') implementation project(':core') implementation project(':p2p') - implementation("com.google.inject:guice:$guiceVersion") { - exclude(module: 'guava') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { + exclude(module: 'slf4j-api') } implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { exclude(module: 'slf4j-api') } - implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { - exclude(module: 'slf4j-api') + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') } - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" - implementation "ch.qos.logback:logback-classic:$logbackVersion" - implementation "com.google.guava:guava:$guavaVersion" - - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - + testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } } @@ -588,26 +582,24 @@ configure(project(':pricenode')) { dependencies { implementation project(":common") implementation project(":core") - - compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" - - implementation "com.google.guava:guava:$guavaVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "com.google.code.gson:gson:$gsonVersion" + implementation "com.google.guava:guava:$guavaVersion" implementation "commons-codec:commons-codec:$codecVersion" implementation "org.apache.httpcomponents:httpcore:$httpcoreVersion" implementation("org.apache.httpcomponents:httpclient:$httpclientVersion") { exclude(module: 'commons-codec') } - implementation("org.knowm.xchange:xchange-bitbay:$knowmXchangeVersion") - implementation("org.knowm.xchange:xchange-btcmarkets:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-binance:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-bitbay:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-bitfinex:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-bitflyer:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-bitstamp:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-btcmarkets:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-cexio:$knowmXchangeVersion") - implementation("org.knowm.xchange:xchange-coinmate:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-coinmarketcap:$knowmXchangeVersion") + implementation("org.knowm.xchange:xchange-coinmate:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-coinone:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-exmo:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-hitbtc:$knowmXchangeVersion") @@ -620,12 +612,12 @@ configure(project(':pricenode')) { implementation("org.knowm.xchange:xchange-poloniex:$knowmXchangeVersion") implementation("org.knowm.xchange:xchange-quoine:$knowmXchangeVersion") implementation("org.springframework.boot:spring-boot-starter-web:$springBootVersion") + testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") - testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testImplementation "org.mockito:mockito-core:$mockitoVersion" + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } test { @@ -651,18 +643,18 @@ configure(project(':relay')) { dependencies { implementation project(':common') - implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" - implementation "io.grpc:grpc-auth:$grpcVersion" - implementation "com.sparkjava:spark-core:$sparkVersion" - implementation "com.turo:pushy:$pushyVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation("com.google.firebase:firebase-admin:$firebaseVersion") { exclude(module: 'commons-logging') + exclude(module: 'grpc-auth') exclude(module: 'httpclient') exclude(module: 'httpcore') - exclude(module: 'grpc-auth') } + implementation "com.sparkjava:spark-core:$sparkVersion" + implementation "com.turo:pushy:$pushyVersion" implementation "commons-codec:commons-codec:$codecVersion" + implementation "io.grpc:grpc-auth:$grpcVersion" } } @@ -676,13 +668,13 @@ configure(project(':seednode')) { implementation project(':common') implementation project(':p2p') implementation project(':core') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "com.google.guava:guava:$guavaVersion" implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') } - compileOnly "org.projectlombok:lombok:$lombokVersion" - implementation "com.google.guava:guava:$guavaVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" testImplementation "org.mockito:mockito-core:$mockitoVersion" } } @@ -695,12 +687,12 @@ configure(project(':statsnode')) { implementation project(':common') implementation project(':p2p') implementation project(':core') - implementation "org.slf4j:slf4j-api:$slf4jVersion" + annotationProcessor "org.projectlombok:lombok:$lombokVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') } - annotationProcessor "org.projectlombok:lombok:$lombokVersion" } } @@ -712,46 +704,45 @@ configure(project(':daemon')) { implementation project(':common') implementation project(':p2p') implementation project(':core') + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "com.google.code.gson:gson:$gsonVersion" - implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" - implementation "org.apache.commons:commons-lang3:$langVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { + exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') + exclude(module: 'okhttp') + exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') + } implementation("com.google.inject:guice:$guiceVersion") { exclude(module: 'guava') } implementation("io.grpc:grpc-protobuf:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } implementation("io.grpc:grpc-stub:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } runtimeOnly("io.grpc:grpc-netty-shaded:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') - } - implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') - exclude(module: 'slf4j-api') exclude(module: 'guava') - exclude(module: 'protobuf-java') - exclude(module: 'bcprov-jdk15on') - exclude(module: 'okhttp') - exclude(module: 'okio') } - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" - implementation "ch.qos.logback:logback-classic:$logbackVersion" - compileOnly "org.projectlombok:lombok:$lombokVersion" - compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - + testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" + testCompileOnly "org.projectlombok:lombok:$lombokVersion" testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testCompileOnly "org.projectlombok:lombok:$lombokVersion" - testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } } @@ -765,17 +756,16 @@ configure(project(':inventory')) { implementation project(':common') implementation project(':p2p') implementation project(':core') - implementation("com.google.inject:guice:$guiceVersion") { - exclude(module: 'guava') - } - implementation "ch.qos.logback:logback-core:$logbackVersion" + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" - implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "com.google.guava:guava:$guavaVersion" implementation "com.sparkjava:spark-core:$sparkVersion" - - compileOnly "org.projectlombok:lombok:$lombokVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" + implementation "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" + implementation("com.google.inject:guice:$guiceVersion") { + exclude(module: 'guava') + } } } @@ -848,42 +838,39 @@ configure(project(':apitest')) { implementation project(':desktop') implementation project(':daemon') implementation project(':cli') - implementation "org.apache.commons:commons-lang3:$langVersion" + annotationProcessor "org.projectlombok:lombok:$lombokVersion" + compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + compileOnly "org.projectlombok:lombok:$lombokVersion" + implementation "ch.qos.logback:logback-classic:$logbackVersion" + implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "com.google.code.gson:gson:$gsonVersion" + implementation "com.google.guava:guava:$guavaVersion" + implementation "com.google.protobuf:protobuf-java:$protobufVersion" + implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" + implementation "org.apache.commons:commons-lang3:$langVersion" + implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { - exclude(module: 'jsr305') - exclude(module: 'slf4j-api') - exclude(module: 'guava') - exclude(module: 'protobuf-java') exclude(module: 'bcprov-jdk15on') + exclude(module: 'guava') + exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') + exclude(module: 'protobuf-java') + exclude(module: 'slf4j-api') } - implementation "net.sf.jopt-simple:jopt-simple:$joptVersion" - implementation "com.google.guava:guava:$guavaVersion" - implementation "com.google.protobuf:protobuf-java:$protobufVersion" implementation("io.grpc:grpc-protobuf:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } implementation("io.grpc:grpc-stub:$grpcVersion") { - exclude(module: 'guava') exclude(module: 'animal-sniffer-annotations') + exclude(module: 'guava') } - implementation "org.slf4j:slf4j-api:$slf4jVersion" - implementation "ch.qos.logback:logback-core:$logbackVersion" - implementation "ch.qos.logback:logback-classic:$logbackVersion" - - compileOnly "org.projectlombok:lombok:$lombokVersion" - compileOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" - annotationProcessor "org.projectlombok:lombok:$lombokVersion" - - testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" - testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" - testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testAnnotationProcessor "org.projectlombok:lombok:$lombokVersion" testCompileOnly "org.projectlombok:lombok:$lombokVersion" + testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" + testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" testRuntimeOnly "javax.annotation:javax.annotation-api:$javaxAnnotationVersion" + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") } } - From 5e93cfea47b4110c6f569c7fb2ca019b01840134 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 14:56:49 +0100 Subject: [PATCH 09/13] Add missing dependency verification entries This fixes the CI build failure at https://github.com/bisq-network/bisq/runs/4198811212?check_suite_focus=true#step:6:306 by adding missing entries for findbugs, jsr305 and various netty artifacts. It is not clear why these artifacts were required under linux and not under MacOS. --- gradle/verification-metadata.xml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 9c1fb01ff42..7364f0b03af 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -556,6 +556,16 @@ + + + + + + + + + + @@ -1168,6 +1178,11 @@ + + + + + @@ -1176,6 +1191,11 @@ + + + + + @@ -1260,6 +1280,11 @@ + + + + + From d964ded2afceeacdee8322fd157480e5da97f090 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sat, 13 Nov 2021 15:28:43 +0100 Subject: [PATCH 10/13] Add missing verification metadata These entries showed up as missing when @jmacxx ran this PR branch on his local Linux machine under JDK 11. It is not clear why these dependencies were required there and not elsewhere, e.g. under CI or on my own Mac. --- gradle/verification-metadata.xml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 7364f0b03af..ad70070d654 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -85,6 +85,11 @@ + + + + + @@ -180,6 +185,11 @@ + + + + + @@ -2119,6 +2129,9 @@ + + + From 280c2aaa8eef85fe9f2ec37b88d2d51764fddf6e Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Mon, 15 Nov 2021 13:03:49 +0100 Subject: [PATCH 11/13] Adapt Gradle startScript customization logic Problem: ClassNotFoundError was getting thrown when attempting to run, e.g. the `./bisq-desktop` or `./bisq-pricenode` start scripts. Solution: Gradle's posix start scripts were changed significantly between 6.6.1 and 7.3, including a change to the way the current directory is determined. This change updates the way we customize start script generation to allow running them from the root of the repo. This change only affects the unix / posix variants. The Windows .bat files do not need to be adapted similarly. --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 527a9396a97..1cd7e65648e 100644 --- a/build.gradle +++ b/build.gradle @@ -140,7 +140,7 @@ configure([project(':cli'), def unixScriptFile = file("${rootProject.projectDir}/bisq-$applicationName") unixScriptFile.text = unixScriptFile.text.replace( - 'cd "`dirname \\"$PRG\\"`/.." >/dev/null', 'cd "`dirname \\"$PRG\\"`" >/dev/null') + 'APP_HOME=$( cd "${APP_HOME:-./}.." && pwd -P ) || exit', 'APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit') if (applicationName == 'desktop') { def script = file("${rootProject.projectDir}/bisq-$applicationName") From 0ea056c6d2bc8dd9d028c40a0c44828973f02060 Mon Sep 17 00:00:00 2001 From: Christoph Atteneder Date: Mon, 15 Nov 2021 13:26:05 +0100 Subject: [PATCH 12/13] Add Windows artifact hashes --- gradle/verification-metadata.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index ad70070d654..a3f4e77e704 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -928,6 +928,9 @@ + + + @@ -1184,6 +1187,9 @@ + + + @@ -2379,6 +2385,9 @@ + + + @@ -2393,6 +2402,9 @@ + + + @@ -2407,6 +2419,9 @@ + + + @@ -2418,6 +2433,9 @@ + + + From cb7b0e8da4b02aa8d7cad258594f9c35cb957298 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Mon, 15 Nov 2021 13:44:44 +0100 Subject: [PATCH 13/13] Set pricenode mainClassName explicitly Problem: after the upgrade from 6.6.1 to 7.3, the usual invocation of, e.g. `./bisq-pricenode 2 2` started failing as reported by @emzy at [1]. bisq@ubuntu-4gb-fsn1-1:~$ /bisq/bisq/bisq-pricenode 2 Error: Could not find or load main class 2 Caused by: java.lang.ClassNotFoundException: 2 Solution: for unknown reasons, the bisq-pricenode script worked as expected under 6.6.1, i.e. contained the fq main class name in its scripted invocation of `java -jar ...`, but under 7.3, this main class name was missing. Through trial and error, it turns out that setting `mainClassName` explicitly in the :pricenode subproject configuration solves this problem and makes the start script work as expected. Presumably, this problem arose in conjunction with the major version upgrade of the spring boot Gradle plugin that was necessary when upgrading to Gradle 7.3, but this has not been verified. [1]: https://github.com/bisq-network/bisq/pull/5824#issuecomment-968276686 --- build.gradle | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build.gradle b/build.gradle index 1cd7e65648e..934e2bfb576 100644 --- a/build.gradle +++ b/build.gradle @@ -573,6 +573,8 @@ configure(project(':monitor')) { configure(project(':pricenode')) { apply plugin: "org.springframework.boot" + mainClassName = 'bisq.price.Main' + version = file("src/main/resources/version.txt").text.trim() jar.manifest.attributes(