diff --git a/pkgs/development/python-modules/channels-redis/default.nix b/pkgs/development/python-modules/channels-redis/default.nix new file mode 100644 index 000000000000..8812e4097ab8 --- /dev/null +++ b/pkgs/development/python-modules/channels-redis/default.nix @@ -0,0 +1,55 @@ +{ stdenv, buildPythonPackage, fetchPypi, pythonOlder +, redis, channels, msgpack, aioredis, hiredis, asgiref +# , fetchFromGitHub, async_generator, async-timeout, cryptography, pytest, pytest-asyncio +}: + +buildPythonPackage rec { + pname = "channels-redis"; + version = "2.4.0"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit version; + pname = "channels_redis"; + sha256 = "1g4izdf8237pwxn85bv5igc2bajrvck1p2a7q448qmjfznrbrk5p"; + }; + + buildInputs = [ redis hiredis ]; + + propagatedBuildInputs = [ channels msgpack aioredis asgiref ]; + + # Fetch from github (no tests files on pypi) + # src = fetchFromGitHub { + # rev = version; + # owner = "django"; + # repo = "channels_redis"; + # sha256 = "05niaqjv790mnrvca26kbnvb50fgnk2zh0k4np60cn6ilp4nl0kc"; + # }; + # + # checkInputs = [ + # async_generator + # async-timeout + # cryptography + # pytest + # pytest-asyncio + # ]; + # + # # Fails with : ConnectionRefusedError: [Errno 111] Connect call failed ('127.0.0.1', 6379) + # # (even with a local redis instance running) + # checkPhase = '' + # pytest -p no:django tests/ + # ''; + + postPatch = '' + sed -i "s/msgpack~=0.6.0/msgpack/" setup.py + sed -i "s/aioredis~=1.0/aioredis/" setup.py + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/django/channels_redis/; + description = "Redis-backed ASGI channel layer implementation"; + license = licenses.bsd3; + maintainers = with maintainers; [ mmai ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2d6b3c537e22..36892d60d302 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -471,6 +471,8 @@ in { chalice = callPackage ../development/python-modules/chalice { }; + channels-redis = callPackage ../development/python-modules/channels-redis { }; + cleo = callPackage ../development/python-modules/cleo { }; clikit = callPackage ../development/python-modules/clikit { };