You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Jupyter extension for rendering [Bokeh](https://bokeh.org) content within Jupyter. See also the separate [ipywidgets_bokeh](https://github.com/bokeh/ipywidgets_bokeh) library for support for using Jupyter widgets/ipywidgets objects within Bokeh applications.
A Jupyter extension for rendering [Bokeh](https://bokeh.org) content within Jupyter. See also the separate [ipywidgets_bokeh](https://github.com/bokeh/ipywidgets_bokeh) library for support for using Jupyter widgets/ipywidgets objects within Bokeh applications.
@@ -53,41 +54,48 @@ installation may refer to the below table.
53
54
| 0.35.x | 0.6.3 |
54
55
| 1.0.x | 1.0.0 |
55
56
| 2.0.x | 2.0.0 |
57
+
| 3.0.x | 3.0.0 |
56
58
57
-
## Development
59
+
## Contributing
58
60
59
-
For a development install (requires npm version 6 or later), do the following in the repository directory:
61
+
### Development install
60
62
61
-
```bash
62
-
npm install
63
-
jupyter labextension link .
64
-
```
63
+
Note: You will need NodeJS to build the extension package.
65
64
66
-
To rebuild the package and the JupyterLab app:
65
+
The `jlpm` command is JupyterLab's pinned version of
66
+
[yarn](https://yarnpkg.com/) that is installed with JupyterLab. You may use
67
+
`yarn` or `npm` in lieu of `jlpm` below.
67
68
68
69
```bash
69
-
npm run build
70
-
jupyter lab build
70
+
# Clone the repo to your local environment
71
+
# Change directory to the jupyter_bokeh directory
72
+
# Install package in development mode
73
+
pip install -e .
74
+
# Link your development version of the extension with JupyterLab
75
+
jupyter labextension develop . --overwrite
76
+
# Rebuild extension Typescript source after making changes
77
+
jlpm run build
71
78
```
72
79
73
-
To incrementally rebuild the extension and JupyterLab after changes you can run
80
+
You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension.
74
81
75
82
```bash
76
-
npm run watch
83
+
# Watch the source directory in one terminal, automatically rebuilding when needed
84
+
jlpm run watch
85
+
# Run JupyterLab in another terminal
86
+
jupyter lab
77
87
```
78
88
79
-
and in another terminal run
89
+
With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt).
90
+
91
+
By default, the `jlpm run build` command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command:
80
92
81
93
```bash
82
-
jupyter lab --watch
94
+
jupyter lab build --minimize=False
83
95
```
84
96
85
-
When making a new release for compatibility with a new JupyterLab minor release series, please make a minor
86
-
release bump in this extension (i.e. 0.6.3 -> 0.7.0). Conversely, when creating a release for a new feature or bug fix,
87
-
please make a micro release bump (i.e. 0.6.3 -> 0.6.4).
88
-
89
-
## Testing
97
+
### Uninstall
90
98
91
-
There is a directory named ``examples`` which contains a collection of notebooks that cover the various ``jupyter_bokeh``
92
-
functionalities. If you update the extension for new JupyterLab releases, please manually execute each and check that the
93
-
expected behavior occurs. If you extend the ``jupyter_bokeh``, please add a new notebook that covers the new functionality.
0 commit comments