checkInputs used to be added to nativeBuildInputs. Now we have nativeCheckInputs to do that instead. Doing this treewide change allows to keep hashes identical to before the introduction of nativeCheckInputs.
68 lines
1.8 KiB
Nix
68 lines
1.8 KiB
Nix
{ lib
|
|
, stdenv
|
|
, buildPythonPackage
|
|
, fetchFromGitHub
|
|
, pipInstallHook
|
|
, writeText
|
|
, blessed
|
|
, docutils
|
|
, libcxx
|
|
, llvm
|
|
, pytestCheckHook
|
|
, typesentry
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "datatable";
|
|
# python 3.10+ support is not in the 1.0.0 release
|
|
version = "unstable-2022-12-15";
|
|
format = "pyproject";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "h2oai";
|
|
repo = pname;
|
|
rev = "9522f0833d3e965656396de4fffebd882d39c25d";
|
|
hash = "sha256-lEXQwhx2msnJkkRrTkAwYttlYTISyH/Z7dSalqRrOhI=";
|
|
};
|
|
|
|
postPatch = ''
|
|
# tarball doesn't appear to have been shipped totally ready-to-build
|
|
substituteInPlace ci/ext.py \
|
|
--replace \
|
|
'shell_cmd(["git"' \
|
|
'"0000000000000000000000000000000000000000" or shell_cmd(["git"'
|
|
# TODO revert back to use ${version} when bumping to the next stable release
|
|
echo '1.0' > VERSION.txt
|
|
|
|
# don't make assumptions about architecture
|
|
sed -i '/-m64/d' ci/ext.py
|
|
'';
|
|
DT_RELEASE = "1";
|
|
|
|
propagatedBuildInputs = [ typesentry blessed ];
|
|
buildInputs = [ llvm pipInstallHook ];
|
|
nativeCheckInputs = [ docutils pytestCheckHook ];
|
|
|
|
LLVM = llvm;
|
|
NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-isystem ${lib.getDev libcxx}/include/c++/v1";
|
|
|
|
# test suite is very cpu intensive, only run small subset to ensure package is working as expected
|
|
pytestFlagsArray = [ "tests/test-sets.py" ];
|
|
|
|
disabledTests = [
|
|
# skip tests which are irrelevant to our installation or use way too much memory
|
|
"test_xfunction_paths"
|
|
"test_fread_from_cmd2"
|
|
"test_cast_huge_to_str"
|
|
"test_create_large_string_column"
|
|
];
|
|
pythonImportsCheck = [ "datatable" ];
|
|
|
|
meta = with lib; {
|
|
description = "data.table for Python";
|
|
homepage = "https://github.com/h2oai/datatable";
|
|
license = licenses.mpl20;
|
|
maintainers = with maintainers; [ abbradar ];
|
|
};
|
|
}
|