2017-01-22 21 views
1

私はUdacity web dev courseを使っていて、this exampleを使ってウェブページに単純なボケプロットを埋め込むことを試みたかったのです。 dev_appserver.pyを実行すると、エラーを与える:BokehはGoogle App Engineと互換性がありますか?

ERROR 2017-01-22 14:35:30,358 wsgi.py:263] 
Traceback (most recent call last): 
    File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform 
\google_appengine\google\appengine\runtime\wsgi.py", line 240, in Handle 
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler()) 
    File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform 
\google_appengine\google\appengine\runtime\wsgi.py", line 299, in _LoadHandler 
    handler, path, err = LoadObject(self._handler) 
    File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform 
\google_appengine\google\appengine\runtime\wsgi.py", line 85, in LoadObject 
    obj = __import__(path[0]) 
    File "C:\Users\Google Drive\Udacity web development 2017\udacit 
y-cs253\bokeh\1_docs_example\main.py", line 2, in <module> 
    from bokeh.plotting import figure 
    File "C:\Users\Google Drive\Udacity web development 2017\udacit 
y-cs253\bokeh\1_docs_example\lib\bokeh\plotting\__init__.py", line 2, in <module 
> 
    from ..document import Document; Document 
    File "C:\Users\Google Drive\Udacity web development 2017\udacit 
y-cs253\bokeh\1_docs_example\lib\bokeh\document.py", line 45, in <module> 
    from .core.json_encoder import serialize_json 
    File "C:\Users\Google Drive\Udacity web development 2017\udacit 
y-cs253\bokeh\1_docs_example\lib\bokeh\core\json_encoder.py", line 53, in <modul 
e> 
    NP_MS_DELTA = np.timedelta64(1, 'ms') 
TypeError: function takes at most 1 argument (2 given) 
INFO  2017-01-22 14:35:30,571 module.py:806] default: "GET/HTTP/1.1" 500 - 

私は間違っているかもしれないが、thisと組み合わせて、上記のエラーがボケ示唆はnumpyの> 1.6.1が必要です。具体的にはNumPy> 1.6.1を必要とすると思われるのはjson_encoder.pyです。

しかし、Google App Engine only supports NumPy1.6.1。これはBokehが実際にGAEと互換性がないことを意味しますか?

app.yamlを:

runtime: python27 
api_version: 1 
threadsafe: true 

handlers: 
- url: /.* 
    script: main.app 

libraries: 
- name: jinja2 
    version: latest 
- name: numpy 
    version: "1.6.1" 

答えて

1

Does this mean Bokeh is effectively not compatible with GAE?

私は、これは例えばボケ0.12.4最近のバージョン、についてかなり正確な評価であると言うでしょう。また、NumPy 1.7.1の要件は、プロジェクトの始めまで遡ります。しかし、BokehがNumPyにあまり依存していない時があったので、古いバージョンのBokehと1)NumPyがインストールされていないか、2)古いGAE NumPyがインストールされているかのどちらかが良いかもしれません。私はこれを明示することはできません、あなたは試してみる必要があります(YMMV)。

私はBokehコアチームのAFAIK no-oneがGAEを使用していると述べることができます。だから誰もNumPy制限について何も知らなかったことは驚くことではありません。おそらくNumPyのバージョンを緩めて1.6.1を含めることができます。私は確かに、それはいくつかの調査が必要であり、それが実現可能であるという保証はありません。時間とリソースが許す限り、私たちは確かにそれを考慮しようとします。だから、Bokeh project issue trackerに問題を提起することをお勧めします。もう一つの合理的な行動は、NumPy 1.6.1が現時点でかなり古くなっているため、ホワイトリストを更新するようにGAEに請願することです。

関連する問題