Comments (7)
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.
from bokeh.
But currently, when you run the bokeh-server, but do not have redis installed, you get:
$ ./bokeh-server -h
Traceback (most recent call last):
File "./bokeh-server", line 4, in <module>
from bokeh.server import start
File "/Users/ilan/src/Bokeh/bokeh/server/start.py", line 9, in <module>
import redis
ImportError: No module named redis
If redis is truly an optional dependency, it should either:
- print a message: "Redis needs to be installed to sun the bokeh-server"
- not include the bokeh-server script in setup.py when redis is not installed
from bokeh.
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.
from bokeh.
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.
from bokeh.
@pzwang That would be actually fine by me. Is this implemented?
from bokeh.
@filmor here is a PR for this #388 It needs a little more cleanup and work (I'd like to add a shelve backend as well) but I should be able to merge it later today.
from bokeh.
@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!
from bokeh.
Related Issues (20)
- Missing links in docs in "Third-party integrations" page
- [BUG] Toolbar above plot with many hovers shifted to the right
- [BUG] Outdated link in warning for standalone Python callback
- [BUG] Slight change in axes when select using match_aspect HOT 1
- [FEATURE] Support log axes for "pre-transformed" data HOT 6
- [BUG] max_zoom+1 is used for WMTSTileSource/MercatorTileSource
- Errors related to MIN_PREFERRED_MAX_WIDTH while building the docs HOT 1
- Broken page in the docs
- Explanation is part of the code block in the latex_axis_labels_titles_labels example HOT 1
- [BUG] Enforce `max_interval` / `min_interval` if `{x,y}_range` is not set HOT 1
- [BUG] Javascript Error Using AjaxDataSource With Image Data HOT 4
- [FEATURE] Create option for wheel zoom tool to apply only to subplot nearest to the cursor position HOT 1
- [BUG] Documentation Missing space character in the command to enable jupyter server extension in jupyterLab docs.
- Problems initializing Models using BokehJS without Python HOT 3
- Typo in the documentation related to writing tests in the Contribute section HOT 2
- App README links are all old / bad
- [BUG] Documentation: TypeScript in Custom Extensions section fails to compile HOT 4
- VBox is not working in 3.4.0rc1 HOT 14
- [FEATURE] Tab labels are fitted to the width of the page
- [FEATURE] Coloring of active tabs HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bokeh.