diff --git a/.env b/.env index a9cf4b50b17..4d7be93364d 100644 --- a/.env +++ b/.env @@ -1,2 +1,2 @@ -TAG=0.32.0-SNAPSHOT +TAG=0.33.0-SNAPSHOT REGISTRY_PREFIX= diff --git a/buildSrc/src/main/kotlin/com.hedera.hashgraph.jpms-modules.gradle.kts b/buildSrc/src/main/kotlin/com.hedera.hashgraph.jpms-modules.gradle.kts index 64b50f32d29..da3966dbc5e 100644 --- a/buildSrc/src/main/kotlin/com.hedera.hashgraph.jpms-modules.gradle.kts +++ b/buildSrc/src/main/kotlin/com.hedera.hashgraph.jpms-modules.gradle.kts @@ -22,19 +22,22 @@ plugins { } extraJavaModuleInfo { - failOnMissingModuleInfo.set(false) + failOnMissingModuleInfo.set(true) automaticModule("com.hedera.hashgraph:protobuf-java", "com.hedera.hashgraph.protobuf.java.api") automaticModule("com.goterl:lazysodium-java", "lazysodium.java") automaticModule("com.goterl:resource-loader", "resource.loader") automaticModule("io.grpc:grpc-api", "io.grpc.api") + automaticModule("io.grpc:grpc-core", "io.grpc.core") automaticModule("io.grpc:grpc-netty", "io.grpc.netty") + automaticModule("io.grpc:grpc-context", "io.grpc.context") automaticModule("io.grpc:grpc-stub", "grpc.stub") automaticModule("io.grpc:grpc-protobuf", "grpc.protobuf") automaticModule("io.grpc:grpc-services", "grpc.services") - automaticModule("io.grpc:grpc-protobuf-lite", "grpc.protobuf.lite") - automaticModule("io.grpc:grpc-netty", "grpc.netty") + automaticModule("io.grpc:grpc-protobuf-lite", "io.grpc.protobuf.lite") + automaticModule("io.grpc:grpc-netty", "io.grpc.netty") + automaticModule("io.grpc:grpc-testing", "io.grpc.testing") automaticModule("org.openjdk.jmh:jmh-core", "jmh.core") automaticModule("org.openjdk.jmh:jmh-generator-asm", "jmh.generator.asm") @@ -72,6 +75,39 @@ extraJavaModuleInfo { automaticModule("com.google.guava:listenablefuture", "listenablefuture") automaticModule("com.google.guava:failureaccess", "failureaccess") automaticModule("com.google.auto.value:auto-value-annotations", "auto.value.annotations") + automaticModule("com.google.api.grpc:proto-google-common-protos", "com.google.api.grpc.proto.common") + + automaticModule("org.connid:framework", "org.connid.framework") + automaticModule("org.connid:framework-internal", "org.connid.framework.internal") + + automaticModule("org.jetbrains.kotlin:kotlin-stdlib-common", "org.jetbrains.kotlin.stdlib.common") + automaticModule("junit:junit", "junit.old") + automaticModule("org.codehaus.mojo:animal-sniffer-annotations", "org.codehaus.mojo.animalsniffer.annotations") + automaticModule("org.checkerframework:checker-compat-qual", "org.checkerframework.checker.compat.qual") + automaticModule("com.google.code.gson:gson", "com.google.code.gson") + automaticModule("com.google.android:annotations", "com.google.android.annotations") + automaticModule("com.google.errorprone:error_prone_annotations", "com.google.errorprone.annotations") + automaticModule("com.google.j2objc:j2objc-annotations", "com.google.j2objc.annotations") + automaticModule("com.google.dagger:dagger-compiler", "dagger.compiler") + automaticModule("com.google.dagger:dagger-spi", "dagger.spi") + automaticModule("com.google.dagger:dagger-producers", "dagger.producers") + automaticModule("com.google.googlejavaformat:google-java-format", "com.google.googlejavaformat") + automaticModule("com.google.devtools.ksp:symbol-processing-api", "com.google.devtools.ksp.symbolprocessingapi") + automaticModule("org.jetbrains.kotlinx:kotlinx-metadata-jvm", "org.jetbrains.kotlinx.metadata.jvm") + automaticModule("net.ltgt.gradle.incap:incap", "net.ltgt.gradle.incap") + automaticModule("com.google.errorprone:javac-shaded", "com.google.errorprone.javac.shaded") + automaticModule("org.hyperledger.besu:bls12-381", "org.hyperledger.besu.bls12.for381") + automaticModule("org.hyperledger.besu:secp256r1", "org.hyperledger.besu.secp256r1") + automaticModule("org.hyperledger.besu:blake2bf", "org.hyperledger.besu.blake2bf") + automaticModule("com.google.truth.extensions:truth-java8-extension", "com.google.truth.extensions.java8") + automaticModule("org.apache.commons:commons-math3", "org.apache.commons.math3") + + automaticModule("com.github.docker-java:docker-java-transport-zerodep", "com.github.docker.transport.zerodep") + automaticModule("org.rnorth.duct-tape:duct-tape", "org.rnorth.ducttape") + automaticModule("io.opencensus:opencensus-api", "io.opencensus.api") + automaticModule("org.hyperledger.besu.internal:util", "org.hyperledger.besu.internal.util") + automaticModule("org.testcontainers:junit-jupiter", "org.testcontainers.junit.jupiter") + // Test Related Modules automaticModule("com.github.docker-java:docker-java-transport", "com.github.docker.java.transport") diff --git a/hedera-node/hapi-fees/build.gradle.kts b/hedera-node/hapi-fees/build.gradle.kts index 80eb25ed562..de9bbc29f38 100644 --- a/hedera-node/hapi-fees/build.gradle.kts +++ b/hedera-node/hapi-fees/build.gradle.kts @@ -21,12 +21,18 @@ description = "Hedera Services API Fees" configurations.all { exclude("javax.annotation", "javax.annotation-api") + + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") + exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") } dependencies { annotationProcessor(libs.dagger.compiler) implementation(libs.bundles.di) + implementation(libs.helidon.io.grpc) implementation(project(":hedera-node:hapi-utils")) implementation(libs.bundles.logging) implementation(libs.commons.lang3) diff --git a/hedera-node/hapi-utils/build.gradle.kts b/hedera-node/hapi-utils/build.gradle.kts index 510efc2e90e..456215f5632 100644 --- a/hedera-node/hapi-utils/build.gradle.kts +++ b/hedera-node/hapi-utils/build.gradle.kts @@ -21,12 +21,18 @@ description = "Hedera Services API Utilities" configurations.all { exclude("javax.annotation", "javax.annotation-api") + + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") + exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") } dependencies { api(project(":hedera-node:hedera-evm")) annotationProcessor(libs.dagger.compiler) + implementation(libs.helidon.io.grpc) implementation(libs.bundles.di) implementation(libs.hapi) implementation(libs.bundles.logging) diff --git a/hedera-node/hedera-app-spi/build.gradle.kts b/hedera-node/hedera-app-spi/build.gradle.kts index 8c5d3f4f8ca..a3a18be7b24 100644 --- a/hedera-node/hedera-app-spi/build.gradle.kts +++ b/hedera-node/hedera-app-spi/build.gradle.kts @@ -24,10 +24,17 @@ configurations.all { exclude("com.google.code.findbugs", "jsr305") exclude("org.jetbrains", "annotations") exclude("org.checkerframework", "checker-qual") + + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") + exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") } dependencies { + implementation(libs.grpc.stub) api(libs.hapi) + implementation(libs.helidon.io.grpc) implementation(libs.jsr305.annotation) compileOnly(libs.spotbugs.annotations) diff --git a/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaAccountNumbersTest.java b/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaAccountNumbersTest.java index 004fff63e96..ef25c19c6cd 100644 --- a/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaAccountNumbersTest.java +++ b/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaAccountNumbersTest.java @@ -15,8 +15,8 @@ */ package com.hedera.node.app.spi.numbers; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; diff --git a/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaFileNumbersTest.java b/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaFileNumbersTest.java index ccbb2781064..c194c567c30 100644 --- a/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaFileNumbersTest.java +++ b/hedera-node/hedera-app-spi/src/test/java/com/hedera/node/app/spi/numbers/HederaFileNumbersTest.java @@ -15,8 +15,8 @@ */ package com.hedera.node.app.spi.numbers; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; diff --git a/hedera-node/hedera-app/build.gradle.kts b/hedera-node/hedera-app/build.gradle.kts index a8735d6badf..19415c3d031 100644 --- a/hedera-node/hedera-app/build.gradle.kts +++ b/hedera-node/hedera-app/build.gradle.kts @@ -24,8 +24,11 @@ configurations.all { exclude("com.google.code.findbugs", "jsr305") exclude("org.jetbrains", "annotations") exclude("org.checkerframework", "checker-qual") + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") } dependencies { @@ -40,11 +43,11 @@ dependencies { implementation(project(":hedera-node:hedera-token-service-impl")) implementation(project(":hedera-node:hedera-util-service-impl")) - implementation(libs.hapi) - implementation(libs.bundles.helidon) implementation(libs.bundles.swirlds) - compileOnly(libs.spotbugs.annotations) + implementation(libs.hapi) + implementation(libs.bundles.helidon) + implementation(libs.helidon.grpc.server) itestImplementation(libs.hapi) itestImplementation(libs.bundles.helidon) diff --git a/hedera-node/hedera-app/src/main/java/module-info.java b/hedera-node/hedera-app/src/main/java/module-info.java index ec5e55b4c4e..2b70f22d384 100644 --- a/hedera-node/hedera-app/src/main/java/module-info.java +++ b/hedera-node/hedera-app/src/main/java/module-info.java @@ -1,9 +1,11 @@ module com.hedera.node.app { - requires com.swirlds.common; + requires io.helidon.grpc.core; requires io.helidon.grpc.server; + requires com.swirlds.common; + requires org.slf4j; requires static com.github.spotbugs.annotations; requires com.hedera.hashgraph.protobuf.java.api; - requires org.slf4j; + requires grpc.stub; requires com.hedera.node.app.spi; requires com.hedera.node.app.service.admin; requires com.hedera.node.app.service.consensus; diff --git a/hedera-node/hedera-evm/build.gradle.kts b/hedera-node/hedera-evm/build.gradle.kts index e7a54f2283d..0ba22a45740 100644 --- a/hedera-node/hedera-evm/build.gradle.kts +++ b/hedera-node/hedera-evm/build.gradle.kts @@ -24,12 +24,20 @@ description = "Hedera EVM - API" configurations.all { exclude("javax.annotation", "javax.annotation-api") exclude("com.google.code.findbugs", "jsr305") + + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") + exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") + exclude("io.grpc", "grpc-stub") } dependencies { + api(libs.besu.evm) api(libs.besu.datatypes) api(libs.swirlds.common) + implementation(libs.helidon.io.grpc) api(libs.besu.secp256k1) implementation(libs.jna) implementation(libs.caffeine) diff --git a/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/contracts/execution/HederaEvmMessageCallProcessorTest.java b/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/contracts/execution/HederaEvmMessageCallProcessorTest.java index 2abc329f12b..d6259ea0668 100644 --- a/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/contracts/execution/HederaEvmMessageCallProcessorTest.java +++ b/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/contracts/execution/HederaEvmMessageCallProcessorTest.java @@ -20,7 +20,7 @@ import static org.hyperledger.besu.evm.frame.MessageFrame.State.COMPLETED_SUCCESS; import static org.hyperledger.besu.evm.frame.MessageFrame.State.EXCEPTIONAL_HALT; import static org.hyperledger.besu.evm.frame.MessageFrame.State.REVERT; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.BDDMockito.given; diff --git a/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/store/models/HederaEvmStackedWorldStateUpdaterTest.java b/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/store/models/HederaEvmStackedWorldStateUpdaterTest.java index c2aaccf1655..c0a217a2e58 100644 --- a/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/store/models/HederaEvmStackedWorldStateUpdaterTest.java +++ b/hedera-node/hedera-evm/src/test/java/com/hedera/node/app/service/evm/store/models/HederaEvmStackedWorldStateUpdaterTest.java @@ -15,8 +15,8 @@ */ package com.hedera.node.app.service.evm.store.models; -import static org.junit.Assert.assertFalse; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNull; import com.hedera.node.app.service.evm.store.contracts.HederaEvmStackedWorldStateUpdater; @@ -50,7 +50,8 @@ void accountTests() { @Test void getAccount() { - UpdatedHederaEvmAccount updatedHederaEvmAccount = new UpdatedHederaEvmAccount(address); + final UpdatedHederaEvmAccount updatedHederaEvmAccount = + new UpdatedHederaEvmAccount(address); assertEquals( updatedHederaEvmAccount.getAddress(), diff --git a/hedera-node/hedera-mono-service/build.gradle.kts b/hedera-node/hedera-mono-service/build.gradle.kts index bf2fc988ad5..d06f55bb895 100644 --- a/hedera-node/hedera-mono-service/build.gradle.kts +++ b/hedera-node/hedera-mono-service/build.gradle.kts @@ -26,6 +26,13 @@ configurations.all { exclude("com.google.code.findbugs", "jsr305") exclude("org.jetbrains", "annotations") exclude("org.checkerframework", "checker-qual") + + exclude("io.grpc", "grpc-core") + exclude("io.grpc", "grpc-context") + exclude("io.grpc", "grpc-api") + exclude("io.grpc", "grpc-testing") + + exclude("org.hamcrest", "hamcrest-core") } dependencies { @@ -49,10 +56,12 @@ dependencies { exclude(group = "org.hyperledger.besu", module = "secp256r1") } implementation(libs.bundles.di) + implementation(libs.grpc.stub) implementation(libs.bundles.logging) implementation(libs.bundles.swirlds) implementation(libs.caffeine) implementation(libs.hapi) + implementation(libs.helidon.io.grpc) implementation(libs.headlong) implementation( variantOf(libs.netty.transport.native.epoll) { diff --git a/hedera-node/hedera-mono-service/src/main/java/module-info.java b/hedera-node/hedera-mono-service/src/main/java/module-info.java index d77d0069683..d6dfed6878e 100644 --- a/hedera-node/hedera-mono-service/src/main/java/module-info.java +++ b/hedera-node/hedera-mono-service/src/main/java/module-info.java @@ -1,5 +1,62 @@ module com.hedera.node.app.service.mono { exports com.hedera.node.app.service.mono; + exports com.hedera.node.app.service.mono.state.submerkle to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.exceptions to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.legacy.core.jproto to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.utils to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.ledger to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.store.models to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.state.merkle to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.utils.accessors to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.sigs.utils to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.sigs.verification to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.files to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.state.virtual.schedule to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.store.schedule to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.store.tokens to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.context to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.state.enums to + com.hedera.node.app.service.mono.testFixtures; + exports com.hedera.node.app.service.mono.throttling to + com.fasterxml.jackson.databind; + + opens com.hedera.node.app.service.mono to + com.swirlds.common; + opens com.hedera.node.app.service.mono.context.properties to + com.swirlds.common; + opens com.hedera.node.app.service.mono.legacy.core.jproto to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.merkle to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.merkle.internals to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.submerkle to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.virtual to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.virtual.entities to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.virtual.schedule to + com.swirlds.common; + opens com.hedera.node.app.service.mono.state.virtual.temporal to + com.swirlds.common; + opens com.hedera.node.app.service.mono.stream to + com.swirlds.common; requires com.hedera.hashgraph.protobuf.java.api; requires com.swirlds.common; @@ -31,32 +88,9 @@ requires com.swirlds.logging; requires org.bouncycastle.provider; requires tuweni.units; - requires grpc.stub; requires commons.collections4; - - exports com.hedera.node.app.service.mono.throttling to - com.fasterxml.jackson.databind; - - opens com.hedera.node.app.service.mono to - com.swirlds.common; - opens com.hedera.node.app.service.mono.context.properties to - com.swirlds.common; - opens com.hedera.node.app.service.mono.legacy.core.jproto to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.merkle to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.merkle.internals to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.submerkle to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.virtual to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.virtual.entities to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.virtual.schedule to - com.swirlds.common; - opens com.hedera.node.app.service.mono.state.virtual.temporal to - com.swirlds.common; - opens com.hedera.node.app.service.mono.stream to - com.swirlds.common; + requires org.eclipse.collections.impl; + requires org.apache.commons.io; + requires io.grpc; + requires grpc.stub; } diff --git a/hedera-node/hedera-mono-service/src/testFixtures/java/module-info.java b/hedera-node/hedera-mono-service/src/testFixtures/java/module-info.java new file mode 100644 index 00000000000..efcc164fc80 --- /dev/null +++ b/hedera-node/hedera-mono-service/src/testFixtures/java/module-info.java @@ -0,0 +1,14 @@ +module com.hedera.node.app.service.mono.testFixtures { + requires org.junit.jupiter.api; + requires com.google.protobuf; + requires com.hedera.node.app.hapi.utils; + requires com.hedera.hashgraph.protobuf.java.api; + requires com.swirlds.common; + requires com.hedera.node.app.service.mono; + requires com.swirlds.virtualmap; + requires org.mockito; + requires com.swirlds.merkle; + requires net.i2p.crypto.eddsa; + requires org.bouncycastle.provider; + requires org.apache.commons.codec; +} diff --git a/settings.gradle.kts b/settings.gradle.kts index 6a190ee1e78..e8f07bf9572 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -88,6 +88,7 @@ dependencyResolutionManagement { version("jna-version", "5.12.1") version("jsr305-version", "3.0.2") version("spotbugs-version", "4.7.3") + version("helidon-grpc-version", "3.0.2") // List of bundles provided for us. When applicable, favor using these over individual libraries. // Use when you need to use Besu @@ -97,7 +98,7 @@ dependencyResolutionManagement { // Use when you need to make use of dependency injection. bundle("di", listOf("javax-inject", "dagger-api")) // Use when you need a grpc server - bundle("helidon", listOf("helidon-server", "helidon-grpc", "helidon-io-grpc")) + bundle("helidon", listOf("helidon-server", "helidon-grpc-server", "helidon-io-grpc")) // Use when you need logging bundle("logging", listOf("log4j-api", "log4j-core", "log4j-slf4j", "slf4j-api")) // Use when you need to depend upon netty @@ -132,13 +133,14 @@ dependencyResolutionManagement { library("dagger-api", "com.google.dagger", "dagger").versionRef("dagger-version") library("dagger-compiler", "com.google.dagger", "dagger-compiler").versionRef("dagger-version") library("eddsa", "net.i2p.crypto", "eddsa").versionRef("eddsa-version") + library("grpc-stub", "io.grpc", "grpc-stub").versionRef("grpc-version") library("grpc-protobuf", "io.grpc", "grpc-protobuf").versionRef("grpc-version") library("grpc-netty", "io.grpc", "grpc-netty").versionRef("grpc-version") library("guava", "com.google.guava", "guava").versionRef("guava-version") library("hapi", "com.hedera.hashgraph", "hedera-protobuf-java-api").versionRef("hapi-version") library("headlong", "com.esaulpaugh", "headlong").versionRef("headlong-version") library("helidon-server", "io.helidon.webserver", "helidon-webserver-http2").versionRef("helidon-version") - library("helidon-grpc", "io.helidon.grpc", "helidon-grpc-server").versionRef("helidon-version") + library("helidon-grpc-server", "io.helidon.grpc", "helidon-grpc-server").versionRef("helidon-version") library("helidon-io-grpc", "io.helidon.grpc", "io.grpc").versionRef("helidon-version") library("jackson", "com.fasterxml.jackson.core", "jackson-databind").versionRef("jackson-version") library("javax-annotation", "javax.annotation", "javax.annotation-api").versionRef("javax-annotation-version") @@ -177,15 +179,17 @@ dependencyResolutionManagement { version("picocli-version", "4.6.3") version("snakeyaml-version", "1.26") version("testcontainers-version", "1.17.2") - version("truth-java8-extension-version", "1.1.3") version("classgraph-version", "4.8.65") + version("google-truth-version", "1.1.3") version("assertj-version", "3.23.1") bundle("junit5", listOf("junit-jupiter-api", "junit-jupiter-params", "junit-jupiter")) bundle("mockito", listOf("mockito-core", "mockito-jupiter")) bundle("testcontainers", listOf("testcontainers-core", "testcontainers-junit")) - bundle("testing", listOf("junit-jupiter", "junit-jupiter-api", "junit-jupiter-params", "mockito-core", "mockito-jupiter", "hamcrest", "awaitility", "truth-java8-extension", "assertj-core")) + bundle("testing", listOf("junit-jupiter", "junit-jupiter-api", "junit-jupiter-params", "mockito-core", "mockito-jupiter", "hamcrest", "awaitility", "google-truth", "assertj-core")) + + library("google-truth", "com.google.truth", "truth").versionRef("google-truth-version") library("awaitility", "org.awaitility", "awaitility").versionRef("awaitility-version") library("besu-internal", "org.hyperledger.besu.internal", "crypto").versionRef("besu-internal-version") library("commons-collections4", "org.apache.commons", "commons-collections4").versionRef("commons-collections4-version") @@ -201,7 +205,6 @@ dependencyResolutionManagement { library("snakeyaml", "org.yaml", "snakeyaml").versionRef("snakeyaml-version") library("testcontainers-core", "org.testcontainers", "testcontainers").versionRef("testcontainers-version") library("testcontainers-junit", "org.testcontainers", "junit-jupiter").versionRef("testcontainers-version") - library("truth-java8-extension", "com.google.truth.extensions", "truth-java8-extension").versionRef("truth-java8-extension-version") library("classgraph", "io.github.classgraph", "classgraph").versionRef("classgraph-version") library("assertj-core", "org.assertj", "assertj-core").versionRef("assertj-version") } diff --git a/test-clients/build.gradle.kts b/test-clients/build.gradle.kts index 1a1a244a9d8..e6d09ca4193 100644 --- a/test-clients/build.gradle.kts +++ b/test-clients/build.gradle.kts @@ -22,6 +22,12 @@ plugins { description = "Hedera Services Test Clients for End to End Tests (EET)" +tasks.jar { + manifest { + attributes("Automatic-Module-Name" to "com.hedera.node.app.testclient") + } +} + tasks.test { // Disable these EET tests from being executed as part of the gradle "test" task. We should maybe remove them // from src/test into src/eet, so it can be part of an eet test task instead. See issue #3412