Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / nbclient / default.nix
blob745de65f4b2e4dc6a3e6740b68e4fb83f975574a
1 { async-generator
2 , buildPythonPackage
3 , fetchFromGitHub
4 , hatchling
5 , ipykernel
6 , ipywidgets
7 , jupyter-client
8 , lib
9 , nbconvert
10 , nbformat
11 , nest-asyncio
12 , pytest-asyncio
13 , pytestCheckHook
14 , pythonOlder
15 , testpath
16 , traitlets
17 , xmltodict
20 let nbclient = buildPythonPackage rec {
21   pname = "nbclient";
22   version = "0.8.0";
23   format = "pyproject";
25   disabled = pythonOlder "3.7";
27   src = fetchFromGitHub {
28     owner = "jupyter";
29     repo = pname;
30     rev = "refs/tags/v${version}";
31     hash = "sha256-uBCYmrl/Zfw58hd12z20jLVwGSPv+M3fMo1mfV2GO/M=";
32   };
34   nativeBuildInputs = [
35     hatchling
36   ];
38   propagatedBuildInputs = [
39     async-generator
40     traitlets
41     nbformat
42     nest-asyncio
43     jupyter-client
44   ];
46   # circular dependencies if enabled by default
47   doCheck = false;
49   nativeCheckInputs = [
50     ipykernel
51     ipywidgets
52     nbconvert
53     pytest-asyncio
54     pytestCheckHook
55     testpath
56     xmltodict
57   ];
59   preCheck = ''
60     export HOME=$(mktemp -d)
61   '';
63   passthru.tests = {
64     check = nbclient.overridePythonAttrs (_: { doCheck = true; });
65   };
67   meta = with lib; {
68     homepage = "https://github.com/jupyter/nbclient";
69     description = "A client library for executing notebooks";
70     license = licenses.bsd3;
71     maintainers = [ ];
72   };
74 in nbclient