python / asyncio

asyncio historical repository
https://docs.python.org/3/library/asyncio.html
1.04k stars 177 forks source link

Syntax error on selectors.py when using bokeh python library #409

Closed abdulbudiaji closed 8 years ago

abdulbudiaji commented 8 years ago

Hi,

Recently I used bokeh python library version 0.12.1 and imported

from bokeh.charts import Bar

then occurred this SyntaxError

Traceback (most recent call last):
  File "bokeh_func.py", line 2, in <module>
    from bokeh.charts import Bar 
  File "/usr/local/lib/python2.7/dist-packages/bokeh/charts/__init__.py", line 10, in <module>
    from ..plotting.helpers import DEFAULT_PALETTE
  File "/usr/local/lib/python2.7/dist-packages/bokeh/plotting/__init__.py", line 7, in <module>
    from ..io import curdoc; curdoc
  File "/usr/local/lib/python2.7/dist-packages/bokeh/io.py", line 29, in <module>
    from .core.state import State
  File "/usr/local/lib/python2.7/dist-packages/bokeh/core/state.py", line 46, in <module>
    from ..client import DEFAULT_SESSION_ID
  File "/usr/local/lib/python2.7/dist-packages/bokeh/client/__init__.py", line 6, in <module>
    from .session import ClientSession, pull_session, push_session, show_session, DEFAULT_SESSION_ID
  File "/usr/local/lib/python2.7/dist-packages/bokeh/client/session.py", line 10, in <module>
    from ._connection import ClientConnection
  File "/usr/local/lib/python2.7/dist-packages/bokeh/client/_connection.py", line 11, in <module>
    from tornado import gen, locks
  File "/usr/local/lib/python2.7/dist-packages/tornado/gen.py", line 1243, in <module>
    import tornado.platform.asyncio
  File "/usr/local/lib/python2.7/dist-packages/tornado/platform/asyncio.py", line 33, in <module>
    import asyncio # type: ignore
  File "/usr/local/lib/python2.7/dist-packages/asyncio/__init__.py", line 9, in <module>
    from . import selectors
  File "/usr/local/lib/python2.7/dist-packages/asyncio/selectors.py", line 39
    "{!r}".format(fileobj)) from None
Martiusweb commented 8 years ago

Hi, This is a syntax error because you are using python 2.7, while raise ... from ... only works with python 3. It seems that bokeh uses asyncio, which only works with python 3.3+.

Unfortunately, there is nothing that can be done from our side.

asvetlov commented 8 years ago

Actually bokeh depends on tornado and works with Python 2.7 too. But, please, don't configure tornado to run over asyncio loop -- asyncio is Python 3 only.