Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using module-info.java in Build #4395

Merged
merged 23 commits into from Dec 6, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .env
@@ -1,2 +1,2 @@
TAG=0.32.0-SNAPSHOT
TAG=0.33.0-SNAPSHOT
REGISTRY_PREFIX=
Expand Up @@ -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")
Expand Down Expand Up @@ -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")
Expand Down
6 changes: 6 additions & 0 deletions hedera-node/hapi-fees/build.gradle.kts
Expand Up @@ -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)
Expand Down
6 changes: 6 additions & 0 deletions hedera-node/hapi-utils/build.gradle.kts
Expand Up @@ -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)
Expand Down
7 changes: 7 additions & 0 deletions hedera-node/hedera-app-spi/build.gradle.kts
Expand Up @@ -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)

Expand Down
Expand Up @@ -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;
Expand Down
Expand Up @@ -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;
Expand Down
9 changes: 6 additions & 3 deletions hedera-node/hedera-app/build.gradle.kts
Expand Up @@ -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 {
Expand All @@ -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)
Expand Down
6 changes: 4 additions & 2 deletions 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;
Expand Down
8 changes: 8 additions & 0 deletions hedera-node/hedera-evm/build.gradle.kts
Expand Up @@ -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)
Expand Down
Expand Up @@ -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;
Expand Down
Expand Up @@ -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;
Expand Down Expand Up @@ -50,7 +50,8 @@ void accountTests() {

@Test
void getAccount() {
UpdatedHederaEvmAccount updatedHederaEvmAccount = new UpdatedHederaEvmAccount(address);
final UpdatedHederaEvmAccount updatedHederaEvmAccount =
new UpdatedHederaEvmAccount(address);

assertEquals(
updatedHederaEvmAccount.getAddress(),
Expand Down
9 changes: 9 additions & 0 deletions hedera-node/hedera-mono-service/build.gradle.kts
Expand Up @@ -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 {
Expand All @@ -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) {
Expand Down
88 changes: 61 additions & 27 deletions 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;
Expand Down Expand Up @@ -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;
}
@@ -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;
}