Skip to content

cirq_google gets incompatible protobuf version #5355

Closed
@95-martin-orion

Description

@95-martin-orion

Description of the issue

cirq_google prerelease is broken - see error message below

How to reproduce the issue

Run the following code in a fresh Colab:

!pip install -q cirq-google --pre
import cirq_google
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
tensorflow 2.8.0 requires tf-estimator-nightly==2.8.0.dev2021122109, which is not installed.
tensorflow-metadata 1.7.0 requires protobuf<4,>=3.13, but you have protobuf 4.21.0rc1 which is incompatible.
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
[<ipython-input-2-6fbbeec494be>](https://localhost:8080/#) in <module>()
      1 get_ipython().system('pip install -q cirq-google --pre')
----> 2 import cirq_google

5 frames
[/usr/local/lib/python3.7/dist-packages/cirq_google/__init__.py](https://localhost:8080/#) in <module>()
     17 import sys
     18 from cirq import _compat
---> 19 from cirq_google import api
     20 
     21 from cirq_google._version import __version__

[/usr/local/lib/python3.7/dist-packages/cirq_google/api/__init__.py](https://localhost:8080/#) in <module>()
     14 """Helpers for converting to/from api data formats."""
     15 
---> 16 from cirq_google.api import v2

[/usr/local/lib/python3.7/dist-packages/cirq_google/api/v2/__init__.py](https://localhost:8080/#) in <module>()
     14 """Data format v2 for google api."""
     15 
---> 16 from cirq_google.api.v2 import (
     17     batch_pb2,
     18     calibration_pb2,

[/usr/local/lib/python3.7/dist-packages/cirq_google/api/v2/batch_pb2.py](https://localhost:8080/#) in <module>()
     12 
     13 
---> 14 from . import program_pb2 as cirq__google_dot_api_dot_v2_dot_program__pb2
     15 from . import result_pb2 as cirq__google_dot_api_dot_v2_dot_result__pb2
     16 from . import run_context_pb2 as cirq__google_dot_api_dot_v2_dot_run__context__pb2

[/usr/local/lib/python3.7/dist-packages/cirq_google/api/v2/program_pb2.py](https://localhost:8080/#) in <module>()
     36       serialized_options=None,
     37       type=None,
---> 38       create_key=_descriptor._internal_create_key),
     39     _descriptor.EnumValueDescriptor(
     40       name='MOMENT_BY_MOMENT', index=1, number=1,

[/usr/local/lib/python3.7/dist-packages/google/protobuf/descriptor.py](https://localhost:8080/#) in __new__(cls, name, index, number, type, options, serialized_options, create_key)
    753                 type=None,  # pylint: disable=redefined-builtin
    754                 options=None, serialized_options=None, create_key=None):
--> 755       _message.Message._CheckCalledFromGeneratedFile()
    756       # There is no way we can build a complete EnumValueDescriptor with the
    757       # given parameters (the name of the Enum is not known, for example).

AttributeError: module 'google._upb._message' has no attribute 'Message'

Cirq version
0.15.0.dev20220512003129

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/google/protoskind/bug-reportSomething doesn't seem to work.triage/acceptedA consensus emerged that this bug report, feature request, or other action should be worked on

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions