Skip to content

Releases: holoviz/datashader

Version 0.19.1

Choose a tag to compare

@github-actions github-actions released this 19 May 15:33
v0.19.1
84b2f68

Many thanks to @hoxbro for their contributions.

Bug Fixes

  • Improve overlapping edges for polygons to not cancel out (#1495)

Compatibility

CI/CD

  • Use trusted publisher for PyPI and use zizmor (#1489, #1497)

Version 0.19.0

Choose a tag to compare

@github-actions github-actions released this 20 Mar 10:34
v0.19.0
7ab9e96

This release brings band-wise 2D support to quadmesh, several QuadMesh bug fixes, significant performance improvements to colorize and QuadMesh mesh operations, removal of the CLI, and compatibility updates for Pandas 3.0, Python 3.14, and cuDF 26.02.

Thanks to first time contributor @dcherian, and regular contributors @Azaya89, @philippjfr, and @hoxbro.

Features:

  • Make quadmesh support band-wise 2D (#1472)

Breaking Changes:

  • Remove the CLI interface which been broken since version 0.17.0 (#1484)
  • Deprecate copy_examples, fetch_data and examples with expected removal in version 0.20.0 (#1462)

Bug Fixes:

  • Support dask.array without dask.dataframe (#1454)
  • Improve compute_chunksize for downsampled data (#1448)
  • Handle descending coordinates in QuadMeshRaster downsampling (#1441)
  • Propagate NotImplementedError for mode (#1436)
  • Fix bug in QuadMeshRectilinear (#1459)
  • Fix rendering viewport fully contained in one cell (#1442)

Performance:

  • Reorder loops in QuadMeshCurvilinear (#1449)
  • Interval bounds updates (#1446)
  • Use more inplace operations in quadmesh (#1444)
  • Use numba for faster estimation of QuadMeshCurvilinear bounds (#1443)
  • Optimize colorize using matrix multiplication, inplace operations, and float32 conversion (#1437)

Compatibility:

Tests:

Maintenance:

  • Reduce size of assets/images (#1479)
  • Replace direct download of NYC Taxi with hvsampledata (#1462)

Version 0.18.2

Choose a tag to compare

@hoxbro hoxbro released this 05 Aug 10:21
v0.18.2
43fca7e

This release fixes a bug that caused a segmentation fault for quadmesh reduction, along with documentation updates. Thanks to @amaloney, @Azaya89, @maximlt, and @hoxbro.

Bug fixes:

  • Fix segfault when quadmesh reduction wrongly exceeded the array size (#1432)

Compatibility:

Documentation:

  • Add more reductions to the API ref (#1420)
  • Resolve documentation build warnings (#1427)
  • Fix images UX (#1430)

Version 0.18.1

Choose a tag to compare

@hoxbro hoxbro released this 05 Aug 09:43
v0.18.1
82a57c1

This release adds a small enhancement to the repr of reduction functions.

Enhancements:

  • Add more information to repr of reductions (#1418)

Version 0.18.0

Choose a tag to compare

@amaloney amaloney released this 10 Apr 16:54
f8e83b9

Python version 3.9 was not changed in the last release of 0.17.0. It has now been updated in this
release. Thanks to first time contributors @Azaya89 and @dmiracle; and regular contributors @hoxbro, @maximlt and @amaloney.

Breaking Changes:

  • Really drop support for Python 3.9 #1415

Enhancements:

  • Naive JIT implementation for cooling #1408

Version 0.17.0

Choose a tag to compare

@amaloney amaloney released this 30 Jan 19:45
8dae0f1

This release adds an enhancement that optimizes edge bundling using optimized numba code. The minimum supported version of Python is now 3.10, along with making pillow and dask optional dependencies. This release also adds compatibility changes to several downstream libraries, build updates, bugfixes, and documentation updates. Thanks to first time contributors @rhkarls, @lmcinnes, @thomas-reimonn, @amaloney; and regular contributors @hoxbro and @maximlt.

Breaking Changes:

  • Drop support for Python 3.9 (#1399)
  • Making dask and pillow optional dependencies (#1350, #1365)

Enhancements:

  • Edge bundling speedup using optimized numba code (#1383)

Build:

  • Updates to build infrastructure (#1372)
  • Fix documentation builds (#1391)

Compatibility:

  • Updated environment pins (#1355)
  • Compatibility with cuDF 24.12 (#1363, #1378)
  • Compatibility with dask 2025.1 and dask-expr 2 (#1369, #1390, #1394)
  • Compatibility with pixi v0.40.0 (#1387)
  • Compatibility with Python 3.13 (#1398)

Bugfixes:

  • PDF scaling bug (#1382)

Documentation:

Maintenance:

  • Move to pixi and hatchling (#1354)
  • General maintenance (#1357)
  • Updated linting rules (#1367, #1368)

Version 0.16.3

Choose a tag to compare

@hoxbro hoxbro released this 04 Jul 16:40
5d22b11

This release adds an enhancement and compatibility changes with upstream libraries. Thanks to @raphaelquast, @droumis, and @hoxbro.

Enhancements:

  • Add fail-fast for datasets outside the visible extent (#1345)

Compatibility:

  • Compatibility with cudf 2024.06 (#1344)
  • Compatibility with geopandas 1.0 and dask-geopandas 0.4.0 (#1347)

Maintenance:

  • Update docs.yaml (#1346)

Version 0.16.2

Choose a tag to compare

@hoxbro hoxbro released this 31 May 10:06
7f31d04

This release adds compatibility with Numpy 2.0, along with other improvements and bug fixes. Thanks to @hoxbro for his contributions.

Bugfixes:

  • Remove artifact from Polygon rendering (#1329)

Compatibility:

  • Test dev releases of numpy 2.0 and numba 0.60.0 (#1332)
  • Improve compatibility with dask-expr (#1335)
  • Add gpu marker for test and test both classic and dask-expr Dask.DataFrame's (#1341)

Documentation:

Maintenance:

  • Update list of maintainers (#1336)
  • Parallelize the test suite and fix a test polluted bug (#1338)
  • Update test workflow (#1340)

Version 0.16.1

Choose a tag to compare

@hoxbro hoxbro released this 23 Apr 11:57
6fabb75

This release brings compatibility with the new release of upstream packages. Thanks to the first-time contributor @alexander-beedie, and the regular contributors @philippjfr, @ianthomas23, @maximlt, and @hoxbro.

Enhancements:

  • Improved antialiased mean reduction (#1300)
  • Update the docstring of eq_hist (#1322)

Compatibility:

  • Python 3.12 support (#1317)
  • Basic dask_expr support (#1317)
  • Numpy 2.0 support (#1306)
  • Remove redundant py2 helper code (#1316)

Maintenance:

  • Replace Google Analytics with GoatCounter (#1309)
  • Docs: ignore numpydoc validation checks (#1310)
  • Fix test suite (#1314)
  • General maintenance (#1320)

Version 0.16.0

Choose a tag to compare

@ianthomas23 ianthomas23 released this 26 Oct 15:10
v0.16.0

Datashader 0.16.0 is a significant release adding support for rendering GeoPandas GeoDataFrames directly rather than having to convert them to SpatialPandas first. Support for GeoPandas geometry types in Datashader Canvas functions is as follows:

  • Canvas.line: LineString, MultiLineString, MultiPolygon, Polygon
  • Canvas.point: MultiPoint, Point
  • Canvas.polygons: MultiPolygon, Polygon

There is also support in Canvas.line for a new data type which is a 2D xarray.DataArray (within an xarray.Dataset) containing the coordinates of multiple lines that share the same x coordinates.

The DataShape package is now vendored in Datashader as it has not been maintained for a number of years and is not accepting updates.

Thanks to new contributor @J08nY and regular contributors @hoxbro and @ianthomas23.

Enhancements:

  • Support rendering of GeoPandas GeoDataFrames as lines, points and polygons (#1285, #1293, #1297)
  • Implement lines using 2D xarray with common x coordinates (#1282)

General code improvements:

  • Add debug logging to compiler module (#1280)
  • Vendor DataShape (#1284)
  • Don't use object as base class (#1286)
  • Fix typos using codespell (#1288)
  • Fix float16 being a floating type. (#1290)
  • Simplify line _internal_build_extend (#1294)

Improvements to CI:

  • Update to latest holoviz_tasks (#1281)
  • Update codecov configuration (#1292)
  • Add pre-commit (#1295, #1296)

Compatibility:

  • Support Pandas 2.1 (#1276, #1287)
  • Replace np.NaN with np.nan (#1289)
  • Drop support for Python 3.8 (#1291)