depot/third_party/nixpkgs/pkgs/development/python-modules/tsfresh/default.nix

96 lines
1.9 KiB
Nix
Raw Normal View History

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
requests,
numpy,
pandas,
scipy,
statsmodels,
patsy,
scikit-learn,
tqdm,
dask,
distributed,
stumpy,
cloudpickle,
pytestCheckHook,
pytest-xdist,
mock,
matplotlib,
seaborn,
ipython,
notebook,
pandas-datareader,
}:
buildPythonPackage rec {
pname = "tsfresh";
version = "0.20.2";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "blue-yonder";
repo = "tsfresh";
rev = "refs/tags/v${version}";
hash = "sha256-UTra+RAQnrv61NQ86xGYrUVYiycUAWhN/45F6/0ZvPI=";
};
patches = [
# The pyscaffold is not a build dependency but just a python project bootstrapping tool, so we do not need it
./remove-pyscaffold.patch
./remove-pytest-coverage-flags.patch
];
propagatedBuildInputs = [
requests
numpy
pandas
scipy
statsmodels
patsy
scikit-learn
tqdm
dask
distributed
stumpy
cloudpickle
] ++ dask.optional-dependencies.dataframe;
nativeCheckInputs = [
pytestCheckHook
pytest-xdist
mock
matplotlib
seaborn
ipython
notebook
pandas-datareader
];
disabledTests = [
# touches network
"test_relevant_extraction"
"test_characteristics_downloaded_robot_execution_failures"
"test_index"
"test_binary_target_is_default"
"test_characteristics_downloaded_robot_execution_failures"
"test_extraction_runs_through"
"test_multilabel_target_on_request"
];
pythonImportsCheck = [ "tsfresh" ];
meta = with lib; {
description = "Automatic extraction of relevant features from time series";
mainProgram = "run_tsfresh";
homepage = "https://github.com/blue-yonder/tsfresh";
changelog = "https://github.com/blue-yonder/tsfresh/blob/${src.rev}/CHANGES.rst";
license = licenses.mit;
maintainers = with maintainers; [ mbalatsko ];
};
}