Skip to content

Protobuf Error, TypeError: Descriptors cannot not be created directly. #38

@MartinStoev00

Description

@MartinStoev00

I am getting the following error and am not sure how to fix:

Traceback (most recent call last):
File "/usr/bin/spodcast", line 5, in
from spodcast.main import main
File "/usr/lib/python3.11/site-packages/spodcast/main.py", line 4, in
from spodcast.app import client
File "/usr/lib/python3.11/site-packages/spodcast/app.py", line 4, in
from librespot.audio.decoders import AudioQuality
File "/home/martins/.local/lib/python3.11/site-packages/librespot/init.py", line 3, in
from librespot.proto.Keyexchange_pb2 import BuildInfo, Platform, Product, ProductFlags
File "/home/martins/.local/lib/python3.11/site-packages/librespot/proto/Keyexchange_pb2.py", line 31, in
_descriptor.EnumValueDescriptor(
File "/home/martins/.local/lib/python3.11/site-packages/google/protobuf/descriptor.py", line 796, 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).

More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions