All Versions
78
Latest Version
Avg Release Cycle
33 days
Latest Release
876 days ago

Changelog History
Page 1

  • v2.4.2 Changes

    November 22, 2021
    • bugfixes:

      • #11422 [component: bokehjs] [BUG] DeserializationError when trying to change a DataTable's columns with CustomJS
      • #11800 [BUG] DeserializationError when plotting graphs
      • #11801 [component: bokehjs] [BUG] Log axis figures don't render if they're not visible at start
      • #11807 [component: bokehjs] Work around issues with initialization-time change discovery
      • #11808 Don't unnecessarily update node/edge renderers in graphs
    • tasks:

      • #11613 [component: docs] Cache-bust custom.css for docs
      • #11791 [component: docs] Update issue template to use new GH forms
      • #11761 [component: docs] Clarify use of color in first steps guide
      • #11762 [component: docs] Replace slash with backslash for PS commands
      • #11767 [component: bokehjs] Upgrade jquery-ui to resolve security concerns
      • #11781 [component: examples] fix transform jitter example
      • #11786 bokeh 2.4.2 backports
      • #11790 [component: build] Bryanv/pin sphinx 42
      • #11797 Add OS to bokeh info
      • #11805 More 3.0 -> 2.4.2 backports
      • #11810 [component: docs] Update docs for new issue forms
      • #11824 Updates for release
  • v2.4.1 Changes

    October 13, 2021
    • bugfixes:

      • #11119 [component: bokehjs] [BUG] varea_stack() and vline_stack() fails to update correctly when new source data is different length
      • #11625 [component: tests] [BUG] Codebase test failures in Windows
      • #11627 [BUG] mypy tests fail in Windows
      • #11629 [BUG] Hover tool takes long time to render
      • #11633 [component: bokehjs] [BUG] RangesUpdate not emitted when using xwheel_pan
      • #11645 [component: bokehjs] [BUG] bokeh init creates a package.json which refers to the deprecated Bokeh JS node package
      • #11646 [component: bokehjs] [BUG] Using band_hatch_pattern with images doesn't work
      • #11661 [component: bokehjs] [BUG] Issue with line rendering when selecting indices
      • #11670 [component: bokehjs] [BUG] Duplicate change events for autocomplete_input
      • #11679 [BUG] Parallel Plot example with output_backend="webgl" not working
      • #11713 [component: docs] Documentation builds are failing in CI
      • #11644 [component: bokehjs] Actually fix clipping in SVG <text> nodes
    • tasks:

      • #11617 [component: docs] Update Team link in footer
      • #11658 [component: build] Support "pip install" from sdist
      • #11618 [component: tests] Reduce Tornado imports
      • #11628 [component: docs] Correct path in dev guide server instructions
      • #11652 [component: build] Update bokehjs' dependencies
      • #11668 [component: docs] Add information about mathjax bundle
      • #11681 [NO SQUASH] Batch of 3.0 -> 2.4 backports
      • #11712 [component: tests] Upgrade baselines to Chrome 94
      • #11722 [component: tests] Update visual baselines on MacOS
      • #11724 [NO SQUASH] More 3.0 -> 2.4 backports
      • #11738 [component: docs] Add release notes for Bokeh 2.4.1
  • v2.4 Changes

    September 15, 2021
    • bugfixes:

      • #7217 [component: bokehjs] Including both log and linear axis types not working
      • #10756 [component: bokehjs] [BUG] Jitter caching too aggressively
      • #10806 Date validation is too lax
      • #10876 [component: bokehjs] [BUG] 'dashed' line style not working properly when using webgl
      • #10898 [component: bokehjs] [BUG] Tabs widget disabled property has no effect
      • #10927 [component: docs] Inconsistent information about _units property in reference guide
      • #11016 [component: bokehjs] [BUG] Figure name passed to renderer.glyph.name but not renderer.name
      • #11025 [component: bokehjs] Line and MultiLine produce inconsistent data bbox with trailing NaNs
      • #11035 [component: bokehjs] [BUG] Bokeh.Widgets objects missing tools, required by Bokeh.Plotting.gridplot()
      • #11037 [component: bokehjs] [BUG] Using sizing_mode in gridplot layouts requires explicit assignment
      • #11038 [component: bokehjs] [BUG] Calling figure({title:"some title"}) replaces Title object with string, prevents subsequent updates to title text
      • #11045 [component: bokehjs] Hatch patterns are lost with SVG backend after interaction
      • #11058 [component: bokehjs] [BUG] SVG backend does not support line dash offset
      • #11071 [component: examples] [BUG] Use of np.int is deprecated in numpy 1.20
      • #11139 [BUG] Image.transform does not handle data:image/PNG;base64 string images
      • #11149 [component: bokehjs] [BUG] Inconsistent hatch rotation
      • #11154 [BUG] Non-selected hatching not grayed out
      • #11162 [component: bokehjs] [BUG] Do not make room for invisible tick labels
      • #11178 [component: examples] Broken example: Olympic Sprinters
      • #11197 [component: tests] [BUG] Correct missleading classname in BokehJS unit Test for LogTickFormatter
      • #11216 [BUG] Toolbar properties non-nullable
      • #11217 [BUG] WebGL regressions when setting alpha as an iterable
      • #11276 [component: bokehjs] [BUG] FileInput filename not returning the filenames after upgrading to v2.3.2
      • #11288 [component: bokehjs] [BUG] WebGL non-circle markers revert to canvas when selected
      • #11319 [component: tests] examples' tests fail in CI
      • #11367 [component: bokehjs] [BUG] Ellipse glyph does not render properly in figure legend
      • #11374 [component: bokehjs] [BUG] RadioButtonGroup orientation doesn't have expected effect
      • #11378 [component: bokehjs] [BUG] multi_line with logScale
      • #11402 [component: bokehjs] [BUG] SVGRenderingContext2D.arc() differs from Canvas specification, it breaks if used without calling beginPath() beforehand
      • #11413 [component: bokehjs] Changing tile provider does not remove attribution
      • #11437 [component: bokehjs] [BUG] HoverTool ignores IndexFilter in CDSView
      • #11444 [component: tests] [BUG] license-related codebase tests on Win10 fail
      • #11446 [component: bokehjs] [BUG] Hover glyphs permanently rendered with vline/hline mode in 2.4.0dev
      • #11457 [component: tests] MathText integration tests are not robust
      • #11460 [component: tests] Bokeh-CI unit export tests failing
      • #11474 [component: bokehjs] [BUG] graph_renderer.layout_provider changes via JS code are not displayed on plots
      • #11477 [component: server] [BUG] Increasing memory consumption of bokeh server (part 2)
      • #11479 [component: bokehjs] [BUG] MathText axis labels do not all render in multi-figure layouts
      • #11487 [component: tests] OpenURL's unit tests open popup windows
      • #11508 [component: bokehjs] [BUG] Log auto-scaling not showing all data
      • #11520 [BUG] The update() method is not equivalent to changing widget properties directly
      • #11551 [component: bokehjs] SVGRenderingContext2D.drawImage() doesn't respect clipping region
      • #11579 [BUG] Inconsistent handling of Title Text attributes
      • #11587 [component: bokehjs] Clip region is not applied to text in SVG backend
      • #11609 [component: examples] [BUG] Surface3d example is broken
      • #11610 [component: examples] [BUG] Server embed notebook issue
      • #11297 [component: bokehjs] Correctly initialize WebGL non-base marker/scatter glyphs
      • #11370 [component: bokehjs] Handle corner cases in LinearLinterpolationScale.v_compute()
      • #11536 [component: bokehjs] Reassign value on numeric_input high-low change only if needed
      • #11568 Fixing typo error 2
      • #11573 [component: server] Add version as request argument to extension to avoid browser caching
      • #11577 [component: docs] Better formatting for args lists in docstrings
      • #11600 Fix regexes for finding tex delimiter
    • features:

      • #657 Add support for plots in polar coordinates
      • #7317 [component: bokehjs] Add support for line breaks in Label
      • #9261 [component: bokehjs] [FEATURE]Make LegendItems Hideable
      • #10733 BOKEH_STRICT does not raise validation errors
      • #11007 [FEATURE] Add a min_exponent to only show axis labels as exponents for number higher than this exponent
      • #11095 [component: bokehjs] [FEATURE] Add consolidated RangeUpdate event
      • #11120 [component: bokehjs] [FEATURE]Add "maintain_focus" property to ZoomOutTool
      • #11266 [component: bokehjs] [FEATURE] Include toolbar in tab order
      • #11381 [component: docs] [FEATURE] bokeh-plot should parse ReST docstrings in example
      • #11423 [component: bokehjs] [FEATURE] visible property for TableColumns
      • #11548 [FEATURE] Make global_alpha of ImageRGBA an AlphaSpec
      • #11565 [component: server] URL printed in server startup log always assumes http protocol
      • #11098 [component: bokehjs] Implement all Webgl marker types
      • #11099 [component: tests] Allow to test against a provided git reference
      • #11128 [component: bokehjs] Latex on axis labels
      • #11159 [component: bokehjs] WebGL rect glyph with hatch pattern
      • #11165 Add support for embedding plots/layouts in tooltips
      • #11195 [component: tests] Collect performance metrics during integration tests
      • #11214 [component: bokehjs] Add support for toolbar's overflow menu
      • #11343 [component: bokehjs] WebGL markers and rects reuse arrays and buffers
      • #11420 [component: bokehjs] add latex capabilities to tick labels
      • #11466 add python conveniences to mathtext
      • #11511 Support xyzservices.TileProvider as an input of get_provider
      • #11533 Add support for alternative math text input notations
      • #11585 TeX on Markup widgets Div, Paragraph
    • tasks:

      • #8390 [component: bokehjs] Define a default muted glyph
      • #9329 [component: docs] Document bokeh.sampledata
      • #9671 [component: server] [FEATURE] Enable the Server to serve apps at sub urls like /gallery/image-classifier
      • #9961 [component: docs] Ref Docs need sidebar TOC
      • #10137 [component: docs] [BUG] Anchors in docs can be jumpy
      • #10287 Update to isort 5.7
      • #10391 [component: tests] Test legacy bundles before release
      • #10572 [component: build] [FEATURE] Bokeh Python Wheel packages
      • #10685 [component: docs] Move Bokeh docs to the latest version of pydata-sphinx-theme
      • #10796 [component: docs] Add default browser env var to docs
      • #10839 Drop Python 3.6
      • #10867 Simplify HasProps and MetaHasProps
      • #10877 Remove SRI integrity checks from js_resources.html template
      • #10932 Bring up branch-2.4
      • #10946 [component: docs] Automate python min-version and requirements in docs
      • #10950 Simplify HasProps and MetaHasProps (part 2)
      • #10980 [component: docs] Replace plot_width and plot_height with width and height
      • #11034 [component: bokehjs] [BUG] Palettes not accessible by name for ColorMapper objects in BokehJS
      • #11053 [component: build] Separate javascript bundle for WebGL
      • #11135 [component: docs] Fix collapsible code blocks
      • #11138 [BUG] Time for updating one column in a CDS depends on the total number of columns
      • #11142 [component: tests] Codebase test to validate versions.json
      • #11146 [component: bokehjs] json_items should report bokeh version
      • #11147 [component: docs] [BUG] Footer in 2.4 docs broken
      • #11166 Allow pathlib.Path wherever raw string paths are supported
      • #11184 Add width and height properties to gridplot()
      • #11211 [component: tests] [BUG] Conflicting test dependencies in downstream CI build
      • #11215 [component: docs] [BUG] Links to Line Properties gives 404 in user guide
      • #11221 [BUG] Use dataclasses for check validation
      • #11255 [component: build] Build deploy action also needs to check the branch
      • #11267 [component: docs] Update extension examples to import from top-level models
      • #11282 Document conda init in Getting Set Up
      • #11298 [component: build] [BUG] Release build env missing dependencies
      • #11301 [component: server] [BUG] Bokeh websocket connection creates large Sec-WebSocket-Protocol header
      • #11354 [component: docs] Update developer docs
      • #11392 address code issues flagged by lgtm
      • #11404 [component: bokehjs] Add ellipse() method to SVGRenderingContext2D
      • #11415 pandas future warning for commits.py
      • #11428 [component: docs] Reorganize bokeh.plotting in ref guide
      • #11483 Revert kwarg-only args for Theme
      • #11489 [component: docs] [FEATURE] Enhanced docstrings for gallery entries
      • #11505 Fix Bokeh version in CI Build step
      • #11515 [component: docs] Remove Wikimedia tile provider
      • #11574 [component: tests] Restore original values when manipulating os.environ in tests
      • #10861 Redesign WebGL backend using ReGL
      • #10930 Replace JS var with let/const across the codebase
      • #10961 [component: bokehjs] Upgrade to TS 4.2 and upgrade other dependencies
      • #10972 replaced old-style string substitution
      • #10979 [component: tests] Add dask/dask to downstream tests
      • #10987 Bryanv/2 3 1 forwardports
      • #11004 [component: build] Add support for incremental TypeScript builds
      • #11019 [component: tests] Improve speed by comparing whole buffers first
      • #11067 [component: docs] add latex extension example with mathjax
      • #11070 [component: bokehjs] Use premultiplied alpha in WebGL
      • #11072 [NO SQUASH] Forward ports to branch-2.4
      • #11073 [component: bokehjs] Drop unnecessary -webkit- prefixes from flexbox
      • #11078 Fix regressions after PR #10930
      • #11090 [component: bokehjs] Simplify rendering code with visuals.apply()
      • #11092 HasProps and misc cleanup
      • #11108 [component: bokehjs] Fix WebGL line regression
      • #11115 [NO SQUASH] Forward ports to branch-2.4
      • #11117 [component: docs] Fix python3 incompatible print in callback docs
      • #11134 [NO SQUASH] more ports from branch-2.3
      • #11140 [component: build] Remove all cyclic dependencies from bokehjs
      • #11145 [component: docs] More ref guide improvements
      • #11183 [component: tests] Additional visual tests for Legend annotation
      • #11187 [component: docs] Expand rst_epilog
      • #11189 [component: tests] Update baselines for Chromium 90
      • #11207 [component: tests] Include Dask testing dependencies in downstream CI
      • #11210 [NO SQUASH] remove black codebase check (#11208)
      • #11219 Use dataclasses in bokeh.io.state
      • #11220 Add support for lazy annotations boilerplate
      • #11224 Full typescript for WebGL code
      • #11225 Improve static typing in bokeh.command
      • #11237 [NO SQUASH] 2.3.2 forward ports
      • #11238 [component: bokehjs] Update to TS 4.3-dev and enable noImplicitOverride
      • #11246 [component: build] Update bokehjs' dependencies
      • #11252 [component: bokehjs] Fix webgl line alpha issues
      • #11262 [component: bokehjs] Move WebGLRenderingContext use to ReGL
      • #11272 [component: build] Upgrade TypeScript to 4.3-rc
      • #11277 [component: bokehjs] WebGL line glyphs reuse arrays and buffers
      • #11283 [component: bokehjs] Normalize string syntax across bokehjs
      • #11286 [component: docs] docs: fix code snippet in Label
      • #11289 [component: bokehjs] Allow div(element) instead of div({}, element)
      • #11290 Statically type various parts of bokeh
      • #11304 [component: docs] Update docs for BokehJS visual testing
      • #11314 [component: build] Upgrade to TS 4.3 and refresh package lock files
      • #11322 [component: docs] Add 'experimental' note to extensions chapter
      • #11325 Fix typo in AuthProvider._validate error message. login_url instead of logout_url
      • #11327 Fill-in missing __future__ imports for lazy annotations
      • #11329 Bump pillow from 8.1.1 to 8.2.0 in /docker-tools/debian
      • #11330 Statically type more of bokeh
      • #11332 Add return type annotation to __init__
      • #11337 Add tests for SVG exports
      • #11341 Statically type the return of json_item()
      • #11342 [component: build] Refresh bokehjs/package-lock.json
      • #11398 [component: docs] Add intro for categorical chapter
      • #11399 [component: tests] Increase session_token_expiration (test)
      • #11409 Bring up 2.3.x changes
      • #11417 Consolidate pip dependencies
      • #11419 Remove OrderedDict
      • #11443 [component: docs] Update wording around output_file()
      • #11454 Fix spec.py and cleanup scripts cruft
      • #11458 [component: tests] Iurypiva/testing svg draw image
      • #11459 [component: examples] Update file_input.py
      • #11463 Skip svg export test
      • #11465 [component: bokehjs] Simplify the SVG backend
      • #11467 [component: docs] Update to Sphinx 4.1
      • #11473 Remove test and extra sections from meta.yaml
      • #11482 Document Refs Cleanup (part 1)
      • #11485 Add panel to downstream tests
      • #11492 Document Refs Cleanup (part 2)
      • #11494 [component: bokehjs] Update bokehjs' bundle sizes and dependencies
      • #11495 [component: bokehjs] Properly test deferred rendering of MathText objects
      • #11497 Document Refs Cleanup (part 3)
      • #11499 Document Refs Cleanup (part 4)
      • #11502 Quick fix for CI version check issue
      • #11503 [component: build] Upgrade to TypeScript 4.4 RC
      • #11509 Update resources for pep440 dev versions
      • #11518 More modules under mypy
      • #11525 [component: build] Add bokehjs' mathjax bundle
      • #11532 [component: server] Allow extensions to modify applications in serve subcommand
      • #11534 [component: build] Upgrade TypeScript to version 4.4
      • #11535 Small Document fixes
      • #11544 [component: docs] Update docs for math notations (LaTeX and MathML)
      • #11559 [component: docs] Misc docs build changes
      • #11566 [component: build] Update baselines for Chrome 93
      • #11570 [component: examples] Add LaTeX axes examples
      • #11581 [component: docs] Fix typos, line breaks, and links
      • #11583 [component: examples] Add penguin dataset and example
      • #11584 [component: bokehjs] Mathstring conveniences for axis_labels and tick labels
      • #11586 [component: bokehjs] Add support for legend_{label,field,group} to bokehjs' Figure
      • #11590 [component: docs] udpate release notes
      • #11595 [component: bokehjs] Require space before blocks
      • #11597 Misc MyPy work
      • #11599 [component: docs] More 2.4 last minute docs
      • #11604 [component: docs] Add and update examples
  • v2.3.3 Changes

    July 07, 2021
    • bugfixes:

      • #11083 [component: bokehjs] [BUG] column ignores css class scrollable from version 2.3.0
      • #11110 [component: bokehjs] [BUG] Bad formatting of y axis labels with theme different from standard
      • #11161 [component: bokehjs] [BUG] Div model layout differences between bokeh 2.2.3 and 2.3.1
      • #11188 [component: bokehjs] [BUG] Layout regression in panel introduced by PR #11123
      • #11284 [component: bokehjs] Active tab should be in view on render
      • #11344 [component: bokehjs] [BUG] plot's height can not go below 600px with sizing_mode = 'stretch_both'
      • #11365 [component: bokehjs] [BUG] dropdown menu is hidden in multi choice, others are not
      • #11380 [component: bokehjs] [BUG] Extensions with package.json should fetch exact version from CDN
      • #11384 [component: server] [BUG] app_index.html is missing quotes in href attribute
    • tasks:

      • #11242 [component: docs] Simplify instructions for GOOGLE_API_KEY
      • #11377 Backport changes from 2.4 to 2.3.3
      • #11406 [component: docs] Bryanv/2 3 3 release notes
  • 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