Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 buildPythonPackage,
4 decorator,
5 fetchPypi,
6 hatchling,
7 ipykernel,
8 ipython,
9 jupyter-client,
10 psutil,
11 python-dateutil,
12 pyzmq,
13 tornado,
14 tqdm,
15 traitlets,
16}:
17
18buildPythonPackage rec {
19 pname = "ipyparallel";
20 version = "9.0.2";
21 pyproject = true;
22
23 src = fetchPypi {
24 inherit pname version;
25 hash = "sha256-2ZLt1pipnUXy2QWa8cmujwhtGu7bPoBDYCmi8o0Gn4M=";
26 };
27
28 # We do not need the jupyterlab build dependency, because we do not need to
29 # build any JS components; these are present already in the PyPI artifact.
30 #
31 postPatch = ''
32 substituteInPlace pyproject.toml \
33 --replace '"jupyterlab==4.*",' ""
34 '';
35
36 build-system = [ hatchling ];
37
38 dependencies = [
39 decorator
40 ipykernel
41 ipython
42 jupyter-client
43 psutil
44 python-dateutil
45 pyzmq
46 tornado
47 tqdm
48 traitlets
49 ];
50
51 # Requires access to cluster
52 doCheck = false;
53
54 pythonImportsCheck = [ "ipyparallel" ];
55
56 meta = {
57 description = "Interactive Parallel Computing with IPython";
58 homepage = "https://ipyparallel.readthedocs.io/";
59 changelog = "https://github.com/ipython/ipyparallel/blob/${version}/docs/source/changelog.md";
60 license = lib.licenses.bsd3;
61 };
62}