Skip to content

pin cartopy<0.26 to fix incompatibillity with geoviews - #1783

Merged
cmdupuis3 merged 4 commits into
mainfrom
sevans/pin-cartopy-under-0.26
Sep 23, 2026
Merged

cmdupuis3 merged 4 commits into
mainfrom
sevans/pin-cartopy-under-0.26

Conversation

@Sevans711

Copy link
Copy Markdown
Collaborator

Temporary fix for #1780, but leaving that issue open as a reminder to remove the pin once the new geoviews release is available.

Overview

Pinning cartopy<0.26 avoids the plotting issues described in #1780. Those issues need to be solved directly in geoviews, not in uxarray itself. A fix has been merged upstream (see holoviz/geoviews#884) but the release might take a couple weeks or more. This pin keeps uxarray stable in the meantime.

Updated test_plot_topology_with_explicit_projection so that it is actually sensitive to this issue and crashes when using cartopy 0.26.0 (and the latest geoviews, 1.15.1).

Once the new geoviews release exists, the pins could be updated, and #1773 can merge. The final state of the pins at that point will likely be: cartopy>=0.26, geoviews>1.15.1, and remove the pin on matplotlib.

PR Checklist

General

  • An issue is created and linked
  • Added appropriate labels (if your uxarray repo permissions allow it)
  • Filled out Overview and Expected Usage (if applicable) sections

Testing & Benchmarking

  • There is adequate test coverage of changes from this PR (add new tests if needed)
  • [N/A] If this PR could affect performance, ran ASV benchmarks and confirmed they show expected behavior (add a new benchmark if necessary)

Documentation and Examples

  • [N/A] Docstrings updated with any function changes, and included in all new functions
  • [N/A] User (public) functions added to docs/api.rst; internal (private) function names start with an underscore (_)
  • [N/A] If touched any notebook files, cleared the output of all cells before committing
  • [N/A] If added new notebook files, put into appropriate directories and referenced in appropriate files

AI Disclosure

AI Usage: just GitHub Copilot's inline code suggestions.

  • I have tested and take responsibility for all AI-generated content in my PR.

@Sevans711 Sevans711 added bug Something isn't working dependencies Related to dependency files, such as pyproject.toml or environment.yml visualization Plotting or other visualizations labels Sep 23, 2026

@cmdupuis3 cmdupuis3 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's another unpinned cartopy in pyproject.toml line 50

@Sevans711

Copy link
Copy Markdown
Collaborator Author

There's another unpinned cartopy in pyproject.toml line 50

That was intentional, but not obvious. Added a comment to clarify! Since the issue is just with cartopy & geoviews, and geoviews is only in "viz" extras, I believe there shouldn't be any need to pin cartopy in "geo" extras.

@cmdupuis3
cmdupuis3 self-requested a review September 23, 2026 18:23

@cmdupuis3 cmdupuis3 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Sevans711 Got it, that was my only hangup

@rajeeja rajeeja left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Keeping the temporary Cartopy pin scoped to the viz extra makes sense because the incompatibility is in GeoViews, while the geo extra does not install GeoViews. The rendered-plot regression coverage catches the actual failure, and the corresponding CI/docs/ASV environments are pinned consistently. All checks pass.

@cmdupuis3
cmdupuis3 merged commit 44a7414 into main Sep 23, 2026
17 checks passed
@Sevans711
Sevans711 deleted the sevans/pin-cartopy-under-0.26 branch September 23, 2026 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working dependencies Related to dependency files, such as pyproject.toml or environment.yml visualization Plotting or other visualizations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants