Drop datashader from packaging and install docs

Open
#3,450 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
45/100
Issue type
Refactor
Clarity
Clearly specified
Activity status
Quiet
Tech stack
matplotlib, python

Research direction

Wait until the listed source, benchmark, notebook, and example issues are complete, then inspect the examples extra in setup.cfg and the dependency table in docs/source/getting_started/installation.rst. Remove the remaining datashader entries, ensure the stated plotting dependency is covered, and verify a clean examples install, the xrspatial import, and the specified grep command.

Written by the indexing model from the issue text.

Description

enhancement infrastructure

Reason or Problem

datashader is currently listed under the examples extra in setup.cfg. Once the source code, user-guide notebooks, and example notebooks no longer import it, the dependency declaration should go away so a fresh pip install xarray-spatial[examples] no longer pulls datashader.

This is the closing step of the wider effort to remove datashader as a dependency. xarray-spatial's own rasterize() (xrspatial/rasterize.py, available as arr.xrs.rasterize(...)) covers the vector-rasterization use cases, and matplotlib covers the visualization use cases.

Proposal

  • Remove the datashader >= 0.15.0 line from setup.cfg (the examples extra).
  • Make sure matplotlib (and any colormap source the notebooks now rely on) is present in the appropriate extra.
  • Remove the datashader row from docs/source/getting_started/installation.rst.

Done when

  • A clean environment installs xarray-spatial without datashader, and python -c "import xrspatial" succeeds.
  • grep -rn datashader xrspatial/ setup.cfg docs/source/getting_started/ returns nothing.

The only datashader references left in the repo after this are the comparison benchmark and the historical-credit prose, both kept on purpose.

Blocked by

This must land last, after every issue below, otherwise [examples] users lose datashader while the notebooks still import it.

Source and benchmark:

  • #3451 Remove canvas_like and datashader references from source code
  • #3452 Guard the datashader import in the rasterizer benchmark

User-guide notebooks:

  • #3453 surface
  • #3454 proximity
  • #3455 focal
  • #3456 zonal
  • #3457 classification
  • #3458 multispectral
  • #3459 fire
  • #3460 pathfinding

Example notebooks and script:

  • #3461 Pathfinding_Austin_Road_Network
  • #3462 pharmacy-deserts
  • #3463 classification-methods
  • #3464 animated_hillshade.py
Dominant language
Python
Stars
972
Forks
92
Avg merge
2d 12h
Merged PRs (30d)
7

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from xarray-contrib/xarray-spatial

All issues in xarray-contrib/xarray-spatial

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.