This minor release packs many exciting new features, specifically a new panel.chat subpackage containing components with powerful capabilities for interacting with LLM whether local or remote. Secondly this release adds compatibility with Param 2.0 bringing powerful new features including the ability to leverage reactive expressions using the rx wrapper and deeper support for reactively linking parameters, expressions and bound functions on Panel components. Lastly we overhauled the OAuth implementations adding support for code authorization and password based OAuth grant workflows and automatically refreshing the access_token when it expires. Beyond that this release includes many enhancements and numerous bug fixes. Special thanks to our first time contributors @aktech and @monodera and returning contributors @cdeil, @pierrotsmnrd and @theomartin. We also want to highlight the contribution of our new core contributor @ahuang11 for developing the chat components and recognize @MarcSkovMadsen and @philippjfr for their efforts on testing and improving these new components. Finally we thank the entire core team @hoxbro, @MarcSkovMadsen, @maximlt, @ahuang11 and @philippjfr for their continued efforts.
Feature
- Integrate support for param reactive expressions and expose
pn.rx(#5138, #5582) - Implement
ChatMessage,ChatFeedandChatInterfacecomponents (#5333) - Unify OAuth implementations and refresh
access_token(#5627) - Add
ColorMapwidget (#5647)
Enhancement
- Add unit to widget in
HoloViewspane if provided (#5535) - Allow registering global
on_session_destroyedcallback (#5585) - Implement
auto_growonTextAreaInput(#5592) - Add ability to redirect users from authorization callback (#5594)
- Add support for
Pathobject inFileDownload(#5607) - Add authorization_code and password based OAuth login handlers (#5547)
- Add format to
EditableFloatSliderandEditableIntSlider(#5631) - Add support for decorating async functions with
pn.io.cache(#5649) - Map
param.BytestoFileInputwidget (#5665)
Bug fixes
- Fixes for
Columninvisiblescroll_buttontaking space (#5532) - Guard undefined values from being set on
BrowserInfo(#5588) - Fix thumbnails and use Panel design on index page (#5595)
- Fix regressions in
TextEditorcaused by migration to shadow DOM (#5609) - Sync
locationstate from request (#5581) - Fix
Selectwidget label offset in Material Design (#5639) - Override token contents when reusing sessions (#5640)
- Fix patching a table with a
DataFramewith a custom index (#5645) - Set
FloatPanelstatus correctly on initialization (#5651) - Fix patching table with
pd.Timestampvalues (#5650) - Ensure
notificationsandbrowser_infoare loaded whenHoloViewsis loaded (#5657) - Gracefully handle resolution of invalid paths in
_stylesheets(#5666) - Handle patching tables with
NaTvalues (#5675)
Compatibility
- Add support for Python 3.12 and drop Python 3.8 support
- Upgrade to Param 2.0 as minimum required version
- Compatibility with Bokeh 3.3.0