-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Version conflict of numpy requirement on 32bit architecture #1243
Comments
Looks like a duplicate of #855: when fetching requirements, easy_install allow pre-releases per default, while pip disallow them unless |
@benoit-pierre thank you for explaining the issue. I knew pip behavior, but the fact that easy_install behave differently surprised me. |
The code in setuptools/package_index.py | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git i/setuptools/package_index.py w/setuptools/package_index.py
index ad743307..4f2a93bf 100755
--- i/setuptools/package_index.py
+++ w/setuptools/package_index.py
@@ -21,7 +21,7 @@ import setuptools
from pkg_resources import (
CHECKOUT_DIST, Distribution, BINARY_DIST, normalize_path, SOURCE_DIST,
Environment, find_distributions, safe_name, safe_version,
- to_filename, Requirement, DEVELOP_DIST, EGG_DIST,
+ to_filename, Requirement, DEVELOP_DIST, EGG_DIST, parse_version
)
from setuptools import ssl_support
from distutils import log
@@ -620,6 +620,13 @@ class PackageIndex(Environment):
# Find a matching distribution; may be called more than once
for dist in env[req.key]:
+ if parse_version(dist.version).is_prerelease and not req.specifier.prereleases:
+ if dist not in skipped:
+ self.warn(
+ "Skipping pre-release version: %s", dist,
+ )
+ skipped[dist] = 1
+ continue
if dist.precedence == DEVELOP_DIST and not develop_ok:
if dist not in skipped: This should match the behavior of pip when
|
And to answer your question: no, unfortunately I'm not aware of a way to configure |
I wouldn't be opposed to easy_install only installing non-pre-release versions. |
Closing this in favor of #855. |
I am trying install matplotlib package on 32bit linux with python 3.5 and pip 9.0.
Newest matplotlib version (2.1.1) doesn't have manylinux1 wheels, so source compilation takes place.
Unfortunately matplotlib (according to setup.py) is build against numpy RC (1.14) while requirements trigger later installation of stable numpy (1.13). Due to API incompatibility between these two numpy versions, matplotlib installation is broken.
To reproduce use following code:
See more details here: matplotlib/matplotlib#10135 (comment)
This issue is already submitted on matplotlib github: matplotlib/matplotlib#10135 and discussed with @QuLogic there.
The text was updated successfully, but these errors were encountered: