Closed KAWAHARA-souta closed 3 months ago
I've reproduced the problem. Unfortunately, we do need protobuf: immudb talks protocol buffers, so we need to use that.
Probably we need to upgrade our dependencies.
@KAWAHARA-souta I've update the dependencies (see version 1.4.1), but the problem is still there.
Note that using python setup.py install
is deprecated.
If you use pip install .
instead (the recommended alternative) it will work.
See https://setuptools.pypa.io/en/latest/deprecated/commands.html
Reproducer:
setup.py
test.py
reporoduce log
Note:
If I installed immudb-py using
pip install
, then this error not occured.Detail of this issue:
It seems that this issue is caused by the combination of versions of googleapis-common-protos and protobuf. googleapis-common-protos==1.62 (released 2023/12/08) has this patch: https://github.com/googleapis/python-api-common-protos/commit/713e3887a3293aea314060e84bdcf8a12eda3d6c I guess, way to make namespace in library changed in this patch. (reference: https://packaging.python.org/en/latest/guides/packaging-namespace-packages/) It seems that there is an issue where namespaces cannot be properly created when installing a combination of googleapis-common-protos 1.62 or later and older protobuf with setuptools.
simple test 1:
test.py:
setup.py:
log:
simple test 2
setup.py:
log:
What I want you to do:
My tool using immudb-py is expected to be installed with setuptools. So, I encounterd this issue. immudb-py has the following dependency on protobuf: https://github.com/codenotary/immudb-py/blob/master/setup.py#L34 Is this dependency mandatory? If it is not mandatory, then removing it should solve this issue. Please consider making this change.