Я получаю следующее сообщение об ошибке при попытке запустить мой смерч сервер на PyPy:Торнадо на PyPy
/pypy3-2.4.0-osx64/site-packages/pkg_resources/__init__.py:80: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
Кто-нибудь знает, что это говорит о?
Также почему нормальный интерпретатор Python позволяет следующую функцию:
@tornado.gen.coroutine
def get(self,id):
doc=[]
cursor = self.c.find({"_id":id})
while (yield cursor.fetch_next):
doc.append(cursor.next_object())
return doc
Однако PyPy жалуется, используя возврат внутри генератора. Я прочитал кое-что, и, по-видимому, правильным способом является выход вместо возвращения?
@tornado.gen.coroutine
def get(self,id):
doc=[]
cursor = self.c.find({"_id":id})
while (yield cursor.fetch_next):
doc.append(cursor.next_object())
yield doc
Я изменил уступать, чтобы избавиться от ошибок в PyPy затем вернулся к нормальному питону и он разбился.
Какую версию Python вы используете? –
Это не ошибка, это предупреждение, выданное pkg_resources, в котором говорится, что будущие версии, основанные на новых функциях python, не будут работать на используемой версии pypy (pypy3 2.4 обеспечивает только совместимость с python3.2.5). Это означает, что вы не сможете использовать более новые версии setuptools. – mata
Прежде чем пытаться перейти на pypy, я запускал: ** Python 3.4.3 (v3.4.3: 9b73f1c3e601, Feb 23 2015, 02:52:03) Я загрузил pypy Python 3.2.5, совместимый с PyPy3 2.4.0 ** Хорошо, поэтому У python 3.4 могут быть функции, которые я использую, которые не совместимы с этим pypy, потому что он поддерживает только python 3.2. Правильно ли это? –