-
-
Notifications
You must be signed in to change notification settings - Fork 8
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
Let conda and pipenv be friends for geospatial packages #6
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DeepCode's analysis on #58fdcd found:
💬 This comment has been generated by the DeepCode bot, installed by the owner of the repository. The DeepCode bot protects your repository by detecting and commenting on security vulnerabilities or other critical issues. |
Let pipenv create a virtualenv with site-packages enabled. See https://github.com/pypa/pipenv/blob/79a12c35dbcfd6f349ee98e57a0b35490cb6341a/docs/advanced.rst#-pipenv-and-other-python-distributions.
Geographic visualizations for HoloViews! Repository at https://github.com/pyviz/geoviews. Note that we're installing some sub-dependencies from conda instead of pipenv here, and thereby compromising some hash-based reproducibility offered by the Pipfile.lock file because of the reason below. Cartopy which geoviews depends on is a real pain to install via pipenv (trust me, I tried, see also SciTools/cartopy#738), so we'll maybe wait for 0.18.0 to come out and see if it gets fixed then, sigh. The problem I think, lies with Cartopy, Shapely and PyProj all having to link themselves to the PROJ and GEOS library somehow. At a minimum, it seems that installing just Shapely and PROJ using conda works, while we use pipenv to get the latest Cartopy from github alongside it's dependencies cython, pyepsg and pyproj (see SciTools/cartopy#738).
weiji14
changed the title
Let conda and pipenv be friends
Let conda and pipenv be friends for geoviews
Oct 22, 2019
weiji14
changed the title
Let conda and pipenv be friends for geoviews
Let conda and pipenv be friends for geospatial packages
Dec 25, 2019
CUDA-accelerated GIS and spatiotemporal algorithms! Also need to update proj from 6.2.0 to 6.2.1 to resolve dependency problems faced in https://github.com/weiji14/deepicedrain/runs/363415413.
weiji14
force-pushed
the
conda_pip_interop
branch
from
December 25, 2019 21:43
40d09b2
to
58fdcdf
Compare
weiji14
added a commit
that referenced
this pull request
Dec 25, 2019
Closes #6 Let conda and pipenv be friends for geospatial packages.
weiji14
added a commit
that referenced
this pull request
Dec 25, 2019
Closes #6 Let conda and pipenv be friends for geospatial packages.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
dependencies
Pull requests that update a dependency file
docker 🐳
Pull requests that update Docker code
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Improving conda and pipenv interoperability! Necessary for those hard to install geospatial packages like cartopy, and cuspatial (only available through conda).
In other words, running
conda list
should show pipenv installed packages, and runningpip list
should show Python packages installed by conda. This is possible with conda versions > 4.6 (conda/conda#7053) and pipenv since 2018 (pypa/pipenv#1469).References:
TODO:
Note to future self, may want to consider refactoring Dockerfile to be more space efficient through some ingenious use of the cache/multi-build stages.