Skip to content

Releases: holoviz/holoviews

Version 1.18.3

13 Feb 10:17
27d38e9
Compare
Choose a tag to compare

This micro release includes bug fixes.

Bug fixes:

  • Fix BoundsX and BoundsY regression (#6099)
  • Fix rasterize regression (#6102)
  • Fix link selection for empty Layout (#6110)
  • Don't pin notebook in conda recipe for pyviz channel (#6108)

Version 1.18.2

05 Feb 11:22
9b3dc5a
Compare
Choose a tag to compare

This micro release includes a number of bug fixes and documentation updates, as well as compatibility updates for xarray 2023.12 and Pandas 2.2.
Many thanks to the new contributors @junietoc, @JulianGiles, and @magic-lantern, as well as the returning contributors @ianthomas23, @maximlt, @TheoMathurin, @philippjfr, @ahuang11, and @Hoxbro.

Enhancements:

  • Update contour line calculations to use ContourPy's LineType.ChunkCombinedNan (#5985)
  • Use sys.executable for check_output (#5983)
  • Updates to show_versions (#6072, #6081)

Bug fixes:

  • Support color_key in datashade when intermediate step is an ImageStack (#5994)
  • Fix hist on overlay (#5995)
  • Set proper context before triggering streams (#6000)
  • Support partial bound function (#6009)
  • Add norm in init_artists in holoviews/plotting/mpl/raster.py (#6029)
  • Fix linking elements that are transformed by a Compositor (#6003)
  • Add datetime hover information for selector (#6023, #6039)
  • Only evaluate rx if it is a Reactive Expression (#6014)
  • Ensure partial methods can be used as dmap callables (#6063)
  • Del frame after stack level is found in deprecated (#6085)

Compatibility:

  • Compatibility updates with xarray 2023.12 (#6026)
  • Add extra check to detect if we are in jupyterlite (#6007)
  • Compatibility updates with Pandas 2.2 (#6074, #6078)
  • Add Comm on_open handler to initialize the server comm (#6076)

Documentation:

  • Fix docs (#5996)
  • Fix Param usage in the Plot and Renderers guide (#6001)
  • Fixing URLs to bokeh project (#6005)
  • Fix to broken urls in example gallery pages (#6038)
  • Replace Google Analytics with GoatCounter (#6048)
  • Add downloads badges (#6088)

Maintenance:

  • Change to pytest-rerunfailures (#5984)
  • Holoviews maintenance (#5987)
  • Add log_cli_level = "INFO" to pytest (#5989)
  • Add shell pre-commit hook (#5991)
  • Enable Bugbear 904 (#5992)
  • Part 1, modernize test suite (#5954)
  • Enforce labels (#5996)
  • Add lower pin to scipy (#6032)
  • Skip Deploying_Bokeh_Apps.ipynb on Windows (#6070)
  • Fix failing Windows tests (#6087)

Version 1.18.1

09 Nov 09:16
9c72201
Compare
Choose a tag to compare

This release contains a small number of bug fixes and compatibility updates — many thanks to @philippjfr and @Hoxbro for their contributions.

Bug fixes:

  • Account for overlaid elements when using subcoordinates_y (#5950)
  • Fix groupby option for vectorized annotations (#5956)
  • Fix and improvements to ImageStack (#5961)
  • Do not allow partial matches when updating OverlayPlot (#5962)
  • Always ravel array in unique_array (#5969)

Compatibility:

  • Update Stamen maps with new URL (#5967)
  • Compatibility updates for Numpy 2.0 (#5979)

Maintenance:

  • General maintenance (#5955)

Version 1.18.0

23 Oct 07:26
ad31eda
Compare
Choose a tag to compare

This release includes new features, improvements, and bug fixes. Among these are the new elements. First is the ImageStack element allows you to easily visualize a 3D array, while the VLines, HLines, VSpans, and HSpans elements allow you to visualize vertical and horizontal lines and spans easily. In addition, this release includes support for subcoordinate systems in the y-axis and various other enhancements and bug fixes. This release adds support for the newest Python 3.12 and Bokeh 3.3 and drops support for Python 3.8 and Bokeh 2.

Many thanks to the new contributors @MeggyCal, along with our returning contributors @ahuang11, @ianthomas23, @jlstevens, @maximlt, @philippjfr, and @Hoxbro.

New features:

  • Implementation of ImageStack (#5751, #5945)
  • Adding vectorized VLines, HLines, VSpans, and HSpans elements (#5845, #5911, #5940)
  • Implement support for subcoordinate systems in the y-axis (#5840)

Enhancements:

  • Cycle through text_color when overlaying Labels (#5888)
  • Drop requirements for OrderedDict (#5867, #5890, #5925)
  • Allow to link to an Overlay (#5881)
  • Use contourpy for contour calculations (#5910)
  • Use browser information to set pixel_density in ResampleOperation2D (#5947)
  • Avoid bounce back of events for Range{X,Y,XY} streams (#5946)

Bug fixes:

  • Fix overlaying labels in Sankey diagram (#5864)
  • Ensure the PlotSize stream works with undefined width/height (#5868)
  • Fix test when only python3 command is available (#5874)
  • Try and except get_extents without the dimension argument and add kwargs to all get_extents (#5872)
  • Enable Mathjax with enable_mathjax (#5904)
  • Fix histogram operation on Ibis data (#5929)
  • Raise exceptions in compare_dataset (#5932)
  • Don't overlap objects in overlaid plot (#5942)

Compatibility:

Documentation:

  • Add Linking Bokeh plots guide to the table of contents (#5900)

Maintenance:

Version 1.17.1

17 Aug 07:08
e2f06d0
Compare
Choose a tag to compare

This release contains a small number of important bug fixes and regressions — many thanks to @ianthomas23, @maximlt, @philippjfr, and @Hoxbro for their contributions.

Enhancements:

  • Improve support for hv.NdOverlay and hv.Overlay in downsample1d (#5856)
  • Improve legend support for hv.Layout and add documentation for sync_legends and show_legends (#5852)

Bug fixes:

  • RangeToolLink now correctly reset to the predefined boundsx and boundsy values (#5848)
  • Fix regressions with Bokeh's axis (#5838, #5850, #5851)

Compatibility:

  • Pin Param version for Bokeh 2 (#5844)
  • Explicitly clear Matplotlib figure to remove warning about auto-removal of overlapping axes for Matplotlib 3.8 (#5857)

Documentation:

  • Set autohide example to True as in the hook (#5832)

Maintenance:

  • Add OpenCollective sponsor link on the repo page (#5839)
  • Update Ruff in pre-commit and report panel communication in hv.show_versions (#5853)
  • Cleanup imports (#5846)

Version 1.17.0

25 Jul 16:28
f73e703
Compare
Choose a tag to compare

This release brings one of the most requested features - interactive twin-axis support! Another feature added in this release is the ability to easily set custom options on plot components with backend_opts, making it much easier to customize your plots. Datashaders where and summary aggregators are now supported, and rasterize now has a selector option, making it easy to get extra information about your rasterized data. Lastly, Bokeh figures with the same labels will synchronize muteness or visibility across different figures.

In addition, this release includes several enhancements and bug fixes.

Many thanks to the new contributors @alfredocarella and @RaulPL, as well as the returning contributors @ahuang11, @droumis, @jbednar, @jlstevens, @maximlt, @philippjfr, @TheoMathurin and @Hoxbro.

New features:

  • Multi-yaxis support in the Bokeh backend (#5621)
  • Allow modifying the underlying Bokeh or Matplotlib figure, axes etc. using backend_opts (#4463)
  • Support Datashaders where and summary aggregators and add selector option to rasterize enabling instant hover inspection of value dimensions (#5805)
  • Synchronize muteness or visibility across Bokeh figures to support linked legends (#5763)

Enhancements:

  • Add option for initial ranges to RangeToolLink (#5800)
  • Allow resample's pixel_ratio to go below 1 (#5813, #5817)
    Add the ability for VectorField to instantiate from UV coordinates (#5797)
  • Handle the nodata option for rasterized RGB image (#5774)

Bug fixes:

  • Fix bins option in the autompg_histogram demo (#5750)
  • Fix 0pt bug in safari (#5755)
  • Disable pan if active_tools=[] (#5754)
  • Better handling of inputs to rasterize.instance() (#5767, #5811)
  • Fix class variable being used as instance vdims in hv.RGB (#5773, #5775)
  • Improve notebook detection in VSCode and Google Colab (#5792)
  • Don't warn when running rasterize in VSCode (#5780)
  • Add __init__ to hv.Output to not overwrite its parent signature (#5799)
  • Fix XArrayInterface crashing when input is an empty array (#5809)
  • Avoid setting batched before the class is initialized (#5814)
  • Fix aspect handling when plot size is still unknown (#5808)
  • Update callbacks to use Bokeh's quad instead of quad (#5760)
  • Update hv.Image/hv.RGB invert_{x,y}axis to work with Bokeh 3 (#5796)
  • strip_magics should also strip IPython line magic (#5794)

Compatibility:

  • Implement HEP1 - Drop support for Python 3.7 (#5695)
  • Replace deprecated np.product with np.prod (#5787)
  • Update FileArchive repr for Param 2.0 (#5791)
  • Deprecate functionality (#5776)

Documentation:

  • Fix typo in Getting Started section text (#5759)
  • Add sep keyword to pd.read_csv in documentation page (#5798)

Maintenance:

Version 1.16.2

08 Jun 16:36
5cb5ff7
Compare
Choose a tag to compare

This release includes a breaking change as notebooks will no longer be inlining as default. This change will reduce the size of the notebook files and, more importantly, address an upstream issue in Jupyter where running hv.extension would give an error when used in a notebook.

Critical bug fixes and compatibility:

  • Correctly set inline=False when running hv.extension in a Jupyter Notebook (#5748)
  • Adding more Param 2 support (#5717)

Enhancements:

  • Speed up import time of Holoviews (#5719)

Maintenance:

  • Fix failing tests (#5742)
  • Misc. mainteance (#5717)

Version 1.16.1

05 Jun 10:29
c9856c0
Compare
Choose a tag to compare

This release contains a small number of important bug fixes and enhancements. Many thanks to @philippjfr and @Hoxbro.

This release includes a breaking change as notebooks will no longer be inlining as default. This change will reduce the size of the notebook files and, more importantly, address an upstream issue in Jupyter where running hv.extension would give an error when used in a notebook.

Critical bug fixes and compatibility:

  • Add enable_mathjax and set it and inline to False (#5729)
  • Update to support Datashader on Python 3.11 (#5720)

Enhancements:
Hoxbro marked this conversation as resolved.

  • Add show_versions helper function (#5725)
  • Ignore known model warning in VS Code (#5734)
  • Add a workaround for plots where the objects in a figure would overlap (#5733)

Documentation:

  • Upgrade to latest nbsite and pydata-sphinx-theme (#5724, #5735)

Version 1.16.0

09 May 07:31
f4c4c12
Compare
Choose a tag to compare

This release includes many new features, improvements, and bug fixes. Among the highlights are support for Bokeh 3.1 and Panel 1.0, both of which come with a wide range of new features and enhancements. Time series support has also been improved, with auto-ranging along one axis, a new downsample algorithm, and having WebGL enabled by default. In addition, the release includes various other enhancements and bug fixes.

We would like to thank the many users who contributed to this release by filing bug reports, providing new features, and bug fixes. We want to give a special shout-out to existing contributors @ianthomas23, @jlstevens, @jordansamuels, @maximlt, @philippjfr, @TheoMathurin, @Yura52, and @Hoxbro, as well as new contributors @GeoVizNow, @JRRudy1, @keewis, @michaelaye, and @wendrul.

This minor version will be the last to support Python 3.7. The next minor version will require Python 3.8 or higher.
In the next release, holoviews.annotate will start giving a deprecation warning about its future move to the new package HoloNote.

New features:

Enhancements:

  • Improve legend_cols support for Bokeh 3 (#5669)
  • Add convenience getter interface to opts (#5606)
  • Ensure .stack works on areas with different vdims (#5693)
  • Add muted support to PointPlot like hv.Scatter (#5705)
  • Automatic detect comms without calling pn.extension() (#5645)
  • Add support for extra Hovertool variables in a Bokeh's quadmesh with 2D coordinates (with tests) (#5638)
  • Change hv.Rectangles to internally use Bokeh Quad and not Rect to support logarithmic axis in WebGL (#5664, #5702)

Bug fixes:

  • Ensure spatial_select in non-zero indexed DataFrame is applied right (#5625)
  • Fix error handling for plotting class lookups on empty DynamicMap/HoloMap (#5604)
  • Fix active_tools to only be set for enabled tools (#5616)
  • Fix legend display when using categorical datashade on GPU (#5631)
  • Adding GeoDataFrame to DataConversion (#5325)
  • Don't emit warnings when the toolbar is disabled (#5691)
  • Don't try to find the closest match if the input is empty (#5700)
  • Only use long_name if it is a string (#5646)
  • Use Matplotlib's public API to list the colormaps (#5598)

Compatibility:

  • Add Param 2.0 support (#5667, #5641, #5680, #5704)
  • Add Pandas 2.0 support (#5662)
  • Update types.functiontype to collections.abc.callable (#5636)
  • Improve error message for categorical data when used with datashade (#5643)
  • Don't disable Jedi completion by default (#5701)

Documentation:

  • Fix an incorrect number stated regarding available axis types (#5623)
  • Fix BoundsY example (#5629)
  • Fix formatting on FAQ (#5630)
  • Fix anchor links (#5677)

Maintenance:

Known issues:

  • BoxEditTool is not yet supported with the new internals of hv.Rectangle.

Version 1.15.4

16 Jan 20:43
cdf6028
Compare
Choose a tag to compare

This release contains a small number of enhancements and important bug fixes. Many thanks to our new contributors @mmorys, @jj-github-jj, and @sandhujasmine, but also our returning contributors @droumis, @jlstevens, @MarcSkovMadsen, @maximlt, @philippjfr, @stanwest, and @Hoxbro.

Enhancements:

  • Make lasso select mask values using a Dask-compatible method (#5568)
  • Make plotly legend group unique (#5570)
  • Set pan and wheel_zoom as the default Bokeh active tools (#5480)
  • Enable rendering colorbars on bokeh GraphPlots (#5585)
  • Add Plotly Scatter3d documentation and fix colorbar title (#5418)

Bug fixes:

  • Only trigger range-update once in callbacks (#5558)
  • Ensure dynamically created subplots can be updated (#5555)
  • Fix start of stack-level in deprecations (#5569)
  • When sorting colormap records, replace None with an empty string (#5539)
  • Fix annotator in Geoviews by adding deserialization of non-deserialized base64 data (#5587)
  • Fix hv.Empty not working in AdjointLayout plot (#5584)
  • Check for categorical data to histogram (#5540)
  • Fix clim_percentile (#5495)

Compatibility:

  • Compatibility with Shapely 2.0 (#5561)
  • Compatibility with Numpy 1.24 (#5581)
  • Compatibility with Ibis 4.0 (#5588)

Documentation:

  • Installation instructions update (#5562)
  • Use OSM for reference tile source in notebook documentation (#5536)
  • Enhance Tiles example notebook (#5563)

Maintenance:

  • Various fixes and general maintenance of the CI (#5384, #5573, #5576, #5582)
  • Updated codebase to modern Python conventions (#5509, #5577)
  • Renamed master branch to main (#5579)
  • Update binder link and dependency pinning (#5583)
  • Update copyright to only contain start year (#5580)