diff --git a/CHANGELOG.md b/CHANGELOG.md index 208512c..8f70d7a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,11 +7,12 @@ ### Enhancements made - Upgraded to provide asynchronous bi-directional comms for performing operations - in the Frontend. Each operation returns a task that when complete returns the response or raise an error if unsuccessful. -- On the Python side `JupyterFrontEnd`, `CommandRegistry`, & `CommandPalette` - are all derived from `AsyncWidgetBase` and are now single instance objects. + in the Frontend. Each operation returns a task that when complete returns the + response or raise an error if unsuccessful. +- On the Python side `JupyterFrontEnd` is derived from `AsyncWidgetBase` and is now a singleton per kernel. - On the JavaScript frontend side `JupyterFrontendModel`, `CommandRegistryModel`, `CommandPalletModel`, extend the new `IpylabModel`. +- `Connections` provides a link from Python to an object in the Frontend. ### Added @@ -26,7 +27,7 @@ ### Removed - Callback functionality -- Drop Python < 3.11 +- Drop Python < 3.10 - Drop Jupyterlab < 4.0 - Drop IpyWidgets < 8.1.0 diff --git a/README.md b/README.md index ea0a542..08bc735 100644 --- a/README.md +++ b/README.md @@ -65,6 +65,7 @@ Or with `mamba` / `conda`: mamba install -c conda-forge ipylab ``` + ## Running the examples locally To try out the examples locally, the recommended way is to create a new environment with the dependencies: @@ -88,11 +89,16 @@ jupyter lab ```bash # create a new conda environment -mamba create -n ipylab -c conda-forge jupyter-packaging nodejs python=3.10 -y +mamba create -n ipylab -c conda-forge nodejs python=3.10 -y # activate the environment conda activate ipylab + # Install a patched version of ipwidgets & jupyterlab_widgets from local wheels to provide 'per-kernel-widget-manager'. +# combines: https://github.com/jupyter-widgets/ipywidgets/pull/3922 & https://github.com/jupyter-widgets/ipywidgets/pull/3921 + +pip install pkg/*.whl --force-reinstall + # install the Python package pip install -e ".[dev]" @@ -101,7 +107,7 @@ jupyter labextension develop . --overwrite # compile the extension jlpm clean -jlpm && jlpm build +jlpm build # pre-commit (optional) pip install pre-commit diff --git a/docs/jupyter_lite_config.json b/docs/jupyter_lite_config.json index 64f2646..11fe476 100644 --- a/docs/jupyter_lite_config.json +++ b/docs/jupyter_lite_config.json @@ -2,7 +2,7 @@ "PipliteAddon": { "piplite_urls": [ "../dist", - "https://files.pythonhosted.org/packages/py3/i/ipywidgets/ipywidgets-8.1.2-py3-none-any.whl" + "../pkg" ] } } diff --git a/pkg/ipywidgets-8.1.5-py3-none-any.whl b/pkg/ipywidgets-8.1.5-py3-none-any.whl new file mode 100644 index 0000000..8f7da6b Binary files /dev/null and b/pkg/ipywidgets-8.1.5-py3-none-any.whl differ diff --git a/pkg/jupyterlab_widgets-3.0.13-py3-none-any.whl b/pkg/jupyterlab_widgets-3.0.13-py3-none-any.whl new file mode 100644 index 0000000..a734e6d Binary files /dev/null and b/pkg/jupyterlab_widgets-3.0.13-py3-none-any.whl differ diff --git a/pkg/widgetsnbextension-4.0.13-py3-none-any.whl b/pkg/widgetsnbextension-4.0.13-py3-none-any.whl new file mode 100644 index 0000000..fdf6e53 Binary files /dev/null and b/pkg/widgetsnbextension-4.0.13-py3-none-any.whl differ