From f30daa55ff188d88a990f6546396abaf16585e2f Mon Sep 17 00:00:00 2001 From: bnczk <32466429+bnczk@users.noreply.github.com> Date: Mon, 1 Jun 2020 14:51:37 +0200 Subject: [PATCH] Update bazel version and dependencies (#22) * Update bazel version and dependencies - Update bazel to 3.1.0 - Upgrade bazel-based deps to work with 3.1.0 - Upgrade jar deps to newest version to avoid conflict with bazel-based deps - Update tests, removing deprecated methods and - Remove unneeded deps * make test server names private * Use official grpc-java rules for building grpc libs for java Also removes now unneeded third party grpc rules * Use grpc-java targets as deps rather than maven artifacts --- .bazelrc | 3 +- .bazelversion | 1 + .gitignore | 1 + .travis.yml | 8 +- BUILD | 0 WORKSPACE | 82 +- maven_install.json | 975 ++++++++++++++++++ repositories.bzl | 9 + .../java/me/dinowernli/grpc/prometheus/BUILD | 2 + .../dinowernli/grpc/prometheus/testing/BUILD | 3 + src/main/proto/BUILD | 19 +- .../grpc/prometheus/integration/BUILD | 27 +- ...oringClientInterceptorIntegrationTest.java | 18 +- ...oringServerInterceptorIntegrationTest.java | 19 +- third_party/grpc/BUILD | 17 +- third_party/guava/BUILD | 12 +- third_party/netty/BUILD | 9 - third_party/netty/netty.LICENSE | 202 ---- third_party/prometheus/BUILD | 12 +- third_party/testing/BUILD | 17 +- 20 files changed, 1117 insertions(+), 319 deletions(-) create mode 100644 .bazelversion create mode 100644 BUILD create mode 100644 maven_install.json create mode 100644 repositories.bzl delete mode 100644 third_party/netty/BUILD delete mode 100644 third_party/netty/netty.LICENSE diff --git a/.bazelrc b/.bazelrc index 3f258ff..8501a48 100644 --- a/.bazelrc +++ b/.bazelrc @@ -1,2 +1 @@ -test --legacy_bazel_java_test -test --test_output=errors +test --test_output=errors \ No newline at end of file diff --git a/.bazelversion b/.bazelversion new file mode 100644 index 0000000..fd2a018 --- /dev/null +++ b/.bazelversion @@ -0,0 +1 @@ +3.1.0 diff --git a/.gitignore b/.gitignore index 5a286ae..add768c 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ bazel-* project.iml output *.swp +.ijwb \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 682c650..45e6367 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,9 +17,9 @@ addons: before_install: - sudo apt-get purge openjdk-9* - sudo apt-get purge oracle-java9* - - wget 'https://github.com/bazelbuild/bazel/releases/download/0.20.0/bazel_0.20.0-linux-x86_64.deb' - - chmod +x bazel_0.20.0-linux-x86_64.deb - - sudo dpkg -i bazel_0.20.0-linux-x86_64.deb + - wget 'https://github.com/bazelbuild/bazel/releases/download/3.1.0/bazel_3.1.0-linux-x86_64.deb' + - chmod +x bazel_3.1.0-linux-x86_64.deb + - sudo dpkg -i bazel_3.1.0-linux-x86_64.deb script: - - bazel test --incompatible_remove_native_http_archive=false //src/... + - bazel test //src/... diff --git a/BUILD b/BUILD new file mode 100644 index 0000000..e69de29 diff --git a/WORKSPACE b/WORKSPACE index 8a5c72c..d4e60dd 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -1,67 +1,55 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( - name = "org_pubref_rules_protobuf", - strip_prefix = "rules_protobuf-0.8.1", - urls = ["https://github.com/pubref/rules_protobuf/archive/v0.8.1.zip"], + name = "io_grpc_grpc_java", + sha256 = "446ad7a2e85bbd05406dbf95232c7c49ed90de83b3b60cb2048b0c4c9f254d29", + strip_prefix = "grpc-java-1.29.0", + url = "https://github.com/grpc/grpc-java/archive/v1.29.0.zip", ) -load("@org_pubref_rules_protobuf//java:rules.bzl", "java_proto_repositories") +load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_ARTIFACTS") +load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS") -java_proto_repositories() +RULES_JVM_EXTERNAL_TAG = "3.0" -maven_jar( - name = "io_grpc_grpc_benchmarks", - artifact = "io.grpc:grpc-benchmarks:1.6.1", -) +RULES_JVM_EXTERNAL_SHA = "62133c125bf4109dfd9d2af64830208356ce4ef8b165a6ef15bbff7460b35c3a" -maven_jar( - name = "io_grpc_grpc_okhttp", - artifact = "io.grpc:grpc-okhttp:1.6.1", +http_archive( + name = "rules_jvm_external", + sha256 = RULES_JVM_EXTERNAL_SHA, + strip_prefix = "rules_jvm_external-%s" % RULES_JVM_EXTERNAL_TAG, + url = "https://github.com/bazelbuild/rules_jvm_external/archive/%s.zip" % RULES_JVM_EXTERNAL_TAG, ) -maven_jar( - name = "grpc_testing_artifact", - artifact = "io.grpc:grpc-testing:1.4.0", -) +load("@rules_jvm_external//:defs.bzl", "maven_install") +load("//:repositories.bzl", "MAVEN_ARTIFACTS") -maven_jar( - name = "guava_artifact", - artifact = "com.google.guava:guava:21.0", +maven_install( + artifacts = MAVEN_ARTIFACTS + IO_GRPC_GRPC_JAVA_ARTIFACTS, + generate_compat_repositories = True, + maven_install_json = "//:maven_install.json", + override_targets = IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS, + repositories = [ + "https://jcenter.bintray.com/", + "https://maven.google.com", + "https://repo1.maven.org/maven2", + ], ) -maven_jar( - name = "junit_artifact", - artifact = "junit:junit:4.10", -) +load("@maven//:defs.bzl", "pinned_maven_install") -maven_jar( - name = "netty_artifact", - artifact = "io.netty:netty-all:4.1.13.Final", -) +pinned_maven_install() -maven_jar( - name = "protobuf_java_artifact", - artifact = "com.google.protobuf:protobuf-java:3.2.0" -) +load("@maven//:compat.bzl", "compat_repositories") -maven_jar( - name = "protobuf_java_util_artifact", - artifact = "com.google.protobuf:protobuf-java-util:3.2.0", -) +compat_repositories() -maven_jar( - name = "mockito_artifact", - artifact = "org.mockito:mockito-all:1.10.19", -) +load("@io_grpc_grpc_java//:repositories.bzl", "grpc_java_repositories") -maven_jar( - name = "prometheus_client_artifact", - artifact = "io.prometheus:simpleclient:0.0.14", -) +# Run grpc_java_repositories after compat_repositories to ensure the +# maven_install-selected dependencies are used. +grpc_java_repositories() -maven_jar( - name = "truth_artifact", - artifact = "com.google.truth:truth:0.28", -) +load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") +protobuf_deps() diff --git a/maven_install.json b/maven_install.json new file mode 100644 index 0000000..9ea6b99 --- /dev/null +++ b/maven_install.json @@ -0,0 +1,975 @@ +{ + "dependency_tree": { + "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": -752539344, + "conflict_resolution": { + "com.google.guava:guava:28.2-android": "com.google.guava:guava:29.0-jre", + "junit:junit:4.10": "junit:junit:4.12" + }, + "dependencies": [ + { + "coord": "com.fasterxml.jackson.core:jackson-core:2.10.1", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar", + "https://maven.google.com/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar", + "https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar" + ], + "sha256": "79bffbdcd349f69a5ac252e2b4096131704386af4fa14d95395ea9a0e423cf33", + "url": "https://jcenter.bintray.com/com/fasterxml/jackson/core/jackson-core/2.10.1/jackson-core-2.10.1.jar" + }, + { + "coord": "com.google.android:annotations:4.1.1.4", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/android/annotations/4.1.1.4/annotations-4.1.1.4.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/android/annotations/4.1.1.4/annotations-4.1.1.4.jar", + "https://maven.google.com/com/google/android/annotations/4.1.1.4/annotations-4.1.1.4.jar", + "https://repo1.maven.org/maven2/com/google/android/annotations/4.1.1.4/annotations-4.1.1.4.jar" + ], + "sha256": "ba734e1e84c09d615af6a09d33034b4f0442f8772dec120efb376d86a565ae15", + "url": "https://jcenter.bintray.com/com/google/android/annotations/4.1.1.4/annotations-4.1.1.4.jar" + }, + { + "coord": "com.google.api.grpc:proto-google-common-protos:1.17.0", + "dependencies": [ + "com.google.protobuf:protobuf-java:3.12.1" + ], + "directDependencies": [ + "com.google.protobuf:protobuf-java:3.12.1" + ], + "file": "v1/https/jcenter.bintray.com/com/google/api/grpc/proto-google-common-protos/1.17.0/proto-google-common-protos-1.17.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/api/grpc/proto-google-common-protos/1.17.0/proto-google-common-protos-1.17.0.jar", + "https://maven.google.com/com/google/api/grpc/proto-google-common-protos/1.17.0/proto-google-common-protos-1.17.0.jar", + "https://repo1.maven.org/maven2/com/google/api/grpc/proto-google-common-protos/1.17.0/proto-google-common-protos-1.17.0.jar" + ], + "sha256": "ad25472c73ee470606fb500b376ae5a97973d5406c2f5c3b7d07fb25b4648b65", + "url": "https://jcenter.bintray.com/com/google/api/grpc/proto-google-common-protos/1.17.0/proto-google-common-protos-1.17.0.jar" + }, + { + "coord": "com.google.auth:google-auth-library-credentials:0.20.0", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/auth/google-auth-library-credentials/0.20.0/google-auth-library-credentials-0.20.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/auth/google-auth-library-credentials/0.20.0/google-auth-library-credentials-0.20.0.jar", + "https://maven.google.com/com/google/auth/google-auth-library-credentials/0.20.0/google-auth-library-credentials-0.20.0.jar", + "https://repo1.maven.org/maven2/com/google/auth/google-auth-library-credentials/0.20.0/google-auth-library-credentials-0.20.0.jar" + ], + "sha256": "8a415273a5dae5c8f9080134e53b9592dc171ca5d13127488c910177c5903bd6", + "url": "https://jcenter.bintray.com/com/google/auth/google-auth-library-credentials/0.20.0/google-auth-library-credentials-0.20.0.jar" + }, + { + "coord": "com.google.auth:google-auth-library-oauth2-http:0.20.0", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "org.apache.httpcomponents:httpclient:4.5.10", + "com.google.j2objc:j2objc-annotations:1.3", + "commons-logging:commons-logging:1.2", + "io.opencensus:opencensus-contrib-http-util:0.24.0", + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.auto.value:auto-value-annotations:1.7", + "com.google.auth:google-auth-library-credentials:0.20.0", + "commons-codec:commons-codec:1.11", + "io.opencensus:opencensus-api:0.24.0", + "io.grpc:grpc-context:1.22.1", + "com.google.http-client:google-http-client-jackson2:1.34.0", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.fasterxml.jackson.core:jackson-core:2.10.1", + "com.google.http-client:google-http-client:1.34.0", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.apache.httpcomponents:httpcore:4.4.12", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.auto.value:auto-value-annotations:1.7", + "com.google.auth:google-auth-library-credentials:0.20.0", + "com.google.http-client:google-http-client-jackson2:1.34.0", + "com.google.http-client:google-http-client:1.34.0", + "com.google.guava:guava:29.0-jre" + ], + "file": "v1/https/jcenter.bintray.com/com/google/auth/google-auth-library-oauth2-http/0.20.0/google-auth-library-oauth2-http-0.20.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/auth/google-auth-library-oauth2-http/0.20.0/google-auth-library-oauth2-http-0.20.0.jar", + "https://maven.google.com/com/google/auth/google-auth-library-oauth2-http/0.20.0/google-auth-library-oauth2-http-0.20.0.jar", + "https://repo1.maven.org/maven2/com/google/auth/google-auth-library-oauth2-http/0.20.0/google-auth-library-oauth2-http-0.20.0.jar" + ], + "sha256": "43e96e8c07285c2887042eda4e35ca96522ef361f6c1843f469039d9ccdc8f8a", + "url": "https://jcenter.bintray.com/com/google/auth/google-auth-library-oauth2-http/0.20.0/google-auth-library-oauth2-http-0.20.0.jar" + }, + { + "coord": "com.google.auto.value:auto-value-annotations:1.7", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/auto/value/auto-value-annotations/1.7/auto-value-annotations-1.7.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/auto/value/auto-value-annotations/1.7/auto-value-annotations-1.7.jar", + "https://maven.google.com/com/google/auto/value/auto-value-annotations/1.7/auto-value-annotations-1.7.jar", + "https://repo1.maven.org/maven2/com/google/auto/value/auto-value-annotations/1.7/auto-value-annotations-1.7.jar" + ], + "sha256": "b134bab5082e9f49f2b45802573c78e0726e059b645323645da03e328e501f86", + "url": "https://jcenter.bintray.com/com/google/auto/value/auto-value-annotations/1.7/auto-value-annotations-1.7.jar" + }, + { + "coord": "com.google.code.findbugs:jsr305:3.0.2", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar", + "https://maven.google.com/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar", + "https://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" + ], + "sha256": "766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7", + "url": "https://jcenter.bintray.com/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" + }, + { + "coord": "com.google.code.gson:gson:2.8.6", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar", + "https://maven.google.com/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar", + "https://repo1.maven.org/maven2/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar" + ], + "sha256": "c8fb4839054d280b3033f800d1f5a97de2f028eb8ba2eb458ad287e536f3f25f", + "url": "https://jcenter.bintray.com/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar" + }, + { + "coord": "com.google.errorprone:error_prone_annotations:2.3.4", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar", + "https://maven.google.com/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar", + "https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar" + ], + "sha256": "baf7d6ea97ce606c53e11b6854ba5f2ce7ef5c24dddf0afa18d1260bd25b002c", + "url": "https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar" + }, + { + "coord": "com.google.guava:failureaccess:1.0.1", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar", + "https://maven.google.com/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar", + "https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar" + ], + "sha256": "a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26", + "url": "https://jcenter.bintray.com/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar" + }, + { + "coord": "com.google.guava:guava:29.0-jre", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "org.checkerframework:checker-qual:2.11.1" + ], + "file": "v1/https/jcenter.bintray.com/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar", + "https://maven.google.com/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar", + "https://repo1.maven.org/maven2/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar" + ], + "sha256": "b22c5fb66d61e7b9522531d04b2f915b5158e80aa0b40ee7282c8bfb07b0da25", + "url": "https://jcenter.bintray.com/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar" + }, + { + "coord": "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar", + "https://maven.google.com/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar", + "https://repo1.maven.org/maven2/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" + ], + "sha256": "b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99", + "url": "https://jcenter.bintray.com/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" + }, + { + "coord": "com.google.http-client:google-http-client-jackson2:1.34.0", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "org.apache.httpcomponents:httpclient:4.5.10", + "com.google.j2objc:j2objc-annotations:1.3", + "commons-logging:commons-logging:1.2", + "io.opencensus:opencensus-contrib-http-util:0.24.0", + "com.google.code.findbugs:jsr305:3.0.2", + "commons-codec:commons-codec:1.11", + "io.opencensus:opencensus-api:0.24.0", + "io.grpc:grpc-context:1.22.1", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.fasterxml.jackson.core:jackson-core:2.10.1", + "com.google.http-client:google-http-client:1.34.0", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.apache.httpcomponents:httpcore:4.4.12", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.fasterxml.jackson.core:jackson-core:2.10.1", + "com.google.http-client:google-http-client:1.34.0" + ], + "file": "v1/https/jcenter.bintray.com/com/google/http-client/google-http-client-jackson2/1.34.0/google-http-client-jackson2-1.34.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/http-client/google-http-client-jackson2/1.34.0/google-http-client-jackson2-1.34.0.jar", + "https://maven.google.com/com/google/http-client/google-http-client-jackson2/1.34.0/google-http-client-jackson2-1.34.0.jar", + "https://repo1.maven.org/maven2/com/google/http-client/google-http-client-jackson2/1.34.0/google-http-client-jackson2-1.34.0.jar" + ], + "sha256": "c6c2d55048c880f0a26d3e01eb4f1c686284501397793ff6fc8239e0fd368dcc", + "url": "https://jcenter.bintray.com/com/google/http-client/google-http-client-jackson2/1.34.0/google-http-client-jackson2-1.34.0.jar" + }, + { + "coord": "com.google.http-client:google-http-client:1.34.0", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "org.apache.httpcomponents:httpclient:4.5.10", + "com.google.j2objc:j2objc-annotations:1.3", + "commons-logging:commons-logging:1.2", + "io.opencensus:opencensus-contrib-http-util:0.24.0", + "com.google.code.findbugs:jsr305:3.0.2", + "commons-codec:commons-codec:1.11", + "io.opencensus:opencensus-api:0.24.0", + "io.grpc:grpc-context:1.22.1", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.apache.httpcomponents:httpcore:4.4.12", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "org.apache.httpcomponents:httpclient:4.5.10", + "com.google.j2objc:j2objc-annotations:1.3", + "io.opencensus:opencensus-contrib-http-util:0.24.0", + "com.google.code.findbugs:jsr305:3.0.2", + "io.opencensus:opencensus-api:0.24.0", + "com.google.guava:guava:29.0-jre", + "org.apache.httpcomponents:httpcore:4.4.12" + ], + "file": "v1/https/jcenter.bintray.com/com/google/http-client/google-http-client/1.34.0/google-http-client-1.34.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/http-client/google-http-client/1.34.0/google-http-client-1.34.0.jar", + "https://maven.google.com/com/google/http-client/google-http-client/1.34.0/google-http-client-1.34.0.jar", + "https://repo1.maven.org/maven2/com/google/http-client/google-http-client/1.34.0/google-http-client-1.34.0.jar" + ], + "sha256": "376abdc782970145c673446c119bbb158641bca1b311d6098adc238c58be5ed7", + "url": "https://jcenter.bintray.com/com/google/http-client/google-http-client/1.34.0/google-http-client-1.34.0.jar" + }, + { + "coord": "com.google.j2objc:j2objc-annotations:1.3", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar", + "https://maven.google.com/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar", + "https://repo1.maven.org/maven2/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar" + ], + "sha256": "21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b", + "url": "https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar" + }, + { + "coord": "com.google.protobuf:protobuf-java-util:3.12.1", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.protobuf:protobuf-java:3.12.1", + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.code.gson:gson:2.8.6", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.google.code.gson:gson:2.8.6", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:guava:29.0-jre", + "com.google.protobuf:protobuf-java:3.12.1" + ], + "file": "v1/https/jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.12.1/protobuf-java-util-3.12.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.12.1/protobuf-java-util-3.12.1.jar", + "https://maven.google.com/com/google/protobuf/protobuf-java-util/3.12.1/protobuf-java-util-3.12.1.jar", + "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java-util/3.12.1/protobuf-java-util-3.12.1.jar" + ], + "sha256": "c2fca69872215a3ad823f1b10972fb97ffefab40a8a8eb21552712f4de832e0e", + "url": "https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.12.1/protobuf-java-util-3.12.1.jar" + }, + { + "coord": "com.google.protobuf:protobuf-java:3.12.1", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/google/protobuf/protobuf-java/3.12.1/protobuf-java-3.12.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.12.1/protobuf-java-3.12.1.jar", + "https://maven.google.com/com/google/protobuf/protobuf-java/3.12.1/protobuf-java-3.12.1.jar", + "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.12.1/protobuf-java-3.12.1.jar" + ], + "sha256": "fce055cf87cb4b5f7fa87cdf39e9946528c233ad5e911f4026c1c9e9e976a52c", + "url": "https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.12.1/protobuf-java-3.12.1.jar" + }, + { + "coord": "com.google.truth:truth:1.0.1", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.auto.value:auto-value-annotations:1.7", + "junit:junit:4.12", + "org.hamcrest:hamcrest-core:1.3", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.googlecode.java-diff-utils:diffutils:1.3.0", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.checkerframework:checker-qual:2.11.1", + "org.checkerframework:checker-compat-qual:2.5.5" + ], + "directDependencies": [ + "com.google.auto.value:auto-value-annotations:1.7", + "junit:junit:4.12", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.googlecode.java-diff-utils:diffutils:1.3.0", + "com.google.guava:guava:29.0-jre", + "org.checkerframework:checker-compat-qual:2.5.5" + ], + "file": "v1/https/jcenter.bintray.com/com/google/truth/truth/1.0.1/truth-1.0.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/google/truth/truth/1.0.1/truth-1.0.1.jar", + "https://maven.google.com/com/google/truth/truth/1.0.1/truth-1.0.1.jar", + "https://repo1.maven.org/maven2/com/google/truth/truth/1.0.1/truth-1.0.1.jar" + ], + "sha256": "1ccf4334e7a94cf00a20a619b5462b53acf3274e00b70498bf5b28a3bc1be9b1", + "url": "https://jcenter.bintray.com/com/google/truth/truth/1.0.1/truth-1.0.1.jar" + }, + { + "coord": "com.googlecode.java-diff-utils:diffutils:1.3.0", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar", + "https://maven.google.com/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar", + "https://repo1.maven.org/maven2/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar" + ], + "sha256": "61ba4dc49adca95243beaa0569adc2a23aedb5292ae78aa01186fa782ebdc5c2", + "url": "https://jcenter.bintray.com/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar" + }, + { + "coord": "com.squareup.okhttp:okhttp:2.7.4", + "dependencies": [ + "com.squareup.okio:okio:1.13.0" + ], + "directDependencies": [ + "com.squareup.okio:okio:1.13.0" + ], + "file": "v1/https/jcenter.bintray.com/com/squareup/okhttp/okhttp/2.7.4/okhttp-2.7.4.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/squareup/okhttp/okhttp/2.7.4/okhttp-2.7.4.jar", + "https://maven.google.com/com/squareup/okhttp/okhttp/2.7.4/okhttp-2.7.4.jar", + "https://repo1.maven.org/maven2/com/squareup/okhttp/okhttp/2.7.4/okhttp-2.7.4.jar" + ], + "sha256": "c88be9af1509d5aeec9394a818c0fa08e26fad9d64ba134e6f977e0bb20cb114", + "url": "https://jcenter.bintray.com/com/squareup/okhttp/okhttp/2.7.4/okhttp-2.7.4.jar" + }, + { + "coord": "com.squareup.okio:okio:1.13.0", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/com/squareup/okio/okio/1.13.0/okio-1.13.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/com/squareup/okio/okio/1.13.0/okio-1.13.0.jar", + "https://maven.google.com/com/squareup/okio/okio/1.13.0/okio-1.13.0.jar", + "https://repo1.maven.org/maven2/com/squareup/okio/okio/1.13.0/okio-1.13.0.jar" + ], + "sha256": "734269c3ebc5090e3b23566db558f421f0b4027277c79ad5d176b8ec168bb850", + "url": "https://jcenter.bintray.com/com/squareup/okio/okio/1.13.0/okio-1.13.0.jar" + }, + { + "coord": "commons-codec:commons-codec:1.11", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/commons-codec/commons-codec/1.11/commons-codec-1.11.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/commons-codec/commons-codec/1.11/commons-codec-1.11.jar", + "https://maven.google.com/commons-codec/commons-codec/1.11/commons-codec-1.11.jar", + "https://repo1.maven.org/maven2/commons-codec/commons-codec/1.11/commons-codec-1.11.jar" + ], + "sha256": "e599d5318e97aa48f42136a2927e6dfa4e8881dff0e6c8e3109ddbbff51d7b7d", + "url": "https://jcenter.bintray.com/commons-codec/commons-codec/1.11/commons-codec-1.11.jar" + }, + { + "coord": "commons-logging:commons-logging:1.2", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/commons-logging/commons-logging/1.2/commons-logging-1.2.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/commons-logging/commons-logging/1.2/commons-logging-1.2.jar", + "https://maven.google.com/commons-logging/commons-logging/1.2/commons-logging-1.2.jar", + "https://repo1.maven.org/maven2/commons-logging/commons-logging/1.2/commons-logging-1.2.jar" + ], + "sha256": "daddea1ea0be0f56978ab3006b8ac92834afeefbd9b7e4e6316fca57df0fa636", + "url": "https://jcenter.bintray.com/commons-logging/commons-logging/1.2/commons-logging-1.2.jar" + }, + { + "coord": "io.grpc:grpc-context:1.22.1", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/io/grpc/grpc-context/1.22.1/grpc-context-1.22.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/grpc/grpc-context/1.22.1/grpc-context-1.22.1.jar", + "https://maven.google.com/io/grpc/grpc-context/1.22.1/grpc-context-1.22.1.jar", + "https://repo1.maven.org/maven2/io/grpc/grpc-context/1.22.1/grpc-context-1.22.1.jar" + ], + "sha256": "780a3937705b3c92e07292c97d065b2676fcbe031eae250f1622b026485f294e", + "url": "https://jcenter.bintray.com/io/grpc/grpc-context/1.22.1/grpc-context-1.22.1.jar" + }, + { + "coord": "io.netty:netty-buffer:4.1.48.Final", + "dependencies": [ + "io.netty:netty-common:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-common:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-buffer/4.1.48.Final/netty-buffer-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-buffer/4.1.48.Final/netty-buffer-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-buffer/4.1.48.Final/netty-buffer-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-buffer/4.1.48.Final/netty-buffer-4.1.48.Final.jar" + ], + "sha256": "7efc8f98224c703ef09a409e5ddffbe14f5b4b6f527d3836c1647b4d9eff8cec", + "url": "https://jcenter.bintray.com/io/netty/netty-buffer/4.1.48.Final/netty-buffer-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-codec-http2:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-codec-http:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-handler:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-codec-http:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-handler:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-codec-http2/4.1.48.Final/netty-codec-http2-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-codec-http2/4.1.48.Final/netty-codec-http2-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-codec-http2/4.1.48.Final/netty-codec-http2-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-codec-http2/4.1.48.Final/netty-codec-http2-4.1.48.Final.jar" + ], + "sha256": "359548f53cf8697ebdfa13a4700f1b9a5585573c64f2d3ed135a3197ebd51579", + "url": "https://jcenter.bintray.com/io/netty/netty-codec-http2/4.1.48.Final/netty-codec-http2-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-codec-http:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-handler:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-handler:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-codec-http/4.1.48.Final/netty-codec-http-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-codec-http/4.1.48.Final/netty-codec-http-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-codec-http/4.1.48.Final/netty-codec-http-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-codec-http/4.1.48.Final/netty-codec-http-4.1.48.Final.jar" + ], + "sha256": "aa4b18070e7fc105f0c94a077605687bec48091274c8acc121116692c335edd0", + "url": "https://jcenter.bintray.com/io/netty/netty-codec-http/4.1.48.Final/netty-codec-http-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-codec-socks:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-codec-socks/4.1.48.Final/netty-codec-socks-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-codec-socks/4.1.48.Final/netty-codec-socks-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-codec-socks/4.1.48.Final/netty-codec-socks-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-codec-socks/4.1.48.Final/netty-codec-socks-4.1.48.Final.jar" + ], + "sha256": "d0dd35f9ac6892a03bb0d38ea32e683993c4308a02de5756bb5a23ecb929f917", + "url": "https://jcenter.bintray.com/io/netty/netty-codec-socks/4.1.48.Final/netty-codec-socks-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-codec:4.1.48.Final", + "dependencies": [ + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-codec/4.1.48.Final/netty-codec-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-codec/4.1.48.Final/netty-codec-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-codec/4.1.48.Final/netty-codec-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-codec/4.1.48.Final/netty-codec-4.1.48.Final.jar" + ], + "sha256": "81b4c316163a591b4f74fd2dc23a3ea45359cb817d0a9c4fc7f37dc9edfdbea8", + "url": "https://jcenter.bintray.com/io/netty/netty-codec/4.1.48.Final/netty-codec-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-common:4.1.48.Final", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-common/4.1.48.Final/netty-common-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-common/4.1.48.Final/netty-common-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-common/4.1.48.Final/netty-common-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-common/4.1.48.Final/netty-common-4.1.48.Final.jar" + ], + "sha256": "e44a2369566fd1fa8a0f30b12e2801de8fb405b9d1fa3894a58b6262065a9916", + "url": "https://jcenter.bintray.com/io/netty/netty-common/4.1.48.Final/netty-common-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-handler-proxy:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-codec-http:4.1.48.Final", + "io.netty:netty-codec-socks:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-handler:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-codec-http:4.1.48.Final", + "io.netty:netty-codec-socks:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-handler-proxy/4.1.48.Final/netty-handler-proxy-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-handler-proxy/4.1.48.Final/netty-handler-proxy-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-handler-proxy/4.1.48.Final/netty-handler-proxy-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-handler-proxy/4.1.48.Final/netty-handler-proxy-4.1.48.Final.jar" + ], + "sha256": "f784f331bdb05834390c132d1534724e5371c1a19c7a62217e5f192963a9a92c", + "url": "https://jcenter.bintray.com/io/netty/netty-handler-proxy/4.1.48.Final/netty-handler-proxy-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-handler:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-codec:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-handler/4.1.48.Final/netty-handler-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-handler/4.1.48.Final/netty-handler-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-handler/4.1.48.Final/netty-handler-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-handler/4.1.48.Final/netty-handler-4.1.48.Final.jar" + ], + "sha256": "757f83c7891ad2ebad209f02d8dbca0121e03f7062c2d4ec9d00eba1a0d403d5", + "url": "https://jcenter.bintray.com/io/netty/netty-handler/4.1.48.Final/netty-handler-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-resolver:4.1.48.Final", + "dependencies": [ + "io.netty:netty-common:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-common:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-resolver/4.1.48.Final/netty-resolver-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-resolver/4.1.48.Final/netty-resolver-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-resolver/4.1.48.Final/netty-resolver-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-resolver/4.1.48.Final/netty-resolver-4.1.48.Final.jar" + ], + "sha256": "fb125914398ebef821def3dbb1642f9f360f39d182f00149ef3db845ebf06ad2", + "url": "https://jcenter.bintray.com/io/netty/netty-resolver/4.1.48.Final/netty-resolver-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-tcnative-boringssl-static:2.0.30.Final", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-tcnative-boringssl-static/2.0.30.Final/netty-tcnative-boringssl-static-2.0.30.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-tcnative-boringssl-static/2.0.30.Final/netty-tcnative-boringssl-static-2.0.30.Final.jar", + "https://maven.google.com/io/netty/netty-tcnative-boringssl-static/2.0.30.Final/netty-tcnative-boringssl-static-2.0.30.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-tcnative-boringssl-static/2.0.30.Final/netty-tcnative-boringssl-static-2.0.30.Final.jar" + ], + "sha256": "61934ca753be47973fe427d1f483a1b2fbcaf56eefc71519bf35fddb036ee111", + "url": "https://jcenter.bintray.com/io/netty/netty-tcnative-boringssl-static/2.0.30.Final/netty-tcnative-boringssl-static-2.0.30.Final.jar" + }, + { + "coord": "io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.48.Final", + "dependencies": [ + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-transport-native-unix-common:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-transport-native-unix-common:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-transport-native-epoll/4.1.48.Final/netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-transport-native-epoll/4.1.48.Final/netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar", + "https://maven.google.com/io/netty/netty-transport-native-epoll/4.1.48.Final/netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar", + "https://repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.48.Final/netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar" + ], + "sha256": "7436ecfb442b299af6ecff7ae6a8d3f00fb56e081d20e82b467dad2e6ee8848f", + "url": "https://jcenter.bintray.com/io/netty/netty-transport-native-epoll/4.1.48.Final/netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar" + }, + { + "coord": "io.netty:netty-transport-native-unix-common:4.1.48.Final", + "dependencies": [ + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-transport:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-transport-native-unix-common/4.1.48.Final/netty-transport-native-unix-common-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-transport-native-unix-common/4.1.48.Final/netty-transport-native-unix-common-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-transport-native-unix-common/4.1.48.Final/netty-transport-native-unix-common-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-transport-native-unix-common/4.1.48.Final/netty-transport-native-unix-common-4.1.48.Final.jar" + ], + "sha256": "c4142429437845d966babba5eddce47203e1f256209e455019d2538ebec58b95", + "url": "https://jcenter.bintray.com/io/netty/netty-transport-native-unix-common/4.1.48.Final/netty-transport-native-unix-common-4.1.48.Final.jar" + }, + { + "coord": "io.netty:netty-transport:4.1.48.Final", + "dependencies": [ + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final", + "io.netty:netty-buffer:4.1.48.Final" + ], + "directDependencies": [ + "io.netty:netty-buffer:4.1.48.Final", + "io.netty:netty-common:4.1.48.Final", + "io.netty:netty-resolver:4.1.48.Final" + ], + "file": "v1/https/jcenter.bintray.com/io/netty/netty-transport/4.1.48.Final/netty-transport-4.1.48.Final.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/netty/netty-transport/4.1.48.Final/netty-transport-4.1.48.Final.jar", + "https://maven.google.com/io/netty/netty-transport/4.1.48.Final/netty-transport-4.1.48.Final.jar", + "https://repo1.maven.org/maven2/io/netty/netty-transport/4.1.48.Final/netty-transport-4.1.48.Final.jar" + ], + "sha256": "6b4ba9e09a8e060bad2540845491b5fa1ca73614d157860e657f4027c91e72fd", + "url": "https://jcenter.bintray.com/io/netty/netty-transport/4.1.48.Final/netty-transport-4.1.48.Final.jar" + }, + { + "coord": "io.opencensus:opencensus-api:0.24.0", + "dependencies": [ + "io.grpc:grpc-context:1.22.1" + ], + "directDependencies": [ + "io.grpc:grpc-context:1.22.1" + ], + "file": "v1/https/jcenter.bintray.com/io/opencensus/opencensus-api/0.24.0/opencensus-api-0.24.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/opencensus/opencensus-api/0.24.0/opencensus-api-0.24.0.jar", + "https://maven.google.com/io/opencensus/opencensus-api/0.24.0/opencensus-api-0.24.0.jar", + "https://repo1.maven.org/maven2/io/opencensus/opencensus-api/0.24.0/opencensus-api-0.24.0.jar" + ], + "sha256": "f561b1cc2673844288e596ddf5bb6596868a8472fd2cb8993953fc5c034b2352", + "url": "https://jcenter.bintray.com/io/opencensus/opencensus-api/0.24.0/opencensus-api-0.24.0.jar" + }, + { + "coord": "io.opencensus:opencensus-contrib-grpc-metrics:0.24.0", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.code.findbugs:jsr305:3.0.2", + "io.opencensus:opencensus-api:0.24.0", + "io.grpc:grpc-context:1.22.1", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.google.guava:guava:29.0-jre", + "io.opencensus:opencensus-api:0.24.0" + ], + "file": "v1/https/jcenter.bintray.com/io/opencensus/opencensus-contrib-grpc-metrics/0.24.0/opencensus-contrib-grpc-metrics-0.24.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/opencensus/opencensus-contrib-grpc-metrics/0.24.0/opencensus-contrib-grpc-metrics-0.24.0.jar", + "https://maven.google.com/io/opencensus/opencensus-contrib-grpc-metrics/0.24.0/opencensus-contrib-grpc-metrics-0.24.0.jar", + "https://repo1.maven.org/maven2/io/opencensus/opencensus-contrib-grpc-metrics/0.24.0/opencensus-contrib-grpc-metrics-0.24.0.jar" + ], + "sha256": "875582e093f11950ad3f4a50b5fee33a008023f7d1e47820a1bef05d23b9ed42", + "url": "https://jcenter.bintray.com/io/opencensus/opencensus-contrib-grpc-metrics/0.24.0/opencensus-contrib-grpc-metrics-0.24.0.jar" + }, + { + "coord": "io.opencensus:opencensus-contrib-http-util:0.24.0", + "dependencies": [ + "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava", + "com.google.j2objc:j2objc-annotations:1.3", + "com.google.code.findbugs:jsr305:3.0.2", + "io.opencensus:opencensus-api:0.24.0", + "io.grpc:grpc-context:1.22.1", + "com.google.errorprone:error_prone_annotations:2.3.4", + "com.google.guava:failureaccess:1.0.1", + "com.google.guava:guava:29.0-jre", + "org.checkerframework:checker-qual:2.11.1" + ], + "directDependencies": [ + "com.google.guava:guava:29.0-jre", + "io.opencensus:opencensus-api:0.24.0" + ], + "file": "v1/https/jcenter.bintray.com/io/opencensus/opencensus-contrib-http-util/0.24.0/opencensus-contrib-http-util-0.24.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/opencensus/opencensus-contrib-http-util/0.24.0/opencensus-contrib-http-util-0.24.0.jar", + "https://maven.google.com/io/opencensus/opencensus-contrib-http-util/0.24.0/opencensus-contrib-http-util-0.24.0.jar", + "https://repo1.maven.org/maven2/io/opencensus/opencensus-contrib-http-util/0.24.0/opencensus-contrib-http-util-0.24.0.jar" + ], + "sha256": "7155273bbb1ed3d477ea33cf19d7bbc0b285ff395f43b29ae576722cf247000f", + "url": "https://jcenter.bintray.com/io/opencensus/opencensus-contrib-http-util/0.24.0/opencensus-contrib-http-util-0.24.0.jar" + }, + { + "coord": "io.perfmark:perfmark-api:0.19.0", + "dependencies": [ + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.errorprone:error_prone_annotations:2.3.4" + ], + "directDependencies": [ + "com.google.code.findbugs:jsr305:3.0.2", + "com.google.errorprone:error_prone_annotations:2.3.4" + ], + "file": "v1/https/jcenter.bintray.com/io/perfmark/perfmark-api/0.19.0/perfmark-api-0.19.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/perfmark/perfmark-api/0.19.0/perfmark-api-0.19.0.jar", + "https://maven.google.com/io/perfmark/perfmark-api/0.19.0/perfmark-api-0.19.0.jar", + "https://repo1.maven.org/maven2/io/perfmark/perfmark-api/0.19.0/perfmark-api-0.19.0.jar" + ], + "sha256": "b734ba2149712409a44eabdb799f64768578fee0defe1418bb108fe32ea43e1a", + "url": "https://jcenter.bintray.com/io/perfmark/perfmark-api/0.19.0/perfmark-api-0.19.0.jar" + }, + { + "coord": "io.prometheus:simpleclient:0.9.0", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar", + "https://maven.google.com/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar", + "https://repo1.maven.org/maven2/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar" + ], + "sha256": "72d6dc49c023a4b3345d8a8a82d947ea24d07b1ad60cf57fee85a6f77b149a19", + "url": "https://jcenter.bintray.com/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar" + }, + { + "coord": "javax.annotation:javax.annotation-api:1.2", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar", + "https://maven.google.com/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar", + "https://repo1.maven.org/maven2/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar" + ], + "sha256": "5909b396ca3a2be10d0eea32c74ef78d816e1b4ead21de1d78de1f890d033e04", + "url": "https://jcenter.bintray.com/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar" + }, + { + "coord": "junit:junit:4.12", + "dependencies": [ + "org.hamcrest:hamcrest-core:1.3" + ], + "directDependencies": [ + "org.hamcrest:hamcrest-core:1.3" + ], + "file": "v1/https/jcenter.bintray.com/junit/junit/4.12/junit-4.12.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/junit/junit/4.12/junit-4.12.jar", + "https://maven.google.com/junit/junit/4.12/junit-4.12.jar", + "https://repo1.maven.org/maven2/junit/junit/4.12/junit-4.12.jar" + ], + "sha256": "59721f0805e223d84b90677887d9ff567dc534d7c502ca903c0c2b17f05c116a", + "url": "https://jcenter.bintray.com/junit/junit/4.12/junit-4.12.jar" + }, + { + "coord": "org.apache.commons:commons-lang3:3.5", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar", + "https://maven.google.com/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar", + "https://repo1.maven.org/maven2/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar" + ], + "sha256": "8ac96fc686512d777fca85e144f196cd7cfe0c0aec23127229497d1a38ff651c", + "url": "https://jcenter.bintray.com/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar" + }, + { + "coord": "org.apache.httpcomponents:httpclient:4.5.10", + "dependencies": [ + "commons-logging:commons-logging:1.2", + "commons-codec:commons-codec:1.11", + "org.apache.httpcomponents:httpcore:4.4.12" + ], + "directDependencies": [ + "commons-codec:commons-codec:1.11", + "commons-logging:commons-logging:1.2", + "org.apache.httpcomponents:httpcore:4.4.12" + ], + "file": "v1/https/jcenter.bintray.com/org/apache/httpcomponents/httpclient/4.5.10/httpclient-4.5.10.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/apache/httpcomponents/httpclient/4.5.10/httpclient-4.5.10.jar", + "https://maven.google.com/org/apache/httpcomponents/httpclient/4.5.10/httpclient-4.5.10.jar", + "https://repo1.maven.org/maven2/org/apache/httpcomponents/httpclient/4.5.10/httpclient-4.5.10.jar" + ], + "sha256": "38b9f16f504928e4db736a433b9cd10968d9ec8d6f5d0e61a64889a689172134", + "url": "https://jcenter.bintray.com/org/apache/httpcomponents/httpclient/4.5.10/httpclient-4.5.10.jar" + }, + { + "coord": "org.apache.httpcomponents:httpcore:4.4.12", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/apache/httpcomponents/httpcore/4.4.12/httpcore-4.4.12.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/apache/httpcomponents/httpcore/4.4.12/httpcore-4.4.12.jar", + "https://maven.google.com/org/apache/httpcomponents/httpcore/4.4.12/httpcore-4.4.12.jar", + "https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcore/4.4.12/httpcore-4.4.12.jar" + ], + "sha256": "ab765334beabf0ea024484a5e90a7c40e8160b145f22d199e11e27f68d57da08", + "url": "https://jcenter.bintray.com/org/apache/httpcomponents/httpcore/4.4.12/httpcore-4.4.12.jar" + }, + { + "coord": "org.checkerframework:checker-compat-qual:2.5.5", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar", + "https://maven.google.com/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar", + "https://repo1.maven.org/maven2/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar" + ], + "sha256": "11d134b245e9cacc474514d2d66b5b8618f8039a1465cdc55bbc0b34e0008b7a", + "url": "https://jcenter.bintray.com/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar" + }, + { + "coord": "org.checkerframework:checker-qual:2.11.1", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar", + "https://maven.google.com/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar", + "https://repo1.maven.org/maven2/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar" + ], + "sha256": "015224a4b1dc6de6da053273d4da7d39cfea20e63038169fc45ac0d1dc9c5938", + "url": "https://jcenter.bintray.com/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar" + }, + { + "coord": "org.codehaus.mojo:animal-sniffer-annotations:1.18", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar", + "https://maven.google.com/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar", + "https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar" + ], + "sha256": "47f05852b48ee9baefef80fa3d8cea60efa4753c0013121dd7fe5eef2e5c729d", + "url": "https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.18/animal-sniffer-annotations-1.18.jar" + }, + { + "coord": "org.hamcrest:hamcrest-core:1.3", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar", + "https://maven.google.com/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar", + "https://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar" + ], + "sha256": "66fdef91e9739348df7a096aa384a5685f4e875584cce89386a7a47251c4d8e9", + "url": "https://jcenter.bintray.com/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar" + }, + { + "coord": "org.mockito:mockito-all:1.10.19", + "dependencies": [], + "directDependencies": [], + "file": "v1/https/jcenter.bintray.com/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar", + "mirror_urls": [ + "https://jcenter.bintray.com/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar", + "https://maven.google.com/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar", + "https://repo1.maven.org/maven2/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar" + ], + "sha256": "d1a7a7ef14b3db5c0fc3e0a63a81b374b510afe85add9f7984b97911f4c70605", + "url": "https://jcenter.bintray.com/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar" + } + ], + "version": "0.1.0" + } +} diff --git a/repositories.bzl b/repositories.bzl new file mode 100644 index 0000000..84b07fe --- /dev/null +++ b/repositories.bzl @@ -0,0 +1,9 @@ +MAVEN_ARTIFACTS = [ + "com.google.guava:guava:29.0-jre", + "junit:junit:4.10", + "com.google.protobuf:protobuf-java:3.12.1", + "com.google.protobuf:protobuf-java-util:3.12.1", + "org.mockito:mockito-all:1.10.19", + "io.prometheus:simpleclient:0.9.0", + "com.google.truth:truth:1.0.1", +] diff --git a/src/main/java/me/dinowernli/grpc/prometheus/BUILD b/src/main/java/me/dinowernli/grpc/prometheus/BUILD index 0a202cc..f768065 100644 --- a/src/main/java/me/dinowernli/grpc/prometheus/BUILD +++ b/src/main/java/me/dinowernli/grpc/prometheus/BUILD @@ -1,3 +1,5 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( diff --git a/src/main/java/me/dinowernli/grpc/prometheus/testing/BUILD b/src/main/java/me/dinowernli/grpc/prometheus/testing/BUILD index 6c91d74..f392be4 100644 --- a/src/main/java/me/dinowernli/grpc/prometheus/testing/BUILD +++ b/src/main/java/me/dinowernli/grpc/prometheus/testing/BUILD @@ -1,3 +1,5 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( @@ -5,6 +7,7 @@ java_library( testonly = 1, srcs = glob(["*.java"]), deps = [ + "//src/main/proto:hello_java_proto", "//src/main/proto:hello_proto_grpc", "//third_party/grpc", "//third_party/prometheus", diff --git a/src/main/proto/BUILD b/src/main/proto/BUILD index 342148a..c28198c 100644 --- a/src/main/proto/BUILD +++ b/src/main/proto/BUILD @@ -1,10 +1,21 @@ -load("@org_pubref_rules_protobuf//java:rules.bzl", "java_proto_library") +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@io_grpc_grpc_java//:java_grpc_library.bzl", "java_grpc_library") +load("@rules_java//java:defs.bzl", "java_proto_library") package(default_visibility = ["//visibility:public"]) +proto_library( + name = "hello_proto", + srcs = ["hello.proto"], +) + java_proto_library( - name = "hello_proto_grpc", - protos = ["hello.proto"], - with_grpc = True, + name = "hello_java_proto", + deps = [":hello_proto"], ) +java_grpc_library( + name = "hello_proto_grpc", + srcs = [":hello_proto"], + deps = [":hello_java_proto"], +) diff --git a/src/test/java/me/dinowernli/grpc/prometheus/integration/BUILD b/src/test/java/me/dinowernli/grpc/prometheus/integration/BUILD index dc82b4f..a46ce8e 100644 --- a/src/test/java/me/dinowernli/grpc/prometheus/integration/BUILD +++ b/src/test/java/me/dinowernli/grpc/prometheus/integration/BUILD @@ -1,15 +1,36 @@ +load("@rules_java//java:defs.bzl", "java_test") + java_test( - name = "tests", + name = "server_test", size = "small", - srcs = glob(["*.java"]), + srcs = ["MonitoringServerInterceptorIntegrationTest.java"], + test_class = "me.dinowernli.grpc.prometheus.integration.MonitoringServerInterceptorIntegrationTest", deps = [ "//src/main/java/me/dinowernli/grpc/prometheus", "//src/main/java/me/dinowernli/grpc/prometheus/testing", + "//src/main/proto:hello_java_proto", + "//src/main/proto:hello_proto_grpc", + "//third_party/grpc", + "//third_party/grpc:grpc_testing", + "//third_party/guava", + "//third_party/prometheus", + "//third_party/testing", + ], +) + +java_test( + name = "client_test", + size = "small", + srcs = ["MonitoringClientInterceptorIntegrationTest.java"], + test_class = "me.dinowernli.grpc.prometheus.integration.MonitoringClientInterceptorIntegrationTest", + deps = [ + "//src/main/java/me/dinowernli/grpc/prometheus", + "//src/main/java/me/dinowernli/grpc/prometheus/testing", + "//src/main/proto:hello_java_proto", "//src/main/proto:hello_proto_grpc", "//third_party/grpc", "//third_party/grpc:grpc_testing", "//third_party/guava", - "//third_party/netty", "//third_party/prometheus", "//third_party/testing", ], diff --git a/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringClientInterceptorIntegrationTest.java b/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringClientInterceptorIntegrationTest.java index bf9cdaa..f52c549 100644 --- a/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringClientInterceptorIntegrationTest.java +++ b/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringClientInterceptorIntegrationTest.java @@ -1,15 +1,12 @@ package me.dinowernli.grpc.prometheus.integration; -import java.io.IOException; - import com.github.dinowernli.proto.grpc.prometheus.HelloProto; import com.github.dinowernli.proto.grpc.prometheus.HelloProto.HelloResponse; import com.github.dinowernli.proto.grpc.prometheus.HelloServiceGrpc; import com.github.dinowernli.proto.grpc.prometheus.HelloServiceGrpc.HelloServiceStub; import io.grpc.Server; -import io.grpc.ServerBuilder; -import io.grpc.benchmarks.Utils; -import io.grpc.netty.NettyChannelBuilder; +import io.grpc.inprocess.InProcessChannelBuilder; +import io.grpc.inprocess.InProcessServerBuilder; import io.grpc.stub.StreamObserver; import io.grpc.testing.StreamRecorder; import io.prometheus.client.Collector; @@ -22,10 +19,13 @@ import org.junit.Before; import org.junit.Test; +import java.io.IOException; + import static com.google.common.truth.Truth.assertThat; /** Integration tests for the client-side monitoring pipeline. */ public class MonitoringClientInterceptorIntegrationTest { + private static final String grpcServerName = "grpc-server"; private static final Configuration CHEAP_METRICS = Configuration.cheapMetricsOnly(); private static final Configuration ALL_METRICS = Configuration.allMetrics(); @@ -34,7 +34,6 @@ public class MonitoringClientInterceptorIntegrationTest { .setRecipient(RECIPIENT) .build(); - private int grpcPort; private Server grpcServer; private CollectorRegistry collectorRegistry; private StreamRecorder responseRecorder; @@ -174,16 +173,15 @@ public void overridesHistogramBuckets() throws Throwable { private HelloServiceStub createClientStub(Configuration configuration) { - return HelloServiceGrpc.newStub(NettyChannelBuilder.forAddress("localhost", grpcPort) - .usePlaintext(true) + return HelloServiceGrpc.newStub(InProcessChannelBuilder.forName(grpcServerName) + .usePlaintext() .intercept(MonitoringClientInterceptor.create( configuration.withCollectorRegistry(collectorRegistry))) .build()); } private void startServer() { - grpcPort = Utils.pickUnusedPort(); - grpcServer = ServerBuilder.forPort(grpcPort) + grpcServer = InProcessServerBuilder.forName(grpcServerName) .addService(new HelloServiceImpl().bindService()) .build(); try { diff --git a/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringServerInterceptorIntegrationTest.java b/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringServerInterceptorIntegrationTest.java index 3c63f2e..7257fae 100644 --- a/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringServerInterceptorIntegrationTest.java +++ b/src/test/java/me/dinowernli/grpc/prometheus/integration/MonitoringServerInterceptorIntegrationTest.java @@ -2,8 +2,6 @@ package me.dinowernli.grpc.prometheus.integration; -import java.io.IOException; - import com.github.dinowernli.proto.grpc.prometheus.HelloProto.HelloRequest; import com.github.dinowernli.proto.grpc.prometheus.HelloProto.HelloResponse; import com.github.dinowernli.proto.grpc.prometheus.HelloServiceGrpc; @@ -12,11 +10,9 @@ import com.google.common.collect.ImmutableList; import io.grpc.Channel; import io.grpc.Server; -import io.grpc.ServerBuilder; import io.grpc.ServerInterceptors; -import io.grpc.benchmarks.Utils; -import io.grpc.netty.NegotiationType; -import io.grpc.netty.NettyChannelBuilder; +import io.grpc.inprocess.InProcessChannelBuilder; +import io.grpc.inprocess.InProcessServerBuilder; import io.grpc.stub.StreamObserver; import io.grpc.testing.StreamRecorder; import io.prometheus.client.Collector.MetricFamilySamples; @@ -29,6 +25,8 @@ import org.junit.Before; import org.junit.Test; +import java.io.IOException; + import static com.google.common.truth.Truth.assertThat; /** @@ -36,6 +34,7 @@ * {@link MonitoringServerInterceptor}, then all Prometheus metrics get recorded correctly. */ public class MonitoringServerInterceptorIntegrationTest { + private static final String grpcServerName = "grpc-server"; private static final String RECIPIENT = "Dave"; private static final HelloRequest REQUEST = HelloRequest.newBuilder() .setRecipient(RECIPIENT) @@ -46,7 +45,6 @@ public class MonitoringServerInterceptorIntegrationTest { private CollectorRegistry collectorRegistry; private Server grpcServer; - private int grpcPort; @Before public void setUp() { @@ -207,8 +205,7 @@ public void recordsMultipleCalls() throws Throwable { private void startGrpcServer(Configuration monitoringConfig) { MonitoringServerInterceptor interceptor = MonitoringServerInterceptor.create( monitoringConfig.withCollectorRegistry(collectorRegistry)); - grpcPort = Utils.pickUnusedPort(); - grpcServer = ServerBuilder.forPort(grpcPort) + grpcServer = InProcessServerBuilder.forName(grpcServerName) .addService(ServerInterceptors.intercept(new HelloServiceImpl().bindService(), interceptor)) .build(); try { @@ -235,8 +232,8 @@ private HelloServiceStub createGrpcStub() { } private Channel createGrpcChannel() { - return NettyChannelBuilder.forAddress("localhost", grpcPort) - .negotiationType(NegotiationType.PLAINTEXT) + return InProcessChannelBuilder.forName(grpcServerName) + .usePlaintext() .build(); } } diff --git a/third_party/grpc/BUILD b/third_party/grpc/BUILD index b2e5d6f..a267e92 100644 --- a/third_party/grpc/BUILD +++ b/third_party/grpc/BUILD @@ -1,18 +1,15 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( name = "grpc", licenses = ["permissive"], exports = [ - "@com_google_instrumentation_instrumentation_api//jar", - "@io_grpc_grpc_benchmarks//jar", - "@io_grpc_grpc_context//jar", - "@io_grpc_grpc_core//jar", - "@io_grpc_grpc_netty//jar", - "@io_grpc_grpc_protobuf//jar", - "@io_grpc_grpc_protobuf_lite//jar", - "@io_grpc_grpc_stub//jar", - "@io_grpc_grpc_okhttp//jar", + "@io_grpc_grpc_java//api", + "@io_grpc_grpc_java//core", + "@io_grpc_grpc_java//netty", + "@io_grpc_grpc_java//stub", ], ) @@ -21,6 +18,6 @@ java_library( testonly = 1, licenses = ["permissive"], exports = [ - "@grpc_testing_artifact//jar", + "@io_grpc_grpc_java//testing", ], ) diff --git a/third_party/guava/BUILD b/third_party/guava/BUILD index 8daa8fd..741961d 100644 --- a/third_party/guava/BUILD +++ b/third_party/guava/BUILD @@ -1,9 +1,11 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( - name = "guava", - exports = [ - "@guava_artifact//jar", - ], - licenses = ["permissive"], + name = "guava", + licenses = ["permissive"], + exports = [ + "@maven//:com_google_guava_guava", + ], ) diff --git a/third_party/netty/BUILD b/third_party/netty/BUILD deleted file mode 100644 index 30b418e..0000000 --- a/third_party/netty/BUILD +++ /dev/null @@ -1,9 +0,0 @@ -package(default_visibility = ["//visibility:public"]) - -java_library( - name = "netty", - exports = [ - "@netty_artifact//jar", - ], - licenses = ["permissive"], -) diff --git a/third_party/netty/netty.LICENSE b/third_party/netty/netty.LICENSE deleted file mode 100644 index d645695..0000000 --- a/third_party/netty/netty.LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/third_party/prometheus/BUILD b/third_party/prometheus/BUILD index f824c40..4c2d506 100644 --- a/third_party/prometheus/BUILD +++ b/third_party/prometheus/BUILD @@ -1,9 +1,11 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( - name = "prometheus", - exports = [ - "@prometheus_client_artifact//jar", - ], - licenses = ["permissive"], + name = "prometheus", + licenses = ["permissive"], + exports = [ + "@maven//:io_prometheus_simpleclient", + ], ) diff --git a/third_party/testing/BUILD b/third_party/testing/BUILD index 53a1b7d..efa6252 100644 --- a/third_party/testing/BUILD +++ b/third_party/testing/BUILD @@ -1,11 +1,14 @@ +load("@rules_java//java:defs.bzl", "java_library") + package(default_visibility = ["//visibility:public"]) java_library( - name = "testing", - exports = [ - "@junit_artifact//jar", - "@mockito_artifact//jar", - "@truth_artifact//jar", - ], - licenses = ["permissive"], + name = "testing", + licenses = ["permissive"], + exports = [ + "@io_grpc_grpc_java//core:inprocess", + "@maven//:com_google_truth_truth", + "@maven//:junit_junit", + "@maven//:org_mockito_mockito_all", + ], )