zerotier / libzt

Encrypted P2P sockets over ZeroTier
https://zerotier.com
Other
174 stars 53 forks source link

Python: Circular import error #185

Open afdaniele opened 2 years ago

afdaniele commented 2 years ago

I'm try to import libzt in Python 3.8 running on Ubuntu 20.04. I tried version 1.8.4 installed from pypi but I was getting this https://github.com/zerotier/libzt/issues/180. Then I downloaded the wheel for 1.8.10 from the official circleci workflow artifacts and installed it. Now I get the following circular import error:

Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import libzt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/afdaniele/.local/lib/python3.8/site-packages/libzt/__init__.py", line 1, in <module>
    from .libzt import *
  File "/home/afdaniele/.local/lib/python3.8/site-packages/libzt/libzt.py", line 13, in <module>
    from . import _libzt
ImportError: cannot import name '_libzt' from partially initialized module 'libzt' (most likely due to a circular import) (/home/afdaniele/.local/lib/python3.8/site-packages/libzt/__init__.py)

This was also reported by another user in a different (NOT a duplicate) issue: https://github.com/zerotier/libzt/issues/181#issuecomment-1126566497

Any idea what is going on here? Thanks.

P-PPPP commented 2 years ago

please use old version

pip uninstall libzt
pip install libzt==1.4.2