1{ lib 2, argon2_cffi 3, buildPythonPackage 4, cbor 5, cbor2 6, cffi 7, cryptography 8, fetchPypi 9, flatbuffers 10, mock 11, msgpack 12, passlib 13, pynacl 14, pytest-asyncio 15, pytestCheckHook 16, pythonOlder 17, twisted 18, py-ubjson 19, txaio 20, ujson 21, zope_interface 22}: 23 24buildPythonPackage rec { 25 pname = "autobahn"; 26 version = "21.3.1"; 27 disabled = pythonOlder "3.7"; 28 29 src = fetchPypi { 30 inherit pname version; 31 sha256 = "00wf9dkfgakg80gy62prg650lb8zz9y9fdlxwxcznwp8hgsw29p1"; 32 }; 33 34 propagatedBuildInputs = [ 35 argon2_cffi 36 cbor 37 cbor2 38 cffi 39 cryptography 40 flatbuffers 41 msgpack 42 passlib 43 py-ubjson 44 pynacl 45 twisted 46 txaio 47 ujson 48 zope_interface 49 ]; 50 51 checkInputs = [ 52 mock 53 pytest-asyncio 54 pytestCheckHook 55 ]; 56 57 postPatch = '' 58 substituteInPlace setup.py \ 59 --replace "pytest>=2.8.6,<3.3.0" "pytest" 60 ''; 61 62 preCheck = '' 63 # Run asyncio tests (requires twisted) 64 export USE_ASYNCIO=1 65 ''; 66 67 pytestFlagsArray = [ "--pyargs autobahn" ]; 68 69 pythonImportsCheck = [ "autobahn" ]; 70 71 meta = with lib; { 72 description = "WebSocket and WAMP in Python for Twisted and asyncio"; 73 homepage = "https://crossbar.io/autobahn"; 74 license = licenses.mit; 75 maintainers = with maintainers; [ ]; 76 }; 77}