depot/third_party/nixpkgs/pkgs/development/python-modules/jupyter-ydoc/default.nix

54 lines
1.1 KiB
Nix
Raw Normal View History

{
lib,
buildPythonPackage,
fetchPypi,
pythonOlder,
hatch-nodejs-version,
hatchling,
importlib-metadata,
pycrdt,
pytestCheckHook,
websockets,
ypy-websocket,
}:
buildPythonPackage rec {
pname = "jupyter-ydoc";
version = "2.0.1";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
pname = "jupyter_ydoc";
inherit version;
hash = "sha256-cW3ajLiviB/sL7yIrqP7DTuyS764Cpmor/LgHQidWw0=";
};
nativeBuildInputs = [
hatch-nodejs-version
hatchling
];
propagatedBuildInputs = [ pycrdt ] ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ];
pythonImportsCheck = [ "jupyter_ydoc" ];
nativeCheckInputs = [
pytestCheckHook
websockets
ypy-websocket
];
# requires a Node.js environment
doCheck = false;
meta = {
changelog = "https://github.com/jupyter-server/jupyter_ydoc/blob/v${version}/CHANGELOG.md";
description = "Document structures for collaborative editing using Ypy";
homepage = "https://github.com/jupyter-server/jupyter_ydoc";
license = lib.licenses.bsd3;
maintainers = lib.teams.jupyter.members;
};
}