Merge pull request #56781 from timokau/sage-python-upgrade-fixes

Sage python upgrade fixes
This commit is contained in:
Timo Kaufmann 2019-03-03 20:48:10 +01:00 committed by GitHub
commit 37182b20a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,22 @@
diff --git a/src/sage/misc/package.py b/src/sage/misc/package.py
index 689e5a23b9..4e16fe3a8d 100644
--- a/src/sage/misc/package.py
+++ b/src/sage/misc/package.py
@@ -142,9 +142,14 @@ def pip_installed_packages():
sage: d['beautifulsoup'] # optional - beautifulsoup
u'...'
"""
- proc = subprocess.Popen(["pip", "list", "--no-index", "--format", "json"], stdout=subprocess.PIPE)
- stdout = proc.communicate()[0].decode()
- return {package['name'].lower():package['version'] for package in json.loads(stdout)}
+ with open(os.devnull, 'w') as devnull:
+ proc = subprocess.Popen(
+ ["pip", "list", "--no-index", "--format", "json"],
+ stdout=subprocess.PIPE,
+ stderr=devnull,
+ )
+ stdout = proc.communicate()[0].decode()
+ return {package['name'].lower():package['version'] for package in json.loads(stdout)}
def list_packages(*pkg_types, **opts):
r"""

View File

@ -112,6 +112,9 @@ stdenv.mkDerivation rec {
url = "https://git.sagemath.org/sage.git/patch?id=a05b6b038e1571ab15464e98f76d1927c0c3fd12";
sha256 = "05yq97pq84xi60wb1p9skrad5h5x770gq98ll4frr7hvvmlwsf58";
})
# https://trac.sagemath.org/ticket/27405
./patches/ignore-pip-deprecation.patch
];
patches = nixPatches ++ packageUpgradePatches;

View File

@ -65,11 +65,13 @@ buildPythonPackage rec {
perl
jupyter_core
pkg-config
pip # needed to query installed packages
];
buildInputs = [
gd
readline
iml
];
propagatedBuildInputs = [

View File

@ -58,6 +58,10 @@ buildPythonPackage rec {
tidyr
]) ++ extraRPackages ++ rWrapper.recommendedPackages;
nativeBuildInputs = [
R # needed at setup time to detect R_HOME (alternatively set R_HOME explicitly)
];
patches = [
# R_LIBS_SITE is used by the nix r package to point to the installed R libraries.
# This patch sets R_LIBS_SITE when rpy2 is imported.