Files
nixpkgs/pkgs/development/python-modules/nbdime/default.nix
2025-03-18 18:38:13 +01:00

101 lines
2.1 KiB
Nix

{
lib,
stdenv,
buildPythonPackage,
fetchPypi,
# build-system
hatch-jupyter-builder,
hatchling,
jupyterlab,
# dependencies
colorama,
gitpython,
jinja2,
jupyter-server,
jupyter-server-mathjax,
nbformat,
pygments,
requests,
tornado,
# tests
gitMinimal,
pytest-tornado,
pytestCheckHook,
writableTmpDirAsHomeHook,
}:
buildPythonPackage rec {
pname = "nbdime";
version = "4.0.2";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-2Cefj0sjbAslOyDWDEgxu2eEPtjb1uCfI06wEdNvG/I=";
};
build-system = [
hatch-jupyter-builder
hatchling
jupyterlab
];
dependencies = [
colorama
gitpython
jinja2
jupyter-server
jupyter-server-mathjax
nbformat
pygments
requests
tornado
];
nativeCheckInputs = [
gitMinimal
pytest-tornado
pytestCheckHook
writableTmpDirAsHomeHook
];
disabledTests =
[
# subprocess.CalledProcessError: Command '['git', 'diff', 'base', 'diff.ipynb']' returned non-zero exit status 128.
# git-nbdiffdriver diff: line 1: git-nbdiffdriver: command not found
# fatal: external diff died, stopping at diff.ipynb
"test_git_diffdriver"
# subprocess.CalledProcessError: Command '['git', 'merge', 'remote-no-conflict']' returned non-zero exit status 1.
"test_git_mergedriver"
# Require network access
"test_git_difftool"
"test_git_mergetool"
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
# OSError: Could not find system gitattributes location!
"test_locate_gitattributes_syste"
];
preCheck = ''
git config --global user.email "janedoe@example.com"
git config --global user.name "Jane Doe"
'';
__darwinAllowLocalNetworking = true;
pythonImportsCheck = [ "nbdime" ];
meta = {
homepage = "https://github.com/jupyter/nbdime";
changelog = "https://github.com/jupyter/nbdime/blob/${version}/CHANGELOG.md";
description = "Tools for diffing and merging of Jupyter notebooks";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ tbenst ];
};
}