New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make redis dependency of bokeh-server optional #59
Comments
Redis is already an optional dependency, in the sense that Bokeh can be used to generate plots in static HTML output, or in inline IPython Notebook output, both without redis. I don't think the current server functionality can be reproduced with any of the tools you mention since the server requires two-way communication/notifications. Also the browser JS application is not going to have access to arbitrary local filesystem resources. I am interested in exploring other communications/persistence options in the future (other databases, web sockets), but that is an entirely separate matter, so I am going to close this issue. |
But currently, when you run the bokeh-server, but do not have redis installed, you get:
If redis is truly an optional dependency, it should either:
|
After talking with Hugo, I have realized I have misunderstood the manner in which redis is used, so perhaps it can be made a truly optional dependency even for the server after all. But I don't know the time frame for adding this change, so in the mean time I will make it print a better message. |
Actually, it should be quite trivial to make the change so that on windows, the non-redis version just keeps all the objects around in a big global dict in the process, and it disappears when the process dies. |
@pzwang That would be actually fine by me. Is this implemented? |
@filmor this PR has been merged. It currently supports an in-memory bokeh-server, which is used by default on windows. Will add a simple "shelve" based on later. It should work on Chrome and FF, there appears to be html/css problems on IE, the plot divs fail to expand. I am going to make a separate ticket for that. Please re-open this issue if you have any problems! |
The server should fall back to something in the Python standard library, when redis is not available, e.g. in memory, shelve module, or sqlite3. Getting redis to work in not trival for most users, and it seems in particular difficult on Windows.
The text was updated successfully, but these errors were encountered: