"Fossies" - the Fresh Open Source Software Archive

Member "bokeh-2.4.1/sphinx/source/docs/releases/0.12.7.rst" (13 Oct 2021, 7144 Bytes) of package /linux/www/bokeh-2.4.1.tar.gz:

As a special service "Fossies" has tried to format the requested source page into HTML format (assuming markdown format). Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field.


Bokeh Version 0.12.7 (Aug 2017) is an incremental update that adds a few important features and fixes several bugs. Some of the highlights include:

Many other small bugfixes and docs additions. For full details see the CHANGELOG.

Migration Guide

Bokeh support for Categorical data has needed attention for some time. The release brings improvements that dramatically improve the user experience when using categorical data with Bokeh. For details and examples, see the new User's Guide chapter userguide_categorical.

At this point we endeavor to minimize breakage, and to provide managed deprecation cycles when things must change. However, in this instance, some minor immediate breaking changes were unavoidable:

New Embed Functions for Bokeh Applications

Two new embed functions similar to autoload_server are added, that have simpler APIs and are more focused:

Additionally, with these new methods one may choose to not load the JS/CSS resource files by passing resources="none" as a parameter.

Deprecations Removed

The following previously deprecated modules or features have been removed:

New Deprecations

bokeh.embed.autoload_server has been deprecated and replaced with the two simpler functions ~bokeh.embed.server_document and ~bokeh.embed.server_session described above.

bokeh.models.tools.tool_events has been deprecated. Users should instead use the SelectionGeometry event present on Plot or Figure.

DynamicImageRenderer and Plot.add_dynamic_image have been deprecated. For GIS-related use-cases built on top of Bokeh, consider using GeoViews, or creating a Custom Extension.

ResizeTool is deprecated and also immediately is a NO-OP on the Python side. ResizeTool has been removed from BokehJS entirely.

BokehJS Widgets Bundle Split

The bokeh-widgets bundle was split into bokeh-widgets and bokeh-tables. This is to reduce the weight of the main widgets' bundle. Bokeh includes bokeh-tables automatically when necessary, so this change should be transparent for most users. However, users of custom templates or other advanced embedding scenarios (including the use of components) may be affected. In short, if your application is responsible for loading Bokeh resources, then it should take care of loading the bokeh-tables as well.

TapTool Callback Calling Convention

The TapTool strayed from usual callback calling convention by passing a glyph data source as cb_obj. This has been rectified, and now the tool follows the usual convention: the tool itself is passed as cb_obj and the data source is passed as part of the optional cb_data. Existing usage of OpenURL is unaffected by this change, but any CustomJS callbacks used with the tap tool will need to be updated to reflect this change.

DataTable Selection Highlighting Signal

The DataTable now responds to the signal source.change.emit(), instead of source.properties.selected.change.emit(), to visually highlight the rows in the DataTable that are part of the selection. If you have used source.properties.selected.change.emit() in CustomJS code, you will need to change it to source.change.emit().

The DataTable responds automatically to changes in its data source's selected property. However, because of Bokeh's change detection machinery, only a replacement of the selected property causes a change signal to be emitted, and not a partial update (e.g. source.selected['1d']['indices'] = [1, 2]). If you use a partial update in CustomJS code, you will need to emit the change signal yourself:

customjs = CustomJS(args=dict(source=source), code="""
    source['selected']['1d'].indices = [1, 2]

Refactoring of bokeh.server contents

The bokeh.server module was refactored in order to be easier to document and maintain, as well as simpler for user's to use in more sophisticated use cases. These changes are not expected to impact standard usage of Bokeh in any way: