All Versions
74
Latest Version
Avg Release Cycle
28 days
Latest Release
10 days ago

Changelog History
Page 1

  • v2.3.2 Changes

    May 05, 2021
    • bugfixes:

      • #11169 [component: bokehjs] [BUG] Python callback triggered by SelectionGeometry event is slow compared to js equivalent
      • #11182 [component: bokehjs] [BUG] Forward slash is changed to %2F in link
      • #11203 [component: bokehjs] [BUG] Cannot clear active of RadiGroup
    • tasks:

      • #9636 Remove Black Formatting
      • #11175 Replace jinja2.Markup deprecated with Jinja 3.1
  • v2.3.1 Changes

    April 07, 2021
    • bugfixes:

      • #10822 DataModel is always serialized
      • #10887 [component: bokehjs] [BUG] FileInput cancel operation throws error
      • #10912 [component: bokehjs] [BUG] 'freehand_draw' is not in name space for tools
      • #10942 [component: examples] [BUG] Spectrogram example does not compile
      • #11000 [component: bokehjs] Make FuncTickFormatter always produce strings
      • #11006 [component: bokehjs] [BUG] Log axis exponents react differently when font size is defined in anything but px (e.g. pt)
      • #11026 [component: bokehjs] [BUG] Serialization of MessageSent document event includes all model references
      • #11028 [component: bokehjs] [BUG] Figure events raise errors in the presence of edit tools
      • #11029 [component: bokehjs] [BUG] DataModel warns about being registered multiple times
      • #11054 [component: bokehjs] [BUG] Invalid BBox of BoxSelection
      • #11057 [component: bokehjs] [BUG] Sizing mode example layout broken in docs
      • #11061 [component: bokehjs] [BUG] Tilerenderer snap_back path issue with setv
      • #11062 [component: bokehjs] [Bug] ColorPicker color not updated on selection
    • features:

      • #10569 [FEATURE] JupyterLab 3 dynamic extension loading
    • tasks:

      • #10888 [component: docs] [BUG] FileInput accept-type '.txt' file-extension filtering does not work as expected
      • #10897 [component: docs] Docs: remove reference of outdated 'nbserverproxy'
      • #10919 [component: docs] [BUG] Deprecate broken HSL objects
      • #10926 [component: docs] [BUG] BokehJS component default value not passing through
      • #10934 [component: docs] bokeh_releases needs to process files more carefully
      • #10941 Minor cleanup after PR #10939
      • #10943 [component: build] [BUG] Cloudfront invalidation error on full release
      • #10957 [component: build] Update versioneer version?
      • #11002 [component: docs] PolyAnnotation is missing from the user guide
      • #11013 [component: bokehjs] [FEATURE] BokehJS usage : documentation updates
      • #11097 [component: docs] Document new JLab install process
      • #11112 [component: build] Update build jobs for base OS update
      • #10953 [component: docs] Add information about Bokeh channel for installation
      • #10973 Add missing comma in example code
      • #10986 Bryanv/2 3 1 backports
      • #10997 [component: docs] Clarify explanation in First Steps 1
      • #11024 [component: bokehjs] Simplify rendering of Line and MultiLine glyphs
      • #11043 Backport: Simplify rendering of Line and MultiLine glyphs (#11024)
      • #11086 Fixed missing f in f-string
      • #11137 [component: docs] Release notes for 2.3.1
  • v2.3 Changes

    February 24, 2021
    • bugfixes:

      • #1426 Mixins have vectorized properties which doesn't make sense outside glyphs
      • #6781 HoverTool.renderers accept List(Renderer) but supports only List(GlyphRenderer)
      • #8489 [component: bokehjs] Graphical bugs with webgl and time series data with NaN points
      • #9951 [BUG] Impossible to use tuples as colors
      • #10136 [component: bokehjs] Arrows - 'white background' under the arrow
      • #10218 [component: server] [BUG] Periodic callback don't stop in Django
      • #10339 [component: tests] examples' tests fail because headless browser doesn't start in time
      • #10407 [component: bokehjs] [BUG] Select is not updated upon setting value after changing the options
      • #10411 [component: examples] [BUG] issues with latex_example_full
      • #10452 [component: bokehjs] [BUG] MultiChoice disabled attribute is not working
      • #10454 [component: bokehjs] LabelSet does not display with categorical coordinates
      • #10457 [component: bokehjs] [BUG]Reverse Y axis range with circle
      • #10458 [component: bokehjs] [BUG]multi_line doesn't support hover.
      • #10468 [component: bokehjs] [BUG] DateSlider and DateRangeSlider ignore format set to an instance of TickFormatter
      • #10481 [component: bokehjs] [BUG] Unable to use CustomJS callback on HoverTool with GraphRenderer
      • #10484 [component: docs] Typo in https://docs.bokeh.org/en/latest/docs/user_guide/embed.html#autoload-scripts
      • #10498 [component: bokehjs] [BUG] GridBox not rebuilt when changing cols or rows attributes
      • #10506 [component: bokehjs] [FEATURE] Hiding hex number from color swatch in hover tool
      • #10507 [component: bokehjs] [BUG] Cannot disable MultiSelect in 2.2.1
      • #10536 [component: server] Bad super call in "contexts.py"
      • #10541 [component: bokehjs] [BUG]Slope annotation is not drawn with gradient of 0
      • #10559 [component: bokehjs] [BUG] Modifying a tooltip may result in errors
      • #10575 [component: bokehjs] [BUG] Whiskers do not appear in categorical plots?
      • #10581 [component: docs] [BUG] Outdated example for CustomJSHover
      • #10589 [component: bokehjs] [BUG] multi_line is rendered incorrectly when used with a view with filters
      • #10594 [component: bokehjs] [BUG] Whiskers base have reduced precision
      • #10595 [component: docs] [BUG] Minor Typo in Gallery documentation.
      • #10603 [component: build] [BUG] 2.3.0dev2 introduced an erroneous dependency on "python_abi 3.9.* *_cp39"
      • #10604 [component: bokehjs] quote (') from networkx index node are translated to (')
      • #10611 [component: bokehjs] bokehjs' unit tests fail after recent changes
      • #10613 [component: docs] Add TOC to reference doc
      • #10643 [component: bokehjs] [BUG] 2.3.0dev5 - Using a widget as a parameter in its own js callback throws 'Maximum call stack size exceeded' on JS side
      • #10666 [component: bokehjs] [BUG] Webgl perf regressions in branch-2.3
      • #10668 [BUG] Warnings about integrity checks when using CDN resources with extension
      • #10670 [component: bokehjs] [BUG] PolyEditTool vertices are not redrawn on data source update
      • #10675 [component: bokehjs] [BUG] ScientificFormatter shows 0 as 0.000e+00
      • #10695 [component: bokehjs] [BUG] MultiChoice options covered up by DataTable
      • #10697 [component: bokehjs] [BUG] ScientificFormatter error formatting negative numbers
      • #10702 [component: bokehjs] [BUG] TextAreaInput value_input no change event detected
      • #10721 [component: build] CI is failing with ModuleNotFoundError: No module named 'bokeh'
      • #10725 [component: bokehjs] [BUG] SVG backend mirrors image in plot
      • #10738 [component: bokehjs] [BUG] MultiLine datetime precision loss
      • #10754 [component: bokehjs] [BUG] Hover indices broken
      • #10755 [component: bokehjs] Unequal length columns cause size mismatch error
      • #10784 [component: bokehjs] [FEATURE] Differential re-rendering of updated plots
      • #10809 [component: bokehjs] [BUG]figure labels missing after updating the CDS
      • #10819 [component: docs] [BUG] Example in LabelSet documentation doesn't seem to be correct
      • #10826 [component: bokehjs] SVG canvas doesn't implement ctx.fill(fill_rule)
      • #10837 [component: bokehjs] Public style/*/.d.ts are not robust enough for path mapping
      • #10841 [BUG] Ensure non-nullable properties in JS are validated in Python
      • #10851 [BUG] Layout regressions
      • #10852 [component: bokehjs] [BUG] Lasso tool does not render
      • #10853 [component: bokehjs] [BUG] Ajax and Server sent examples broken
      • #10855 [component: bokehjs] Only main glyphs has signals connected in GlyphRenderer
      • #10875 [component: docs] [BUG] Marker docs require updating
      • #10879 [component: docs] [BUG] Link to export_svg() in export.rst is broken
      • #10880 [BUG] ProxyToolbar.logo: expected a value of type str, got None
      • #10913 [BUG] Error while testing 2.3.0dev13 with Dask
      • #10924 [component: docs] [BUG]Custom Widget Example fails to load (2.3.0rc2)
      • #10647 [component: bokehjs] [Spinner] Avoid twice incrementation with laptop pad
      • #10701 Fix backwards compatibility alias for InspectTool
      • #10760 [component: tests] Manually quote arguments to npx
      • #10860 [component: bokehjs] Resolve IE compatibility issues
    • features:

      • #2230 [component: bokehjs] expose tap and hover tool hit radius
      • #3674 Add DataModel base class
      • #5618 [component: bokehjs] CategoricalColorMapper ColorBar
      • #5676 [component: bokehjs] Encode colors as 32 bit integers by default
      • #6835 [component: bokehjs] Vectorized Arrow Heads
      • #7845 Allow both tap and doubletap gestures with TapTool
      • #8169 [component: bokehjs] Line break in categorical axis labels
      • #8954 [component: bokehjs] Adding support for superscript exponents
      • #9169 [FEATURE] SVG export for gridplot
      • #9847 [component: bokehjs] Add support for ES module entrypoint
      • #9929 [component: bokehjs] Add hatch rendering to Box Annotation
      • #10203 [component: bokehjs] [FEATURE] line_dash vectorizable where appropriate
      • #10295 [component: bokehjs] [FEATURE] Let AutocompleteInput accept input not present in completion list
      • #10472 [component: bokehjs] [FEATURE] Auto-ranging in network graphs
      • #10505 [component: bokehjs] Add button_type with no border
      • #10576 [FEATURE] 'transparent' as an alias for rgba(0, 0, 0, 0)
      • #10599 [component: bokehjs] [BUG] BokehJS minimal example is not working
      • #10612 [component: bokehjs] Hovertool does not work for dynamically added glyphs
      • #10637 [component: bokehjs] Need "Edges" only inspected policy for graphs
      • #10662 [component: bokehjs] [FEATURE]Allow naming (title) of Tools
      • #10798 [component: server] [FEATURE] Support Tornado WebSocket compression on server
      • #10824 [component: bokehjs] Add Hatch Patterns for Glyphs
      • #10836 [component: bokehjs] [FEATURE] Add new star marker
      • #10323 [component: bokehjs] Add support for smooth curve glyphs
      • #10493 Accurate color bar ticking with eqhist mapping
      • #10624 [component: bokehjs] Auto-generate index.ts based on tsconfig's input patterns
      • #10640 Implement grad and turn CSS-based angle units
      • #10734 [component: bokehjs] Add support for Less/CSS to extensions
      • #10847 [component: bokehjs] Add star marker - webgl extension
    • tasks:

      • #8260 [component: tests] Strict "image diff" selenium tests
      • #9007 [component: docs] [DOCS] Add mention of Themes to "Styling Visual Attributes" docs page
      • #9297 [component: bokehjs] Relese dev npm packages along conda packages
      • #9341 [component: build] Archive release artifacts
      • #9858 [component: bokehjs] Publish prerelease npm packages under dev tag
      • #9910 Remove Explicit Marker Models
      • #9958 [BUG] Better warn about passing source in the CustomJSFilter args dict for 2.0 and above
      • #10224 Rename main branch
      • #10333 bokeh build includes copyright statement from Anaconda in my bokeh extension
      • #10341 [component: docs] Developer Docs have outdated info on @gen.coroutine decorator
      • #10343 [component: bokehjs] Upgrade to TypeScript 4.0
      • #10413 marker_compare.py does not exercise webgl
      • #10420 Delete old pypi packages at anaconda.org?
      • #10461 [BUG] Chrome driver fails on WSL2 Ubuntu 18 (and other containerized environments)
      • #10465 [component: docs] [TASK?] docs/{release,installation}.rst have empty toctrees, which can be removed
      • #10467 [component: docs] Redundant TOC in developer documentation can be removed
      • #10473 [component: docs] Add link to community page on all websites
      • #10486 [component: docs] Add check for GOOGLE_API_KEY in conf.py
      • #10508 [component: bokehjs] Improve support icon only button by removing space
      • #10514 [component: tests] Win / Python 3.8 CI job failing
      • #10539 [component: docs] Help requested: Apply writing style guidelines to docs
      • #10551 [component: docs] Missing /y option in windows make.bat slows down docs build
      • #10614 [component: docs] Storing static PNG for OpenGraph
      • #10628 [component: docs] Reference guide should display property defaults
      • #10667 [component: docs] Cross reference user guide widgets examples to reference guide
      • #10671 [component: docs] Unclear which Events on_event is compatible with
      • #10673 [component: bokehjs] Unintended (?) changes to package(-lock).json
      • #10728 [component: docs] [FEATURE] Linting for docs
      • #10744 [component: docs] [BUG] Stamen Images Broken in Documentation in Chrome
      • #10748 [component: docs] [BUG] DataTable documentation suggestions
      • #10783 [component: examples] [FEATURE] boxplot.py example: improve performance for larger datasets
      • #10803 [component: build] conda warnings from bokeh-ci workflow
      • #10863 [component: server] [BUG] bokeh.client max nessage size not configurable
      • #10883 [component: bokehjs] Update GMAP to use an unretired version of the javascipt api
      • #10895 [component: docs] Document new types of color types and color arrays
      • #10906 [component: docs] [BUG] hbar_stack example in documentation does not work
      • #10908 [component: docs] [BUG] Update server.rst - "acme:com"?
      • #10935 Dask compat issues w/ nullable
      • #10433 [component: bokehjs] Migrate property definitions to use kinds
      • #10450 [component: bokehjs] Miscellaneous refactorings in bokehjs
      • #10469 [component: bokehjs] bokehjs development workflow improvements
      • #10483 [component: docs] Add CoC information in documentation site
      • #10491 [component: bokehjs] Split off range management code from PlotCanvas
      • #10492 [component: bokehjs] Strictly type View.serializable_state()
      • #10495 [component: tests] AutocompleteInput: add more tests
      • #10500 [component: docs] Add style guidlines and refactor
      • #10519 [component: docs] Restructure documentation landing page
      • #10520 [component: docs] Improve inline/link colors for docs
      • #10528 [component: docs] removed outdated CI instructions
      • #10532 [component: docs] [Docs] Fix display of example boxes on very small screens
      • #10537 [component: bokehjs] Factor out code from PlotView
      • #10549 [component: docs] Annotation docs edits
      • #10550 [component: build] Test on Python 3.9 in CI
      • #10554 [component: tests] Pin pytest 6.0*
      • #10556 [component: docs] Task #10539: Jupyter notebook edits
      • #10562 [component: docs] #10539 layout.rst
      • #10563 [component: docs] 10539 bokehjs.rst doc edit
      • #10565 [component: docs] 10539 export.rst doc edit
      • #10579 [component: docs] #10539 graph.rst doc edit
      • #10591 [component: bokehjs] Improve bokehjs' code quality (part 0)
      • #10592 [component: bokehjs] Clean up usage of requestAnimationFrame
      • #10597 [component: docs] #10539 categorical.rst doc edit
      • #10598 [component: docs] Switch sphinx-panels from pip to conda
      • #10602 [component: bokehjs] Redesign how serialization works in bokehjs
      • #10605 [component: docs] #10539 compat.rst
      • #10610 [component: docs] #10539 geo.rst doc edit
      • #10616 [component: docs] Add OpenGraph metadata to docs
      • #10618 [component: bokehjs] Implement views for arrow head models
      • #10625 [component: docs] align webgl.rst with style guide, task #10539
      • #10632 [component: docs] #10539 applied style writing guidelines to tools.rst
      • #10633 [component: docs] Fix new sphinx issue with bokeh.palettes
      • #10634 [component: bokehjs] Update bokehjs' dependencies
      • #10646 [component: bokehjs] Use the correct variant of hasOwnProperty check
      • #10650 [component: bokehjs] Upgrade to TypeScript 4.1 RC
      • #10653 [component: bokehjs] Split visuals into scalar and vector
      • #10655 [component: bokehjs] Unify initialization of visuals and data
      • #10660 [component: docs] Update glossary
      • #10665 [component: docs] Add new first steps guide to replace quickstart
      • #10679 [component: docs] #10539 embed.rst
      • #10681 [component: bokehjs] Add an actual webgl backend test
      • #10682 [component: docs] #10539 extensions.rst
      • #10696 [component: docs] Update data.rst
      • #10699 [component: build] Migrate CI {goanpeca->conda-incubator}/setup-miniconda
      • #10707 [component: bokehjs] Detect dependency cycles in build and fix existing cycles
      • #10708 [component: bokehjs] Upgrade to TypeScript 4.1 and upgrade other dependencies
      • #10729 [component: docs] Edit first steps guides
      • #10730 [component: bokehjs] Add support for publishing npm packages
      • #10732 [component: bokehjs] Redesign inclusion of CSS modules into bokehjs
      • #10759 [component: bokehjs] Upgrade to Chrome/Chromium browser 87.x
      • #10764 [component: bokehjs] Add visual tests for Legend annotation
      • #10766 [component: docs] 10539 plotting.rst
      • #10779 [component: bokehjs] Redesign ColorBar in terms of the layout
      • #10791 [component: docs] 10539 server.rst
      • #10815 [component: bokehjs] Replace CSS based font metrics with canvas based
      • #10823 [component: docs] Remove Vale
      • #10829 [component: docs] Fix minor typos and inconsistencies
      • #10832 [component: docs] Update concepts.rst and cli.rst
      • #10835 [component: bokehjs] Infer viewport size in bokehjs integration tests
      • #10843 Update copyright dates and bokehjs' license
      • #10848 [component: docs] Incorrect Example updated
      • #10862 Add Bokeh8 palette
      • #10865 [component: bokehjs] Miscellaneous bokehjs build changes
      • #10873 [component: docs] Update URL for numpy intersphinx inventory
      • #10922 [component: bokehjs] Fix LogAxis' labels under rotation and add tests
      • #10923 [component: bokehjs] Bump minimum nodejs version to 14+
      • #10933 [component: docs] add 2.3 release notes
  • v2.2.3 Changes

    October 19, 2020
    • bugfixes:
      • #10488 [component: bokehjs] In python3, rectangle does not appear when x axis is type datetime
  • v2.2.2 Changes

    October 12, 2020
    • bugfixes:

      • #10453 [component: server] [BUG] KeyError when display certain glyphs on the server
      • #10521 [component: bokehjs] Selectively update data when CDSView changes
    • tasks:

      • #10451 [component: bokehjs] Update bokehjs' dependencies
  • v2.2.1 Changes

    August 31, 2020
    • bugfixes:
      • #10426 [component: bokehjs] INLINE_LEGACY does not work (CDN.legacy = True does work)
      • #10431 [component: server] [BUG] pull_session not working in Win10 without this import statement: 'from bokeh.server.server import Server'
      • #10434 Bokeh not embedding plot in Django app sea_surface example [BUG]
      • #10435 [BUG] Regression causing multiple js_on_event subscribers to be ignored
      • #10443 [BUG] incorrect Plot._check_bad_extra_range_name
      • #10448 [component: bokehjs] DataTable DateFormatter does not handle NaT
  • v2.2 Changes

    August 24, 2020
    • bugfixes:

      • #5589 Some WebGL not working on Safari
      • #6775 [component: bokehjs] SVG backend not correctly coloring glyphs in legends
      • #7707 [component: bokehjs] Linking the ranges of plots will break the LODEnd event
      • #8046 [component: bokehjs] Extra whitespace with SVG export
      • #8446 [component: bokehjs] SVG not displaying scatter output
      • #8744 [component: bokehjs] Plots containing arrows fail to render correctly with svg output backend.
      • #9001 [component: bokehjs] hatch_pattern and svg
      • #9213 [component: bokehjs] Svg backend cannot draw annular_wedge correctly [BUG]
      • #9436 [component: bokehjs] [BUG] Arrow glyph does not update
      • #9551 [component: bokehjs] [BUG] export_svg shifting x-axis upward and overlapping with ticks in Bokeh v1.4
      • #9927 [component: bokehjs] [BUG] MultiChoice displayed value is not updating
      • #10002 [component: bokehjs] Bokeh not rendering, stuck on Loading BokehJS [BUG]
      • #10108 webdriver failing to find installed firefox/geckodriver
      • #10146 [BUG] js_on_event doesn't work when used in a callback
      • #10147 [component: bokehjs] [BUG] TileRenderer ignores the visible property
      • #10153 [component: bokehjs] [BUG] Typed Arrays returned as dicts
      • #10164 custom latex examples do not run
      • #10174 [BUG] Incorrect type of Select.options
      • #10191 [component: bokehjs] [BUG] Tools in toolbar flickering and occasionally ignores clicks when HoverTool and hover glyph used
      • #10193 [component: bokehjs] [BUG] GeoJSONDataSource incorrectly processes MultiPolygon geometry type
      • #10195 [component: bokehjs] [BUG] visual glitch on empty plots with a second y-axis
      • #10215 [component: bokehjs] [BUG] Band is not updated when the model is changed
      • #10219 [component: bokehjs] [BUG] Misplaced Rects when using incomplete categorical ranges
      • #10233 [component: bokehjs] [BUG] bokeh js v2.x legacy libraries
      • #10246 [component: bokehjs] [BUG] wegbl and gridplot with a visible=False element
      • #10249 [component: bokehjs] [BUG] SaveTool generates smaller image than plot
      • #10251 [component: bokehjs] [BUG] DataTable column sort not working with NaNs
      • #10273 [BUG] export_svgs() function creats two files (one is empty)
      • #10281 [component: bokehjs] [BUG] line selection is broken
      • #10301 [component: bokehjs] bokehjs' version has duplicated dev suffix
      • #10302 [component: bokehjs] [BUG] Slider values increment by 2x steps
      • #10305 [component: bokehjs] SVG backend doesn't respect NaN/non-finite values
      • #10319 [component: bokehjs] [BUG] $name not being passed to hovertool for image plots
      • #10320 [component: bokehjs] Plotting with transforms behavior change
      • #10324 [component: bokehjs] Image Hover is broken
      • #10334 [component: bokehjs] Chrome 84 breaks toolbar rendering
      • #10336 [BUG] bokeh.embed.components outputs escaped javascript
      • #10358 [component: bokehjs] [BUG] slickgrid import has syntax error
      • #10361 [component: bokehjs] Autoload with widgets fails if earlier autoload does not specify widgets
      • #10362 [component: bokehjs] [BUG] If axis label is added/removed, the layout is not changed right away
      • #10365 [component: bokehjs] Tooltip chooses wrong side in grid plots
      • #10367 [component: bokehjs] [BUG] NumericInput and Spinner several bugs
      • #10370 [component: bokehjs] ImageURL doesn't respect anchor property when computing bounds
      • #10394 [component: bokehjs] [BUG] Can't add tabs after closing a tab
      • #10409 [component: examples] Spectrogram is broken
      • #10412 [component: bokehjs] [BUG] server_session is completely broken
      • #10238 [component: docs] Fix windows docs build issues
      • #10244 [component: bokehjs] Handle type="module" w/o entry point packages
      • #10271 fix over-quoting by components
      • #10378 [component: bokehjs] Distinguish raw strings from HTML in replace_placeholders()
    • features:

      • #3653 [component: server] Use a different error for "can't open socket" vs "404"
      • #6864 [component: bokehjs] DataTable autoEdit expose
      • #8595 [component: bokehjs] [Feature request] Allow DataTable to take its natural height
      • #8924 [component: bokehjs] Allow to derive ColorBar's low/high from data
      • #9169 [FEATURE] SVG export for gridplot
      • #9654 [FEATURE] Iterate over submodels of a model and draw submodel graph
      • #9956 [component: bokehjs] [FEATURE] varea_stack support in bokehjs
      • #10179 [component: bokehjs] [FEATURE] Allow any number in spinner using step=None
      • #10265 [FEATURE] Add a DocumentReady event
      • #10374 [FEATURE] Allow defining custom format for NaNs in DataTable NumberFormatter
      • #10066 [component: bokehjs] Add support for copying canvas to clipboard
      • #10353 Enhancements for DataTable
    • tasks:

      • #10083 [component: bokehjs] bokehjs needs a better assertion framework
      • #10086 [component: tests] Restore BokehJS linting
      • #10089 [component: bokehjs] Simplify/refactor filters in bokehjs
      • #10207 Need to run CI on release branches
      • #10209 [component: bokehjs] Naming for new coordinate systems
      • #10213 [component: build] Issues / Changelog script will need update
      • #10234 [component: bokehjs] Improve responsiveness when hovering over many points
      • #10252 Deprecate Oval?
      • #10282 [component: docs] Update blog links on all websites to point to Medium
      • #10283 [component: docs] Contributing guide needs updating wrt. BEP 6
      • #10284 [component: tests] [BUG] Housekeeping: remove documentation references to py.test
      • #10289 Housekeeping: Update python idioms
      • #10306 [BUG] cElementTree has been deprecated and will be removed in favor of ElementTree
      • #10310 [component: docs] [BUG] Link in docs is not working for fill color property
      • #10329 [component: bokehjs] Change NumberArray to Float32Array?
      • #10344 [component: docs] Documentation and examples updates for 2.2 release
      • #10347 [component: docs] Adding links to BEP 6 and BEP landing page to developer docs
      • #10397 [component: docs] Color site for OpenURL no longer exists
      • #10161 [component: bokehjs] Redefine min()/max() and introduce minmax() function
      • #10162 [component: bokehjs] Reduce memory footprint of data indexing
      • #10163 [component: bokehjs] Don't sort indices by distance in _hit_point()
      • #10176 [component: bokehjs] Ensure typed arrays are used for storing numerical data
      • #10185 [component: bokehjs] Fill in the gaps in bokehjs' property definitions
      • #10187 [component: docs] Fix typo in docs.
      • #10200 [component: bokehjs] PlotLayout -> core.layout.BorderLayout
      • #10201 [component: bokehjs] Drop layout's computed variables in favour of bbox
      • #10202 [component: bokehjs] A basis for sub-coordinate systems
      • #10208 [component: bokehjs] Rewrite gloo in TypeScript and add it to bokehjs
      • #10222 [component: build] Fixes for sphinx 3.1.1
      • #10225 [component: bokehjs] Improve performance by replacing _build_discontinuous_regions()
      • #10226 [component: bokehjs] Optimize HasProps.setv(attrs, {silent: true})
      • #10227 Forward merge from 2.1.1
      • #10229 [component: bokehjs] Redesign the implementation of CDSView's filters
      • #10235 [component: bokehjs] Redesign "materialization" of data specs
      • #10239 [component: build] Release Automation (pt 1)
      • #10240 [component: bokehjs] Corrected EqHistColorMapper with inverted colormap edge transform
      • #10241 [component: bokehjs] Allow to resize images in visual tests
      • #10257 [component: docs] Misc warnings cleanup
      • #10260 [component: docs] #8448 Fix typo "do no yet work" -> "do not yet work" in bokeh/sphinx/source/docs/user_guide/interaction/legends.rst
      • #10262 [component: bokehjs] Bump electron from 1.8.8 to 9.1.0 in /bokehjs/examples/electron
      • #10269 [component: docs] Fix typos in User Guide
      • #10272 [component: bokehjs] Improve performance of selections
      • #10275 [component: docs] Fix minor typos
      • #10277 [component: docs] Docs change anaconda install source
      • #10298 Add bokeh logo palette; remove rogue double-quote from template
      • #10304 [component: docs] Add note about nginx large_client_header_buffers to docs
      • #10315 [component: bokehjs] Bump lodash from 4.17.15 to 4.17.19 in /bokehjs
      • #10316 [component: server] Require auth on WSHandler
      • #10330 [component: bokehjs] Initial webgl cleanup
      • #10337 [component: docs] Fix typos in Dev Guide
      • #10338 [component: bokehjs] Replace for-in loop with for-of and keys()/values()/entries()
      • #10342 [component: bokehjs] Update bokehjs/package.json
      • #10346 [component: tests] Perform eslint checks on codebase tests
      • #10348 [component: bokehjs] Upgrade to SlickGrid 2.4.27
      • #10350 [component: bokehjs] Fix bokehjs' legacy bundles
      • #10352 Rev pillow version for sec advisory
      • #10354 [component: bokehjs] Code dupe experiements
      • #10357 [component: docs] Update out of date HoverTool docstring
      • #10363 [component: bokehjs] Modernized DataTable styling
      • #10393 [component: tests] Mark webdriver's tests as flaky
      • #10402 [component: bokehjs] Redesign SVG backen
  • v2.1.1 Changes

    August 18, 2020
    • bugfixes:
      • #10172 [component: bokehjs] [BUG] Can't resolve 'styles/annotations.css' when importing BokehJS
      • #10175 [component: server] [BUG] Serve application at random port failed
      • #10181 [BUG] Unable to set LabelSet.text_align with bokeh serve
      • #10197 [BUG] Can't select bar_line_color in ColorBar
      • #10204 [component: bokehjs] return typed arrays as lists
    • tasks:
      • #10212 [component: docs] Release notes for 2.1.1
  • v2.1.0 Changes

    June 15, 2020
    • bugfixes:
      • #7296 [component: bokehjs] Fix orient == 0 case in sidepanel.apply_label_text_heuristic()
      • #9218 [component: bokehjs] [bug] shared columndatasource issues in js callback (uncaught typeerror: cannot read property 'connect' of undefined)
      • #9230 [component: bokehjs] [bug] webgl + cdsview seems to use incorrect marker fill colours
      • #9515 [layout] [bug] layout engine much slower on chrome
      • #9856 [component: bokehjs] [component: build] [bug] bokehjs build does not abort on compilation error
      • #9871 [component: bokehjs] [bug] tablecolumn doesn't use field when title is not set
      • #9909 [component: bokehjs] Bad toolbar highlight in "dark" modes
      • #9915 [component: docs] [bug] the footer on the documentation website extends past its visible area
      • #9924 [component: server] [regression] [bug] django server resources are not working
      • #9953 [component: bokehjs] [bug] race condition between legend and glyph when using legend_label
      • #9959 [component: bokehjs] [bug]the hover tool is not disaplyed when the mouse is directly over text
      • #9965 [component: docs] [typo] cumsum() transform function docstring mistake
      • #9987 [component: docs] [bug] factorrange's start property's help string references end
      • #10022 [component: bokehjs] [widgets] [bug] datepicker.disabled doesn't always work
      • #10040 [component: bokehjs] [feature] allow named columns to be used in edittools
      • #10042 [component: bokehjs] [bug] bad label rendering with hbar / subgroup_label_orientation
      • #10072 [component: bokehjs] Bokehjs leak a lots style tag in head tag cause a slow performance
      • #10088 [component: build] Only use local bokeh package in tests
      • #10103 [component: docs] [bug] using anchors in the api reference hides the anchored element under the header
      • #10105 [component: docs] [bug] cd sphinx; make serve doesn't work
      • #10107 [component: bokehjs] Settable active state of toolproxys in gridplot
      • #10114 [component: bokehjs] [svg] Resolve issues with resizing and clearing svg canvas
      • #10123 [component: bokehjs] [layout] [regression] Canvas doesn't repaint after layout resize
      • #10126 [component: bokehjs] [bug] model.serializable_attributes method removed in bokeh master
      • #10128 [bug] resource warning unclosed file... _sri.json possible resource leak
      • #10140 [notebook] Fixed typo when registering google colab comms
    • features:
      • #2326 [component: bokehjs] Toggle selection of objects with shift+click
      • #4567 [component: bokehjs] Make tools active state updateable
      • #9863 [component: bokehjs] [feature] add "dot" marker variants
      • #9890 [component: bokehjs] Some new markers
      • #9922 [component: bokehjs] Autocompleteinput has no case insensitive option
      • #9963 [feature] add a lineedittool
      • #10021 [component: bokehjs] Add support for document event batching
      • #10132 [API: models] [feature] edittool.empty_value should support
    • tasks:
      • #5744 [component: bokehjs] Use only one of global.isnan and isstrictnan
      • #5800 [component: tests] Hard pass/fail test of some kind of basic glyph drawing
      • #8572 [component: tests] Transforms.py is missing property unit tests
      • #8741 [component: docs] Elevate our code of conduct
      • #9302 [component: bokehjs] [notebook] Push_notebook does not work in google colaboratory
      • #9704 [component: docs] [component: examples] [feature] need to add tile provider demo
      • #9813 [component: server] [feature] compose bokeh server with other tornado http servers
      • #9844 [component: bokehjs] Upgrade nouislider
      • #9913 [component: bokehjs] Use selection() instead of hittest helpers
      • #9941 [component: bokehjs] Deprecate css rendering modes for annotations
      • #9952 [component: docs] [infra] Bust caching of versions.json
      • #9971 [bug] warn about using the same layout element (here: plot) multiple times
      • #9972 [component: bokehjs] [widgets] Select widget un-focuses after selection
      • #9973 Bump jquery from 3.4.1 to 3.5.0 in /bokehjs
      • #9976 [component: bokehjs] [component: build] Update bokehjs' dependencies
      • #9977 [component: build] [infra] Use system installed google chrome in ci
      • #9978 [bug] cannot apply patch to [id] which is not in the document anymore
      • #9982 [component: docs] Bokehjs user guide section not using sri hashes
      • #9990 [component: docs] [bug] elaborate on how the margin attribute works in documentation
      • #9996 [component: tests] Drop support for s3 upload in examples' tests
      • #10000 [component: bokehjs] [component: tests] Add visuals tests for marker glyphs
      • #10001 [component: bokehjs] Clean up type situation around buffer handling
      • #10004 [component: bokehjs] Clean separation between models' and properties' responsibilities
      • #10006 [component: bokehjs] [performance] Speed up setting up of visuals
      • #10008 [component: bokehjs] [svg] Incorporate svgrenderingcontext2d into bokehjs
      • #10012 [component: bokehjs] Use map or set instead of {[key: string]: v}
      • #10016 [component: docs] Added ':' before execution command
      • #10026 [component: bokehjs] [typescript] Make show(), build_views(), etc. produce most specific types
      • #10030 [component: docs] Add google api key requirements into documentation dev guide
      • #10035 Miscellaneous changes
      • #10036 [component: bokehjs] Refactor implementation of image and imagergba glyphs
      • #10050 [component: build] Install channels from conda forge
      • #10053 Revert "spanset"
      • #10054 [component: bokehjs] Use map instead of {} as view storage
      • #10061 [component: bokehjs] Drop usage of our set type in favour of the native set
      • #10068 [component: bokehjs] Reduce usage of for-in loop an in operator
      • #10069 [component: bokehjs] Improve support for ndarray serialization
      • #10074 [component: docs] Fixed #10038 (tornado, ui/ux, search feature improvement)
      • #10077 Resolve f541 after upgrading to flake8 >=3.8
      • #10084 [component: bokehjs] More usage of map and set
      • #10085 [component: bokehjs] Make menus usable with tool proxies
      • #10091 [component: docs] Update 2.1.0.rst
      • #10096 Revert "add support for versioned bokehjs script tags and cdn urls"
      • #10101 [component: tests] Drop examples' baseline and image testing
      • #10116 [component: bokehjs] [component: tests] Chrome 83 breaks image diff tests
      • #10119 [component: docs] Fix a typo in docs
      • #10129 [component: examples] [component: tests] Restore examples' images and upload as an artifact
      • #10130 2.1 updates
      • #10142 [component: docs] [bug] weather_example_scipy
      • #10159 Prefer inclusive language
  • v2.1.0.rc3

    June 12, 2020