Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relax protobuf pinnings. #13770

Merged
merged 5 commits into from
Jul 27, 2023
Merged

Conversation

bdice
Copy link
Contributor

@bdice bdice commented Jul 26, 2023

Description

This PR relaxes cudf's protobuf pinnings to help with compatibility issues. cudf uses protobuf in two places.

The first place protobuf is used is at build time, to generate a Python module from a .proto file in python/cudf/cmake/Modules/ProtobufHelpers.cmake:

# Compile protobuf files to Python. All arguments are assumed to be .proto files.
function(codegen_protoc)

The second place protobuf is used is in the generated file python/cudf/cudf/utils/metadata/orc_column_statistics_pb2.py which is imported here.

The generated Python module used at runtime should be compatible with newer versions of protobuf than the version used to build the Python module, from my understanding of https://protobuf.dev/support/cross-version-runtime-guarantee/. Therefore, we only require that the runtime pinning of protobuf is of the same major version and an equal-or-greater minor version. That allows us to relax this pinning.

Follow-up to #12864, see that PR for more context.

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@bdice bdice requested review from a team as code owners July 26, 2023 19:53
@bdice bdice requested review from wence- and charlesbluca July 26, 2023 19:53
@github-actions github-actions bot added Python Affects Python cuDF API. conda labels Jul 26, 2023
@galipremsagar galipremsagar added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jul 26, 2023
@bdice bdice self-assigned this Jul 26, 2023
Copy link
Member

@raydouglass raydouglass left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should technically be <5.0.0a0 (I think the minor & patch might be required) to prevent pre-release versions, but it is unlikely that conda-forge will upload a pre-release, so I will approve.

@vyasr
Copy link
Contributor

vyasr commented Jul 27, 2023

/merge

@rapids-bot rapids-bot bot merged commit 5600f19 into rapidsai:branch-23.08 Jul 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improvement / enhancement to an existing function non-breaking Non-breaking change Python Affects Python cuDF API.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants