1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 git, 6 gitMinimal, 7 nodejs, 8 writableTmpDirAsHomeHook, 9 yarn-berry_3, 10 jupyter-server, 11 hatch-jupyter-builder, 12 hatch-nodejs-version, 13 hatchling, 14 jupyterlab, 15 nbdime, 16 nbformat, 17 packaging, 18 pexpect, 19 pytest-asyncio, 20 pytest-jupyter, 21 pytest-tornasync, 22 pytestCheckHook, 23 traitlets, 24}: 25 26buildPythonPackage rec { 27 pname = "jupyterlab-git"; 28 version = "0.51.2"; 29 pyproject = true; 30 31 src = fetchFromGitHub { 32 owner = "jupyterlab"; 33 repo = "jupyterlab-git"; 34 tag = "v${version}"; 35 hash = "sha256-YQWS+/GfQzkQ/n0xBq+K8lJ9tjvIRJxa3w3AzNARpDo="; 36 }; 37 38 nativeBuildInputs = [ 39 nodejs 40 yarn-berry_3.yarnBerryConfigHook 41 ]; 42 43 offlineCache = yarn-berry_3.fetchYarnBerryDeps { 44 inherit src; 45 hash = "sha256-9GmQv4UYH+uRPgAZed6IJC+7uMKhlXvokVwd248yi/4="; 46 }; 47 48 build-system = [ 49 hatch-jupyter-builder 50 hatch-nodejs-version 51 hatchling 52 jupyterlab 53 ]; 54 55 dependencies = [ 56 jupyter-server 57 nbdime 58 nbformat 59 packaging 60 pexpect 61 traitlets 62 ]; 63 64 propagatedBuildInputs = [ git ]; 65 66 nativeCheckInputs = [ 67 gitMinimal 68 pytest-asyncio 69 pytest-jupyter 70 pytest-tornasync 71 pytestCheckHook 72 writableTmpDirAsHomeHook 73 ]; 74 75 disabledTestPaths = [ 76 "jupyterlab_git/tests/test_handlers.py" 77 ]; 78 79 disabledTests = [ 80 "test_Git_get_nbdiff_file" 81 "test_Git_get_nbdiff_dict" 82 ]; 83 84 pythonImportsCheck = [ "jupyterlab_git" ]; 85 86 __darwinAllowLocalNetworking = true; 87 88 meta = with lib; { 89 description = "Jupyter lab extension for version control with Git"; 90 homepage = "https://github.com/jupyterlab/jupyterlab-git"; 91 changelog = "https://github.com/jupyterlab/jupyterlab-git/blob/v${version}/CHANGELOG.md"; 92 license = with licenses; [ bsd3 ]; 93 maintainers = with maintainers; [ chiroptical ]; 94 }; 95}