-
-
Notifications
You must be signed in to change notification settings - Fork 16
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
"ImportError: libgeos-3.4.2.so" on read the docs #21
Comments
I just checked with
And I noticed that
|
So it's because of readthedocs specifyin pillow to 3.0 (conda-forge has pilow 3.2), that the one from defaults is installed, causing a whole rist of other packages to be up/downgraded, ending with a broken install:
But it can also easily be caused by doing a Pinning |
That is fine as long as everything is properly pinned. We never pinned
That is fine but if we update to I am fixing all the pinnings and, if I got all the packages, you won't need that. But it may take until tomorrow for me to finish re-building everything (mostly |
Should be fixed in #105 but let me know if that works for you. Thanks @jorisvandenbossche for the report. I am working on a recipe for |
Retriggered the doc build on rtd, and it's working now! Thanks @ocefpaf! |
Thanks for testing! |
This pillow 3 problem is driving me crazy :( I know you guys aren't responsible for what's happening on RTD, but I can't seem to find a correct pinning strategy which works. I have been able to pin my packages so that oggm now builds on RTD. Here is the environment.yml file:
HOWEVER, now I'd like to add pyproj to this list. And this is where I can't find a suitable combination of packages version which works fine. Cartopy always complains about proj4 versions not being right, no matter which version I tried. I also tried to build cartopy via pip, but I get these kinds of errors:
Any idea on how I could get this going? Any strategy or advice would be helpful... |
I have a few question to try to understand what is going on. (Bare in mind that I don't know anything about RTD.)
Any idea why this happens? How does RTD install its pillow?
This pin should no longer be needed. Can you try a more relaxed version of your env? Something like: name: oggm
channels:
- conda-forge
dependencies:
- python=3.5
- numpy=1.12.0
- scipy=0.18.1
- geopandas=0.2.1 # let geopandas install mpl, pandas, gdal
- joblib=0.11
- netCDF4=1.2.7
- scikit-image=0.12.3
- configobj
- cartopy
- krb5
- rasterio=1.0a7
- xarray=0.9.1
- filelock
- numpydoc
- ipython=5.3.0 |
Thanks @ocefpaf !
I don't know why they do this, but they do it after our installation. If you look at the build log, the first two commands are:
So the first one is under our control, the second isn't... I've made a toy project to test these issues in a simple environment:
What I've tried so far:
Should I fill an issue on RTD? My experience with the RTD folks is that they aren't very keen to continue conda support (in favor of docker), an I'm afraid that opening a new issue might comfort them in this direction. (see this issue for the latest large conda thread). Would you be interested in getting commit rights to my test repo? |
@fmaussion I am starting to get it. The problem is that everything in If the second conda call in RTD, that installs I am away from home for a while but I can do this Monday and we can test it. Please bug me in case I forget. |
@fmaussion I got some free time and added |
@ocefpaf brilliant, thanks so much! Everything now builds:
For the record, it is important to add One last question: would you recommend to pin the packages for later builds, or leave them open? I traditionally pin them to a certain version which works (i.e. this one). |
@ocefpaf <https://github.com/ocefpaf> brilliant, thanks so much!
No problem. Glad itis resolved.
For the record, it is important to add pillow=3.0.0 in the projects
environment.yml, otherwise the subsequent conda install by RTD will fail (I
guess because they don't use conda-forge).
Makes sense. The second command cannot know the channels used in the env
file. So ensuring the right pillow is installed you avoid the channel
issued.
One last question: would you recommend to pin the packages for later
builds, or leave them open? I traditionally pin them to a certain version
which works (i.e. this one).
Good question. My policy is to pin only when it is really needed. But
pinning to a working set does make your life easier.
|
The geopandas doc are built on read the docs using the feature to install packages with conda. But when I updated the build today, I got the following error from importing fiona (previously it worked correctly):
See for the build log: https://readthedocs.org/projects/geopandas/builds/4250850/
In the
environment.yml
file conda-forge is listed as channel (https://github.com/geopandas/geopandas/blob/master/doc/environment.yml). But, I am not sure if I can see if the fiona package is correctly fetched from conda-forge or is coming from the defaults channel.I can also not reproduce this locally (on linux-64). In the build log, it can be seen that different packages are downgraded (eg
jpeg
is downgraded from 9b-0 to 8d-1) because of readthedocs installing certain versions of packages (eg pillow 3.0.0). Also if I replicate this behaviour locally, I don't get the error.The text was updated successfully, but these errors were encountered: