Skip to content

Commit 8c53456

Browse files
committed
resolve merge conflicts
2 parents 7688bd8 + b38df6c commit 8c53456

248 files changed

Lines changed: 8897 additions & 1736 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gemini/config.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
have_fun: false
2+
memory_config:
3+
disabled: false
4+
code_review:
5+
disable: false
6+
comment_severity_threshold: MEDIUM
7+
max_review_comments: -1
8+
pull_request_opened:
9+
help: false
10+
summary: false
11+
code_review: false
12+
include_drafts: false
13+
ignore_patterns: []

MODULE.bazel

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
module(
22
name = "grpc-java",
3-
version = "1.80.0-SNAPSHOT", # CURRENT_GRPC_VERSION
3+
version = "1.82.0-SNAPSHOT", # CURRENT_GRPC_VERSION
44
compatibility_level = 0,
55
repo_name = "io_grpc_grpc_java",
66
)
77

88
# GRPC_DEPS_START
99
IO_GRPC_GRPC_JAVA_ARTIFACTS = [
1010
"com.google.android:annotations:4.1.1.4",
11-
"com.google.api.grpc:proto-google-common-protos:2.63.2",
12-
"com.google.auth:google-auth-library-credentials:1.41.0",
13-
"com.google.auth:google-auth-library-oauth2-http:1.41.0",
11+
"com.google.api.grpc:proto-google-common-protos:2.64.1",
12+
"com.google.auth:google-auth-library-credentials:1.42.1",
13+
"com.google.auth:google-auth-library-oauth2-http:1.42.1",
1414
"com.google.auto.value:auto-value-annotations:1.11.0",
1515
"com.google.auto.value:auto-value:1.11.0",
1616
"com.google.code.findbugs:jsr305:3.0.2",
17-
"com.google.code.gson:gson:2.12.1",
18-
"com.google.errorprone:error_prone_annotations:2.45.0",
17+
"com.google.code.gson:gson:2.13.2",
18+
"com.google.errorprone:error_prone_annotations:2.48.0",
1919
"com.google.guava:failureaccess:1.0.1",
2020
"com.google.guava:guava:33.5.0-android",
2121
"com.google.re2j:re2j:1.8",
@@ -26,26 +26,27 @@ IO_GRPC_GRPC_JAVA_ARTIFACTS = [
2626
"dev.cel:common:0.12.0",
2727
"com.squareup.okhttp:okhttp:2.7.5",
2828
"com.squareup.okio:okio:2.10.0", # 3.0+ needs swapping to -jvm; need work to avoid flag-day
29-
"io.netty:netty-buffer:4.1.130.Final",
30-
"io.netty:netty-codec-http2:4.1.130.Final",
31-
"io.netty:netty-codec-http:4.1.130.Final",
32-
"io.netty:netty-codec-socks:4.1.130.Final",
33-
"io.netty:netty-codec:4.1.130.Final",
34-
"io.netty:netty-common:4.1.130.Final",
35-
"io.netty:netty-handler-proxy:4.1.130.Final",
36-
"io.netty:netty-handler:4.1.130.Final",
37-
"io.netty:netty-resolver:4.1.130.Final",
38-
"io.netty:netty-tcnative-boringssl-static:2.0.74.Final",
39-
"io.netty:netty-tcnative-classes:2.0.74.Final",
40-
"io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.130.Final",
41-
"io.netty:netty-transport-native-unix-common:4.1.130.Final",
42-
"io.netty:netty-transport:4.1.130.Final",
29+
"io.netty:netty-buffer:4.1.132.Final",
30+
"io.netty:netty-codec-http2:4.1.132.Final",
31+
"io.netty:netty-codec-http:4.1.132.Final",
32+
"io.netty:netty-codec-socks:4.1.132.Final",
33+
"io.netty:netty-codec:4.1.132.Final",
34+
"io.netty:netty-common:4.1.132.Final",
35+
"io.netty:netty-handler-proxy:4.1.132.Final",
36+
"io.netty:netty-handler:4.1.132.Final",
37+
"io.netty:netty-resolver:4.1.132.Final",
38+
"io.netty:netty-tcnative-boringssl-static:2.0.75.Final",
39+
"io.netty:netty-tcnative-classes:2.0.75.Final",
40+
"io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.132.Final",
41+
"io.netty:netty-transport-native-unix-common:4.1.132.Final",
42+
"io.netty:netty-transport:4.1.132.Final",
4343
"io.opencensus:opencensus-api:0.31.0",
4444
"io.opencensus:opencensus-contrib-grpc-metrics:0.31.0",
4545
"io.perfmark:perfmark-api:0.27.0",
4646
"junit:junit:4.13.2",
47+
"org.mockito:mockito-core:4.4.0",
4748
"org.checkerframework:checker-qual:3.49.5",
48-
"org.codehaus.mojo:animal-sniffer-annotations:1.26",
49+
"org.codehaus.mojo:animal-sniffer-annotations:1.27",
4950
]
5051
# GRPC_DEPS_END
5152

README.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ gRPC-Java - An RPC library and framework
2020
Supported Platforms
2121
-------------------
2222

23-
gRPC-Java supports Java 8 and later. Android minSdkVersion 21 (Lollipop) and
23+
gRPC-Java supports Java 8 and later. Android minSdkVersion 23 (Marshmallow) and
2424
later are supported with [Java 8 language desugaring][android-java-8].
2525

2626
TLS usage on Android typically requires Play Services Dynamic Security Provider.
@@ -44,8 +44,8 @@ For a guided tour, take a look at the [quick start
4444
guide](https://grpc.io/docs/languages/java/quickstart) or the more explanatory [gRPC
4545
basics](https://grpc.io/docs/languages/java/basics).
4646

47-
The [examples](https://github.com/grpc/grpc-java/tree/v1.78.0/examples) and the
48-
[Android example](https://github.com/grpc/grpc-java/tree/v1.78.0/examples/android)
47+
The [examples](https://github.com/grpc/grpc-java/tree/v1.80.0/examples) and the
48+
[Android example](https://github.com/grpc/grpc-java/tree/v1.80.0/examples/android)
4949
are standalone projects that showcase the usage of gRPC.
5050

5151
Download
@@ -56,42 +56,42 @@ Download [the JARs][]. Or for Maven with non-Android, add to your `pom.xml`:
5656
<dependency>
5757
<groupId>io.grpc</groupId>
5858
<artifactId>grpc-netty-shaded</artifactId>
59-
<version>1.78.0</version>
59+
<version>1.80.0</version>
6060
<scope>runtime</scope>
6161
</dependency>
6262
<dependency>
6363
<groupId>io.grpc</groupId>
6464
<artifactId>grpc-protobuf</artifactId>
65-
<version>1.78.0</version>
65+
<version>1.80.0</version>
6666
</dependency>
6767
<dependency>
6868
<groupId>io.grpc</groupId>
6969
<artifactId>grpc-stub</artifactId>
70-
<version>1.78.0</version>
70+
<version>1.80.0</version>
7171
</dependency>
7272
```
7373

7474
Or for Gradle with non-Android, add to your dependencies:
7575
```gradle
76-
runtimeOnly 'io.grpc:grpc-netty-shaded:1.78.0'
77-
implementation 'io.grpc:grpc-protobuf:1.78.0'
78-
implementation 'io.grpc:grpc-stub:1.78.0'
76+
runtimeOnly 'io.grpc:grpc-netty-shaded:1.80.0'
77+
implementation 'io.grpc:grpc-protobuf:1.80.0'
78+
implementation 'io.grpc:grpc-stub:1.80.0'
7979
```
8080

8181
For Android client, use `grpc-okhttp` instead of `grpc-netty-shaded` and
8282
`grpc-protobuf-lite` instead of `grpc-protobuf`:
8383
```gradle
84-
implementation 'io.grpc:grpc-okhttp:1.78.0'
85-
implementation 'io.grpc:grpc-protobuf-lite:1.78.0'
86-
implementation 'io.grpc:grpc-stub:1.78.0'
84+
implementation 'io.grpc:grpc-okhttp:1.80.0'
85+
implementation 'io.grpc:grpc-protobuf-lite:1.80.0'
86+
implementation 'io.grpc:grpc-stub:1.80.0'
8787
```
8888

8989
For [Bazel](https://bazel.build), you can either
9090
[use Maven](https://github.com/bazelbuild/rules_jvm_external)
9191
(with the GAVs from above), or use `@io_grpc_grpc_java//api` et al (see below).
9292

9393
[the JARs]:
94-
https://search.maven.org/search?q=g:io.grpc%20AND%20v:1.78.0
94+
https://search.maven.org/search?q=g:io.grpc%20AND%20v:1.80.0
9595

9696
Development snapshots are available in [Sonatypes's snapshot
9797
repository](https://central.sonatype.com/repository/maven-snapshots/).
@@ -123,7 +123,7 @@ For protobuf-based codegen integrated with the Maven build system, you can use
123123
<configuration>
124124
<protocArtifact>com.google.protobuf:protoc:3.25.8:exe:${os.detected.classifier}</protocArtifact>
125125
<pluginId>grpc-java</pluginId>
126-
<pluginArtifact>io.grpc:protoc-gen-grpc-java:1.78.0:exe:${os.detected.classifier}</pluginArtifact>
126+
<pluginArtifact>io.grpc:protoc-gen-grpc-java:1.80.0:exe:${os.detected.classifier}</pluginArtifact>
127127
</configuration>
128128
<executions>
129129
<execution>
@@ -153,7 +153,7 @@ protobuf {
153153
}
154154
plugins {
155155
grpc {
156-
artifact = 'io.grpc:protoc-gen-grpc-java:1.78.0'
156+
artifact = 'io.grpc:protoc-gen-grpc-java:1.80.0'
157157
}
158158
}
159159
generateProtoTasks {
@@ -186,7 +186,7 @@ protobuf {
186186
}
187187
plugins {
188188
grpc {
189-
artifact = 'io.grpc:protoc-gen-grpc-java:1.78.0'
189+
artifact = 'io.grpc:protoc-gen-grpc-java:1.80.0'
190190
}
191191
}
192192
generateProtoTasks {

SECURITY.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,8 @@ grpc-netty version | netty-handler version | netty-tcnative-boringssl-static ver
399399
1.71.x-1.74.x | 4.1.110.Final | 2.0.70.Final
400400
1.75.x-1.76.x | 4.1.124.Final | 2.0.72.Final
401401
1.77.x-1.78.x | 4.1.127.Final | 2.0.74.Final
402-
1.79.x- | 4.1.130.Final | 2.0.74.Final
402+
1.79.x-1.80.x | 4.1.130.Final | 2.0.74.Final
403+
1.81.x- | 4.1.132.Final | 2.0.75.Final
403404

404405
_(grpc-netty-shaded avoids issues with keeping these versions in sync.)_
405406

alts/src/test/java/io/grpc/alts/internal/AltsProtocolNegotiatorTest.java

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -202,8 +202,11 @@ public void operationComplete(ChannelFuture future) throws Exception {
202202
channel.flush();
203203

204204
// Capture the protected data written to the wire.
205-
assertEquals(1, channel.outboundMessages().size());
206-
ByteBuf protectedData = channel.readOutbound();
205+
assertThat(channel.outboundMessages()).isNotEmpty();
206+
ByteBuf protectedData = channel.alloc().buffer();
207+
while (!channel.outboundMessages().isEmpty()) {
208+
protectedData.writeBytes((ByteBuf) channel.readOutbound());
209+
}
207210
assertEquals(message.length(), writeCount.get());
208211

209212
// Read the protected message at the server and verify it matches the original message.
@@ -327,16 +330,18 @@ public void doNotFlushEmptyBuffer() throws Exception {
327330
String message = "hello";
328331
ByteBuf in = Unpooled.copiedBuffer(message, UTF_8);
329332

330-
assertEquals(0, protector.flushes.get());
333+
int flushes = protector.flushes.get();
331334
Future<?> done = channel.write(in);
332335
channel.flush();
336+
flushes++;
333337
done.get(5, TimeUnit.SECONDS);
334-
assertEquals(1, protector.flushes.get());
338+
assertEquals(flushes, protector.flushes.get());
335339

340+
// Flush does not propagate
336341
done = channel.write(Unpooled.EMPTY_BUFFER);
337342
channel.flush();
338343
done.get(5, TimeUnit.SECONDS);
339-
assertEquals(1, protector.flushes.get());
344+
assertEquals(flushes, protector.flushes.get());
340345
}
341346

342347
@Test

android-interop-testing/build.gradle

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,11 @@ android {
3333

3434
defaultConfig {
3535
applicationId "io.grpc.android.integrationtest"
36-
// Held back to 20 as Gradle fails to build at the 21 level. This is
37-
// presumably a Gradle bug that can be revisited later.
38-
// Maybe this issue: https://github.com/gradle/gradle/issues/20778
39-
minSdkVersion 20
36+
minSdkVersion 23
4037
targetSdkVersion 33
4138
versionCode 1
4239
versionName "1.0"
4340
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
44-
multiDexEnabled = true
4541
}
4642
buildTypes {
4743
debug { minifyEnabled false }
@@ -62,11 +58,11 @@ android {
6258

6359
dependencies {
6460
implementation 'androidx.appcompat:appcompat:1.3.0'
65-
implementation 'androidx.multidex:multidex:2.0.0'
6661
implementation libraries.androidx.annotation
6762
implementation 'com.google.android.gms:play-services-base:18.0.1'
6863

6964
implementation project(':grpc-android'),
65+
project(':grpc-api'),
7066
project(':grpc-core'),
7167
project(':grpc-census'),
7268
project(':grpc-okhttp'),
@@ -76,15 +72,16 @@ dependencies {
7672
libraries.junit,
7773
libraries.truth,
7874
libraries.androidx.test.rules,
75+
libraries.androidx.test.core,
7976
libraries.opencensus.contrib.grpc.metrics
8077

8178
implementation (project(':grpc-services')) {
8279
exclude group: 'com.google.protobuf'
8380
exclude group: 'com.google.guava'
8481
}
8582

86-
androidTestImplementation 'androidx.test.ext:junit:1.1.3',
87-
'androidx.test:runner:1.4.0'
83+
androidTestImplementation libraries.androidx.test.ext.junit,
84+
libraries.androidx.test.runner
8885
}
8986

9087
// Checkstyle doesn't run automatically with android
@@ -115,6 +112,25 @@ tasks.withType(JavaCompile).configureEach {
115112
"|")
116113
}
117114

115+
// Workaround error seen with Gradle 8.14.3 and AGP 7.4.1 when building:
116+
// ./gradlew clean :grpc-android-interop-testing:build -PskipAndroid=false \
117+
// -Pandroid.useAndroidX=true --no-build-cache
118+
//
119+
// Error message:
120+
//
121+
// Execution failed for task ':grpc-android-interop-testing:mergeExtDexDebug'.
122+
// > Could not resolve all files for configuration ':grpc-android-interop-testing:debugRuntimeClasspath'.
123+
// > Failed to transform opencensus-contrib-grpc-metrics-0.31.1.jar (io.opencensus:opencensus-contrib-grpc-metrics:0.31.1) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
124+
// > Could not resolve all files for configuration ':grpc-android-interop-testing:debugRuntimeClasspath'.
125+
// > Failed to transform grpc-api-1.81.0-SNAPSHOT.jar (project :grpc-api) to match attributes {artifactType=android-classes-jar, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.jvm.version=8, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
126+
// > Execution failed for IdentityTransform: grpc-java/api/build/libs/grpc-api-1.81.0-SNAPSHOT.jar.
127+
// > File/directory does not exist: grpc-java/api/build/libs/grpc-api-1.81.0-SNAPSHOT.jar
128+
tasks.configureEach { task ->
129+
if (task.name.equals("mergeExtDexDebug")) {
130+
dependsOn(':grpc-api:jar')
131+
}
132+
}
133+
118134
afterEvaluate {
119135
// Hack to workaround "Task ':grpc-android-interop-testing:extractIncludeDebugProto' uses this
120136
// output of task ':grpc-context:jar' without declaring an explicit or implicit dependency." The

android-interop-testing/src/androidTest/AndroidManifest.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
android:name="androidx.test.runner.AndroidJUnitRunner"
66
android:targetPackage="io.grpc.android.integrationtest" />
77

8-
<application
9-
android:name="android.support.multidex.MultiDexApplication" >
8+
<application>
109
</application>
1110

1211
</manifest>

android-interop-testing/src/androidTest/java/io/grpc/android/integrationtest/UdsChannelInteropTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@
1919
import static org.junit.Assert.assertEquals;
2020

2121
import android.net.LocalSocketAddress.Namespace;
22-
import androidx.test.InstrumentationRegistry;
22+
import androidx.test.ext.junit.rules.ActivityScenarioRule;
2323
import androidx.test.ext.junit.runners.AndroidJUnit4;
24-
import androidx.test.rule.ActivityTestRule;
24+
import androidx.test.platform.app.InstrumentationRegistry;
2525
import io.grpc.Grpc;
2626
import io.grpc.InsecureServerCredentials;
2727
import io.grpc.Server;
@@ -60,8 +60,8 @@ public class UdsChannelInteropTest {
6060
// Ensures Looper is initialized for tests running on API level 15. Otherwise instantiating an
6161
// AsyncTask throws an exception.
6262
@Rule
63-
public ActivityTestRule<TesterActivity> activityRule =
64-
new ActivityTestRule<TesterActivity>(TesterActivity.class);
63+
public ActivityScenarioRule<TesterActivity> activityRule =
64+
new ActivityScenarioRule<>(TesterActivity.class);
6565

6666
@Before
6767
public void setUp() throws IOException {

android-interop-testing/src/main/AndroidManifest.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@
1414
android:allowBackup="true"
1515
android:icon="@mipmap/ic_launcher"
1616
android:label="@string/app_name"
17-
android:theme="@style/Base.V7.Theme.AppCompat.Light"
18-
android:name="androidx.multidex.MultiDexApplication">
17+
android:theme="@style/Base.V7.Theme.AppCompat.Light">
1918
<activity
2019
android:name=".TesterActivity"
2120
android:exported="true">

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ android {
1414
}
1515
compileSdkVersion 34
1616
defaultConfig {
17-
minSdkVersion 22
17+
minSdkVersion 23
1818
targetSdkVersion 33
1919
versionCode 1
2020
versionName "1.0"

0 commit comments

Comments
 (0)