1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build 7 hatchling, 8 9 # runtime 10 terminado, 11 12 # tests 13 pytest-jupyter, 14 pytest-timeout, 15 pytestCheckHook, 16}: 17 18let 19 self = buildPythonPackage rec { 20 pname = "jupyter-server-terminals"; 21 version = "0.5.3"; 22 pyproject = true; 23 24 src = fetchFromGitHub { 25 owner = "jupyter-server"; 26 repo = "jupyter_server_terminals"; 27 tag = "v${version}"; 28 hash = "sha256-af7jBscGkbekXgfDxwAfrJSY1uEuIGfzzSsjaPdlYcY="; 29 }; 30 31 nativeBuildInputs = [ hatchling ]; 32 33 propagatedBuildInputs = [ terminado ]; 34 35 doCheck = false; # infinite recursion 36 37 nativeCheckInputs = [ 38 pytest-jupyter 39 pytest-timeout 40 pytestCheckHook 41 ] 42 ++ pytest-jupyter.optional-dependencies.server; 43 44 passthru.tests = { 45 check = self.overridePythonAttrs (_: { 46 doCheck = true; 47 }); 48 }; 49 50 meta = with lib; { 51 changelog = "https://github.com/jupyter-server/jupyter_server_terminals/releases/tag/v${version}"; 52 description = "Jupyter Server Extension Providing Support for Terminals"; 53 homepage = "https://github.com/jupyter-server/jupyter_server_terminals"; 54 license = licenses.bsd3; 55 maintainers = [ ]; 56 }; 57 }; 58in 59self