nixpkgs/pkgs/development/python-modules/notebook/default.nix
2023-06-29 17:43:17 +02:00

100 lines
2.1 KiB
Nix

{ stdenv
, lib
, buildPythonPackage
, pythonOlder
, fetchPypi
, argon2-cffi
, glibcLocales
, mock
, jinja2
, tornado
, ipython_genutils
, traitlets
, jupyter-core
, jupyter-client
, nbformat
, nbclassic
, nbconvert
, ipykernel
, terminado
, requests
, send2trash
, pexpect
, prometheus-client
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "notebook";
version = "6.5.2";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-wYl+UxfiJfx4tFVJpqtLZo5MmW/QOgTpOP5eevK//9A=";
};
LC_ALL = "en_US.utf8";
nativeCheckInputs = [ pytestCheckHook glibcLocales ];
propagatedBuildInputs = [
jinja2
tornado
ipython_genutils
traitlets
jupyter-core
send2trash
jupyter-client
nbformat
nbclassic
nbconvert
ipykernel
terminado
requests
pexpect
prometheus-client
argon2-cffi
];
postPatch = ''
# Remove selenium tests
rm -rf notebook/tests/selenium
export HOME=$TMPDIR
'';
disabledTests = [
# a "system_config" is generated, and fails many tests
"config"
"load_ordered"
# requires jupyter, but will cause circular imports
"test_run"
"TestInstallServerExtension"
"launch_socket"
"sock_server"
"test_list_formats" # tries to find python MIME type
"KernelCullingTest" # has a race condition failing on slower hardware
"test_connections" # tornado.simple_httpclient.HTTPTimeoutError: Timeout during request"
] ++ lib.optionals stdenv.isDarwin [
"test_delete"
"test_checkpoints_follow_file"
];
disabledTestPaths = lib.optionals stdenv.isDarwin [
# requires local networking
"notebook/auth/tests/test_login.py"
"notebook/bundler/tests/test_bundler_api.py"
];
# Some of the tests use localhost networking.
__darwinAllowLocalNetworking = true;
meta = {
description = "The Jupyter HTML notebook is a web-based notebook environment for interactive computing";
homepage = "https://github.com/jupyter/notebook";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ fridh ];
mainProgram = "jupyter-notebook";
};
}