Skip to content

Add presubmit to test cross package compatibility #13873

Open
@parthea

Description

@parthea

See #13871

Example to re-create the issue using https://github.com/pex-tool/pex

  1. pip install pex to install pex as described at https://github.com/pex-tool/pex

  2. Create pex environment.

pex google-cloud-alloydb google-cloud-alloydb-connectors

root@d014de55537c:/# pex google-cloud-alloydb google-cloud-alloydb-connectors
Failed to resolve compatible distributions for 1 target:
1: cp310-cp310-manylinux_2_39_x86_64 interpreter at /venv/bin/python3.10 is not compatible with:
    grpcio-status 1.71.0 requires protobuf<6.0dev,>=5.26.1 but 1 incompatible dist was resolved:
        protobuf-6.30.2-cp39-abi3-manylinux2014_x86_64.whl

(There is an unrelated issue where gRPC hasn't released support for protobuf 6.x yet)

Try again with protobuf < 6

pex google-cloud-alloydb google-cloud-alloydb-connectors "protobuf<6"

root@d014de55537c:/# pex google-cloud-alloydb google-cloud-alloydb-connectors "protobuf<6"
Pex 2.36.1 ephemeral hermetic environment with 3 requirements and 19 activated distributions.
Python 3.10.15 (main, Mar  3 2025, 21:38:59) [GCC 13.3.0] on linux
Type "help", "pex", "copyright", "credits" or "license" for more information.
>>> 
  1. Confirm that import google.cloud.alloydb.connectors fails
Python 3.10.15 (main, Mar  3 2025, 21:38:59) [GCC 13.3.0] on linux
Type "help", "pex", "copyright", "credits" or "license" for more information.
>>> import google.cloud.alloydb
>>> import google.cloud.alloydb.connectors
Traceback (most recent call last):
  File "<console>", line 1, in <module>
ModuleNotFoundError: No module named 'google.cloud.alloydb.connectors'

A presubmit with a similar check would help detect issues like #13871 . We should look for conflicts across packages.

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority: p2Moderately-important priority. Fix may not be included in next release.type: processA process-related concern. May include testing, release, or the like.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions