From a621a2608ea73486639f40095f53589e85528331 Mon Sep 17 00:00:00 2001 From: Marc Navarro Date: Fri, 26 Nov 2021 15:06:58 +0100 Subject: [PATCH] [Enhancement] Bump grpc and protobuff version to allow building on Mac M1 (#8186) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Upgrade to the latest grpc-java 1.42.1 which is only compatible and [tested against](https://github.com/grpc/grpc-java/pull/8551#discussion_r714182190) 3.17.2, but we can assume that 3.17.3 (which has osx-aarch_64 compatible maven artifacts) is save to use. We could have also upgrade to the latest grpc-java 1.42.1 and latest protoc 3.19.1, but it can not be directly done, it needs to tweak the grpcs-java internal dependencies. So we choose the safest option and discarded this option because of the following reasons: - Protoc 3.19.1 generates code that relies on methods not available in protobuf-java 3.17.2 ([“issue”](https://github.com/protocolbuffers/protobuf/issues/9236#issue-1059594027)) (which java-grpc relies on). So we need to tell grpc-java via dependency management to use 3.19.1 instead of 3.17.2. Signed-off-by: Marc Navarro Sonnenfeld --- CHANGES.md | 1 + dist-material/release-docs/LICENSE | 10 ++++---- oap-server-bom/pom.xml | 4 ++-- pom.xml | 6 ++--- .../known-oap-backend-dependencies.txt | 24 +++++++++---------- 5 files changed, 23 insertions(+), 22 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 18ecd4a086..3d0e041f99 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -57,6 +57,7 @@ Release Notes. * Fix the so11y latency of persistence execution latency not correct in ElasticSearch storage. * Add `MeterReportService` `collectBatch` method. * Add OpenSearch 1.2.0 to test and verify it works. +* Upgrade grpc-java to 1.42.1 and protoc to 3.19.1 to allow using native Mac osx-aarch_64 artifacts. #### UI diff --git a/dist-material/release-docs/LICENSE b/dist-material/release-docs/LICENSE index d54bdc3061..d698da008f 100755 --- a/dist-material/release-docs/LICENSE +++ b/dist-material/release-docs/LICENSE @@ -225,11 +225,11 @@ The following components are provided under the Apache License. See project link The text of each license is the standard Apache 2.0 license. raphw (byte-buddy) 1.10.19: http://bytebuddy.net/ , Apache 2.0 - Google: grpc-java 1.32.1: https://github.com/grpc/grpc-java, Apache 2.0 + Google: grpc-java 1.42.1: https://github.com/grpc/grpc-java, Apache 2.0 Google: guava 28.1: https://github.com/google/guava , Apache 2.0 Google: guice 4.1.0: https://github.com/google/guice , Apache 2.0 Google: gson 2.8.6: https://github.com/google/gson , Apache 2.0 - Google: proto-google-common-protos 1.17.0: https://github.com/googleapis/googleapis , Apache 2.0 + Google: proto-google-common-protos 2.0.1: https://github.com/googleapis/googleapis , Apache 2.0 Google: jsr305 3.0.2: http://central.maven.org/maven2/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.pom , Apache 2.0 Google: flatbuffers-java 1.12.0: https://github.com/google/flatbuffers/ , Apache 2.0 Eclipse (Jetty) 9.4.40.v20210413: https://www.eclipse.org/jetty/ , Apache 2.0 and Eclipse Public License 1.0 @@ -306,7 +306,7 @@ The text of each license is the standard Apache 2.0 license. Ctripcorp: apollo 1.8.0: https://github.com/ctripcorp/apollo Apache 2.0 javaassist 3.25.0-GA: https://github.com/jboss-javassist/javassist Apache 2.0 jackson-module-afterburner 2.12.2: https://github.com/FasterXML/jackson-modules-base, Apache 2.0 - perfmark-api 0.19.0: https://github.com/perfmark/perfmark, Apache 2.0 + perfmark-api 0.23.0: https://github.com/perfmark/perfmark, Apache 2.0 moshi 1.5.0: https://github.com/square/moshi, Apache 2.0 logging-interceptor 3.13.1: https://github.com/square/okhttp/tree/master/okhttp-logging-interceptor, Apache 2.0 msgpack-core 0.8.16: https://github.com/msgpack/msgpack-java, Apache 2.0 @@ -362,8 +362,8 @@ The text of each license is also included at licenses/LICENSE-[project].txt. asm 9.0:https://gitlab.ow2.org , BSD-3-Clause antlr4-runtime 4.5.1: http://www.antlr.org/license.html, BSD-3-Clause - Google: protobuf-java 3.13.0: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause - Google: protobuf-java-util 3.12.4: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause + Google: protobuf-java 3.17.3: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause + Google: protobuf-java-util 3.17.3: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause reflectasm 1.11.7: https://github.com/EsotericSoftware/reflectasm , BSD-3-Clause zstd-jni 1.4.3-1: https://github.com/luben/zstd-jni, BSD-3-Clause diff --git a/oap-server-bom/pom.xml b/oap-server-bom/pom.xml index a805446296..cfde9dd15f 100644 --- a/oap-server-bom/pom.xml +++ b/oap-server-bom/pom.xml @@ -39,8 +39,8 @@ 3.5.7 28.1-jre 1.28 - 3.13.0 - 3.12.4 + 3.17.3 + 3.17.3 1.11 3.12.0 1.4 diff --git a/pom.xml b/pom.xml index 0eb819b262..903df2f9a5 100755 --- a/pom.xml +++ b/pom.xml @@ -176,12 +176,12 @@ 1.18.20 - 1.32.1 + 1.42.1 2.8.6 1.6.2 0.6.1 - 3.12.0 - 1.32.1 + 3.17.3 + 1.42.1 2.0.43.Final 1.3.2 3.1 diff --git a/tools/dependencies/known-oap-backend-dependencies.txt b/tools/dependencies/known-oap-backend-dependencies.txt index 971709f988..ad972f829c 100755 --- a/tools/dependencies/known-oap-backend-dependencies.txt +++ b/tools/dependencies/known-oap-backend-dependencies.txt @@ -43,14 +43,14 @@ freemarker-2.3.28.jar graphql-java-8.0.jar graphql-java-tools-5.2.3.jar groovy-3.0.8.jar -grpc-api-1.32.1.jar -grpc-context-1.32.1.jar -grpc-core-1.32.1.jar -grpc-grpclb-1.32.1.jar -grpc-netty-1.32.1.jar -grpc-protobuf-1.32.1.jar -grpc-protobuf-lite-1.32.1.jar -grpc-stub-1.32.1.jar +grpc-api-1.42.1.jar +grpc-context-1.42.1.jar +grpc-core-1.42.1.jar +grpc-grpclb-1.42.1.jar +grpc-netty-1.42.1.jar +grpc-protobuf-1.42.1.jar +grpc-protobuf-lite-1.42.1.jar +grpc-stub-1.42.1.jar gson-2.8.6.jar gson-fire-1.8.5.jar guava-28.1-jre.jar @@ -124,11 +124,11 @@ netty-transport-native-unix-common-4.1.68.Final.jar netty-transport-native-unix-common-4.1.68.Final-linux-x86_64.jar okhttp-3.14.9.jar okio-1.17.2.jar -perfmark-api-0.19.0.jar +perfmark-api-0.23.0.jar postgresql-42.2.18.jar -proto-google-common-protos-1.17.0.jar -protobuf-java-3.13.0.jar -protobuf-java-util-3.12.4.jar +proto-google-common-protos-2.0.1.jar +protobuf-java-3.17.3.jar +protobuf-java-util-3.17.3.jar reactive-streams-1.0.2.jar reflectasm-1.11.7.jar retrofit-2.5.0.jar -- GitLab