/ / Czy jest jakiś sposób na uruchomienie gevent-socketio 0.3.5-rc2 z gunicorn 18.0 bez obniżenia wersji - gevent, gunicorn, gevent-socketio

Czy jest jakikolwiek sposób, aby uruchomić gevent-socketio 0.3.5-rc2 z gunicorn 18.0 bez degradacji - gevent, gunicorn, gevent-socketio

Biegnę:

gevent==0.13.8
gevent-socketio==0.3.5-rc2
gunicorn==18.0

I wystąpił następujący błąd:

2013-11-05 06:40:00 [5671] [ERROR] Exception in worker process:
Traceback (most recent call last):
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/arbiter.py", line 495, in spawn_worker
worker.init_process()
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 165, in init_process
super(GeventWorker, self).init_process()
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/workers/base.py", line 112, in init_process
self.run()
File "/home/vagrant/server/lib/python2.7/site-packages/socketio/sgunicorn.py", line 14, in run
self.socket.setblocking(1)
AttributeError: "GeventSocketIOWorker" object has no attribute "socket"

Poprzednie pytanie dotyczące przepełnienia stosu zawiera rozwiązanie „powrót do wersji 16.0”

GeventSocketIOWorker nie ma atrybutu „socket”

Jednak nie chcę tego robić, ponieważ dodatki w wersji 18.0 są dla mnie naprawdę przydatne.

Pytam tutaj, ponieważ nie jestem pewien, czy istnieje łatwe rozwiązanie, którego mi brakuje. Jeśli nie, wyobrażam sobie, że będę musiał zebrać bilet na gunicorn?

Odpowiedzi:

0 dla odpowiedzi № 1

To była wersja.

Wersja gevent-socketio 0.3.5-rc2 została przesłana do Pypi w lipcu 2012 r. Poprawka dotycząca tego problemu pojawiła się w styczniu 2013 r.

Rozwiązałem go za pomocą gałęzi master z repozytorium gevent-socketio na GitHub. Aby to zrobić, zmień wiersz dla gevent-socketio w wymagania.txt na

-e git+git@github.com:abourget/gevent-socketio.git#egg=gevent_socketio