From 0d2f29d6178b3fa4f044865b76da271c789c2979 Mon Sep 17 00:00:00 2001 From: Masanori Ogino <167209+omasanori@users.noreply.github.com> Date: Thu, 22 Oct 2020 15:45:26 +0900 Subject: [PATCH] pythonPackages.rpy2: 3.2.6 -> 3.3.6, fix test etc. - This newer version is compatible with panda 1.0 without any patch. - rPackages.lazyload is required to run tests. - The official website is moved to GitHub Pages. Signed-off-by: Masanori Ogino <167209+omasanori@users.noreply.github.com> --- pkgs/development/python-modules/rpy2/default.nix | 15 ++++----------- .../rpy2/rpy2-3.x-r-libs-site.patch | 8 ++++---- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/pkgs/development/python-modules/rpy2/default.nix b/pkgs/development/python-modules/rpy2/default.nix index c0c0420e925a..055341dfd1d3 100644 --- a/pkgs/development/python-modules/rpy2/default.nix +++ b/pkgs/development/python-modules/rpy2/default.nix @@ -25,13 +25,13 @@ }: buildPythonPackage rec { - version = "3.2.6"; + version = "3.3.6"; pname = "rpy2"; disabled = isPyPy; src = fetchPypi { inherit version pname; - sha256 = "1p990cqx3p2pd1rc9wn66m56wahaq8dlr88frz49vb7nv4zw4a8q"; + sha256 = "0xvfkxvh01r5ibd5mpisp8bz385hgpn27b988y8v65z7hqr3y1nf"; }; buildInputs = [ @@ -53,6 +53,7 @@ buildPythonPackage rec { DBI dbplyr hexbin + lazyeval lme4 tidyr ]) ++ extraRPackages ++ rWrapper.recommendedPackages; @@ -69,14 +70,6 @@ buildPythonPackage rec { # 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. ./rpy2-3.x-r-libs-site.patch - - # pandas 1.x compatibility, already merged upstream - # https://github.com/rpy2/rpy2/issues/636 - (fetchpatch { - name = "pandas-1.x.patch"; - url = "https://github.com/rpy2/rpy2/commit/fbd060e364b70012e8d26cc74df04ee53f769379.patch"; - sha256 = "19rdqydwjmqg25ibmsbx7lggrr9fsyjn283zgvz1wj4iyfjwp1za"; - }) ]; postPatch = '' substituteInPlace 'rpy2/rinterface_lib/embedded.py' --replace '@NIX_R_LIBS_SITE@' "$R_LIBS_SITE" @@ -98,7 +91,7 @@ buildPythonPackage rec { ]; meta = { - homepage = "http://rpy.sourceforge.net/rpy2"; + homepage = "https://rpy2.github.io/"; description = "Python interface to R"; license = lib.licenses.gpl2Plus; platforms = lib.platforms.unix; diff --git a/pkgs/development/python-modules/rpy2/rpy2-3.x-r-libs-site.patch b/pkgs/development/python-modules/rpy2/rpy2-3.x-r-libs-site.patch index 177e4f9a83d1..a9e10f02b0bb 100644 --- a/pkgs/development/python-modules/rpy2/rpy2-3.x-r-libs-site.patch +++ b/pkgs/development/python-modules/rpy2/rpy2-3.x-r-libs-site.patch @@ -1,10 +1,10 @@ diff --git a/rpy2/rinterface_lib/embedded.py b/rpy2/rinterface_lib/embedded.py -index cc32b6d..3969ad0 100644 +index 1f4babbf..322363c5 100644 --- a/rpy2/rinterface_lib/embedded.py +++ b/rpy2/rinterface_lib/embedded.py -@@ -113,6 +113,16 @@ def _initr(interactive: bool = True, - if isinitialized(): - return None +@@ -118,6 +118,16 @@ def _initr( + if openrlib.R_HOME is None: + raise ValueError('openrlib.R_HOME cannot be None.') os.environ['R_HOME'] = openrlib.R_HOME + + # path to libraries