pythonPackages.pyarrow: fix running tests on hydra
This replaces standard checkPhase using setup.py that uses pytest-runner with an explicit call to pytest. One reason to do that is because setup.py triggers another rebuild when asked to do "test". Another reason is that there seems to be a conflict between possible imports for pyarrow: `pwd`/pyarrow vs $out/pyarrow. By some unknown reason this triggers an import error on hydra and ofborg, but not on my machine. The solution here is to remove `pwd`/pyarrow, keep the tests and use direct call to pytest (setup.py needs `pwd`/pyarrow). The added benefit is that we are now testing what is installed in $out.
This commit is contained in:
parent
2337c7522a
commit
6ae3cb4d36
|
@ -1,4 +1,4 @@
|
|||
{ lib, buildPythonPackage, python, isPy3k, fetchurl, arrow-cpp, cmake, cython, futures, JPype1, numpy, pandas, pytest, pytestrunner, pkgconfig, setuptools_scm, six }:
|
||||
{ lib, buildPythonPackage, python, isPy3k, fetchurl, arrow-cpp, cmake, cython, futures, JPype1, numpy, pandas, pytest, pkgconfig, setuptools_scm, six }:
|
||||
|
||||
let
|
||||
_arrow-cpp = arrow-cpp.override { inherit python; };
|
||||
|
@ -13,7 +13,7 @@ buildPythonPackage rec {
|
|||
|
||||
nativeBuildInputs = [ cmake cython pkgconfig setuptools_scm ];
|
||||
propagatedBuildInputs = [ numpy six ] ++ lib.optionals (!isPy3k) [ futures ];
|
||||
checkInputs = [ pandas pytest pytestrunner JPype1 ];
|
||||
checkInputs = [ pandas pytest JPype1 ];
|
||||
|
||||
PYARROW_BUILD_TYPE = "release";
|
||||
PYARROW_CMAKE_OPTIONS = "-DCMAKE_INSTALL_RPATH=${ARROW_HOME}/lib";
|
||||
|
@ -43,6 +43,14 @@ buildPythonPackage rec {
|
|||
|
||||
setupPyBuildFlags = ["--with-parquet" ];
|
||||
|
||||
checkPhase = ''
|
||||
mv pyarrow/tests tests
|
||||
rm -rf pyarrow
|
||||
mkdir pyarrow
|
||||
mv tests pyarrow/tests
|
||||
pytest -v
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A cross-language development platform for in-memory data";
|
||||
homepage = https://arrow.apache.org/;
|
||||
|
|
Loading…
Reference in a new issue