pythonPackages.pandas: 0.19.1 -> 0.19.2
This commit is contained in:
parent
757d10abb1
commit
5319587d87
2 changed files with 92 additions and 71 deletions
91
pkgs/development/python-modules/pandas/default.nix
Normal file
91
pkgs/development/python-modules/pandas/default.nix
Normal file
|
@ -0,0 +1,91 @@
|
|||
{ buildPythonPackage
|
||||
, python
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, nose
|
||||
, glibcLocales
|
||||
, cython
|
||||
, dateutil
|
||||
, scipy
|
||||
, numexpr
|
||||
, pytz
|
||||
, xlrd
|
||||
, bottleneck
|
||||
, sqlalchemy
|
||||
, lxml
|
||||
, html5lib
|
||||
, beautifulsoup4
|
||||
, openpyxl
|
||||
, tables
|
||||
, xlwt
|
||||
, darwin ? {}
|
||||
, libcxx ? null
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenv.lib) optional optionalString concatStringsSep;
|
||||
inherit (stdenv) isDarwin;
|
||||
in buildPythonPackage rec {
|
||||
pname = "pandas";
|
||||
version = "0.19.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz";
|
||||
sha256 = "6f0f4f598c2b16746803c8bafef7c721c57e4844da752d36240c0acf97658014";
|
||||
};
|
||||
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
buildInputs = [ nose glibcLocales ] ++ optional isDarwin libcxx;
|
||||
propagatedBuildInputs = [
|
||||
cython
|
||||
dateutil
|
||||
scipy
|
||||
numexpr
|
||||
pytz
|
||||
xlrd
|
||||
bottleneck
|
||||
sqlalchemy
|
||||
lxml
|
||||
html5lib
|
||||
beautifulsoup4
|
||||
openpyxl
|
||||
tables
|
||||
xlwt
|
||||
] ++ optional isDarwin darwin.locale; # provides the locale command
|
||||
|
||||
# For OSX, we need to add a dependency on libcxx, which provides
|
||||
# `complex.h` and other libraries that pandas depends on to build.
|
||||
patchPhase = optionalString isDarwin ''
|
||||
cpp_sdk="${libcxx}/include/c++/v1";
|
||||
echo "Adding $cpp_sdk to the setup.py common_include variable"
|
||||
substituteInPlace setup.py \
|
||||
--replace "['pandas/src/klib', 'pandas/src']" \
|
||||
"['pandas/src/klib', 'pandas/src', '$cpp_sdk']"
|
||||
|
||||
# disable clipboard tests since pbcopy/pbpaste are not open source
|
||||
substituteInPlace pandas/io/tests/test_clipboard.py \
|
||||
--replace pandas.util.clipboard no_such_module \
|
||||
--replace OSError ImportError
|
||||
'';
|
||||
|
||||
# The flag `-A 'not network'` will disable tests that use internet.
|
||||
# The `-e` flag disables a few problematic tests.
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
# The flag `-w` provides the initial directory to search for tests.
|
||||
# The flag `-A 'not network'` will disable tests that use internet.
|
||||
nosetests -w $out/${python.sitePackages}/pandas --no-path-adjustment -A 'not slow and not network' --stop \
|
||||
--verbosity=3
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://pandas.pydata.org/";
|
||||
description = "Python Data Analysis Library";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = with stdenv.lib.maintainers; [ raskin fridh ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
|
@ -17879,77 +17879,7 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
pandas = let
|
||||
inherit (pkgs.stdenv.lib) optional optionalString;
|
||||
inherit (pkgs.stdenv) isDarwin;
|
||||
in buildPythonPackage rec {
|
||||
name = "pandas-${version}";
|
||||
version = "0.19.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/pandas/${name}.tar.gz";
|
||||
sha256 = "2509feaeda72fce03675e2eccd2284bb1cadb6a0737008a5e741fe2431d47421";
|
||||
};
|
||||
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
buildInputs = with self; [ nose pkgs.glibcLocales ] ++ optional isDarwin pkgs.libcxx;
|
||||
propagatedBuildInputs = with self; [
|
||||
cython
|
||||
dateutil
|
||||
scipy
|
||||
numexpr
|
||||
pytz
|
||||
xlrd
|
||||
bottleneck
|
||||
sqlalchemy
|
||||
lxml
|
||||
html5lib
|
||||
beautifulsoup4
|
||||
openpyxl
|
||||
tables
|
||||
xlwt
|
||||
] ++ optional isDarwin pkgs.darwin.locale; # provides the locale command
|
||||
|
||||
# For OSX, we need to add a dependency on libcxx, which provides
|
||||
# `complex.h` and other libraries that pandas depends on to build.
|
||||
patchPhase = optionalString isDarwin ''
|
||||
cpp_sdk="${pkgs.libcxx}/include/c++/v1";
|
||||
echo "Adding $cpp_sdk to the setup.py common_include variable"
|
||||
substituteInPlace setup.py \
|
||||
--replace "['pandas/src/klib', 'pandas/src']" \
|
||||
"['pandas/src/klib', 'pandas/src', '$cpp_sdk']"
|
||||
|
||||
# disable clipboard tests since pbcopy/pbpaste are not open source
|
||||
substituteInPlace pandas/io/tests/test_clipboard.py \
|
||||
--replace pandas.util.clipboard no_such_module \
|
||||
--replace OSError ImportError
|
||||
'';
|
||||
|
||||
# The flag `-A 'not network'` will disable tests that use internet.
|
||||
# The `-e` flag disables a few problematic tests.
|
||||
|
||||
# Disable two tests that are broken since numpy 1.11. Fixed upstream.
|
||||
|
||||
checkPhase = let
|
||||
testsToSkip = [ "test_range_slice_day" "test_range_slice_seconds" ];
|
||||
in ''
|
||||
runHook preCheck
|
||||
# The flag `-A 'not network'` will disable tests that use internet.
|
||||
# The `-e` flag disables a few problematic tests.
|
||||
${python.executable} setup.py nosetests -A 'not slow and not network' --stop \
|
||||
-e '${concatStringsSep "|" testsToSkip}' --verbosity=3
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://pandas.pydata.org/";
|
||||
description = "Python Data Analysis Library";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ raskin fridh ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
};
|
||||
pandas = callPackage ../development/python-modules/pandas { };
|
||||
|
||||
xlrd = buildPythonPackage rec {
|
||||
name = "xlrd-${version}";
|
||||
|
|
Loading…
Reference in a new issue