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)
- [BUG] Cannot `micropip.install("bokeh>=3.4.0")` HOT 8
- activate pydata-sphinx-theme version banner
- Build job failing due to version mismatch HOT 3
- [BUG] Lack of range expansion when there remains unbounded directions, even when `maintain_focus=False`
- [FEATURE] HOT 1
- [FEATURE] Support range bounds for categorical axis HOT 2
- Tap tool default mode should select+unselect, but not append HOT 6
- bokehjs' build fails on Windows with no explanation
- [FEATURE] NumPy 2.0 support HOT 5
- Image blur example is unusably slow
- Faces example draws box in incorrect location
- [BUG] Using array/list in line_dash for hspan doesn't work HOT 7
- [BUG] ContourColorBar update is incomplete HOT 3
- [Enhancement] Improve User Interaction Clarity for Polygon Drawing Tool in Bokeh 3.4.x HOT 9
- [BUG] cannot build environment with pixi due to `firefox =>96` constraint
- Can't build extensions on Windows
- [BUG] <b> and <strong> ignored in tooltips on Firefox HOT 3
- Move sampledata files to pip/conda installable package HOT 5
- [BUG] TableColumn visible property is not working if a column is added after the DataTable is created
- [BUG] autosize_mode prevents DataTable values to be updated
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.