Files
nixpkgs/pkgs/development/python-modules/jupyter-ydoc/default.nix
2026-05-06 14:13:53 +00:00

65 lines
1.2 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
hatch-nodejs-version,
hatchling,
# dependencies
anyio,
pycrdt,
# tests
pycrdt-websocket,
pytestCheckHook,
websockets,
}:
buildPythonPackage (finalAttrs: {
pname = "jupyter-ydoc";
version = "3.4.1";
pyproject = true;
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "jupyter-server";
repo = "jupyter_ydoc";
tag = "v${finalAttrs.version}";
hash = "sha256-HlYSPlYiHyVwJhsRY10SgotKa9ejlj0hlxbS+chtaBI=";
};
build-system = [
hatch-nodejs-version
hatchling
];
pythonRelaxDeps = [
"pycrdt"
];
dependencies = [
anyio
pycrdt
];
pythonImportsCheck = [ "jupyter_ydoc" ];
nativeCheckInputs = [
pytestCheckHook
pycrdt-websocket
websockets
];
# requires a Node.js environment
doCheck = false;
meta = {
changelog = "https://github.com/jupyter-server/jupyter_ydoc/blob/${finalAttrs.src.tag}/CHANGELOG.md";
description = "Document structures for collaborative editing using Yjs/pycrdt";
homepage = "https://github.com/jupyter-server/jupyter_ydoc";
license = lib.licenses.bsd3;
teams = [ lib.teams.jupyter ];
};
})