Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 click, 5 cloudpickle, 6 dask, 7 fetchFromGitHub, 8 jinja2, 9 locket, 10 msgpack, 11 packaging, 12 psutil, 13 pythonOlder, 14 pyyaml, 15 setuptools, 16 setuptools-scm, 17 sortedcontainers, 18 tblib, 19 toolz, 20 tornado, 21 urllib3, 22 versioneer, 23 zict, 24}: 25 26buildPythonPackage rec { 27 pname = "distributed"; 28 version = "2024.7.1"; 29 pyproject = true; 30 31 disabled = pythonOlder "3.9"; 32 33 src = fetchFromGitHub { 34 owner = "dask"; 35 repo = "distributed"; 36 rev = "refs/tags/${version}"; 37 hash = "sha256-1VLYOUPo2esFltcoI6B/HMGyuyRq4vvkE55C8acdbG8="; 38 }; 39 40 postPatch = '' 41 substituteInPlace pyproject.toml \ 42 --replace-fail "versioneer[toml]==" "versioneer[toml]>=" \ 43 --replace-fail 'dynamic = ["version"]' 'version = "${version}"' 44 ''; 45 46 build-system = [ 47 setuptools 48 setuptools-scm 49 versioneer 50 ] ++ versioneer.optional-dependencies.toml; 51 52 pythonRelaxDeps = [ "dask" ]; 53 54 dependencies = [ 55 click 56 cloudpickle 57 dask 58 jinja2 59 locket 60 msgpack 61 packaging 62 psutil 63 pyyaml 64 sortedcontainers 65 tblib 66 toolz 67 tornado 68 urllib3 69 zict 70 ]; 71 72 # When tested random tests would fail and not repeatably 73 doCheck = false; 74 75 pythonImportsCheck = [ "distributed" ]; 76 77 meta = { 78 description = "Distributed computation in Python"; 79 homepage = "https://distributed.readthedocs.io/"; 80 changelog = "https://github.com/dask/distributed/blob/${version}/docs/source/changelog.rst"; 81 license = lib.licenses.bsd3; 82 maintainers = with lib.maintainers; [ teh ]; 83 }; 84}