Panel

Latest version: v1.4.0

Safety actively analyzes 613482 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 11

1.0.1

Not secure
Date: 2023-05-18

A micro-release fixing some small issues discovered in Panel 1.0. Thank you to droumis, Hoxbro and philippjfr for contributing fixes.

Bug fixes

- Ensure `Reactive` objects wrapped in reactive are re-rendered correctly ([4868](https://github.com/holoviz/panel/pull/4868))
- Tweaks for Material `Design` component inset label styling ([4877](https://github.com/holoviz/panel/pull/4877))
- Ensure `SlidesTemplate` slides changes trigger updates in the `pn.state.location.hash` ([4878](https://github.com/holoviz/panel/pull/4878))

Documentation

- Fixes for cross-referencing and links in documentation ([4870](https://github.com/holoviz/panel/pull/4870), [#4872](https://github.com/holoviz/panel/pull/4872), [#4874](https://github.com/holoviz/panel/pull/4874), [#4875](https://github.com/holoviz/panel/pull/4875))

1.0.0

Not secure
Date: 2023-05-17

The Panel 1.0 release is finally here and it brings a huge number of improvements. The largest improvements in this release come from an upgrade from Bokeh 2.x to Bokeh 3.x. Bokeh overhauled its internal layout engine and stylesheet handling, making applications significantly more performant and customizable going forward.

This release marks a huge step forward in the usability of Panel but is also just a first step in leveraging many of the new capabilities that the updated layout engine and design system affords. In the coming months we will continue to improve and polish the UI and UX and make it easier for you to extend Panel as needed.

For now we want to thank the many people that contributed to this release either by contributing directly or by testing and providing feedback. Many thanks to the core contributors MarcSkovMadsen, Hoxbro, maximlt, jbednar, droumis and philippjfr and the outside contributors ahuang11, cdeil, MridulS, AndrewMaged814, midnighter and wendrul.

Major Features

The three main features we want to highlight as part of this release are:

- Add new and highly performant layout engine, addressing many performance and layout issues ([4326](https://github.com/holoviz/panel/pull/4326), [#4463](https://github.com/holoviz/panel/pull/4463), [#4491](https://github.com/holoviz/panel/pull/4491), [#4503](https://github.com/holoviz/panel/pull/4503), [#4522](https://github.com/holoviz/panel/pull/4522), [#4690](https://github.com/holoviz/panel/pull/4690))
- Add unified Design and Theme system ([4413](https://github.com/holoviz/panel/pull/4413), [#4475](https://github.com/holoviz/panel/pull/4475), [#4466](https://github.com/holoviz/panel/pull/4466), [#4540](https://github.com/holoviz/panel/pull/4540), [#4548](https://github.com/holoviz/panel/pull/4548), [#4770](https://github.com/holoviz/panel/pull/4770), [#4792](https://github.com/holoviz/panel/pull/4792), [#4793](https://github.com/holoviz/panel/pull/4793), [#4801](https://github.com/holoviz/panel/pull/4801))
- Implement support for passing parameters, widgets and bound functions by reference for simple and powerful reactivity ([4495](https://github.com/holoviz/panel/pull/4495), [#4505](https://github.com/holoviz/panel/pull/4505), [#4603](https://github.com/holoviz/panel/pull/4603), [#4606](https://github.com/holoviz/panel/pull/4606))

Some of the changes related to the new layout engine and design system will require small updates to your existing applications. To make this transition as smooth as possible we have provided an [upgrade/migration guide](https://panel.holoviz.org/panel/upgrade.html).

New Components

This release also adds a number of exciting new components you can leverage in your applications:

- Add `Swipe` layout ([3007](https://github.com/holoviz/panel/pull/3007))
- Add `Switch` widget ([[4130](https://github.com/holoviz/panel/pull/4130)](https://github.com/holoviz/panel/pull/4130))
- Add `Vizzu` pane ([4226](https://github.com/holoviz/panel/pull/4226), [#4739](https://github.com/holoviz/panel/pull/4739))
- Add `BrowserInfo` model to expose browser window and navigator APIs ([4533](https://github.com/holoviz/panel/pull/4533))
- Add `BasicAuth` provider for quick password based auth ([4684](https://github.com/holoviz/panel/pull/4684))
- Add `FloatPanel` layout ([4707](https://github.com/holoviz/panel/pull/4707), [#4711](https://github.com/holoviz/panel/pull/4711))
- Add a `SlidesTemplate` based on reveal.js to create interactive presentations ([4798](https://github.com/holoviz/panel/pull/4798))

Major enhancements

There are also a number of major enhancements in this release that we are very excited about:

- Improved Markdown rendering ([4688](https://github.com/holoviz/panel/pull/4688))
- Add support for tooltips on widgets ([[4130](https://github.com/holoviz/panel/pull/4130)](https://github.com/holoviz/panel/pull/4130), [#4621](https://github.com/holoviz/panel/pull/4621), [#4643](https://github.com/holoviz/panel/pull/4643))
- Ensure `.ipynb` and `.md` based apps can be used as `--index` ([4432](https://github.com/holoviz/panel/pull/4432))
- Add support for selecting `format` and `encoding` for Matplotlib image output and implemented responsive Image sizing ([4514](https://github.com/holoviz/panel/pull/4514))
- Add support for icons on `Button` ([4797](https://github.com/holoviz/panel/pull/4797))
- Add generic `Image` pane that auto-detects the image filetype ([4551](https://github.com/holoviz/panel/pull/4551))
- Add support for writing applications in Markdown ([4602](https://github.com/holoviz/panel/pull/4602))
- Improve support for inline resources for Jupyter ([3013](https://github.com/holoviz/panel/pull/3013), [#4787](https://github.com/holoviz/panel/pull/4787))
- Add ability to reuse sessions to speed up rendering ([3679](https://github.com/holoviz/panel/pull/3679), [#4658](https://github.com/holoviz/panel/pull/4658))
- Improve notebook resource and extension loading ([4752](https://github.com/holoviz/panel/pull/4752))
- Add ability to add global loading spinner to application(s) ([4659](https://github.com/holoviz/panel/pull/4659))

Documentation

The last major change we want to highlight is a complete overhaul of the documentation, moving from long and difficult-to-navigate user guides to distinct easily applied how-to guides along with separate, longer explanation sections. We also put in significant effort to ensure that most of our documentation can be run interactively in Pyodide or JupyterLite.

- Modernize documentation by using latest pydata-sphinx-theme ([4609](https://github.com/holoviz/panel/pull/4609), [#4701](https://github.com/holoviz/panel/pull/4701))
- Add upgrade/migration guide ([4693](https://github.com/holoviz/panel/pull/4693))
- Add Explanation section ([2797](https://github.com/holoviz/panel/pull/2797), [#3168](https://github.com/holoviz/panel/pull/3168), [#4664](https://github.com/holoviz/panel/pull/4664))
- Migrate user guide to how-to guides ([4244](https://github.com/holoviz/panel/pull/4244), [#4251](https://github.com/holoviz/panel/pull/4251), [#4267](https://github.com/holoviz/panel/pull/4267), [#4290](https://github.com/holoviz/panel/pull/4290), [#4412](https://github.com/holoviz/panel/pull/4412), [#4422](https://github.com/holoviz/panel/pull/4422), [#4759](https://github.com/holoviz/panel/pull/4759), [#4774](https://github.com/holoviz/panel/pull/4774))
- Completely overhaul App Gallery ([4047](https://github.com/holoviz/panel/pull/4047), [#4565](https://github.com/holoviz/panel/pull/4565), [#4574](https://github.com/holoviz/panel/pull/4574), [#4598](https://github.com/holoviz/panel/pull/4598), [#4683](https://github.com/holoviz/panel/pull/4683))
- Use pyodide rendering throughout documentation and add JupyterLite links ([4751](https://github.com/holoviz/panel/pull/4751))

Deprecations & API changes

Compatibility

- Bokeh 3 compatibility ([4098](https://github.com/holoviz/panel/pull/4098), [#4117](https://github.com/holoviz/panel/pull/4117), [#4129](https://github.com/holoviz/panel/pull/4129), [#4140](https://github.com/holoviz/panel/pull/4140), [#4150](https://github.com/holoviz/panel/pull/4150), [#4275](https://github.com/holoviz/panel/pull/4275), [#4467](https://github.com/holoviz/panel/pull/4467), [#4435](https://github.com/holoviz/panel/pull/4435), [#4441](https://github.com/holoviz/panel/pull/4441), [#4449](https://github.com/holoviz/panel/pull/4449), [#4448](https://github.com/holoviz/panel/pull/4448), [#4508](https://github.com/holoviz/panel/pull/4508))
- Upgrade plotly.js to 2.18.0 ([4320](https://github.com/holoviz/panel/pull/4320))
- Upgrade Tabulator to 5.4 and optimize rendering ([4482](https://github.com/holoviz/panel/pull/4482)](https://github.com/holoviz/panel/pull/4482))
- Upgrade Echarts to 5.4.1 ([4538](https://github.com/holoviz/panel/pull/4538))
- Upgrade pyodide (0.23.1) and pyscript versions ([4344](https://github.com/holoviz/panel/pull/4344))
- Add support for altair and vega-lite v5 ([4488](https://github.com/holoviz/panel/pull/4488))
- Add support for latest versions of ipywidgets ([4716](https://github.com/holoviz/panel/pull/4716), [#4766](https://github.com/holoviz/panel/pull/4766), [#4779](https://github.com/holoviz/panel/pull/4779))

Deprecations

- Deprecate `IDOM` pane ([4293](https://github.com/holoviz/panel/pull/4293)](https://github.com/holoviz/panel/pull/4293), [#4323](https://github.com/holoviz/panel/pull/4323))
- Deprecate `Viewable.app` ([4293](https://github.com/holoviz/panel/pull/4293)](https://github.com/holoviz/panel/pull/4293))
- Deprecate `Viewable.pprint` ([4347](https://github.com/holoviz/panel/pull/4347))
- Deprecate and remove `RGGPlot`
- Rename `Ace` to `CodeEditor` ([4627](https://github.com/holoviz/panel/pull/4627))

API changes & Backward Compatibility

- Pandas is now only a (lazy) runtime dependency ([4411](https://github.com/holoviz/panel/pull/4411))
- `Tabulator.frozen_rows` now respects the order of rows in the data instead of the order in which the `frozen_rows` were defined ([4482](https://github.com/holoviz/panel/pull/4482)](https://github.com/holoviz/panel/pull/4482))
- Make `margin` defaults consistent across widgets and panes ([4528](https://github.com/holoviz/panel/pull/4528))
- Extension calls must specify all required extensions ([4562](https://github.com/holoviz/panel/pull/4562))
- The `.embed` method now returns a Mimebundle object for rendering ([4791](https://github.com/holoviz/panel/pull/4791))
- Remove `panel examples` CLI command and pyct dependency ([4691](https://github.com/holoviz/panel/pull/4691))
- Expose all layout components in top-level API ([4696](https://github.com/holoviz/panel/pull/4696))

Other Enhancements

Configuration

- Allow to set the log level of the Admin logger ([3495](https://github.com/holoviz/panel/pull/3495))
- Add `pn.state.served` to simplify determining whether script is executed as an application or in an interactive session ([4252](https://github.com/holoviz/panel/pull/4252))
- Add `pn.config.loading_indicator` to determine whether to show loading indicator by default ([4259](https://github.com/holoviz/panel/pull/4259))

Jupyter

- Improve startup, error handling and shutdown of Jupyter kernels ([4364](https://github.com/holoviz/panel/pull/4364))
- Log errors in JupyterLab preview to server logs ([4773](https://github.com/holoviz/panel/pull/4773))
- Support binary JS -> Python communication in notebooks ([4635](https://github.com/holoviz/panel/pull/4635))
- Modify sys.path when running inside Jupyter Kernel ([4489](https://github.com/holoviz/panel/pull/4489))

Pyodide

- IPython `display` compatibility in pyodide builds ([4270](https://github.com/holoviz/panel/pull/4270))
- Ensure `panel convert` respects `pn.config` ([4359](https://github.com/holoviz/panel/pull/4359))
- Fix notification support in Pyodide ([4387](https://github.com/holoviz/panel/pull/4387))

Miscelleanous

- Handle cancelling and empty value edit events on `Tabulator` ([4343](https://github.com/holoviz/panel/pull/4343))
- Add favicon to base template ([4626](https://github.com/holoviz/panel/pull/4626))
- Ensure `CrossSelector` filters apply on each keystroke ([4339](https://github.com/holoviz/panel/pull/4339))
- Do not re-create `Vega.selections` object unless selections changed ([4497](https://github.com/holoviz/panel/pull/4497))
- Standardize parameter mapping APIs ([4386](https://github.com/holoviz/panel/pull/4386))
- Add `Plotly.link_figure` parameter ([4333](https://github.com/holoviz/panel/pull/4333))
- Add support for .JPEG file extension in the `JPG` pane ([4532](https://github.com/holoviz/panel/pull/4532))
- Make periodic callback `counter` a parameter ([4134](https://github.com/holoviz/panel/pull/4134))
- Add Echarts events ([2174](https://github.com/holoviz/panel/pull/2174))
- Additional cache support ([4663](https://github.com/holoviz/panel/pull/4663), [#4667](https://github.com/holoviz/panel/pull/4667))

Bug fixes

- Fix caching on undecorated Parameterized method ([4332](https://github.com/holoviz/panel/pull/4332))
- Ensure that global notification object can be used inside notebook callbacks ([4331](https://github.com/holoviz/panel/pull/4331))
- Ensure `hash_funcs` are applied recursively in cache ([4334](https://github.com/holoviz/panel/pull/4334))
- Fix cache `FIFO` policy bug ([4789](https://github.com/holoviz/panel/pull/4789))
- Fix specifying custom index with relative path ([4288](https://github.com/holoviz/panel/pull/4288))
- Fix issue reusing `FileDownload` model ([4328](https://github.com/holoviz/panel/pull/4328))
- Fix `DeckGL` tooltip handling ([4628](https://github.com/holoviz/panel/pull/4628))
- Fix NumPy integer/floating checks on `Perspective` ([4366](https://github.com/holoviz/panel/pull/4366))
- Ensure `memray` profiler temporary file is flushed ([4666](https://github.com/holoviz/panel/pull/4666))
- Fix mimetype issue on windows ([4738](https://github.com/holoviz/panel/pull/4738))
- Fix `Plotly` undefined value errors for eventdata ([4355](https://github.com/holoviz/panel/pull/4355))

Tabulator

- Ensure updates to `Tabulator` formatter or editor updates model ([4296](https://github.com/holoviz/panel/pull/4296), [#4781](https://github.com/holoviz/panel/pull/4781))
- Ensure `Tabulator` internal `_index_mapping` is updated on stream ([4292](https://github.com/holoviz/panel/pull/4292))
- Ensure `Tabulator` header filters aren't treated as regex ([4423](https://github.com/holoviz/panel/pull/4423))
- Ensure `Tabulator` `styles` are re-applied when local pagination changes ([4795](https://github.com/holoviz/panel/pull/4795))

Jupyter

- Ensure JupyterLab preview works on Windows ([4819](https://github.com/holoviz/panel/pull/4819))
- Ensure notifications are enabled even if hv.extension has been loaded ([4330](https://github.com/holoviz/panel/pull/4330))

0.14.4

Not secure
Date: 2023-03-04

This release is a small bug fix release preceding the upcoming major release of Panel 1.0. Many thanks to the contributors to this release which include MarcSkovMadsen, maximlt, Hoxbro and philippjfr.

Bugs

- Fix `Tabulator` client-side string filters by not parsing them as regex ([4423](https://github.com/holoviz/panel/pull/4423))
- Fix the RGGPlot pane ([4380](https://github.com/holoviz/panel/pull/4380))
- Fix `panel examples` command by ensuring examples are correctly packaged ([4484](https://github.com/holoviz/panel/pull/4484))
- Fix event generation by considering NaNs as equal when comparing Numpy arrays ([4481](https://github.com/holoviz/panel/pull/4481))
- Use cache from previous sessions when using `to_disk` ([4481](https://github.com/holoviz/panel/pull/4481))
- Fix relative imports when running inside Jupyter Kernel ([4489](https://github.com/holoviz/panel/pull/4489))
- Do not re-create `Vega.selections` object unless selections changed ([4497](https://github.com/holoviz/panel/pull/4497))

Enhancements

- Add support for altair and vega-lite v5 ([4488](https://github.com/holoviz/panel/pull/4488))

Misc

- Use latest react-grid from CDN ([4461](https://github.com/holoviz/panel/pull/4461))

0.14.3

Not secure
Date: 2023-01-28

This release introduces a large number of bug fixes and minor enhancements. Due to the upcoming release of Panel 1.0 we have also made the unconventional decision to issue new deprecation in a micro release. Specifically the `IDOM` pane and `Viewable.app` and `Viewable.pprint` methods have been scheduled for deprecation. Many thanks to the contributors to this release which include wendrul, droumis and the core team MarcSkovMadsen, maximlt, Hoxbro and philippjfr.

Bugs

Tabulator

- Ensure streamed rows on `Tabulator` can be edited ([4292](https://github.com/holoviz/panel/pull/4292))
- Ensure changes on `Tabulator` `formatter` and `editor` models are reflected in frontend ([4296](https://github.com/holoviz/panel/pull/4296))
- Ensure cancelling edit does not clear cell on `Tabulator` ([4343](https://github.com/holoviz/panel/pull/4343))
- Ensure inserting empty data on numeric column in `Tabulator` does not error ([4343](https://github.com/holoviz/panel/pull/4343))

Notebook

- Fix issues rendering components as ipywidgets for some versions of ipykernel ([4289](https://github.com/holoviz/panel/pull/4289))
- Add warning if custom resources could not be loaded in notebook ([4329](https://github.com/holoviz/panel/pull/4329))
- Ensure notifications are enabled even if `hv.extension` has been loaded ([4330](https://github.com/holoviz/panel/pull/4330))
- Ensure global notification object can be used inside notebook callbacks ([4331](https://github.com/holoviz/panel/pull/4331))

Type definitions

- Fix return type of `Widget.from_param` ([4335](https://github.com/holoviz/panel/pull/4335))
- Ensure type annotation allows `str` and `PathLike` objects on `panel.serve` ([4336](https://github.com/holoviz/panel/pull/4336))
- Fix type annotations on `panel.io.convert.convert_app`(s) ([4342](https://github.com/holoviz/panel/pull/4342))

Misc

- Ensure markdown links render correctly in template sidebar ([4222](https://github.com/holoviz/panel/pull/4222))
- Improve .applies for `ECharts` and `DeckGL` ([4224](https://github.com/holoviz/panel/pull/4224))
- Fix specifying custom `--index` with relative path ([4288](https://github.com/holoviz/panel/pull/4288))
- Skip `on_load` callbacks in liveness check ([4302](https://github.com/holoviz/panel/pull/4302))
- Ensure re-rendered `FileDownload` still fetches live data ([4328](https://github.com/holoviz/panel/pull/4328))
- Fix handling of `panel.cache` on undecorated `Parameterized` method ([4332](https://github.com/holoviz/panel/pull/4332))
- Ensure user provided `hash_funcs` are applied in `panel.cache` ([4334](https://github.com/holoviz/panel/pull/4334))
- Fix plotly eventdata undefined val ([4355](https://github.com/holoviz/panel/pull/4355))
- Ensure `panel convert` respects `panel.config` options ([4359](https://github.com/holoviz/panel/pull/4359))
- Propagate options from HoloViews and Bokeh plots to enclosing Pane ([4360](https://github.com/holoviz/panel/pull/4360))
- Propagate options from dynamic components such as ParamMethod and Interactive to enclosing layout ([4360](https://github.com/holoviz/panel/pull/4360))

Minor enhancements

- Allow to set the log level of the Admin logger ([3495](https://github.com/holoviz/panel/pull/3495))
- Make `refresh_token` available in Auth ([4227](https://github.com/holoviz/panel/pull/4227))
- Simplify determining whether script is executed as application with `pn.state.served` property ([4252](https://github.com/holoviz/panel/pull/4252))
- Add `loading_indicator` to global `config` ([4259](https://github.com/holoviz/panel/pull/4259))
- IPython `display` compatibility in pyodide builds ([4270](https://github.com/holoviz/panel/pull/4270))
- Split `PanelJupyterExecutor` into separate module ([4276](https://github.com/holoviz/panel/pull/4276))
- Allow dynamic loading of javascript modules in `ReactiveHTML` ([4319](https://github.com/holoviz/panel/pull/4319))
- Add `Plotly.link_figure` parameter ([4333](https://github.com/holoviz/panel/pull/4333))
- Ensure `CrossSelector` filters apply on each keystroke ([4339](https://github.com/holoviz/panel/pull/4339))
- Improve startup, error handling and shutdown of Jupyter kernels in `jupyter_server_extension` ([4364](https://github.com/holoviz/panel/pull/4364))

Compatibility and Version Updates

- Upgrade plotly.js to 2.10.1 ([4320](https://github.com/holoviz/panel/pull/4320))
- Upgrade to pyodide 0.22.1 in `panel convert` ([4334](https://github.com/holoviz/panel/pull/4334))
- Upgrade to pyscript 2022.12.01 in `panel convert` ([4334](https://github.com/holoviz/panel/pull/4334))
- Fix compatibility of Perspective pane with Numpy 1.24 ([4362](https://github.com/holoviz/panel/issues/4362))

Deprecations

- Add deprecation warning to `IDOM` pane ([4293](https://github.com/holoviz/panel/pull/4293))
- Add deprecation warning for `Viewable.app` and `Viewable.pprint` methods ([4293](https://github.com/holoviz/panel/pull/4293), [#4347](https://github.com/holoviz/panel/pull/4347))

Documentation

- Add CONTRIBUTING.md ([4262](https://github.com/holoviz/panel/pull/4262))
- Add Gallery VideoStream example ([4047](https://github.com/holoviz/panel/pull/4047))
- Add description of literal options to the docs for `ReactiveHTML` ([3803](https://github.com/holoviz/panel/pull/3803))

0.14.2

Not secure
Date: 2022-12-14

This release primarily focuses on bug fixes. In particular it resolves various issues with support for rendering `ipywidgets` (particularly in `ipywidgets>=8.0`) and also fixes a number of issues with the Jupyter Server previews. Many thanks for govinda18, joelostblom, banesullivan, xeldnahcram, geronimogoemon, minasouliman, peterfpeterson, jlstevens and the core maintainers maximlt, Hoxbro, MarcSkovMadsen and philippjfr for their contributions to this release.

Enhancements

- Add support for `Tqdm.process_map` ([4093](https://github.com/holoviz/panel/pull/4093))
- Support non-vtkPolyData types in vtk synchronizer ([4124](https://github.com/holoviz/panel/pull/4124))
- Allow invoking `convert` functions from pyodide ([4135](https://github.com/holoviz/panel/pull/4135))
- Support `step` format in date sliders ([4152](https://github.com/holoviz/panel/pull/4152))
- Add a `Reacton` component to simplify rendering ([4190](https://github.com/holoviz/panel/pull/4190))

Bugs

- Ensure Jupyter server extension serves resources, extensions and paths correctly ([4083](https://github.com/holoviz/panel/pull/4083), [#4133](https://github.com/holoviz/panel/pull/4133), [#4202](https://github.com/holoviz/panel/pull/4202))
- Ensure `IPyWidget` comm does not break when new widget is rendered ([4091](https://github.com/holoviz/panel/pull/4091))
- Improving detection of comms in VSCode and Google Colab ([4115](https://github.com/holoviz/panel/pull/4115))
- Ensure `.js` mimetype is served correctly on Windows ([4118](https://github.com/holoviz/panel/pull/4118))
- Ensure unhiding `Tabulator` columns renders cells correctly ([4119](https://github.com/holoviz/panel/pull/4119))
- Ensure embedded `Slider` widgets initialize with correct default ([4121](https://github.com/holoviz/panel/pull/4121))
- Handle missing event loop in thread gracefully ([4123](https://github.com/holoviz/panel/pull/4123))
- Ensure `Matplotlib` pane handles explicit `width`/`height` settings correctly ([4128](https://github.com/holoviz/panel/pull/4128))
- Allow `Viewer` to render servable but non-viewable objects ([4131](https://github.com/holoviz/panel/pull/4131))
- Fix regression in tracking sessions in admin interface ([4132](https://github.com/holoviz/panel/pull/4132))
- Ensure `Tabs` headers do not scroll unnecessarily ([4146](https://github.com/holoviz/panel/pull/4146))
- Ensure `Location` model reports as idle ([4159](https://github.com/holoviz/panel/pull/4159))
- Fix auth error template rendering ([4162](https://github.com/holoviz/panel/pull/4162))
- Fix issues with value on `EditableSlider` when it is outside `fixed_start` / `fixed_end` range ([4169](https://github.com/holoviz/panel/pull/4169))
- Ensure `ipywidgets` events are handled the same way as regular events ([4171](https://github.com/holoviz/panel/pull/4171))
- Don't raise `TypeError` for class which contains `__panel__` ([4174](https://github.com/holoviz/panel/pull/4174))
- Do not dispatch events if bokeh `Document` is set to hold events ([4178](https://github.com/holoviz/panel/pull/4178))
- Execute `onload` callbacks immediately in pyodide app ([4191](https://github.com/holoviz/panel/pull/4191))
- Improve `IPyWidget` kernel handling in server contexts ([4195](https://github.com/holoviz/panel/pull/4195))
- Fix rendering of `IPyWidget` with child views in the notebook ([4197](https://github.com/holoviz/panel/pull/4197))

Docs

- Add JupyterLite build and instructions ([4122](https://github.com/holoviz/panel/pull/4122))
- Document deployment to Hugging Face Spaces ([4143](https://github.com/holoviz/panel/pull/4143))

0.14.1

Not secure
Date: 2022-10-28

This release primarily addresses regressions introduced in 0.14.0 and various long standing bugs. Many thanks to external contributors liu-kan and KedoKudo and the maintainers Hoxbro, maximlt and philippjfr for contributing a number of fixes.

Minor enhancements

- Improve support for `requests` in pyodide ([3973](https://github.com/holoviz/panel/pull/3973))
- Add option to clear value of DatetimePicker ([3990](https://github.com/holoviz/panel/pull/3990))
- Add support for hashing dates in pn.cache ([4004](https://github.com/holoviz/panel/pull/4004))
- Silence `EMPTY_LAYOUT` warnings ([4056](https://github.com/holoviz/panel/pull/4056))

Compatibility

- Fix Jupyterlite and latest PyScript compatibility ([4040](https://github.com/holoviz/panel/pull/4040))

Bugs

Webassembly conversion

- Correctly handle resource mode in when converting to WebAssembly ([3967](https://github.com/holoviz/panel/pull/3967))

Jupyter and Server

- Correctly handle future exceptions on threads ([3977](https://github.com/holoviz/panel/pull/3977))
- Fix `panel serve` index template ([3980](https://github.com/holoviz/panel/pull/3980))
- Do not error if `curdoc` has been destroyed ([3994](https://github.com/holoviz/panel/pull/3994))
- Ensure extensions loaded in jupyter kernel are served by StaticHandler ([4000](https://github.com/holoviz/panel/pull/4000))
- Various fixes for OAuth handling with `pn.serve` ([4006](https://github.com/holoviz/panel/pull/4006))
- Fix bug in `on_load` callback exception handling ([4007](https://github.com/holoviz/panel/pull/4007))
- Ensure periodic callbacks are only started on main thread ([4011](https://github.com/holoviz/panel/pull/4011))
- Ensure jupyter server extension handles explicit `root_dir` ([4029](https://github.com/holoviz/panel/pull/4029))
- Ensure futures are correctly awaited when executed on thread ([4031](https://github.com/holoviz/panel/pull/4031))

Components

- Ensure `Tabulator` handles filtering on edited values correctly if `show_index=False` ([3988](https://github.com/holoviz/panel/pull/3988), [#4016](https://github.com/holoviz/panel/pull/4016))
- Ensure `Tabulator` declares numeric sorter for numeric dtypes ([3999](https://github.com/holoviz/panel/pull/3999))
- Fix regression initializing `DiscreteSlider` with non-integer value ([4009](https://github.com/holoviz/panel/pull/4009))
- Ensure that template.config.raw_css is correctly applied ([4018](https://github.com/holoviz/panel/pull/4018))
- Fix handling `MenuButton` clicks when `split=True` ([4021](https://github.com/holoviz/panel/pull/4021))
- Ensure styling on `Tabulator` with empty DataFrame does not error ([4028](https://github.com/holoviz/panel/pull/4028))
- Allow changing `level` on `Debugger` widget ([4057](https://github.com/holoviz/panel/pull/4057)

Page 4 of 11

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.