59da4d8d6a
tooz doesn't use upper-constraints so we get the newest version of all dependencies. It seems one of these, etcd3, is incompatible with recent versions of protobuf. Failed to import test module: tooz.tests.drivers.test_etcd3 Traceback (most recent call last): File "/usr/lib/python3.7/unittest/loader.py", line 436, in _find_test_path module = self._get_module_from_name(name) File "/usr/lib/python3.7/unittest/loader.py", line 377, in _get_module_from_name __import__(name) File "/home/zuul/src/opendev.org/openstack/tooz/tooz/tests/drivers/test_etcd3.py", line 22, in <module> import tooz.drivers.etcd3 as etcd3_driver File "/home/zuul/src/opendev.org/openstack/tooz/tooz/drivers/etcd3.py", line 18, in <module> import etcd3 File "/home/zuul/src/opendev.org/openstack/tooz/.tox/py37/lib/python3.7/site-packages/etcd3/__init__.py", line 3, in <module> import etcd3.etcdrpc as etcdrpc File "/home/zuul/src/opendev.org/openstack/tooz/.tox/py37/lib/python3.7/site-packages/etcd3/etcdrpc/__init__.py", line 1, in <module> from .rpc_pb2 import * File "/home/zuul/src/opendev.org/openstack/tooz/.tox/py37/lib/python3.7/site-packages/etcd3/etcdrpc/rpc_pb2.py", line 16, in <module> from etcd3.etcdrpc import kv_pb2 as kv__pb2 File "/home/zuul/src/opendev.org/openstack/tooz/.tox/py37/lib/python3.7/site-packages/etcd3/etcdrpc/kv_pb2.py", line 36, in <module> type=None), File "/home/zuul/src/opendev.org/openstack/tooz/.tox/py37/lib/python3.7/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). The etcd3 dependency is only used for the etcd3 driver which was deprecated in change Iff0cd3b51cfc45ecbddc831c55267e80e9c79cac. The protobuf dependency is only used for etcd3. We can't outright remove the etcd3 driver yet as it hasn't been long enough since we deprecated it. That will happen soon enough though and until then we can simply cap protobuf to an older version that is compatible with the most recent etcd3 release. While we're here, we also sync the lower boundaries in the docs requirements and add some comments indicating where they come from/what they're for. Changes: requirements.txt NOTE(stephenfin): We need to include a cap to tenacity. On stable/victoria this was done by the backport of change Iaab5ce609c0dcf7085f5dd43efbd37eb4b88f17b, however, that's a large backport and it can't merge without fixing this. We instead squash the cap in here since we're already playing with requirements. Change-Id: I8d6647118be22b0ce55e01b7e5451612ebe30e73 Signed-off-by: Stephen Finucane <stephenfin@redhat.com> (cherry picked from commit e3de0e634af62e46162eb8d2354416ce4f2ba77c) (cherry picked from commit 73dbe0e6fc1403cbb121985781d7b6ec996b099a) (cherry picked from commit 8ca40da4bbe813a76cd48d3e8e54b78d10f25765)
70 lines
2.0 KiB
INI
70 lines
2.0 KiB
INI
[metadata]
|
|
name = tooz
|
|
author = OpenStack
|
|
author-email = openstack-discuss@lists.openstack.org
|
|
summary = Coordination library for distributed systems.
|
|
description-file = README.rst
|
|
license = Apache-2
|
|
home-page = https://docs.openstack.org/tooz/latest/
|
|
python-requires = >=3.6
|
|
classifier =
|
|
Environment :: OpenStack
|
|
Intended Audience :: Developers
|
|
Intended Audience :: Information Technology
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.6
|
|
Programming Language :: Python :: 3.7
|
|
Programming Language :: Python :: 3 :: Only
|
|
Programming Language :: Python :: Implementation :: CPython
|
|
Topic :: System :: Distributed Computing
|
|
|
|
[files]
|
|
packages =
|
|
tooz
|
|
|
|
[entry_points]
|
|
tooz.backends =
|
|
etcd = tooz.drivers.etcd:EtcdDriver
|
|
etcd3 = tooz.drivers.etcd3:Etcd3Driver
|
|
etcd3+http = tooz.drivers.etcd3gw:Etcd3Driver
|
|
etcd3+https = tooz.drivers.etcd3gw:Etcd3Driver
|
|
kazoo = tooz.drivers.zookeeper:KazooDriver
|
|
zake = tooz.drivers.zake:ZakeDriver
|
|
memcached = tooz.drivers.memcached:MemcachedDriver
|
|
ipc = tooz.drivers.ipc:IPCDriver
|
|
redis = tooz.drivers.redis:RedisDriver
|
|
postgresql = tooz.drivers.pgsql:PostgresDriver
|
|
mysql = tooz.drivers.mysql:MySQLDriver
|
|
file = tooz.drivers.file:FileDriver
|
|
zookeeper = tooz.drivers.zookeeper:KazooDriver
|
|
consul = tooz.drivers.consul:ConsulDriver
|
|
|
|
[extras]
|
|
consul =
|
|
python-consul>=0.4.7 # MIT License
|
|
etcd =
|
|
requests>=2.10.0 # Apache-2.0
|
|
etcd3 =
|
|
etcd3>=0.12.0 # Apache-2.0
|
|
grpcio>=1.18.0
|
|
protobuf<4.0 # BSD License (3 clause)
|
|
etcd3gw =
|
|
etcd3gw!=0.2.6,>=0.1.0 # Apache-2.0
|
|
zake =
|
|
zake>=0.1.6 # Apache-2.0
|
|
redis =
|
|
redis>=3.1.0 # MIT
|
|
postgresql =
|
|
psycopg2>=2.5 # LGPL/ZPL
|
|
mysql =
|
|
PyMySQL>=0.6.2 # MIT License
|
|
zookeeper =
|
|
kazoo>=2.2 # Apache-2.0
|
|
memcached =
|
|
pymemcache!=1.3.0,>=1.2.9 # Apache 2.0 License
|
|
ipc =
|
|
sysv-ipc>=0.6.8 # BSD License
|