49 buildPythonPackage rec {
52 format = "setuptools";
54 disabled = pythonOlder "3.7";
57 inherit pname version;
58 sha256 = "sha256-i0Yuouaq1rTcDtRfuAC2y/6wMl5/5pg5B/Ei8r5KH+k=";
62 substituteInPlace setup.py \
63 --replace "pytest>=2.8.6,<3.3.0" "pytest"
66 propagatedBuildInputs = [
77 # FIXME: remove the following dependencies when web3 gets added
79 ] ++ passthru.optional-dependencies.scram
80 ++ passthru.optional-dependencies.serialization
81 ++ passthru.optional-dependencies.xbr;
84 # Run asyncio tests (requires twisted)
92 pythonImportsCheck = [
96 passthru.optional-dependencies = rec {
97 all = accelerate ++ compress ++ encryption ++ nvx ++ serialization ++ scram ++ twisted ++ ui ++ xbr;
98 accelerate = [ /* wsaccel */ ];
99 compress = [ python-snappy ];
100 encryption = [ pynacl pyopenssl qrcode /* pytrie */ service-identity ];
102 scram = [ argon2-cffi cffi passlib ];
103 serialization = [ cbor2 flatbuffers msgpack ujson py-ubjson ];
104 twisted = [ attrs args.twisted zope_interface ];
106 xbr = [ base58 cbor2 click ecdsa eth-abi jinja2 hkdf mnemonic py-ecc py-eth-sig-utils py-multihash rlp spake2 twisted /* web3 xbr */ yapf /* zlmdb */ ];
110 description = "WebSocket and WAMP in Python for Twisted and asyncio";
111 homepage = "https://crossbar.io/autobahn";
112 license = licenses.mit;
113 maintainers = with maintainers; [ SuperSandro2000 ];