0.12.15 (Mar 2018)¶
0.12.15 is an incremental update that adds a few
important features and fixes several bugs. Some of the highlights
- Addressed several WebGL bugs #6867, #7087, #7211, #7681
- Switched to Chrome headless for CI image tests, will support better WebGL testing #6594
- Updated data source selections to be proper Bokeh models #6845
- Fixed memory leaks with certain kinds of Bokeh server usage #7468
- Added new glyphs for hexagon markers and hex tiles, and a new hexbin method #7638, #4786
- Completed BokehJS port to TypeScript #6481
Many other small bugfixes and docs additions. For full details see the CHANGELOG.
Additionally, we are pleased to announce Bokeh joins NumFOCUS Sponsored Projects.
NOTE: the 0.12.x series is the last planned release series before a version 1.0 release. For more information see the project roadmap.
The mis-named property
DataTable.row_header has been deprecated. This
property confusingly controlled the presence of an index column in a
DataTable. Now, use the
index_position property to specify where
an index column should be located in the table (use
None to suppress
the index column).
Additionally, new properties
now available to further customize the index column appearance.
The handling of selections has needed attention in Bokeh for some time.
This release adds a new Bokeh model
to represent selections on data sources. Having a proper Bokeh model makes
selections simpler to use and to synchronize in apps than the previous
“bare dict” that represented selections.
Selection model is found in
the same location on data sources, i.e.
source.selected. It has the
.indices # which scatter typer indices have been hit # previously selected["1d"].indices .line_indices # which point(s) on a line have been hit # previously selected["0d"].indices .multiline_indices # which points on which line of a MultiLine # previously selected["2d"].indices
In the near future, a property
image_indices will be added to support
hit testing of image glyphs.
All code should update to use these new properties. For now read only
access to things like
selected['1d'].indicies will continue to function
as before for compatibility. However, programmtically setting selections
must now go through the mode properties, i.e.
Grids now automatically defer to any existing axis bounds when their own bounds are set to “auto”. Previously grids used always used the full range bounds. This change makes it simpler to have axes and grids both use a consistent set of bounds.
Minor ticks are no longer displayed outside explicitly set axis bounds. Previously minor ticks would display one extra “major tick” distance outside explicit range bounds.
This validation warning resulted in false or irrelevant warnings in many reasonable configurations, and has been removed.
Document and ServerContext callbacks¶
All Document and ServerContext methods that add callbacks can now add the same callback multiple times. Methods that remove callbacks now receive the value returned from a previous method call that added the callback. Example:
# Was doc.add_next_tick_callback(my_cb) doc.remove_next_tick_callback(my_cb) # Now cb_id = doc.add_next_tick_callback(my_cb) doc.remove_next_tick_callback(cb_id)
The bokeh.sphinxext Sphinx extension has been updated to work with currnt versions. Sphinx >= 1.6 is now required to use the extension.