calibre-web
calibre-web copied to clipboard
Manual installation on Windows: ImportError: cannot import name 'bind_unix_socket'
Describe the bug/problem following the instruction of this page https://github.com/janeczku/calibre-web/wiki/Manual-installation to install on Windows, the error is as following: ModuleNotFoundError: No module named 'gevent'
To Reproduce python cps.py
Expected behavior no errors
Screenshots
Traceback (most recent call last):
File "C:\Users\Andrew\Documents\GitHub\calibre-web\cps\server.py", line 27, in <module>
from gevent.pywsgi import WSGIServer
ModuleNotFoundError: No module named 'gevent'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Andrew\Documents\GitHub\calibre-web\cps.py", line 28, in <module>
from cps.main import main
File "C:\Users\Andrew\Documents\GitHub\calibre-web\cps\__init__.py", line 36, in <module>
from .server import WebServer
File "C:\Users\Andrew\Documents\GitHub\calibre-web\cps\server.py", line 40, in <module>
from tornado.netutil import bind_unix_socket
ImportError: cannot import name 'bind_unix_socket' from 'tornado.netutil' (C:\Users\Andrew\py_envs\py310_calibre\lib\site-packages\tornado\netutil.py)
Environment (please complete the following information):
- OS:Windows 10
- Python version: python 3.10
- Calibre-Web version: f0cc93ab
- Docker container: None
- Special Hardware:
- Browser:
Additional context
Upps, forgot something
gevent should be added to requirements.txt. manually pip install gevent, then starts w/o errors.
Please update to the newest commit version, should work afterwards
Calibre-web supports 2 servers Gevent and Tornado, Tornado is the default one. Gevent is therefore listed in the optional-requirements.txt. The error is only in the Tornado part and only on Windows and is now fixed.