1{ lib
2, bokeh
3, buildPythonPackage
4, fetchFromGitHub
5, fsspec
6, pytest
7, pythonOlder
8, cloudpickle
9, numpy
10, toolz
11, dill
12, pandas
13, partd
14}:
15
16buildPythonPackage rec {
17 pname = "dask";
18 version = "2.10.1";
19
20 disabled = pythonOlder "3.5";
21
22 src = fetchFromGitHub {
23 owner = "dask";
24 repo = pname;
25 rev = version;
26 sha256 = "035mr7385yf5ng5wf60qxr80529h8dsla5hymkyg68dxhkd0jvbr";
27 };
28
29 checkInputs = [
30 pytest
31 ];
32
33 propagatedBuildInputs = [
34 bokeh
35 cloudpickle
36 dill
37 fsspec
38 numpy
39 pandas
40 partd
41 toolz
42 ];
43
44 postPatch = ''
45 # versioneer hack to set version of github package
46 echo "def get_versions(): return {'dirty': False, 'error': None, 'full-revisionid': None, 'version': '${version}'}" > dask/_version.py
47
48 substituteInPlace setup.py \
49 --replace "version=versioneer.get_version()," "version='${version}'," \
50 --replace "cmdclass=versioneer.get_cmdclass()," ""
51 '';
52
53 checkPhase = ''
54 pytest
55 '';
56
57 meta = {
58 description = "Minimal task scheduling abstraction";
59 homepage = https://github.com/ContinuumIO/dask/;
60 license = lib.licenses.bsd3;
61 maintainers = with lib.maintainers; [ fridh ];
62 };
63}