nixpkgs-suyu/pkgs/development/python-modules/tensorly/default.nix
2023-02-01 12:29:15 -05:00

70 lines
1.4 KiB
Nix

{ stdenv
, lib
, buildPythonPackage
, fetchFromGitHub
, numpy
, pytestCheckHook
, pythonOlder
, scipy
}:
buildPythonPackage rec {
pname = "tensorly";
version = "0.8.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-6iZvUgsoYf8fDGEuAODgfr4jCkiJwaJXlQUAsaOF9JU=";
};
propagatedBuildInputs = [
numpy
scipy
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"tensorly"
"tensorly.base"
"tensorly.cp_tensor"
"tensorly.tucker_tensor"
"tensorly.tt_tensor"
"tensorly.tt_matrix"
"tensorly.parafac2_tensor"
"tensorly.tenalg"
"tensorly.decomposition"
"tensorly.regression"
"tensorly.metrics"
"tensorly.random"
"tensorly.datasets"
"tensorly.plugins"
"tensorly.contrib"
];
pytestFlagsArray = [
"tensorly"
];
disabledTests = [
# tries to download data:
"test_kinetic"
# AssertionError: Partial_SVD took too long, maybe full_matrices set wrongly
"test_svd_time"
];
meta = with lib; {
description = "Tensor learning in Python";
homepage = "https://tensorly.org/";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
broken = stdenv.isLinux && stdenv.isAarch64; # test failures: test_TTOI and test_validate_tucker_rank
};
}