nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, stdenv
3, buildPythonPackage
4, fetchpatch
5, fetchPypi
6, pythonOlder
7, pytestCheckHook
8, pytest-tornasync
9, argon2-cffi
10, jinja2
11, tornado
12, pyzmq
13, ipykernel
14, ipython_genutils
15, traitlets
16, jupyter_core
17, jupyter-client
18, nbformat
19, nbconvert
20, send2trash
21, terminado
22, prometheus-client
23, anyio
24, websocket-client
25, requests
26, requests-unixsocket
27}:
28
29buildPythonPackage rec {
30 pname = "jupyter_server";
31 version = "1.11.2";
32 disabled = pythonOlder "3.6";
33
34 src = fetchPypi {
35 inherit pname version;
36 sha256 = "c1f32e0c1807ab2de37bf70af97a36b4436db0bc8af3124632b1f4441038bf95";
37 };
38
39 patches = [ (fetchpatch
40 { name = "Normalize-file-name-and-path.patch";
41 url = "https://github.com/jupyter-server/jupyter_server/pull/608/commits/345e26cdfd78651954b68708fa44119c2ac0dbd5.patch";
42 sha256 = "1kqz3dyh2w0h1g1fbvqa13q17hb6y32694rlaasyg213mq6g4k32";
43 })
44 ];
45
46 propagatedBuildInputs = [
47 argon2-cffi
48 jinja2
49 tornado
50 pyzmq
51 ipython_genutils
52 traitlets
53 jupyter_core
54 jupyter-client
55 nbformat
56 nbconvert
57 send2trash
58 terminado
59 prometheus-client
60 anyio
61 websocket-client
62 requests-unixsocket
63 ];
64
65 checkInputs = [
66 ipykernel
67 pytestCheckHook
68 pytest-tornasync
69 requests
70 ];
71
72 preCheck = ''
73 export HOME=$(mktemp -d)
74 export PATH=$out/bin:$PATH
75 '';
76
77 pytestFlagsArray = [ "jupyter_server" ];
78
79 # disabled failing tests
80 disabledTests = [
81 "test_server_extension_list"
82 "test_list_formats"
83 "test_base_url"
84 "test_culling"
85 ] ++ lib.optionals stdenv.isDarwin [
86 # attempts to use trashcan, build env doesn't allow this
87 "test_delete"
88 ];
89
90 __darwinAllowLocalNetworking = true;
91
92 meta = with lib; {
93 description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications";
94 homepage = "https://github.com/jupyter-server/jupyter_server";
95 license = licenses.bsdOriginal;
96 maintainers = [ maintainers.elohmeier ];
97 };
98}