Skip to content

Latest commit

 

History

History
624 lines (451 loc) · 40.6 KB

releases.md

File metadata and controls

624 lines (451 loc) · 40.6 KB

Releases

See the HoloViz blog for a visual summary of the major features added in a selection of releases.

Version 0.11.1 (2024-10-16)

The 0.11.1 release is a patch release that brings a few bugfixes and documentation improvements. In particular it fixes a regression introduced in version 0.11.0 leading to an error when a plot is created from a Dask object with tiles=True. Many thanks to @Palmr (first contribution!), @ahuang11, @Hoxbro, @maximlt, and @philippjfr for their contributions!

Bug Fixes:

  • Fix regression when tiles=True with Dask (#1432)
  • Fix hover tooltips for NetworkX plots (#1439)

Documentation:

  • Add nb_interactivity_warning extension (#1444)
  • Document Ruff's allowed-unused-imports (#1436)
  • Update image links in README (#1433)
  • Minor fixes (#1434)

Tests:

  • Mark test_explorer_geo_revise_kind with geo marker (#1426)

Full Changelog

Version 0.11.0 (2024-09-27)

This minor release brings a number of enhancements and bugfixes, checkout the release blog post for a visual summary of the most important changes.

  • 🦆 New integration: DuckDB!
  • 🗺️ Automatic latitude/longitude conversion when displaying a tile map
  • 💹 Support for displaying subcoordinate y-axis
  • 🏄 New hover options: hover_tooltips and hover_formatters
  • 🐼 Optimized Pandas index support
  • 🐛 Fixing "No output in jupyter"
  • ➕ Update of the minimum version of the dependencies

Many thanks to @Azaya89, @liufeimath and @philipc2 for their first contributions, to @iuryt for contributing again, and to the maintainers @ahuang11, @hoxbro, @maximlt and @philippjfr!

Enhancements:

  • Add DuckDB integration (#1398)
  • Add pixel_ratio keyword, useful when datashade/rasterize=True (#1411)
  • Automatically convert lonlat to xy when tiles=True (#1377)
  • Add hover_tooltips and hover_formatters keywords, and better document hover (#1385, #1415)
  • Add subcoordinate_y keyword (#1379)
  • Optimize handling of wide datasets and Pandas indexes (#1350)
  • Add cticks keyword (#1368)
  • Optimize the geographic part of the explorer (#1353)
  • Support using by with hvplot.labels() to color the text (#1347)

Bug Fixes:

  • Ensure hvplot. hooks are run on every import (#1359)
  • Warn on imposing max rows, fix for curve and increase MAX_ROWS to 100,000 (#1408)
  • Do not set bin_range if shared_axes=False (#1391)
  • Fix date sorting of multi index Pandas dataframes (#1363)
  • Fix geopandas type check to handle None geometry (#1367)
  • Do not mutate data when using custom text format (#1352)

Compatibility:

  • Handle new Polars PerformanceWarning (#1418)
  • Add dask-geopandas check to is_geodataframe function (#1396)
  • Require HoloViews>=1.19.0, bump other dependencies, and drop Python 3.8 (#1355)

Documentation:

  • Fix missing images and image links (#1422)
  • Add interactive downsampling large vector fields (#1372)
  • Add customization for the subplots example (#1371)
  • Document Jupyter notebook requirements (#1392)
  • Replace geopandas.datasets by geodatasets in the examples (#1362)
  • Add paths reference notebook (#1354, #1384)
  • Document the downsample and resample_when parameters (#1344)

Infrastructure / Tests:

  • Use psutil logical for test examples (#1404)
  • Remove tests for polars.plot (#1403)
  • Use bokeh_sampledata in CI (#1387)
  • Conditionally skip testing the Gridded data user guide (#1383)

Full Changelog

Version 0.10.0 (2024-05-06)

This minor release brings a number of enhancements and bugfixes, checkout the release blog post for a visual summary of the most important enhancements.

  • 🧰 Improving the contributor experience: moving away from pyctdev to a more usual and easier approach, and adopt ruff as a linter and formatter
  • 📦 Modernizing hvPlot's packaging: migrating to pyproject.toml
  • 📖 Improving the documentation: adding a user guide on large time-series and improving the geographic user guide
  • 📈 Enhancing the plotting API: in part to support the NumFocus SDG project that aims to modernize the HoloViz Examples
  • 🐛 Fixing bugs!

Many thanks to @ahuang11, @droumis, @Hoxbro, @jsignell, and @maximlt for their contributions.

Governance:

  • Andrew (@ahuang11) promoted as Maintainer! (#1267)

Enhancements:

  • Add bgcolor parameter to set the background color (#1308)
  • Add robust parameter, similarly to Xarray (#1291)
  • Add tiles_opts parameter to customize the tiles (#1299)
  • Add support to xyzservices tiles (#1307)
  • Allow to set the downsample algorithm as string input (#1314)
  • Allow crs as Cartopy class name to match projection (#1332)

Bug Fixes:

  • Fix saving Panel objects with hvplot.save (#1297)
  • Fix setting group_label when plotting a histogram (#1310)
  • Fix the support of HoloViews ImageStack support and usage of aggregator and by (#1316)
  • Fix handling of EPSG codes (#1330)
  • Explorer: fix handling of Xarray objects that have dims without coords (#1334)

Compatibility:

  • Minor changes in preparation of the HoloViews Pandas index refactor (#1281)

Documentation:

Infrastructure / Tests:

  • Migrate to pyproject.toml and improve the contributor experience (#1296, #1322)
  • Format and lint the code base with ruff (#1320)
  • Pin intake to version 2.0.0 (#1275)
  • Fix the test suite after the latest Dask release (#1298)
  • Remove the examples folder (#1287)
  • Install the tests dependencies primarily with pip (#1276)
  • Misc (#1317, #1321, #1323, #1324, #1327)

Full Changelog

Version 0.9.2 (2024-01-29)

The 0.9.2 release is a patch release that brings a few bugfixes and documentation improvements, improving Polars support and documentation. Many thanks to @kevinheavey (first contribution!), @MarcoGorelli, @Hoxbro, and @maximlt for their contributions.

Bug fixes:

  • Correctly fall back to all numeric Polars columns when y is not specified (#1247)

Documentation:

  • Better expose Polars support (#1262)
  • Rename the Pandas reference section to Tabular (#1260)
  • Add roadmap for 2024 (#1253)
  • Various small changes (#1255 and #1261)

Infrastructure / Tests:

  • Add downstream Polars test (#1243)
  • Compatibility with Pandas 2.2 (#1257)
  • Dynamically generate the unit test matrix and add a cache option (#1235)

Full Changelog

Version 0.9.1 (2023-12-22)

The 0.9.1 release brings a number of enhancements, bugfixes and documentation improvements. Many thanks to @iuryt (first contribution!), @MarcoGorelli (first contribution!), @ahuang11, @Hoxbro and @maximlt for their contributions.

Enhancements:

  • Explorer: give more space to the plot and various UI tweaks (#1197, #1198, #1199, #1225)
  • Explorer: disable the geographic controls when geoviews is not installed (#1223)
  • Explorer: change the default plot type from line to scatter (#1228)
  • Support polars objects in the hvplot.plot entrypoint (#1219, #1222)

Bug fixes:

  • Fix ignoring hover_cols in OHLC plots (#1216)
  • Fix considering datashaded plots with one y variable as categorical (#1231)
  • Fix displaying Panel objects returned by hvPlot with show (#1230)

Documentation:

  • Replace Google Analytics with GoatCounter (#1224)
  • Indicate that Stamen tiles require a Stadia account (#1226)
  • Reintroduce colorbars in the Matplotlib guide (#1229)
  • Misc (#1186, #1195)

Maintenance:

  • Bump the minimum Param version to 1.12.0 (#1227)

Full changelog

Version 0.9.0 (2023-10-16)

The 0.9.0 release is a minor release with some exciting new features and a large number of bug fixes and enhancements. Many thanks to @rdesai9 (first contribution!), @dogbunny (first contribution!), @bikegeek (first contribution!), @ahuang11, @droumis, @Hoxbro, @MarcSkovMadsen, @maximlt and @philippjfr for their contributions. A special thanks to @ahuang11 and @Hoxbro without who these release notes would be much shorter!

New features:

  • The Explorer has been extended with the following features:
    • Support for Xarray data, enhanced geographic support and add a live update checkbox (#1141)
    • Display the code snippet within a tab (#1156)
    • Allow defining options passed to plot.opts() (#1171)
  • Add experimental Fugue integration (#1102)
  • Add basic Polars integration (#1129)

Enhancements:

  • Add .hvplot.explorer() as an alternate entry point to create an explorer (#1154)
  • Add the resample_when option to dynamically enable datashade/rasterize/downsample (#1103)
  • Expose the HoloViews timeseries downsampling algorithm (LTTB) with the downsample option (#1127, #1157)
  • Expose the HoloViews autorange option (#1128, #1158, #1174)
  • Allow string formatting for labels plots (#1140)
  • Support plots that use by with rasterize with HoloViews ImageStack (#1132, #1144)
  • Update show to return the configured Server or StoppableThread (#1121)

Bug fixes:

  • Do not force geo=True if tiles are provided (#1083, #1113)
  • Fix x-limit, y-limit, and rasterize support for geo features (#1135, #1163)
  • Fix handling WKT strings and add pyproj.CRS support (#1092, #1139)
  • Underlay land and ocean features (#1151)
  • Fix .hist for the Ibis data source (#997)
  • No longer suggest installing datashader and geoviews from the pyviz channel (#1130)
  • Silence GDAL exceptions warning (#1142)

Documentation:

  • Various docs improvements and addition of an Integrations guide (#1084, #1173, #1177)
  • Extending the reference gallery (#999)
  • Added extra size parameter to scatter plot example (#1118)

Compatibility:

  • Preparations before the release of Param 2.0 (#1146, #1164)
  • Pin Param to <3.0 (#1175)
  • Drop Python 3.6 and 3.7 (#1077)

Infrastructure / Tests:

  • Add Dask DataFrame plot test (#1131)
  • Add codespell to pre-commit (#1172)
  • Add OpenCollective sponsor link on the repo page (#1123)

Full changelog

Version 0.8.4 (2023-06-05)

The 0.8.4 release brings a number of bugfixes and documentation improvements. Many thanks to @kthyng (first contribution!), @raybellwaves, @jsignell , @Hoxbro, @maximlt and @philippjfr for contributing.

Bug fixes:

  • Fix .interactive layout compatibility with Bokeh 3 (1076)
  • Fix usage with intake (1052)
  • Fix deprecated usage of Param 2.0 (1064)
  • Fix projection when xlim/ylim provided (1053)
  • Fix interpretation of positional arg with geopandas, now used as color (1056)
  • Fix import error messages for geo dependencies (1054)
  • Fix usage of hover for geometries - make it less likely to fail (1055)

Documentation:

  • Update to latest nbsite & pydata-sphinx-theme (1070)
  • Update to Google Analytics4 (1075)

Maintenance:

  • Add ipywidgets to the examples deps (1048)

Version 0.8.3 (2023-03-17)

The 0.8.3 release brings a number of bugfixes and documentation improvements. This release is also marked by the adoption of a formal project governance, ensuring hvPlot's future as a healthy open-source project! Many thanks to @raybellwaves, @jsignell (welcome back!), @droumis, @Hoxbro, @maximlt, @philippjfr and @MarcSkovMadsen for contributing!

Please note that hvPlot is not yet compatible with Bokeh 3.

Bug fixes:

  • Allow .hvplot to execute for the ibis backend (#990)
  • Improve package name in error message (#1005)
  • Let process_crs try a few approaches before raising error (#1026)
  • Fix label on unnamed data array (#1025)
  • Only use xarray long_name metadata if it is a string (#1031)
  • Replace deprecated Param methods (#1030)
  • Ensure interactive pipeline is not re-executed needlessly (#1029)
  • Fixes subplots=True for geo=True and by (#761)
  • Force column names to string (#1042)

Documentation:

  • Docstring fixes (#985)
  • Improve the hist reference guide (#1002)
  • Improve the bar reference guide (#1032)

Project governance:

  • Create initial project gov docs (#1016)

Maintenance:

  • Rename master branch to main (#1011)
  • Add Python 3.11 to the test matrix (#1015)
  • Run examples with nbval instead of nbsmoke (#1044)
  • Fix the build by better defining the package extras (#1046)

Version 0.8.2 (2022-11-24)

The 0.8.2 release brings a number of bugfixes and documentation improvements. @MarcSkovMadsen has kept improving the docstrings and we congratulate @sophiamyang for her first contribution that made the landing page nicer! Many thanks to @droumis, @Hoxbro, @maximlt, @philippjfr and @MarcSkovMadsen for contributing!

Please note that hvPlot is not yet compatible with Bokeh 3.

  • Dependencies:
    • Add Panel lower pin to ensure Bokeh 3 is not installed (#974)
  • Interactive:
    • Support slice (#776)
  • Plot:
    • Convert DataFrame columns with type RangeIndex to strings to ensure compatibility with HoloViews (#932)
    • Ensure that xarray dataset metadata propagates to NdOverlays (#930)
    • Support rioxarray (#905)
    • Improve error message mentioning pyproj (#950)
  • Explorer:
    • Don't error on datetime-like axis (#968)
    • Don't use xlim/ylim slider if start and end values are identical (#966)
  • Documentation:
    • New and updated docstrings (#892, #863)
    • Improve the landing page (#874, #903, #876)
    • Change http to https (#873)
    • Add intended rolling_window param into pipeline (#944)
    • Updates the README (#817)
    • Miscellaneous documentation improvements (#866, #887, #910)
  • Development:
    • Add pre-commit to format and lint the code on commits (#967)
  • CI:

Version 0.8.1 (2022-08-26)

The 0.8.1 release is a bug fix release, focusing mostly on improving .interactive and the explorer. The documentation has seen some improvements too; @MarcSkovMadsen has been improving the docstrings so make sure to check them out. Many thanks to @jlstevens, @Hoxbro, @maximlt, @philippjfr and @MarcSkovMadsen for contributing!

  • Interactive:
    • Set interactive function to lazy to avoid calling it twice (#772)
    • Add support for hvplot kind accessor (#781, #858)
    • Add more tests to Interactive and some comments (#812)
    • Fixes to the operators implemented by Interactive (#814)
    • Propagate max_rows (#815)
    • Only register the function parameters watchers once (#818)
    • Do not re-execute transform on copied clones (#833)
    • Internal callback made dependent only when parameters are found (#857)
  • Explorer:
    • Make the explorer easier to use (#799)
    • Enhancement to Fields tab in explorer (#811)
    • Remove the marker styling option of the explorer (#809)
  • Plot:
    • Make rescale_discrete_levels a plot option (#758)
    • Ensure that dataframes with multiple columns are categorically shaded (#759)
    • Display a color bar when rasterize is enabled (#782)
    • Update the expected DataSet plot title after xarray 2022.6.0 (#795)
    • Set categorically shaded when there's more than one variable (#843)
    • Clone GeoViews' features (#850)
  • Documentation:
    • Add new and improve existing docstrings (#793, #826, #827, #822)
    • Update developer install instructions (#794)
    • Rework the landing page and add a Getting started guide (#838)
  • Misc:
    • No longer use basestring from holoviews.core.util (#757)
    • Ensure that repr is initialized on hvplot backend import (#774)
    • Add RGB test data (#779)
    • Add flatten utility function (#798)

Version 0.8.0 (2022-05-09)

The 0.8.0 release is a minor release with some exciting new features and a large number of bug fixes and enhancements. Many thanks to @FabianHofmann, @jomey, @ablythed, @jlstevens, @Hoxbro, @michaelaye, @MridulS, @ppwadhwa, @maximlt, @philippjfr for contributing!

Main new features:

  • Add ability to call .interactive() on bound functions (#720)
  • Add support to the Matplotlib and Plotly backends (#653)
  • Add the hvPlotExplorer, a Panel UI component designed to explore data (#638, #639, #651, #710, #726)

Enhancements:

  • Interactive:
    • Allow using getitem on an accessor in interactive (#633)
    • Allow attribute access on ufunc on interactive (#635)
    • Enhancements for interactive API (#640)
    • Flatten op_args to be able to find nested widgets (#699)
  • Allow dynspread to be used with rasterize (#637)
  • Add a title to xarray plots with scalar coords (#659)
  • Adding datashade and rasterize options to scatter_matrix (#495)
  • Update the default internal value of clim to support Matplotlib (#679)
  • Ensure bokeh/panel extension is loaded only once (#686)
  • Add support for planar layout from Networkx (#700)
  • Wrap color in hv.dim when it matches a dimension/column (#717)
  • Expose datashader line_width and rescale_discrete_levels options (#731)
  • Improve array-like handling for x and y inputs (#714)

Fixes:

  • Interactive:
    • Interactive fixes (#630)
    • Fix for interactive transform (#632)
    • Fix issue with accessors on interactive (#641)
    • Consistently dereference attribute access (#642)
  • State that the data cannot be symmetric if it's empty (#680)
  • Disable hover on errorbars plot (#721)
  • Fix application of the scale argument for geoviews features (#725)

Documentation:

  • Add scatter matrix reference (#689)
  • Plotting user guide enhancement (#694)
  • Download a tutorial file with the right filename (#711)
  • Add more imports to try/except import check (#693)
  • Various minor documentation enhancements and fixes (#625, #643, #644, #663, #678, #722)

Maintenance:

  • Drop support for Python 2.7, minimum supported version is now Python 3.6 (#702)
  • Changed to packaging.version (#708)

Version 0.7.3 (2021-07-23)

This is a minor release focusing on greatly improving the .interactive() API for flexibly building simple apps using widget controls. Thanks to @jbednar and @jlstevens for a few small fixes and many thanks to @philippjfr for all the rest!

Features:

  • Improved .interactive Dataframe support: max_rows display, column access (#640)
  • Improved accessor and attribute behavior for .interactive (#633, #635, #641, #642)
  • Add .holoviews() terminal method to .interactive pipelines
  • Add support for kwargs to .interactive.layout
  • Misc fixes to .interactive API (#630, #632)
  • Allow dynspread=True to be used with rasterize=True (now that Datashader supports it)

Version 0.7.2 (2021-05-22)

This is a minor release with a number of bug fixes and enhancements. Many thanks to @StefanBrand, @loicduffar, @brl0, @michaelaye, @aaronspring, @toddrjen, @raybellwaves, @jlstevens, @jbednar and @philippjfr for contributing.

Features:

  • Add support for geographic features (#622)
  • Added support for OHLC plot (#623)

Enhancements:

  • Support setting options for diagonal plots in scatter_matrix (#602)
  • Take group_label from columns if available (#615)
  • Add kwargs to interactive.layout()

Bug fixes:

  • Fix support for clim on contours (#587)
  • Adding default coordinates to datasets with missing coords (#605)
  • Do not plot streamz example point (#614)
  • Fix passing in multiple z-values (#616)
  • Ensure violin and boxplot color is applied (#619)
  • Ensure categorical colormapping is applied during datashade (#621)

Compatibility:

  • Switch default tile source to OSM (since Wikipedia is no longer available) (#610)

Documentation:

  • Correctly document .hist rather than .histogram (#571)
  • Use strings rather than bytes when referring to airplane dataset columns (#538)
  • Preserve function signature and docstring in with_hv_extension (#601)
  • Add hover_cols example (#612)
  • Switch to pydata sphinx theme (#613)
  • Update available options in customization docs (#620)

Version 0.7.1 (2021-03-03)

Major new features:

  • Add Ibis backend, providing hvPlot features for lazy SQL queries (#507)

Enhancements:

  • Cycles for continuous colormaps ([#548)
  • Validate by column(s) ([#565)
  • Add hover='vline' hover='hline' options to expose Bokeh HoverTool mode (#493)
  • Support streaming plots from HoloViews streams (not needing a streamz source) (#542)

Bug fixes:

  • Drop tuple NetworkX attributes to avoid errors (#549)
  • Cast types after applying melt to data (#566)

Version 0.7.0 (2020-11-18)

Thanks to @philippjfr for managing this release and implementing most of the features, and to @jbednar, @ahuang11, and @AurelienSciarra for contributions.

Major new features:

  • Powerful new .interactive() API for building easy apps (#505, #523)
  • New transforms argument to transform data in .hvplot() calls (#526)

Other new features and enhancements:

  • Support passing geographic projections as strings (#372)
  • Improved data selection, e.g. for filtering on metadata (#522)
  • Provide color_key to datashade as well as cmap, for convenience (#525)
  • Update param warnings to new API (#528)
  • Replace TravisCI tests with GitHub Actions (#524)

Bug fixes:

  • Fix for specifying hover_cols (#504)
  • Remove outdated reference to __main__ console script (#494)
  • Misc doc fixes, including to Streaming.ipynb (#481, #511)
  • Handle node_shape for networkx (#527)

Version 0.6.0 (2020-06-02)

This release includes major contributions from @philippjfr (overall maintenance and bugfixes) and @jsignell (reference gallery), plus additional contributions from @slamer59 (environment), @anitagraser (examples), @itcarroll (color_key alias), @Timothy-W-Hilton (bugfix), @jbednar (bugfix), @SandervandenOord (fontscale), and @jordansamuels (doc fixes).

New features:

  • Improved save and show utilities (#451)
  • Improved compatibility for tab completion (#411)
  • Major performance enhancement with Datashader in some cases (#465)
  • Add support for cuDF (#454, #466)
  • Support by argument for categorical aggregation (#461)
  • Support color_key alias (#446, #458)
  • Support spatialpandas for large sets of polygons (#459)
  • Add fontscale keyword (#397)

Bug fixes and compatibility:

  • Fixed 'title_format' deprecation warning (#428)
  • Avoid sorting overlays, to make color cycles consistent (#475)
  • Fix inference of non-declared index coordinates (#329)
  • Improved handling of indexes on flattened grid (#452)
  • Preserve Dataset.pipeline (#453)
  • Fixes for option handling (#458)

Documentation:

  • Added (a start to) a reference gallery
  • Added heat and trees example to topics (#378)
  • Replaced sphinx_pyviz_theme with sphinx_holoviz_theme (#366)
  • Removed references to pyviz (#373)
  • Fix networkx documentation (#476)

Version 0.5.2 (2019-10-17)

This release mostly includes contributions from @jsignell.

  • Allow tile sources to be objects as well as strings (#345)
  • Set geo=True by default for coastline (#344)
  • Add check_symmetric_max limit for working with large data (#340)
  • Expose plot at top level, to support pd.options.plotting.backend = 'hvplot' (#347)
  • Misc bug fixes (#341, #343, #346)

Version 0.5.1 (2019-10-13)

Minor release with updates to continuous integration setup (from @jsignell).

Version 0.5.0 (2019-10-10)

October 10, 2019

This is a major release that includes bug fixes, changes to default behavior, and enhancements.

Features:

  • Widget handling capabilities to facilitate interactivity (#323, #331)
  • New default colormaps (#258, #316, #206)
  • long_name(units) used to label xarray objects (#173)
  • Derived datetime accessor handlind (#263, #286)
  • coastline and tiles options for easy geo plots.
  • Automatic date sorting (#259)
  • Allow use of strings as aggregators for datashader (#257)

Version 0.4.0 (2019-01-28)

This is a major release which includes the addition of a networkx plotting API and a number of important bug fixes.

Features:

  • A new NetworkX interface providing equivalents for the networkx plotting module (#152, #154)

Fixes:

  • Fixed handling of labelled property to hide axis labels (#142)
  • Fixed handling of DataArrays and groupby on RGB plots (#138, #141)
  • Allow setting axis position (#149)
  • Fixes for setting the axis positions (#145)

Version 0.3.0 (2019-01-07)

This release includes a number of major improvements to the documentation and core functionality as well as a variety of bug fixes.

  • Added improved docstrings including all available options (#103, #134)
  • Added support for tab-completion in interactive environments such as IPython and Jupyter notebooks (#134)
  • Added support for rgb (#137) and labels (#98) plot types
  • Exposed bokeh styling options for all plot types (#134)
  • Compatibility with latest HoloViews/GeoViews releases (#113, #118, #134)
  • Added control over tools (#120) and legend position (#119)

Previous versions

Versions 0.1.1, 0.2.0, 0.2.1 were released on the 6th of July 2018, 7th of July 2018 and 8th of July 2018.