Conversation
polars latest build is hard to get working properly because it isn't a pure python package. Minimal effort solution is to just stick with stable release for now. Can revisit later if there's a more compelling reason to add it into uxarray upstream ci.
dylannelson
left a comment
There was a problem hiding this comment.
Hey I tried to follow the order of these commands and may see a potential problem. Breaking some of this file into pieces and testing each line individually can show an error where matplotlib is installed
PackagesNotFoundError: The following packages are missing from the target environment:
- matplotlibbut I think the reason this doesn't come up during the CI run is because this isn't an error, and just a warning. I think this causes some/all of the rest of the code to not run at all, and fail silently. I think if it's changed to matplotlib-base it works as intended though. Or if you want to test this, I believe if you add set -e to the top of the script, it will result in the error above, and can warn you of future ones.
The reason it seems to work with matplotlib-base is because /ci/environment.yml requires matplotlib-base<3.11 and calling conda remove matplotlib doesn't find matplotlib-base
I think you can reproduce with the set -e or by making the env yourself and trying to run the commands:
conda env create -n upstream-check -f ci/environment.yml
conda activate upstream-check
conda remove -y --force matplotlibor even the full
conda remove -y --force antimeridian cartopy dask datashader distributed matplotlib holoviews hvplot geoviews pandas pyarrow requests scikit-learn scipy shapely spatialpandas xarrayassuming your terminal is at the location of this branch's environment.yml
I'm also not seeing an issue with uninstalling pooch as part of the conda list. If I create an env and run
conda remove -y --force pooch it seems to work. Though I'm not as sure what you saw while running that warranted the change in the first place, so I'm not as certain about this one being a concern. For me though it does appear on conda list:
pooch 1.9.0 pyhd8ed1ab_0 conda-forgeand it works fine uninstalling for me
conda remove -y --force pooch
3 channel Terms of Service accepted
## Package Plan ##
environment location: ...
removed specs:
- pooch
The following packages will be REMOVED:
pooch-1.9.0-pyhd8ed1ab_0
Downloading and Extracting Packages:
Preparing transaction: done
Verifying transaction: done
Executing transaction: doneHoping these aren't just a local quirk/windows machine bug too, if so, then carry on, haha.
matplotlib is spelled as matplotlib-base and matplotlib-inline for conda pooch exists in the first conda list from upstream-dev-ci.yml so it can be uninstalled via conda remove. (It was missing from the second conda list, which is what led to this originally.) Kept the related comment for future reference.
|
Good finds, I fixed those two issues (I think) by:
Now trying to debug what appears to be a completely separate issue, occurring while collecting the tests: This is also occurring on
Hoping to get a chance to look into this further later today; will follow up here with any progress. |
Closes #1785
Overview
Adds geoviews (and more other packages, too) to the upstream ci job (via
install-upstream.sh). Using the latest geoviews should be sufficient to fix #1785; the upstream ci is failing because it is testing the latest geoviews release (which is not compatible with the latest cartopy; see #1780) when it probably should be testing the latest version of geoviews instead (where a fix has already been merged; see holoviz/geoviews#884).Closing the original issue only requires adding geoviews to the upstream ci job, but this PR adds more packages there, too. There have recently been other bugs related to the latest versions of packages including breaking changes (see, e.g., #1542, where some cartopy<0.26 plots don't work properly with matplotlib>=3.11). Including more packages in upstream ci may help spot this before the relevant releases actually occur.
Minor sidenote: moved the pip uninstall packages at start of install-upstream.sh into the
conda removecommand, because they were both being installed by conda. This comes fromupstream-dev-ci.ymlwhich usesci/environment.ymlwhich does not have apip: ...block; everything there is installed via conda; confirmed by looking at theconda listoutput from an actualCI Upstreamrun (e.g.: https://github.com/UXARRAY/uxarray/actions/runs/35949787277/job/107475635076).(Tiny sidenote: woops, misspelled the branch name! Fixing it means deleting the PR, though, so that typo is here to stay....)
PR Checklist
General
Testing & Benchmarking
Documentation and Examples
docs/api.rst; internal (private) function names start with an underscore (_)AI Disclosure
AI Usage: GitHub Copilot's inline code suggestions, plus asked claude about how to decide whether packages belong in the
conda removeorpip uninstallblock.