| # How to update the C++ sources of gRPC: |
| |
| 1. Update the gRPC definitions in WORKSPACE file, currently we use |
| https://github.com/grpc/grpc/archive/v1.41.0.tar.gz |
| 2. Update the gRPC patch file if necessary, it mostly helps avoid unnecessary dependencies. |
| 3. Update third_party/grpc/BUILD to redirect targets to @com_github_grpc_grpc if necessary. |
| |
| # How to update the BUILD/bzl sources of gRPC: |
| |
| 1. `git clone http://github.com/grpc/grpc.git` in a convenient directory |
| 2. `git checkout <tag>` (current is `v1.41.0`, commithash `fc662b7964384b701af5bd3ce6994d2180080eb4`) |
| 3. `mkdir -p third_party/grpc/bazel` |
| 4. `cp <gRPC git tree>/bazel/{BUILD,cc_grpc_library.bzl,generate_cc.bzl,protobuf.bzl} third_party/grpc/bazel` |
| 5. In the `third_party/grpc` directory, apply local patches: |
| `patch -p3 < bazel_1.41.0.patch` |
| |
| # How to update the Java plugin: |
| |
| 1. Checkout tag `v1.41.0` from https://github.com/grpc/grpc-java |
| 2. `cp -R <grpc-java git tree>/compiler/src/java_plugin third_party/grpc/compiler/src` |
| |
| # How to update the Java code: |
| |
| Download the necessary jars at version `1.41.0` from maven central. |
| |
| # Submitting the change needs 3 pull requests |
| |
| 1. Update third_party/grpc to include files from new version |
| 2. Switch distdir_deps.bzl, scripts/bootstrap/compile.sh and any other references to new version |
| 3. Remove older version from third_party/grpc |