diff --git a/pkgs/development/python-modules/deepdish/default.nix b/pkgs/development/python-modules/deepdish/default.nix index 04062db872a7..119defd7ea17 100644 --- a/pkgs/development/python-modules/deepdish/default.nix +++ b/pkgs/development/python-modules/deepdish/default.nix @@ -1,7 +1,12 @@ { lib, - fetchPypi, buildPythonPackage, + fetchPypi, + + # build-system + setuptools, + + # dependencies numpy, scipy, tables, @@ -10,14 +15,23 @@ buildPythonPackage rec { pname = "deepdish"; version = "0.3.7"; - format = "setuptools"; + pyproject = true; src = fetchPypi { inherit pname version; - sha256 = "1wqzwh3y0mjdyba5kfbvlamn561d3afz50zi712c7klkysz3mzva"; + hash = "sha256-av86vvaTzsNEOPGD8p0aLZhiq6J7uVnU8k1W4AfkH/M="; }; - propagatedBuildInputs = [ + postPatch = '' + substituteInPlace deepdish/core.py \ + --replace-fail "np.ComplexWarning" "np.exceptions.ComplexWarning" + ''; + + build-system = [ + setuptools + ]; + + dependencies = [ numpy scipy tables @@ -32,11 +46,11 @@ buildPythonPackage rec { # The tests are broken: `ModuleNotFoundError: No module named 'deepdish.six.conf'` doCheck = false; - meta = with lib; { + meta = { description = "Flexible HDF5 saving/loading and other data science tools from the University of Chicago"; mainProgram = "ddls"; homepage = "https://github.com/uchicago-cs/deepdish"; - license = licenses.asl20; - maintainers = with maintainers; [ ndl ]; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ ndl ]; }; } diff --git a/pkgs/development/python-modules/pyedflib/default.nix b/pkgs/development/python-modules/pyedflib/default.nix new file mode 100644 index 000000000000..a83fe89795b0 --- /dev/null +++ b/pkgs/development/python-modules/pyedflib/default.nix @@ -0,0 +1,55 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + cython, + numpy, + setuptools, + + # tests + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "pyedflib"; + version = "0.1.38"; + pyproject = true; + + src = fetchFromGitHub { + owner = "holgern"; + repo = "pyedflib"; + tag = "v${version}"; + hash = "sha256-sj2O5ISAy12u4GdtucLaRfOeSA6o6FJpZWTyiLq5B3U="; + }; + + build-system = [ + cython + numpy + setuptools + ]; + + pythonImportsCheck = [ + "pyedflib" + ]; + + # Otherwise, the module is imported from source and lacks the compiled artifacts + # By moving to the pyedflib directory, python imports the installed package instead of the module + # from the local files + preCheck = '' + cd pyedflib + ''; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Python library to read/write EDF+/BDF+ files based on EDFlib"; + homepage = "https://github.com/holgern/pyedflib"; + changelog = "https://github.com/holgern/pyedflib/releases/tag/v${version}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +} diff --git a/pkgs/development/python-modules/pyseries/default.nix b/pkgs/development/python-modules/pyseries/default.nix new file mode 100644 index 000000000000..76003eb105af --- /dev/null +++ b/pkgs/development/python-modules/pyseries/default.nix @@ -0,0 +1,63 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + + # build-system + setuptools, + + # dependencies + deepdish, + matplotlib, + numpy, + obspy, + pandas, + pyedflib, + scikit-learn, + scipy, + seaborn, + tabulate, +}: + +buildPythonPackage rec { + pname = "pyseries"; + version = "1.0.26"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + hash = "sha256-Cq+DXt0/6Ncae8OO+kaPuTCxouh0cFPHP+T8tGVXxXo="; + }; + + build-system = [ setuptools ]; + + pythonRemoveDeps = [ + # sklearn is the old name of the scikit-learn package + "sklearn" + ]; + + dependencies = [ + deepdish + matplotlib + numpy + obspy + pandas + pyedflib + scikit-learn + scipy + seaborn + tabulate + ]; + + pythonImportsCheck = [ "pyseries" ]; + + # no tests in the pypi archive + doCheck = false; + + meta = { + description = "Package for statistical analysis of time-series data"; + homepage = "https://pypi.org/project/pyseries/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 45956091b4aa..b75afca63448 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10647,6 +10647,8 @@ self: super: with self; { pysequoia = callPackage ../development/python-modules/pysequoia { }; + pyseries = callPackage ../development/python-modules/pyseries { }; + pyschemes = callPackage ../development/python-modules/pyschemes { }; pyschlage = callPackage ../development/python-modules/pyschlage { }; @@ -11617,6 +11619,8 @@ self: super: with self; { pyecowitt = callPackage ../development/python-modules/pyecowitt { }; + pyedflib = callPackage ../development/python-modules/pyedflib { }; + pyedimax = callPackage ../development/python-modules/pyedimax { }; pyee = callPackage ../development/python-modules/pyee { };