diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/ypy-websocket/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/ypy-websocket/default.nix | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/ypy-websocket/default.nix b/nixpkgs/pkgs/development/python-modules/ypy-websocket/default.nix new file mode 100644 index 000000000000..843c42b6283c --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/ypy-websocket/default.nix @@ -0,0 +1,66 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, hatchling +, aiofiles +, aiosqlite +, y-py +, pytest-asyncio +, pytestCheckHook +, pythonRelaxDepsHook +, websockets +}: + +buildPythonPackage rec { + pname = "ypy-websocket"; + version = "0.8.4"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "y-crdt"; + repo = "ypy-websocket"; + rev = "refs/tags/v${version}"; + hash = "sha256-jl2ciIA3enJRfPgcu96MZN+BmNL+bBet54AFDBy3seY="; + }; + + pythonRelaxDeps = [ + "aiofiles" + ]; + + nativeBuildInputs = [ + hatchling + pythonRelaxDepsHook + ]; + + propagatedBuildInputs = [ + aiofiles + aiosqlite + y-py + ]; + + pythonImportsCheck = [ + "ypy_websocket" + ]; + + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + websockets + ]; + + disabledTestPaths = [ + # requires installing yjs Node.js module + "tests/test_ypy_yjs.py" + ]; + + meta = { + changelog = "https://github.com/y-crdt/ypy-websocket/blob/${version}/CHANGELOG.md"; + description = "WebSocket Connector for Ypy"; + homepage = "https://github.com/y-crdt/ypy-websocket"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} |