From 63c2ed305857bb1cad8e4ff0685d0702f63a9034 Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Fri, 15 Oct 2021 23:10:52 -0400 Subject: [PATCH 1/4] deps: declaring the latest auth library version --- dependencies.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.properties b/dependencies.properties index 5ccf3ff47..d649e211e 100644 --- a/dependencies.properties +++ b/dependencies.properties @@ -34,8 +34,8 @@ version.io_grpc=1.41.0 # 2) Replace all characters which are neither alphabetic nor digits with the underscore ('_') character maven.com_google_api_grpc_proto_google_common_protos=com.google.api.grpc:proto-google-common-protos:2.4.1 maven.com_google_api_grpc_grpc_google_common_protos=com.google.api.grpc:grpc-google-common-protos:2.4.1 -maven.com_google_auth_google_auth_library_oauth2_http=com.google.auth:google-auth-library-oauth2-http:0.27.0 -maven.com_google_auth_google_auth_library_credentials=com.google.auth:google-auth-library-credentials:1.0.0 +maven.com_google_auth_google_auth_library_oauth2_http=com.google.auth:google-auth-library-oauth2-http:1.2.1 +maven.com_google_auth_google_auth_library_credentials=com.google.auth:google-auth-library-credentials:1.2.1 maven.io_opencensus_opencensus_api=io.opencensus:opencensus-api:0.28.0 maven.io_opencensus_opencensus_contrib_grpc_metrics=io.opencensus:opencensus-contrib-grpc-metrics:0.28.0 maven.io_opencensus_opencensus_contrib_http_util=io.opencensus:opencensus-contrib-http-util:0.28.0 From b3c3595cdf2c4706ff6249e8c38f67c5b383b224 Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Fri, 15 Oct 2021 23:24:25 -0400 Subject: [PATCH 2/4] fix: declare API surface as api configuration Fix #1534 --- gax-grpc/build.gradle | 11 ++++++++--- gax-httpjson/build.gradle | 11 ++++++++--- gax/build.gradle | 6 ++++++ 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/gax-grpc/build.gradle b/gax-grpc/build.gradle index 7dead6cb9..0763991b5 100644 --- a/gax-grpc/build.gradle +++ b/gax-grpc/build.gradle @@ -1,18 +1,23 @@ +plugins { + id 'java-library' +} + archivesBaseName = "gax-grpc" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync) project.version = "2.6.1-SNAPSHOT" // {x-version-update:gax-grpc:current} dependencies { - implementation( project(':gax'), - libraries['maven.io_grpc_grpc_stub'], + api (project(':gax'), + libraries['maven.com_google_auth_google_auth_library_credentials']) + + implementation(libraries['maven.io_grpc_grpc_stub'], libraries['maven.io_grpc_grpc_auth'], libraries['maven.io_grpc_grpc_protobuf'], libraries['maven.com_google_guava_guava'], libraries['maven.com_google_code_findbugs_jsr305'], libraries['maven.org_threeten_threetenbp'], libraries['maven.com_google_auth_google_auth_library_oauth2_http'], - libraries['maven.com_google_auth_google_auth_library_credentials'], libraries['maven.com_google_api_grpc_proto_google_common_protos'], libraries['maven.com_google_api_api_common'], libraries['maven.io_grpc_grpc_netty_shaded'], diff --git a/gax-httpjson/build.gradle b/gax-httpjson/build.gradle index c6996af07..0650b282d 100644 --- a/gax-httpjson/build.gradle +++ b/gax-httpjson/build.gradle @@ -1,11 +1,17 @@ +plugins { + id 'java-library' +} + archivesBaseName = "gax-httpjson" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync) project.version = "0.91.1-SNAPSHOT" // {x-version-update:gax-httpjson:current} dependencies { - implementation( project(':gax'), - libraries['maven.com_google_protobuf'], + api ( project(':gax'), + libraries['maven.com_google_auth_google_auth_library_credentials']) + + implementation( libraries['maven.com_google_protobuf'], libraries['maven.com_google_protobuf_java_util'], libraries['maven.com_google_code_gson_gson'], libraries['maven.com_google_guava_guava'], @@ -14,7 +20,6 @@ dependencies { libraries['maven.com_google_http_client_google_http_client'], libraries['maven.com_google_http_client_google_http_client_gson'], libraries['maven.com_google_auth_google_auth_library_oauth2_http'], - libraries['maven.com_google_auth_google_auth_library_credentials'], libraries['maven.com_google_api_grpc_proto_google_common_protos'], libraries['maven.com_google_api_api_common']) diff --git a/gax/build.gradle b/gax/build.gradle index 999b55442..8b7c88718 100644 --- a/gax/build.gradle +++ b/gax/build.gradle @@ -1,9 +1,15 @@ +plugins { + id 'java-library' +} + archivesBaseName = "gax" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync) project.version = "2.6.1-SNAPSHOT" // {x-version-update:gax:current} dependencies { + api libraries['maven.com_google_auth_google_auth_library_credentials'] + implementation (libraries['maven.com_google_guava_guava'], libraries['maven.com_google_code_findbugs_jsr305'], libraries['maven.org_threeten_threetenbp'], From 65027e32389253f9ca21bbbabe899e6afedaa206 Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Sun, 17 Oct 2021 23:54:31 -0400 Subject: [PATCH 3/4] fix: declare API surface's dependencies as 'api' Adding more artifacts to be declared as 'api' because they appear in public API surface. See the comment of the following issue for the analysis: https://github.com/googleapis/gax-java/issues/1534 --- build.gradle | 1 + gax-grpc/build.gradle | 23 ++++++++++++----------- gax-httpjson/build.gradle | 22 +++++++++++----------- gax/build.gradle | 14 +++++++------- 4 files changed, 31 insertions(+), 29 deletions(-) diff --git a/build.gradle b/build.gradle index a39eadc89..6ab468172 100644 --- a/build.gradle +++ b/build.gradle @@ -109,6 +109,7 @@ subprojects { 'maven.io_grpc_grpc_core': "io.grpc:grpc-core:${libraries['version.io_grpc']}", 'maven.io_grpc_grpc_context': "io.grpc:grpc-context:${libraries['version.io_grpc']}", 'maven.io_grpc_grpc_stub': "io.grpc:grpc-stub:${libraries['version.io_grpc']}", + 'maven.io_grpc_grpc_api': "io.grpc:grpc-api:${libraries['version.io_grpc']}", 'maven.io_grpc_grpc_auth': "io.grpc:grpc-auth:${libraries['version.io_grpc']}", 'maven.io_grpc_grpc_protobuf': "io.grpc:grpc-protobuf:${libraries['version.io_grpc']}", 'maven.io_grpc_grpc_netty_shaded': "io.grpc:grpc-netty-shaded:${libraries['version.io_grpc']}", diff --git a/gax-grpc/build.gradle b/gax-grpc/build.gradle index 0763991b5..e18503feb 100644 --- a/gax-grpc/build.gradle +++ b/gax-grpc/build.gradle @@ -8,20 +8,21 @@ archivesBaseName = "gax-grpc" project.version = "2.6.1-SNAPSHOT" // {x-version-update:gax-grpc:current} dependencies { - api (project(':gax'), - libraries['maven.com_google_auth_google_auth_library_credentials']) - - implementation(libraries['maven.io_grpc_grpc_stub'], - libraries['maven.io_grpc_grpc_auth'], - libraries['maven.io_grpc_grpc_protobuf'], + api(project(':gax'), + libraries['maven.com_google_api_api_common'], + libraries['maven.com_google_api_grpc_proto_google_common_protos'], + libraries['maven.com_google_auth_google_auth_library_credentials'], libraries['maven.com_google_guava_guava'], + libraries['maven.io_grpc_grpc_api'], + libraries['maven.org_threeten_threetenbp']) + + implementation(libraries['maven.com_google_auth_google_auth_library_oauth2_http'], libraries['maven.com_google_code_findbugs_jsr305'], - libraries['maven.org_threeten_threetenbp'], - libraries['maven.com_google_auth_google_auth_library_oauth2_http'], - libraries['maven.com_google_api_grpc_proto_google_common_protos'], - libraries['maven.com_google_api_api_common'], + libraries['maven.io_grpc_grpc_alts'], + libraries['maven.io_grpc_grpc_auth'], libraries['maven.io_grpc_grpc_netty_shaded'], - libraries['maven.io_grpc_grpc_alts']) + libraries['maven.io_grpc_grpc_protobuf'], + libraries['maven.io_grpc_grpc_stub']) compileOnly libraries['maven.com_google_auto_value_auto_value'] diff --git a/gax-httpjson/build.gradle b/gax-httpjson/build.gradle index 0650b282d..cf4c46966 100644 --- a/gax-httpjson/build.gradle +++ b/gax-httpjson/build.gradle @@ -8,24 +8,24 @@ archivesBaseName = "gax-httpjson" project.version = "0.91.1-SNAPSHOT" // {x-version-update:gax-httpjson:current} dependencies { - api ( project(':gax'), - libraries['maven.com_google_auth_google_auth_library_credentials']) - - implementation( libraries['maven.com_google_protobuf'], - libraries['maven.com_google_protobuf_java_util'], + api(project(':gax'), + libraries['maven.com_google_api_api_common'], + libraries['maven.com_google_api_grpc_proto_google_common_protos'], + libraries['maven.com_google_auth_google_auth_library_credentials'], libraries['maven.com_google_code_gson_gson'], libraries['maven.com_google_guava_guava'], - libraries['maven.com_google_code_findbugs_jsr305'], - libraries['maven.org_threeten_threetenbp'], libraries['maven.com_google_http_client_google_http_client'], + libraries['maven.com_google_protobuf'], + libraries['maven.org_threeten_threetenbp']) + + implementation(libraries['maven.com_google_auth_google_auth_library_oauth2_http'], + libraries['maven.com_google_code_findbugs_jsr305'], libraries['maven.com_google_http_client_google_http_client_gson'], - libraries['maven.com_google_auth_google_auth_library_oauth2_http'], - libraries['maven.com_google_api_grpc_proto_google_common_protos'], - libraries['maven.com_google_api_api_common']) + libraries['maven.com_google_protobuf_java_util']) compileOnly libraries['maven.com_google_auto_value_auto_value'] - testImplementation( project(':gax').sourceSets.test.output, + testImplementation(project(':gax').sourceSets.test.output, libraries['maven.junit_junit'], libraries['maven.org_mockito_mockito_core'], libraries['maven.com_google_truth_truth']) diff --git a/gax/build.gradle b/gax/build.gradle index 8b7c88718..547cda080 100644 --- a/gax/build.gradle +++ b/gax/build.gradle @@ -8,21 +8,21 @@ archivesBaseName = "gax" project.version = "2.6.1-SNAPSHOT" // {x-version-update:gax:current} dependencies { - api libraries['maven.com_google_auth_google_auth_library_credentials'] + api(libraries['maven.com_google_api_api_common'], + libraries['maven.com_google_auth_google_auth_library_credentials'], + libraries['maven.org_threeten_threetenbp']) - implementation (libraries['maven.com_google_guava_guava'], + implementation(libraries['maven.com_google_auth_google_auth_library_oauth2_http'], libraries['maven.com_google_code_findbugs_jsr305'], - libraries['maven.org_threeten_threetenbp'], - libraries['maven.com_google_auth_google_auth_library_oauth2_http'], - libraries['maven.com_google_api_api_common'], + libraries['maven.com_google_guava_guava'], libraries['maven.io_opencensus_opencensus_api']) compileOnly libraries['maven.com_google_auto_value_auto_value'] - testImplementation( libraries['maven.junit_junit'], + testImplementation(libraries['maven.junit_junit'], libraries['maven.org_mockito_mockito_core'], libraries['maven.com_google_truth_truth'], - libraries['maven.com_google_auto_value_auto_value'] ) + libraries['maven.com_google_auto_value_auto_value']) annotationProcessor libraries['maven.com_google_auto_value_auto_value'] testAnnotationProcessor libraries['maven.com_google_auto_value_auto_value'] From 397a4fd6d42ccd4a57a7b14bfc7f79af697354b5 Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Mon, 18 Oct 2021 09:45:03 -0400 Subject: [PATCH 4/4] refactor: move java-library declaration to top-level build.gradle --- build.gradle | 2 +- gax-grpc/build.gradle | 4 ---- gax-httpjson/build.gradle | 4 ---- gax/build.gradle | 4 ---- 4 files changed, 1 insertion(+), 13 deletions(-) diff --git a/build.gradle b/build.gradle index 6ab468172..73ba670af 100644 --- a/build.gradle +++ b/build.gradle @@ -37,7 +37,7 @@ if (project.hasProperty('ossrhUsername') && project.hasProperty('ossrhPassword') } subprojects { - apply plugin: 'java' + apply plugin: 'java-library' apply plugin: 'eclipse' apply plugin: 'idea' apply plugin: 'jacoco' diff --git a/gax-grpc/build.gradle b/gax-grpc/build.gradle index e18503feb..d73e6568a 100644 --- a/gax-grpc/build.gradle +++ b/gax-grpc/build.gradle @@ -1,7 +1,3 @@ -plugins { - id 'java-library' -} - archivesBaseName = "gax-grpc" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync) diff --git a/gax-httpjson/build.gradle b/gax-httpjson/build.gradle index cf4c46966..77553d3cf 100644 --- a/gax-httpjson/build.gradle +++ b/gax-httpjson/build.gradle @@ -1,7 +1,3 @@ -plugins { - id 'java-library' -} - archivesBaseName = "gax-httpjson" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync) diff --git a/gax/build.gradle b/gax/build.gradle index 547cda080..2c0b779ca 100644 --- a/gax/build.gradle +++ b/gax/build.gradle @@ -1,7 +1,3 @@ -plugins { - id 'java-library' -} - archivesBaseName = "gax" // TODO: Populate this from dependencies.properties version property (for proper Gradle-Bazel sync)