Skip to content

CI: fix nightly-deps env so nightlies of all relevant dependencies are used #529

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

theroggy
Copy link
Member

@theroggy theroggy commented Mar 30, 2025

Because geopandas-base is being installed via conda-forge, all it's dependencies (numpy, geopandas, shapely) are also already being installed from standard conda-forge. Because they are already installed when pip kicks in, the nightlies from scientific-python-nightly-wheels aren't actually installed...

This PR changes the env so geopandas is also installed via pip, which solves above issue.

@theroggy theroggy added this to the 0.11.0 milestone Apr 10, 2025
@jorisvandenbossche
Copy link
Member

I think this is probably not needed because we get the shapely nightly wheel through the scientific-python-nightly-wheels pypi index?

@theroggy
Copy link
Member Author

I think this is probably not needed because we get the shapely nightly wheel through the scientific-python-nightly-wheels pypi index?

In theory. In practice, shapely is being installed from conda-forge because it is a dependency of geopandas-base... and because it exists already, pip won't install it (again) from scientific-python-nightly-wheels...

@jorisvandenbossche
Copy link
Member

Ah, but then we should fix that, because the same is true for numpy and pandas, so we are not actually installing nightly packages for those.

(also, adding the conda-forge shapely_dev label seems to give you shapely from that channel, although right now this is then actually an older version (2.1.0rc) than the latest ..)

So I think either we have to ensure we are not yet installing those dependencies in the base conda env (e.g. remove geopandas-base, and install geopandas from pip as well), or otherwise have to ensure the pip call upgrades (adding -U? although that might try to upgrade too much?)

@jorisvandenbossche
Copy link
Member

Looking at the yml file again, I assume removing geopandas-base and adding geopandas to the list of pip dependencies should solve the issue

Now, all dependencies of geopandas-base, shapely, numpy, pandas,... are already being installed from conda-forge instead of installing the nightlies via pip
@theroggy
Copy link
Member Author

theroggy commented Apr 24, 2025

Ah, but then we should fix that, because the same is true for numpy and pandas, so we are not actually installing nightly packages for those.

(also, adding the conda-forge shapely_dev label seems to give you shapely from that channel, although right now this is then actually an older version (2.1.0rc) than the latest ..)

Looking at the yml file again, I assume removing geopandas-base and adding geopandas to the list of pip dependencies should solve the issue

True.

I was focussing on shapely 2.1.0 rc when making this PR as I wanted the pyogrio tests to have run on it before shapely 2.1 was officially released... but the current fix is indeed not a long term/real solution.

Moving geopandas to being installed via pip as well should indeed fix it for everything...

@theroggy theroggy changed the title CI: use shapely_dev label in nightly-deps env CI: fix nightly-deps env so nightlies of all relevant dependencies are used Apr 24, 2025
@jorisvandenbossche
Copy link
Member

Looking good now!

@theroggy theroggy merged commit e3c9144 into geopandas:main Apr 24, 2025
53 of 58 checks passed
@theroggy theroggy deleted the CI-use-shapely_dev-label-in-nightly-deps-env branch April 24, 2025 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants