aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsanjaypujare <sanjaypujare@users.noreply.github.com>2023-06-28 18:28:30 -0700
committerGitHub <noreply@github.com>2023-06-28 18:28:30 -0700
commit4d2c3aac0ef7d35ac363ef328f1005366758cf94 (patch)
tree74e469f0bca5cd9e4249f0779ae1cae8a5e503f9
parentd654707838201191001586ab873897a901dcf1d5 (diff)
downloadgrpc-grpc-java-4d2c3aac0ef7d35ac363ef328f1005366758cf94.tar.gz
context, all: move Context classes to grpc-api (#10313)
* context, all: move Context classes to grpc-api clean up grpc-context since it has no source code: only add dep on grpc-api add exclusion for all transitive deps of grpc-api - only guava exclude grpc-context as a dependency from grpc-alts because all context code is in grpc-api now api: 1.7 as target Java version for Context source-set of grpc-api * core, census: fix the issues with android project pulling in old grpc-context version * api,context: make changes to bazel build files to account for context code moving from context to api
-rw-r--r--api/BUILD.bazel2
-rw-r--r--api/build.gradle27
-rw-r--r--api/src/context/java/io/grpc/Context.java (renamed from context/src/main/java/io/grpc/Context.java)0
-rw-r--r--api/src/context/java/io/grpc/Deadline.java (renamed from context/src/main/java/io/grpc/Deadline.java)0
-rw-r--r--api/src/context/java/io/grpc/PersistentHashArrayMappedTrie.java (renamed from context/src/main/java/io/grpc/PersistentHashArrayMappedTrie.java)0
-rw-r--r--api/src/context/java/io/grpc/ThreadLocalContextStorage.java (renamed from context/src/main/java/io/grpc/ThreadLocalContextStorage.java)0
-rw-r--r--api/src/jmh/java/io/grpc/AttachDetachBenchmark.java (renamed from context/src/jmh/java/io/grpc/AttachDetachBenchmark.java)0
-rw-r--r--api/src/jmh/java/io/grpc/ReadBenchmark.java (renamed from context/src/jmh/java/io/grpc/ReadBenchmark.java)0
-rw-r--r--api/src/jmh/java/io/grpc/WriteBenchmark.java (renamed from context/src/jmh/java/io/grpc/WriteBenchmark.java)0
-rw-r--r--api/src/test/java/io/grpc/ContextTest.java (renamed from context/src/test/java/io/grpc/ContextTest.java)0
-rw-r--r--api/src/test/java/io/grpc/DeadlineTest.java (renamed from context/src/test/java/io/grpc/DeadlineTest.java)0
-rw-r--r--api/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java (renamed from context/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java)0
-rw-r--r--api/src/test/java/io/grpc/ThreadLocalContextStorageTest.java (renamed from context/src/test/java/io/grpc/ThreadLocalContextStorageTest.java)0
-rw-r--r--api/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java (renamed from context/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java)0
-rw-r--r--api/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java (renamed from context/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java)0
-rw-r--r--census/build.gradle3
-rw-r--r--context/BUILD.bazel3
-rw-r--r--context/build.gradle29
-rw-r--r--core/build.gradle5
-rw-r--r--gcp-observability/build.gradle2
-rw-r--r--interop-testing/build.gradle3
-rw-r--r--istio-interop-testing/build.gradle3
-rw-r--r--testing/build.gradle2
23 files changed, 40 insertions, 39 deletions
diff --git a/api/BUILD.bazel b/api/BUILD.bazel
index 4b74e6a83..b513bc120 100644
--- a/api/BUILD.bazel
+++ b/api/BUILD.bazel
@@ -2,6 +2,7 @@ java_library(
name = "api",
srcs = glob([
"src/main/java/**/*.java",
+ "src/context/java/**/*.java",
]),
javacopts = ["-Xep:DoNotCall:OFF"], # Remove once requiring Bazel 3.4.0+; allows non-final
visibility = ["//visibility:public"],
@@ -13,4 +14,5 @@ java_library(
"@com_google_guava_guava//jar",
"@com_google_j2objc_j2objc_annotations//jar",
],
+ exports = ["//context"],
)
diff --git a/api/build.gradle b/api/build.gradle
index 3d19e3949..6906a2ae0 100644
--- a/api/build.gradle
+++ b/api/build.gradle
@@ -9,17 +9,31 @@ plugins {
description = 'gRPC: API'
+sourceSets {
+ context
+ main {
+ output.classesDirs.from(sourceSets.context.output.classesDirs)
+ }
+}
+
+compileContextJava {
+ sourceCompatibility = 1.7
+ targetCompatibility = 1.7
+}
+
+
dependencies {
- api project(':grpc-context'),
- libraries.jsr305,
+ compileOnly sourceSets.context.output
+ api libraries.jsr305,
libraries.errorprone.annotations
implementation libraries.guava
+ testFixturesApi libraries.truth
+ testFixturesImplementation libraries.jsr305
testFixturesImplementation libraries.guava,
libraries.junit,
libraries.mockito.core
- testImplementation testFixtures(project(':grpc-context')),
- project(':grpc-testing'),
+ testImplementation project(':grpc-testing'),
project(':grpc-grpclb')
testImplementation libraries.guava.testlib
jmh project(':grpc-core')
@@ -29,9 +43,14 @@ dependencies {
}
tasks.named("javadoc").configure {
+ source sourceSets.context.allSource
// We want io.grpc.Internal, but not io.grpc.Internal*
exclude 'io/grpc/Internal?*.java'
}
+tasks.named("sourcesJar").configure {
+ from sourceSets.context.allSource
+}
+
components.java.withVariantsFromConfiguration(configurations.testFixturesApiElements) { skip() }
components.java.withVariantsFromConfiguration(configurations.testFixturesRuntimeElements) { skip() }
diff --git a/context/src/main/java/io/grpc/Context.java b/api/src/context/java/io/grpc/Context.java
index f63f02121..f63f02121 100644
--- a/context/src/main/java/io/grpc/Context.java
+++ b/api/src/context/java/io/grpc/Context.java
diff --git a/context/src/main/java/io/grpc/Deadline.java b/api/src/context/java/io/grpc/Deadline.java
index 62b803267..62b803267 100644
--- a/context/src/main/java/io/grpc/Deadline.java
+++ b/api/src/context/java/io/grpc/Deadline.java
diff --git a/context/src/main/java/io/grpc/PersistentHashArrayMappedTrie.java b/api/src/context/java/io/grpc/PersistentHashArrayMappedTrie.java
index 66ee86972..66ee86972 100644
--- a/context/src/main/java/io/grpc/PersistentHashArrayMappedTrie.java
+++ b/api/src/context/java/io/grpc/PersistentHashArrayMappedTrie.java
diff --git a/context/src/main/java/io/grpc/ThreadLocalContextStorage.java b/api/src/context/java/io/grpc/ThreadLocalContextStorage.java
index 63f560462..63f560462 100644
--- a/context/src/main/java/io/grpc/ThreadLocalContextStorage.java
+++ b/api/src/context/java/io/grpc/ThreadLocalContextStorage.java
diff --git a/context/src/jmh/java/io/grpc/AttachDetachBenchmark.java b/api/src/jmh/java/io/grpc/AttachDetachBenchmark.java
index 10e845e79..10e845e79 100644
--- a/context/src/jmh/java/io/grpc/AttachDetachBenchmark.java
+++ b/api/src/jmh/java/io/grpc/AttachDetachBenchmark.java
diff --git a/context/src/jmh/java/io/grpc/ReadBenchmark.java b/api/src/jmh/java/io/grpc/ReadBenchmark.java
index 8046008be..8046008be 100644
--- a/context/src/jmh/java/io/grpc/ReadBenchmark.java
+++ b/api/src/jmh/java/io/grpc/ReadBenchmark.java
diff --git a/context/src/jmh/java/io/grpc/WriteBenchmark.java b/api/src/jmh/java/io/grpc/WriteBenchmark.java
index d4c27053e..d4c27053e 100644
--- a/context/src/jmh/java/io/grpc/WriteBenchmark.java
+++ b/api/src/jmh/java/io/grpc/WriteBenchmark.java
diff --git a/context/src/test/java/io/grpc/ContextTest.java b/api/src/test/java/io/grpc/ContextTest.java
index c2f36f41d..c2f36f41d 100644
--- a/context/src/test/java/io/grpc/ContextTest.java
+++ b/api/src/test/java/io/grpc/ContextTest.java
diff --git a/context/src/test/java/io/grpc/DeadlineTest.java b/api/src/test/java/io/grpc/DeadlineTest.java
index 69f849bea..69f849bea 100644
--- a/context/src/test/java/io/grpc/DeadlineTest.java
+++ b/api/src/test/java/io/grpc/DeadlineTest.java
diff --git a/context/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java b/api/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java
index aeac2f51a..aeac2f51a 100644
--- a/context/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java
+++ b/api/src/test/java/io/grpc/PersistentHashArrayMappedTrieTest.java
diff --git a/context/src/test/java/io/grpc/ThreadLocalContextStorageTest.java b/api/src/test/java/io/grpc/ThreadLocalContextStorageTest.java
index 9a2aaad09..9a2aaad09 100644
--- a/context/src/test/java/io/grpc/ThreadLocalContextStorageTest.java
+++ b/api/src/test/java/io/grpc/ThreadLocalContextStorageTest.java
diff --git a/context/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java b/api/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java
index 716a887e8..716a887e8 100644
--- a/context/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java
+++ b/api/src/testFixtures/java/io/grpc/StaticTestingClassLoader.java
diff --git a/context/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java b/api/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java
index 5d4e86fac..5d4e86fac 100644
--- a/context/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java
+++ b/api/src/testFixtures/java/io/grpc/testing/DeadlineSubject.java
diff --git a/census/build.gradle b/census/build.gradle
index 25948f17f..6c9a72785 100644
--- a/census/build.gradle
+++ b/census/build.gradle
@@ -9,12 +9,13 @@ description = 'gRPC: Census'
dependencies {
api project(':grpc-api')
+ // force dependent jars to depend on latest grpc-context
+ runtimeOnly project(":grpc-context")
implementation libraries.guava,
libraries.opencensus.api,
libraries.opencensus.contrib.grpc.metrics
testImplementation testFixtures(project(':grpc-api')),
- testFixtures(project(':grpc-context')),
testFixtures(project(':grpc-core')),
project(':grpc-testing'),
libraries.opencensus.impl
diff --git a/context/BUILD.bazel b/context/BUILD.bazel
index a59da4ae7..a5289a1ff 100644
--- a/context/BUILD.bazel
+++ b/context/BUILD.bazel
@@ -1,7 +1,4 @@
java_library(
name = "context",
- srcs = glob([
- "src/main/java/**/*.java",
- ]),
visibility = ["//visibility:public"],
)
diff --git a/context/build.gradle b/context/build.gradle
index a788261cb..46d3d852f 100644
--- a/context/build.gradle
+++ b/context/build.gradle
@@ -1,31 +1,14 @@
plugins {
- id "java"
- id "java-test-fixtures"
+ id "java-library"
id "maven-publish"
-
- id "me.champeau.gradle.japicmp"
- id "me.champeau.jmh"
- id "ru.vyarus.animalsniffer"
}
description = 'gRPC: Context'
-sourceCompatibility = 1.7
-targetCompatibility = 1.7
-
dependencies {
- testFixturesApi libraries.truth
- // Explicitly choose the guava version to stay Java 7-compatible.
- testFixturesImplementation 'com.google.guava:guava:30.1.1-android'
- testFixturesImplementation libraries.jsr305
- testImplementation libraries.jsr305
- // Explicitly choose the guava version to stay Java 7-compatible. The rest of gRPC can move
- // forward to Java 8-requiring versions. This is also only used for testing, so is unlikely to
- // cause problems.
- testImplementation 'com.google.guava:guava-testlib:30.1.1-android'
- signature "org.codehaus.mojo.signature:java17:1.0@signature"
- signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature"
+ runtimeOnly (project(":grpc-api")) {
+ exclude group: "com.google.guava", module: "guava"
+ exclude group: "com.google.code.findbugs", module: "jsr305"
+ exclude group: "com.google.errorprone", module: "error_prone_annotations"
+ }
}
-
-components.java.withVariantsFromConfiguration(configurations.testFixturesApiElements) { skip() }
-components.java.withVariantsFromConfiguration(configurations.testFixturesRuntimeElements) { skip() }
diff --git a/core/build.gradle b/core/build.gradle
index 932c8778e..c2e87127c 100644
--- a/core/build.gradle
+++ b/core/build.gradle
@@ -22,6 +22,8 @@ description = 'gRPC: Core'
dependencies {
api project(':grpc-api')
+ // force dependent jars to depend on latest grpc-context
+ runtimeOnly project(":grpc-context")
implementation libraries.gson,
libraries.android.annotations,
libraries.animalsniffer.annotations,
@@ -33,8 +35,7 @@ dependencies {
libraries.mockito.core,
libraries.truth,
project(':grpc-testing')
- testImplementation testFixtures(project(':grpc-context')),
- testFixtures(project(':grpc-api')),
+ testImplementation testFixtures(project(':grpc-api')),
project(':grpc-testing'),
project(':grpc-grpclb')
testImplementation libraries.guava.testlib
diff --git a/gcp-observability/build.gradle b/gcp-observability/build.gradle
index 9cef17fcd..38fb3d0fc 100644
--- a/gcp-observability/build.gradle
+++ b/gcp-observability/build.gradle
@@ -63,7 +63,7 @@ dependencies {
libraries.checker.qual, // Explicit dependency to keep in step with version used by guava
libraries.j2objc.annotations // Explicit dependency to keep in step with version used by guava
- testImplementation testFixtures(project(':grpc-context')),
+ testImplementation testFixtures(project(':grpc-api')),
project(':grpc-testing'),
project(':grpc-testing-proto')
testImplementation (libraries.guava.testlib) {
diff --git a/interop-testing/build.gradle b/interop-testing/build.gradle
index 96d4ca361..a1ae639b2 100644
--- a/interop-testing/build.gradle
+++ b/interop-testing/build.gradle
@@ -45,8 +45,7 @@ dependencies {
libraries.netty.tcnative.classes,
project(':grpc-grpclb'),
project(':grpc-rls')
- testImplementation testFixtures(project(':grpc-context')),
- testFixtures(project(':grpc-api')),
+ testImplementation testFixtures(project(':grpc-api')),
testFixtures(project(':grpc-core')),
libraries.mockito.core,
libraries.okhttp
diff --git a/istio-interop-testing/build.gradle b/istio-interop-testing/build.gradle
index b4495002a..204996ca9 100644
--- a/istio-interop-testing/build.gradle
+++ b/istio-interop-testing/build.gradle
@@ -26,8 +26,7 @@ dependencies {
runtimeOnly libraries.netty.tcnative,
libraries.netty.tcnative.classes
- testImplementation testFixtures(project(':grpc-context')),
- testFixtures(project(':grpc-api')),
+ testImplementation testFixtures(project(':grpc-api')),
testFixtures(project(':grpc-core')),
libraries.mockito.core,
libraries.junit,
diff --git a/testing/build.gradle b/testing/build.gradle
index a2887eac3..0c08381a7 100644
--- a/testing/build.gradle
+++ b/testing/build.gradle
@@ -14,7 +14,7 @@ dependencies {
libraries.junit
// Only io.grpc.internal.testing.StatsTestUtils depends on opencensus_api, for internal use.
compileOnly libraries.opencensus.api
- runtimeOnly project(":grpc-context") // Pull in newer version than census-api
+ runtimeOnly project(":grpc-api") // Pull in newer version than census-api
testImplementation libraries.mockito.core