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

Get the error below #17

Open
bonelifer opened this issue Jun 13, 2022 · 4 comments
Open

Get the error below #17

bonelifer opened this issue Jun 13, 2022 · 4 comments

Comments

@bonelifer
Copy link

I get the error below


Traceback (most recent call last):
  File "/home/william/.local/bin/cast_control", line 5, in <module>
    from cast_control.app.cli import cli
  File "/home/william/.local/lib/python3.8/site-packages/cast_control/app/cli.py", line 11, in <module>
    from ..base import RC_NO_CHROMECAST, LOG_LEVEL, NAME, \
  File "/home/william/.local/lib/python3.8/site-packages/cast_control/base.py", line 7, in <module>
    from pychromecast.controllers.media import MediaStatus
  File "/home/william/.local/lib/python3.8/site-packages/pychromecast/__init__.py", line 14, in <module>
    from . import socket_client
  File "/home/william/.local/lib/python3.8/site-packages/pychromecast/socket_client.py", line 23, in <module>
    from . import cast_channel_pb2
  File "/home/william/.local/lib/python3.8/site-packages/pychromecast/cast_channel_pb2.py", line 33, in <module>
    _descriptor.EnumValueDescriptor(
  File "/home/william/.local/lib/python3.8/site-packages/google/protobuf/descriptor.py", line 755, in __new__
    _message.Message._CheckCalledFromGeneratedFile()
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

@DodoLeDev
Copy link

I faced the same error 😕

@DodoLeDev
Copy link

@bonelifer You can bypass this error by typing

export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python

on your console waiting for a fix

@alexdelorenzo
Copy link
Owner

Thanks for opening an issue, @bonelifer.

@DodoLeDev and @bonelifer, if you're still encountering this error, can you please post the results from this command:

python3 -m pip freeze

Thanks

@matthiasdg
Copy link

Also had this error with the latest release (+ also #15), don't have a pip freeze output that reflects it available (meanwhile downgraded these packages), but what basically happens is the requirements for the protobuf package only specify a lower limit, so it installs protobuf 4.21.12. Just like the zeroconf (linked issue), you can downgrade it, like mentioned in the workarounds at the bottom of OP's post. I downgraded to 3.20.3 (this should be more efficient than using the python implementation) and everything works

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants