1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 jupyter-core,
6 hatchling,
7 python-dateutil,
8 pyzmq,
9 tornado,
10 traitlets,
11 pythonOlder,
12 importlib-metadata,
13}:
14
15buildPythonPackage rec {
16 pname = "jupyter-client";
17 version = "8.6.3";
18 pyproject = true;
19
20 src = fetchPypi {
21 pname = "jupyter_client";
22 inherit version;
23 hash = "sha256-NbOglHxKbp1Ynrl9fUzV6Q+RDucxAWEfASg3Mr1tlBk=";
24 };
25
26 build-system = [ hatchling ];
27
28 dependencies = [
29 jupyter-core
30 python-dateutil
31 pyzmq
32 tornado
33 traitlets
34 ]
35 ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ];
36
37 pythonImportsCheck = [ "jupyter_client" ];
38
39 # Circular dependency with ipykernel
40 doCheck = false;
41
42 meta = {
43 description = "Jupyter protocol implementation and client libraries";
44 homepage = "https://github.com/jupyter/jupyter_client";
45 changelog = "https://github.com/jupyter/jupyter_client/blob/v${version}/CHANGELOG.md";
46 license = lib.licenses.bsd3;
47 teams = [ lib.teams.jupyter ];
48 };
49}