Update grpcio and make gRPC generation portable - #2509
Open
caydyan wants to merge 1 commit into
Open
Conversation
Author
|
Quick review/routing check for this Current contributor-side state:
The only validation I could not complete locally was the full CLN docker-compose run because Docker Hub pulls were failing with TLS handshake timeouts. If you need a specific CLN/LND reproduction command or a different proof before review, point me at the expected path and I can run it. BTC payout address if this is accepted for the sats reward: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Fixes #2171.
This updates the Python gRPC runtime/tooling to the current PyPI release and makes the generated-code import patching deterministic across environments.
Changes:
grpcioandgrpcio-toolsfrom 1.67.0 to 1.81.0scripts/generate_grpc.shfail fast withset -eused -iimport rewriting with a small Python rewrite step, so the generated*_pb2*.pyfiles get package-relative imports consistently on Linux and BSD/macOS sedprintffor portable progress outputThis is intentionally narrower than #2378: it only touches the dependency upgrade and gRPC generation path, without the unrelated API/lockfile changes that now conflict with
main.Verification
Passed locally:
python3.12 -m venv .venv-grpc312.venv-grpc312/bin/python -m pip install grpcio==1.81.0 grpcio-tools==1.81.0 googleapis-common-protos==1.70.0PATH="$PWD/.venv-grpc312/bin:$PATH" sh scripts/generate_grpc.shhold_pb2,hold_pb2_grpc,lightning_pb2_grpc,node_pb2,node_pb2_grpcsh -n scripts/generate_grpc.sh.venv-grpc312/bin/python -m pip checkgit diff --checkI also attempted the full CLN docker-compose test with
DOCKER_DEFAULT_PLATFORM=linux/amd64, but the local run could not complete because Docker Hub image pulls repeatedly failed with TLS handshake timeouts.Bounty
This targets the
⚡Eligible for Sats ⚡issue #2171. If this qualifies for the reward, payout address:bc1qev5ant33v5y89qqjvcf4mh9hlax5svqf5xd7gc.