diff --git a/pkgs/development/python-modules/arch/default.nix b/pkgs/development/python-modules/arch/default.nix new file mode 100644 index 000000000000..f3c14da682eb --- /dev/null +++ b/pkgs/development/python-modules/arch/default.nix @@ -0,0 +1,64 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + cython, + numpy, + pandas, + property-cached, + pytestCheckHook, + scipy, + setuptools, + setuptools-scm, + statsmodels, +}: + +buildPythonPackage rec { + pname = "arch"; + version = "7.2.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "bashtage"; + repo = "arch"; + tag = "v${version}"; + hash = "sha256-3H/6mdPg8rg+N1wecqLDzc7Ot3SnUVpOagns4PsTD/Q="; + }; + + postPatch = '' + substituteInPlace setup.cfg \ + --replace 'PytestRemovedIn8Warning' 'PytestRemovedIn9Warning' + ''; + + build-system = [ + setuptools + setuptools-scm + cython + ]; + + dependencies = [ + numpy + pandas + property-cached + scipy + statsmodels + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + disabledTestPaths = [ + # Skip long-running/failing tests + "arch/tests/univariate/test_forecast.py" + "arch/tests/univariate/test_mean.py" + ]; + + pythonImportsCheck = [ "arch" ]; + + meta = { + description = "Autoregressive Conditional Heteroskedasticity (ARCH) and other tools for financial econometrics"; + homepage = "https://github.com/bashtage/arch"; + changelog = "https://github.com/bashtage/arch/releases/tag/v${version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ jherland ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5d3262b216a4..28b557ee90a5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -837,6 +837,8 @@ self: super: with self; { arcam-fmj = callPackage ../development/python-modules/arcam-fmj { }; + arch = callPackage ../development/python-modules/arch { }; + archinfo = callPackage ../development/python-modules/archinfo { }; archspec = callPackage ../development/python-modules/archspec { };