python-eel/Eel

ValueError: Cannot construct a bare watcher

Open

#467 opened on Mar 22, 2021

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Python (570 forks)batch import
help wanted

Repository metrics

Stars
 (5,980 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

When attempting to run the hello world example I get the following error in both VirtualBox and on a Raspberry Pi 4, both running Ubuntu 16.04 and Python 2.

Hello from Python World!
Traceback (most recent call last):
  File "hello.py", line 13, in <module>
    eel.start('hello.html', size=(300, 200))  # Start
  File "/home/ubuntu/.local/lib/python2.7/site-packages/eel/__init__.py", line 164, in start
    run_lambda()
  File "/home/ubuntu/.local/lib/python2.7/site-packages/eel/__init__.py", line 160, in run_lambda
    app=app)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/bottle.py", line 3137, in run
    server.run(app)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/bottle_websocket/server.py", line 17, in run
    server.serve_forever()
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/baseserver.py", line 398, in serve_forever
    self.start()
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/baseserver.py", line 336, in start
    self.init_socket()
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/pywsgi.py", line 1545, in init_socket
    StreamServer.init_socket(self)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/server.py", line 180, in init_socket
    self.socket = self.get_listener(self.address, self.backlog, self.family)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/server.py", line 192, in get_listener
    return _tcp_listener(address, backlog=backlog, reuse_addr=cls.reuse_addr, family=family)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/server.py", line 284, in _tcp_listener
    sock = GeventSocket(family=family)
  File "/home/ubuntu/.local/lib/python2.7/site-packages/gevent/_socket2.py", line 139, in __init__
    self._read_event = io(fileno, 1)
  File "src/gevent/libev/corecext.pyx", line 674, in gevent.libev.corecext.loop.io
  File "src/gevent/libev/corecext.pyx", line 1048, in gevent.libev.corecext.io.__init__
  File "src/gevent/libev/corecext.pyx", line 919, in gevent.libev.corecext.watcher.__init__
ValueError: Cannot construct a bare watcher

  • OS: Ubuntu 16.04 (x64 VM and ARMv6 Pi 4)
  • Browser: Chromium
  • Version: 0.12.4
  • Python: 2.7.12

The interesting bit is if I try it on another machine which has native x64 Ubuntu 16.04 it somehow works fine, all other things being equal. And it would also seem that nobody's ever searched for "Cannot construct a bare watcher" on google, so that's interesting too.

Contributor guide