1{
2 lib,
3 buildPythonPackage,
4 pythonAtLeast,
5 pythonOlder,
6 fetchPypi,
7 hatchling,
8 hatch-nodejs-version,
9 fastjsonschema,
10 jsonschema,
11 jupyter-core,
12 traitlets,
13 pep440,
14 pytestCheckHook,
15 testpath,
16}:
17
18buildPythonPackage rec {
19 pname = "nbformat";
20 version = "5.10.4";
21 pyproject = true;
22 disabled = pythonOlder "3.8";
23
24 src = fetchPypi {
25 inherit pname version;
26 hash = "sha256-MiFosU+Tel0RNimI7KwqSVLT2OOiy+sjGVhGMSJtWzo=";
27 };
28
29 build-system = [
30 hatchling
31 hatch-nodejs-version
32 ];
33
34 dependencies = [
35 fastjsonschema
36 jsonschema
37 jupyter-core
38 traitlets
39 ];
40
41 pythonImportsCheck = [ "nbformat" ];
42
43 nativeCheckInputs = [
44 pep440
45 pytestCheckHook
46 testpath
47 ];
48
49 pytestFlags = [ "-Wignore::pytest.PytestUnraisableExceptionWarning" ];
50
51 # Some of the tests use localhost networking.
52 __darwinAllowLocalNetworking = true;
53
54 meta = {
55 description = "Jupyter Notebook format";
56 mainProgram = "jupyter-trust";
57 homepage = "https://jupyter.org/";
58 license = lib.licenses.bsd3;
59 maintainers = with lib.maintainers; [ globin ];
60 };
61}