Skip to content
Compare
Choose a tag to compare

This release is primarily a bug fix release but also includes a number of enhancements. Many thanks to @Hoxbro, @joelostblom, @raybellwaves, @pdrok, @tlvu, @govinda18, @MridulS and the core maintainers @MarcSkovMadsen, @maximlt and @philippjfr for contributing to this release.

Enhancements

  • Add repr to cell and edit events (#3434)
  • Improvements for pyodide handling (#3444, #3508, #3511)
  • Add support for Plotly animation frames (#3449)
  • Implement single and multi-selection in Vega pane (#3470, #3499, #3505)
  • Add typehints to help developers and users (#3476)
  • Add pn.state.execute method to run callbacks in the right context (#3550)
  • Add support for asynchronous on_edit/on_click Tabulator callbacks (#3550)
  • Add DatetimeRangeSlider widget (#3548)

Bug fixes

  • Fix pyodide array buffer conversion (#3409)
  • Allow placeholder to be updated on TextEditor (#3427)
  • Fix issues editing data in sorted columns (#3431)
  • Ensure bokeh correctly detects whether HTML/Markdown contains latex (#3438)
  • Ensure notifications work on server created with pn.serve and .show (#3445)
  • Replace slickgrid background image in custom FastTemplate CSS (#3461)
  • Ensure param.Array is synced correctly in ReactiveHTML (#3456)
  • Ensure selection on filtered Tabulator does not raise out-of-bounds error (#3462)
  • Ensure updating Tabulator does not reset scroll position (#3450)
  • Various fixes for FastTemplate CSS (#3464)
  • Ensure Tabulator on_click and on_edit events return correct row when paginated (#3410)
  • Fix broken JupyterLab preview (#3469)
  • Skip Tabulator row selection when clicking on expand button (#3474)
  • Ensure overflow in MaterialTemplate is not clipped (#3492)
  • Allow providing --index for directory style apps (#3493)
  • Ensure Tabulator expanded rows are sized correctly after re-render (#3507)
  • Make CodeHandler robust to document that has been destroyed (#3510)
  • Do not sync DataFrame widget sorters parameter with bokeh model (#3527)
  • Ensure that HoloViews callback events are not auto-dispatched (#3528)
  • Ensure non-updateable Pane can be updated inside Tabs (#3532)
  • Fix slowdown of JupyterLab on Windows (#3531)
  • Fix issue with inverted data when editing a cell in a sorted Tabulator column (#3531)
  • Ensure Tabulator has correct layout after re-render (#3536)
  • Do not log events generated by admin page on the admin page (#3539)
  • Fix Tabulator events when the original column is not a string (#3541)

Documentation

  • Adds docstrings to layouts (#3417)
  • Show how to filter categorical and temporal data from Altair/VegaLite (#3401)
  • Document how to make a Tabulator column non-editable (#3489)
a46d415
Compare
Choose a tag to compare

Blog post: https://blog.holoviz.org/panel_0.13.0.html

Features

  • Add support for scheduling global callbacks (#2661)
  • MathJax now supported in Markdown and HTML (#2847)
  • Improved support for async (e.g. in ParamMethod/ParamFunction, bind, onload etc.) (#2964, #3264, #2737)
  • Support rendering Panel objects in Jupyterlite and Pyodide (#3252, #3361, #3381)
  • Add JSONEditor widget (#1974)
  • Add quill.js based TextEditor widget (#2875)
  • Add GenericLoginHandler for custom OAuth (#2873, #2960)
  • Implement Notifications API for templates (#3093)
  • Implement built-in threading (#2597, #2632, #3081)
  • Implement profiling page for Panel (#2645, #2664, #2667, #2707, #2905)
  • Implement support for Vega events (#2592)
  • Implement ArrayInput widget (#2047)
  • Add Debugger widget (#2548)
  • Add LinearGauge indicator (#3222)
  • Add ComponentResourceHandler to server (#3284, #3289, #3303)

Enhancements

Components

  • Editable sliders name can be changed (#2678)
  • Make Plotly pane resize when window resizes (#2704)
  • Viewer objects can now be used with pn.serve (#2769)
  • VTK improvement for NaN handling (#2826)
  • Add support for configuring Vega output (#2846)
  • Add a groups parameter to Select widget (#2876)
  • Add Card.hide_header option (#2947)
  • Support bytes and pathlib.Path objects on Image (#2963, #3294)
  • Add programmatic control over Player widget (#2970, #2994)
  • Add alphabetical and custom sort to Param (#2986)
  • Add autoplay and muted to Audio and Video (#3053)
  • Add a disabled_options parameter to a custom Select widget (#3067)
  • Expose the orientation parameter of the button group widgets (#3083)
  • Add support for rendering pandas styler objects (#3152)
  • Viewer now better at working with depends functions (#3159)
  • Improve support for jinja2 loops in ReactiveHTML (#3236)
  • Add ability to require explicit load of ReactiveHTML extension (#3254)
  • Improve datetime handling of sliders (#3276)
  • Add support for multiple files in FileInput.save (#3300)
  • Add improved Tabs model that resolves sizing and hover issues (#3301, #3321, #3329)

Tabulator

  • Add support to expand rows in Tabulator (#2762, #2837, #3010, #3163)
  • Implement client-side filtering on Tabulator (#2815, #3298)
  • Add Tabulator.header_align parameter (#2861)
  • Implement Tabulator.on_edit callbacks (#2887, #3209, #2958)
  • Implement DateEditor and DatetimeEditor for Tabulator (#2899, #3008)
  • Implement Tabulator.buttons (#3111)
  • Redesign Tabulator.styles handling (#3175)
  • Set default alignment for Tabulator (#3194)
  • Bidirectionally sync Tabulator.sorters (#3217)
  • Add support for setting percentage widths on Tabulator columns (#3239)
  • Add Tabulator.on_click callback (#3245)
  • Restore Tabulator scroll position after patch (#3273)
  • Enable max row limits for Tabulator (#3306)

Notebook

  • Add basic JupyterLab theme support (#2848)
  • Support jupyter server root_dir with lab extension (#3172)
  • Avoid multiple extension execution in the notebook (#3266)
  • Added fullpath to jupyter_server_extension (#3270)

General improvements

  • Warn users if extension is not loaded before server page is rendered (#2766)
  • Sync URL location hash interactively (#2982)
  • Change accent and header background color for Fast Templates (#2984)
  • Add thread safety and TTL to pn.state.as_cached (#3198)
  • Add py.typed file to support mypy (#3055)
  • Handle authentification errors (#3096)
  • Support saving png to file-like objects (#3155)
  • Check if there are any query parameters in baseurl and adds it to location.search if possible (#3214)
  • Improve handling of --index CLI argument (#3221)
  • Fix event dispatch (#3231)
  • Add azure oauth v2.0 endpoint support (#3224)
  • Ensure gc.collect is not excessively called (#3259)
  • Added panel.reactive and panel.viewable to namespace (#3157)
  • Consistent handling of page title (#3290)

Bugs

Components

  • Fix warnings in ReactiveHTML regex (#2786)
  • Fixed UTF-8 decoding in Terminal widget (#2880)
  • Allow a param.Selector with no objects to be casted to AutocompleteInput (#2966)
  • Update ButtonGroup value when changing options (#2999)
  • Fix TQDM style color reset (#3040)
  • Fix align-items on Flexbox (#3122)
  • Fix issue serializing Spinner with negative value (#3154)
  • Fixes for jslinking HoloViews components (#3165)
  • BooleanStatus and LoadingSpinner now update when changing color (#3191)
  • Fix Widget.from_param when precedence is negative (#3199)
  • Ensure DiscreteSlider label is updated (#3278)
  • Ensure ReactiveHTML template variables only escapes exact matches (#3279)
  • Fix handling of single and empty options on DiscreteSlider (#3297)
  • Ensure Progress correctly initializes as indeterminate (#3307)
  • Always resolve DOM nodes in ReactiveHTML._scripts (#3311)
  • Fixes CrossSelector.disabled parameter (#3326)
  • Fix EditableSlider updates when no value_throttled is set (#3387)

Tabulator

  • Fix HTMLTemplateFormatter on Tabulator (#2781)
  • Fix layout of Tabulator with non-default theme (#3147)
  • Ensure Tabulator selection is not reset on patch (#3287)
  • Fix Tabulator.download method (#3292)
  • Restore ability to limit number of selectable rows on Tabulato (#3295)
  • Ensure Tabulator value update reports correct old value (#3308)

Templates

  • Fix Fast template vertical slider CSS (#3045)
  • Fix template theme.css (#3057)
  • Ensure roots are rendered into GoldenTemplate (#3313)
  • Ensure correct theme is applied to HoloViews pane in template (#3386)

General

  • Added check for bool in Location.parse_query (#2759)
  • Ensure cleanup happens when enabling --warm or --autoreload with Bokeh 2.4 (#2760)
  • Ensure autoload.js correctly determines state.rel_path (#2776)
  • Fix issue with .app method (#3047)
  • Add document argument to django.py autoload_js_script call (#3100)
  • Avoid sending messages on closed or closing Websocket (#3115)
  • Fix Django resource handling (#3116)
  • Fix handling of loading_max_height (#3205)
  • Fix Django DocConsumer (#3281)
  • Fix jupyter_server_config for preview server extension (#3291)
  • Fix handling of oauth_provider argument to panel.io.server.serve (#3293)
  • Allow exporting absolute paths when saving (#3305)

Documentation

  • Added ToggleGroup docs (#2679)
  • Adds a code of conduct (#2892)
  • Add docstrings to sliders module (#3176)
  • Gallery Examples for Graphviz and NetworkX (#2732)
  • Add layouts + throttling sections to Peformance docs (#3171)
  • Adds Plotly styling gallery notebook (#3038)
  • Adds a matplotlib style guide notebook to gallery (#3036)
  • Adds vega altair style example for the gallery. (#3032)
  • Wrap new gallery examples into apps (#2546)
  • Add docstring to panel module (#3177)
  • added documentation for gcp (#3119)
  • Add docs about the file size limits of the FileInput widget (#3044)
  • Add docstrings for most widgets and panes (#3352, #3353, #3354, #3359, #3365, #3366, #3367, #3369)

Compatibility

  • Update to latest version of Perspective (#3318)
  • Update Vega version (#3320)
  • Update ipywidgets support for compatibility with latest bokeh (#3206, #3299)
  • Bump plotly.js version (#3227)
  • Updates to Param 2.0 API (#2845)
  • Updates for Python 3.10 deprecations (#3065)
  • Update and improve DeckGL pane (#3158)

API Changes

  • Make Param.mapping public (#3173)
  • Switch DatetimePicker start/end to param.Date (#3202)
  • Perspective parameters renamed: row_pivots -> split_by, column_pivots -> group_by and computed_columns -> expressions (#3318)
Compare
Choose a tag to compare

The 0.12.7 release primarily fixes an incompatibility with the new jinja2 3.1.0 release. Many thanks to @maartenbreddels, @govinda18, @raybellwaves and the maintainers @maximlt and @philippjfr for contributing further fixes to this release.

Bug fixes:

  • Wrong offset when memoryview format is non-byte (#3206)
  • Support jupyter server root_dir with lab extension (#3172)

Docs:

  • add note on enabling panel widget on Jupyter Lab (#3029)
  • Remove redundant and confusing JupyterLab install instructions (#3037)

Compatibility:

  • Fix jinja2 imports (#3258)
Compare
Choose a tag to compare

The 0.12.6 release fixes a major regression introduced in the last release along with a small number of pre-existing bugs.

Regressions:

  • Always load imported bokeh extensions (#2957)
  • Fix regression rendering HoloViews plotly backend (#2961)

Bug fixes:

  • Do not run Ace import on initialization (#2959)
  • Improve handling of ReactiveHTML cleanup (#2974, #2993)
  • Ensure empty Str has same height as non-empty (#2981)
  • Ensure Tabulator supports grouping on numeric columns (#2987)
  • Fix Tabulator with multi-index and pagination (#2989)
  • Allow index as column name in table widgets (#2990)
  • Ensure TemplateActions component does not have height (#2997)
Compare
Choose a tag to compare

The 0.12.5 release contains a larger number of bug fixes and minor enhancements. Many thanks to @pmav99, @samuelyeewl, @xavArtley, @L8Y, @Prashant0kgp, @t-houssian, @kristw, @jlstevens and the maintainers @maximlt, @MarcSkovMadsen and @philippjfr for their contributions to this release.

Compatibility:

  • Ensure ipywidget rendering is compatible with ipykernel>6 and bokeh>2.4 (#2798)
  • Build panel.js against bokeh.js 2.4.2 (#2945)

Enhancements:

  • Add 'light' to list of button types ([#2814, #2816)
  • Make OAuth cookie expiry configurable (#2724)
  • Run onload callbacks with --warm option (#2844)
  • Improve Plotly responsive sizing behavior (#2838)
  • Adds escape parameter to DataFrame pane to enable using html markup (#2893)
  • Allow to update the completions options from a parameter (#2895)
  • Tabs cache dynamic contents (#2909)
  • Allow setting a maximum height for the loading indicator (#2910)
  • Ensure loading of MathJax bundle is optional (#2919)

Bug fixes:

  • Resolve issues with inline resources on save (#2794)
  • Restore ability to set a maximum number of selectable rows on Tabulator (#2791)
  • Fixed bug where Tabulator with remote pagination would modify the wrong rows (#2801)
  • Ensure non-exported requirejs modules do not error (#2808)
  • Ensure Tabulator checkbox selection only happens in checkbox column (#2812)
  • Vtkvolume correction of dimensions order (#2818)
  • Allow data item to miss optional field in Vega pane (#2853)
  • Allow to set AutoCompleteInput in a Param pane (#2874)
  • Fix Terminal keystroke and size handling (#2878)
  • Fix Tabulator styles on scroll (#2881)
  • Do not sync Indicator properties from frontend to avoid errors (#2886)
  • Fix roundtrip of datetimes on ReactiveData components (#2888)
  • Fix handling of Plotly pane in Tabs (#2890)
  • Fix bokeh colorbar background for dark theme (#2897)
  • Fix issues when streaming or patching ReactiveData (#2900)
  • Ensure stream and patch events do not boomerang (#2902)
  • Fixes for Card rendering in MaterialTemplate (#2911, #2912)
  • Ensure HoloViews matplotlib output uses tight layout (#2920)
  • Fix decoding of single quoted strings in url parameters (#2925)
  • Fix Tabulator checkbox selection (#2931)
  • Fix Vega pane sizing issues (#2933)
  • Ensure toggled Accordion only triggers one event on change of active Card (#2934)
  • Ensure LiteralInput JS deserializer does not insert extra spaces (#2935)
  • Fix issue in detecting script data assignment in ReactiveHTML (#2939)
  • Ensure Card collapsible icon offset is computed robustly (#2940)
  • Ensure --autoreload does not reload panel modules (#2941)
  • Ensure pn.state.curdoc is available to async callbacks (#2942)

Documentation:

  • Fix default values of panels.io.server.serve()(#2799)
  • Update docs about pn.serve per user state (#2849)
  • Added FastApi in the user guide for embedding apps (#2870)
  • Simplify homepage (#2850)

CVEs:

  • Update jQuery to remediate CVEs (#2885)
Compare
Choose a tag to compare

The 0.12.4 release fixes a number of bugs and a regression of the autoreload feature in 0.12.2 and 0.12.3.

Compatibility:

  • Fix issues with --autoreload caused by changes in Bokeh 2.4 (#2755)

Enhancements:

  • Ensure user is warned if an extension was not loaded in time on server (#2765)
  • Allow Viewer classes to be served (#2768)
  • Add support for rendering .ico files and pathlib objects (#2757)

Bug fixes:

  • Fixed export of vtk.js module (#2562)
  • Fix broken HTMLTemplateFormatter on Tabulator (#2730)
  • Fix serialization issues of Panel components on ReactiveHTML (#2743)
  • Ensure FlexBox behaves like a layout and makes its children discoverable (#2779)
  • Ensure Plotly plots can be updated in tabs (#2747)
  • Fix embedding of Panel apps in Flask (#2727)
  • Ensure Spinner widget honors bounds when created from Param object (#2740)
  • Ensure Tabulator style does not disappear after resize event (#2770)
  • Fix PeriodicCallback errors (#2764)
  • Fix syncing of boolean types with URL parameters (#2758)
  • Ensure Tabulator.download_menu applies kwargs to the filename TextInput (#2763)
  • Ensure Tabulator does not error when no Styler is defined (#2785)

Documentation:

  • Fix MaterialUI custom component example (#2680)
  • Fix image url in Markdown reference gallery example (#2734)
  • Add Folium thumbnail in reference gallery (#2744)
Compare
Choose a tag to compare

The 0.12.2 release unfortunately has a compatibility issue with Bokeh 2.4 which broke the show() method. This release fixes this regression.

  • Patch Bokeh to fix show() (#2748)
Compare
Choose a tag to compare

This is a patch release with a small number of bug fixes and compatibility for bokeh 2.4. Many thanks to the contributors @Stubatiger, @maximlt, @nghenzi and the maintainers @MarcSkovMadsen and @philippjfr for the fixes in this release.

Enhancements:

  • Add option to hide constant parameters on Param pane (#2637)
  • Added on_session_destroyed callback (#2659)
  • Stricter validation for linking syntax in ReactiveHTML._template (#2689)

Bug fixes:

  • Improved thread safety (#2631)
  • Ensure sessions get distinct files in config (#2646)
  • Fix bug when updating Trend data (#2647)
  • Ensure sorters are applied correctly after updating Tabulator value (#2639)
  • Correctly reflect filtered data on Tabulator.selection (#2676
  • Unescape child literal HTML in ReactiveHTML (#2690)
  • Ensure Trend indicator can be rendered in layout (#2694)

Documentation:

  • Enhance templates docs (#2658)
  • Add Folium reference notebook (#2672)

Compatibility:

Compare
Choose a tag to compare

This is a patch release with a small number of fixes following the 0.12.0 release. Many thanks to the maintainers @MarcSkovMadsen and @philippjfr for the fixes in this release.

Enhancements:

  • Bundle .map files during build to allow source mapping (#2591)
  • Various style improvements for Fast templates (#2604, #2609, #2611, #2615)
  • Implement hierarchical aggregation for Tabulator (#2624)

Bug fixes:

  • Fix logo on Fast templates (#2184)
  • Fix height responsiveness of Folium pane (#2231)
  • Fix bug updating Tqdm indicator (#2554)
  • Ensure --autoreload doesn't error on cleaned up session (#2570)
  • Don't use persisted layout if save_layout=False (#2579)
  • Pin version of tqdm with asyncio support (#2595)
  • Reset layout when resetting grid template layout (#2576)
  • Fix line-height issues in Fast templates (#2600)
  • Clean up sessions after warmup and ensure periodic callbacks are cleaned up (#2601)

Documentation:

  • Enable JupyterLab preview button on binder (#2545)
  • Update theme toggle documentation for Fast templates (#2560)
  • Update Fast template documentation and enable full screen (#2577)
  • Fix binder links on website (#2590)
  • Add docs about loading the ipywidgets extension (#2594)
Compare
Choose a tag to compare

The 0.12.0 release is a minor release with a lot of exciting and a huge amount of bug fixes. We are very excited about the growing community and the many contributions we received. In particular we would like to thank @douglas-raillard-arm, @mathrick, @jlstevens, @hyamanieu, @Liam-Deacon, @Stubatiger, @ablythed, @syamajala, @Hoxbro, @jbednar, @brl0, @OBITORASU, @fleming79, dhruvbalwada and @rmorshea for contributing various fixes and improvements and the core developers @xavArtley, @MarcSkovMadsen and @philippjfr for continuing to push the development of Panel.

Features:

Enhancements:

  • Add empty Progress bar (#2088)
  • Optimize initialization of templates (#2096)
  • Serialize Perspective schema (#2130)
  • Updated JSON pane to accept single quote and wrap properly (#2143, #2443)
  • Improvements for Perspective (#2153)
  • Improve handling of server prefix and proxied deployment scenarios (#2159, #2162)
  • Add support for setting bokeh theme (#2164, #2166, #2170)
  • Completely overhauled the default index template (#2198, #2340)
  • Enhancements for Template modals (#2269, #2523)
  • Make the Template sidebar width configurable (#2301)
  • Improve look and feel and styling of Fast templates (#2303, #2469, #2484, #2488)
  • Allow setting kwargs in Reactive.controls (#2304)
  • Add global configuration variable to always throttle sliders (#2306)
  • Add support for controlling text alignment in DataFrame and Tabulator (#2331)
  • Add Tabulator theme for Fast Templates (#2425)
  • Add ability to make only certain Tabulator rows selectable (#2433)
  • Add visible parameter to all components (#2440)
  • Send Plotly restyle and relayout events rather than full updates (#2445)
  • Add push_notebook helper function for syncing bokeh property changes in notebooks (#2447)
  • Improve visual styling of Card (#2343, #2348, #2376, #2437, #2527)
  • Ensure config variables are configured per user session (#2358, #2455, #2481)
  • Add save_layout and prevent_collision to ReactTemplate and FastGridTemplate (#2296, #2357)
  • Add ability to declare root application from panel serve (#2392)
  • Support jslinking Parameterized class (#2441)
  • Improve config.sizing_mode behavior (#2442)
  • Add separate RangeSlider value_start and value_end parameters (#2457, #2468)
  • Allow saving Templates (#2461)
  • Bundle Tabulator resources to allow usage in airgapped environment (#2471)
  • Ensure Trend indicator title wraps (#2483)
  • Scroll on Tabulator selection (#2503)
  • Increase notebook resource load timeout (#2515)
  • Auto-detect VSCode and Colab comms (#2536)
  • Add tooltip to Tabulator cells to see unformatted value (#2543)

Bug fixes:

  • Fix missing video in Video (#2109)
  • use idom.config to set dist dir (#2117)
  • Remove bootstrap CSS from FastGridTemplate (#2123)
  • Fix issues with Ace z-index (#2126)
  • Fix updating of Tabulator selection property (#2128)
  • Ensure changes on ReactiveData source are scheduled correctly (#2134)
  • Fixed Player looping when start is 0 (#2141)
  • Fix divide by zero issues on Trend indicator (#2148)
  • Ensure GridSpec override handles duplicate matches (#2150)
  • Fix for loading parameter widget linking (#2160)
  • Fix Tabulator ajax call on empty data (#2161)
  • Fix Tabulator sorting and data initialization (#2163)
  • Fix editing Tabulator with filters applied (#2165)
  • Fix theming on HoloViews plot updates (#2209)
  • Fixed data handling on Perspective pane (#2212)
  • Improve template and resource management for png export (#2221)
  • Improve and standardize selection behavior of Tabulator (#2230)
  • Ensure JS changes to Plotly pane are applied if not explicitly triggered (#2251)
  • Fix server-side Tabulator selection changes (#2252)
  • Fix update of Param subobjects (#2255)
  • Add support for vtkCornerAnnotations (#2257)
  • Improve request handling for remote pagination on Tabulator (#2265)
  • Allow setting Param precedence to None (#2266)
  • Disable nested field separators on Tabulator (#2289)
  • Fix errors when applying Perspective filters (#2300, #2521)
  • Ensure Param pane handles changes to unknown parameter (#2346)
  • Fix issues with local Audio and Video (#2380)
  • Ensure ReactiveData emits correct old data in event (#2398)
  • Ensure Plotly interactivity works when Plotly panes are displayed in tabs (#2418, #2463)
  • Fix Ace widget disabled parameter (#2449)
  • Ensure external resources are configured correctly on save (#2452)
  • Ensure table formatters and editors are copied on render to avoid bokeh errors (#2453)
  • Allow unicode auth response body (#2462)
  • Workaround TypeError for non-string json keys on Plotly pane (#2465)
  • Fix issue with throttled updates on Param (#2470)
  • Ensure Tabulator style is applied while streaming (#2478)
  • Fix issues setting resources on save (#2492)
  • Fix VideoStream unpause (#2508)
  • Ensure DataFrame and Tabulator widget data can be updated in callback (#2510)
  • Fix chaining of bind functions (#2513)
  • Fix broken serialisation when syncing url parameters (#2520)
  • Fix Perspective for string types (#2525)
  • Fix race condition in --autoreload (#2539)

Documentation:

  • Update Server_Deployment.ipynb (#2118)
  • Expand description of watch=True in Param.ipynb (#2120)
  • Switch to PyData Sphinx Theme (#2139)
  • Replace altair iris example with penguins (#2213)
  • Enable Binder (#2198)
  • Updates and fixes for Developer Guide (#2381)
  • Fixed Tabs documentation (#2448)
  • Added basic description and example of the Tabulator.configuration parameter (#2412)
  • Add parameters to Plotly reference guide (#2385)
  • Add useful links to developer docs (#2319)
  • Add documentation about parameterized components (#2454)
  • Demonstrate how to lazily load tabs (#2479)

Compatibility:

  • Compatibility with HoloViews 2.0 (#2344)
  • Fix Tabulator styling with pandas 1.3 (#2512)

Deprecations:

  • Remove add_periodic_callback method (#2439)
  • Remove deprecated panel.callbacks modules
  • Remove deprecated Ace pane and Audio Widget (#2427)
  • Remove Progress widget docs (#2451)
  • Tabulator no longer loaded by default, must be initialized with pn.extension('tabulator') (#2364)