The test relies on creating and then reading files with unicode names to/from disk. Apple's HFS+, the default file system until recently, is unicode-normalizing with normal form D (NFD). So not all unicode file names round-trip. This patch implements one imperfect solution. ZHF: #144627
97 lines
1.9 KiB
Nix
97 lines
1.9 KiB
Nix
{ lib
|
|
, stdenv
|
|
, buildPythonPackage
|
|
, fetchpatch
|
|
, fetchPypi
|
|
, pythonOlder
|
|
, pytestCheckHook
|
|
, pytest-tornasync
|
|
, argon2_cffi
|
|
, jinja2
|
|
, tornado
|
|
, pyzmq
|
|
, ipython_genutils
|
|
, traitlets
|
|
, jupyter_core
|
|
, jupyter-client
|
|
, nbformat
|
|
, nbconvert
|
|
, send2trash
|
|
, terminado
|
|
, prometheus-client
|
|
, anyio
|
|
, websocket-client
|
|
, requests
|
|
, requests-unixsocket
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "jupyter_server";
|
|
version = "1.11.2";
|
|
disabled = pythonOlder "3.6";
|
|
|
|
src = fetchPypi {
|
|
inherit pname version;
|
|
sha256 = "c1f32e0c1807ab2de37bf70af97a36b4436db0bc8af3124632b1f4441038bf95";
|
|
};
|
|
|
|
patches = [ (fetchpatch
|
|
{ name = "Normalize-file-name-and-path.patch";
|
|
url = "https://github.com/jupyter-server/jupyter_server/pull/608/commits/345e26cdfd78651954b68708fa44119c2ac0dbd5.patch";
|
|
sha256 = "1kqz3dyh2w0h1g1fbvqa13q17hb6y32694rlaasyg213mq6g4k32";
|
|
})
|
|
];
|
|
|
|
propagatedBuildInputs = [
|
|
argon2_cffi
|
|
jinja2
|
|
tornado
|
|
pyzmq
|
|
ipython_genutils
|
|
traitlets
|
|
jupyter_core
|
|
jupyter-client
|
|
nbformat
|
|
nbconvert
|
|
send2trash
|
|
terminado
|
|
prometheus-client
|
|
anyio
|
|
websocket-client
|
|
requests-unixsocket
|
|
];
|
|
|
|
checkInputs = [
|
|
pytestCheckHook
|
|
pytest-tornasync
|
|
requests
|
|
];
|
|
|
|
preCheck = ''
|
|
export HOME=$(mktemp -d)
|
|
export PATH=$out/bin:$PATH
|
|
'';
|
|
|
|
pytestFlagsArray = [ "jupyter_server" ];
|
|
|
|
# disabled failing tests
|
|
disabledTests = [
|
|
"test_server_extension_list"
|
|
"test_list_formats"
|
|
"test_base_url"
|
|
"test_culling"
|
|
] ++ lib.optionals stdenv.isDarwin [
|
|
# attempts to use trashcan, build env doesn't allow this
|
|
"test_delete"
|
|
];
|
|
|
|
__darwinAllowLocalNetworking = true;
|
|
|
|
meta = with lib; {
|
|
description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications";
|
|
homepage = "https://github.com/jupyter-server/jupyter_server";
|
|
license = licenses.bsdOriginal;
|
|
maintainers = [ maintainers.elohmeier ];
|
|
};
|
|
}
|