]> git.ipfire.org Git - thirdparty/google/fonts.git/commitdiff
Pin protobuf to 3.19.4
authorMarc Foley <m.foley.88@gmail.com>
Thu, 29 Sep 2022 08:46:26 +0000 (09:46 +0100)
committerGitHub <noreply@github.com>
Thu, 29 Sep 2022 08:46:26 +0000 (09:46 +0100)
Currently, we use the latest protobuf. Unfortunately there are breaking changes between v3 and v4. All our other tools such as gftools use 3.19.4 hence why I'm pinning to this version. If I install gflanguages in a repo such as gftools, I get the following traceback

```
Traceback (most recent call last):
  File "/Users/marcfoley/Type/font-browser-tests-action/test.py", line 8, in <module>
    from diffenator import run_proofing_tools, run_diffing_tools
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/diffenator/__init__.py", line 20, in <module>
    from diffenator.screenshot import screenshot_dir
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/diffenator/screenshot.py", line 6, in <module>
    from diffenator.utils import gen_gifs
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/diffenator/utils.py", line 22, in <module>
    from gflanguages import LoadLanguages
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/gflanguages/__init__.py", line 28, in <module>
    from gflanguages import languages_public_pb2
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/gflanguages/languages_public_pb2.py", line 36, in <module>
    _descriptor.FieldDescriptor(
  File "/Users/marcfoley/Type/font-browser-tests-action/venv/lib/python3.10/site-packages/google/protobuf/descriptor.py", line 560, 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).

```

setup.py

index 8dad3a880bc79fa5cdabfaa61843e6966de1022f..e0470048d74bbeff40ac3e909dd86d9fcd75cde6 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -53,6 +53,6 @@ setup(
     python_requires=">=3.7",
     setup_requires=['setuptools_scm>=4,<6.1'],
     install_requires=[
-        'protobuf'
+        'protobuf==3.19.4'
     ]
 )