diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix new file mode 100644 index 00000000000..d909a6993a0 --- /dev/null +++ b/pkgs/development/python-modules/distributed/default.nix @@ -0,0 +1,59 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytest +, pytest-repeat +, pytest-faulthandler +, pytest-timeout +, mock +, joblib +, click +, cloudpickle +, dask +, msgpack +, psutil +, six +, sortedcontainers +, tblib +, toolz +, tornado +, zict +, pyyaml +, pythonOlder +, futures +, singledispatch +}: + +buildPythonPackage rec { + pname = "distributed"; + version = "1.22.1"; + + # get full repository need conftest.py to run tests + src = fetchFromGitHub { + owner = "dask"; + repo = pname; + rev = version; + sha256 = "0xvx55rhbhlyys3kjndihwq6y6260qzy9mr3miclh5qddaiw2d5z"; + }; + + checkInputs = [ pytest pytest-repeat pytest-faulthandler pytest-timeout mock joblib ]; + propagatedBuildInputs = [ + click cloudpickle dask msgpack psutil six + sortedcontainers tblib toolz tornado zict pyyaml + ] ++ lib.optional (pythonOlder "3.2") [ futures ] + ++ lib.optional (pythonOlder "3.4") [ singledispatch ]; + + # tests take about 10-15 minutes + # ignore 5 cli tests out of 1000 total tests that fail due to subprocesses + # these tests are not critical to the library (only the cli) + checkPhase = '' + py.test distributed -m "not avoid-travis" -r s --timeout-method=thread --timeout=0 --durations=20 --ignore="distributed/cli/tests" + ''; + + meta = { + description = "Distributed computation in Python."; + homepage = http://distributed.readthedocs.io/en/latest/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ teh costrouc ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fb86b350cc7..114e41b30de 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -272,6 +272,8 @@ in { distorm3 = callPackage ../development/python-modules/distorm3 { }; + distributed = callPackage ../development/python-modules/distributed { }; + dogtail = callPackage ../development/python-modules/dogtail { }; diff-match-patch = callPackage ../development/python-modules/diff-match-patch { }; @@ -1982,34 +1984,6 @@ in { zict = callPackage ../development/python-modules/zict { }; - distributed = buildPythonPackage rec { - - name = "distributed-${version}"; - version = "1.15.1"; - - src = pkgs.fetchurl { - url = "mirror://pypi/d/distributed/${name}.tar.gz"; - sha256 = "037a07sdf2ch1d360nqwqz3b4ld8msydng7mw4i5s902v7xr05l6"; - }; - - buildInputs = with self; [ pytest docutils ]; - propagatedBuildInputs = with self; [ - dask six boto3 s3fs tblib locket msgpack-python click cloudpickle tornado - psutil botocore zict lz4 sortedcollections sortedcontainers - ] ++ (if !isPy3k then [ singledispatch ] else []); - - # py.test not picking up local config file, even when running - # manually: E ValueError: no option named '--runslow' - doCheck = false; - - meta = { - description = "Distributed computation in Python."; - homepage = "http://distributed.readthedocs.io/en/latest/"; - license = licenses.bsd3; - maintainers = with maintainers; [ teh ]; - }; - }; - digital-ocean = callPackage ../development/python-modules/digitalocean { }; leather = callPackage ../development/python-modules/leather { };