From e7154e9aff049df0be1d53554f656ee5485110cc Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Mon, 25 Mar 2019 12:51:36 +0000 Subject: [PATCH] added community/python-autobahn --- community/python-autobahn/PKGBUILD | 50 +++++++++++++++++++ .../skip-test-missing-serializers.patch | 34 +++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 community/python-autobahn/PKGBUILD create mode 100644 community/python-autobahn/skip-test-missing-serializers.patch diff --git a/community/python-autobahn/PKGBUILD b/community/python-autobahn/PKGBUILD new file mode 100644 index 000000000..a3a2ec068 --- /dev/null +++ b/community/python-autobahn/PKGBUILD @@ -0,0 +1,50 @@ +# Maintainer: Morten Linderud +# Maintainer: Chih-Hsuan Yen +# Maintainer: Anatol Pomozov + +# ALARM: Kevin Mihelich +# - removed AUTOBAHN_USE_NVX=1 from python build/install commands + +pkgname=python-autobahn +pkgver=19.3.3 +pkgrel=1 +pkgdesc='Real-time framework for Web, Mobile & Internet of Things' +arch=(x86_64) +url='https://crossbar.io/autobahn/' +license=(MIT) +depends=(python-cffi python-twisted python-six python-txaio python-wsaccel) +makedepends=(python-setuptools python-argon2_cffi python-msgpack python-passlib python-pynacl) +checkdepends=(python-mock python-pytest python-pytest-asyncio) +optdepends=( + 'python-msgpack: MsgPack serializer support' + 'python-argon2_cffi: WAMP-SCRAM authentication support' + 'python-passlib: WAMP-SCRAM authentication support' + 'python-pynacl: WAMP-cryptosign support' +) + +source=(https://pypi.io/packages/source/a/autobahn/autobahn-$pkgver.tar.gz + skip-test-missing-serializers.patch) +sha256sums=('e92f40ab26fb51672c25cd301ae79a549c6ff7748effe6abdea2ef31d5363a4f' + '2d4ec4300f98cddd13c3a4d70e6ae4934a98f17b04628cadfd18654172d04f92') + +prepare() { + cd "$srcdir/autobahn-$pkgver" + patch -Np1 -i ../skip-test-missing-serializers.patch +} + +build() { + cd "$srcdir/autobahn-$pkgver" + python setup.py build +} + +check() { + cd "$srcdir/autobahn-$pkgver" + USE_TWISTED=1 PYTHONPATH=.:build/lib.linux-$CARCH-3.7 pytest -v autobahn + USE_ASYNCIO=1 PYTHONPATH=.:build/lib.linux-$CARCH-3.7 pytest -v autobahn +} + +package() { + cd "$srcdir/autobahn-$pkgver" + python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/community/python-autobahn/skip-test-missing-serializers.patch b/community/python-autobahn/skip-test-missing-serializers.patch new file mode 100644 index 000000000..f6150249d --- /dev/null +++ b/community/python-autobahn/skip-test-missing-serializers.patch @@ -0,0 +1,34 @@ +diff --git a/autobahn/wamp/test/test_serializer.py b/autobahn/wamp/test/test_serializer.py +index 8e47805c..117df18d 100644 +--- a/autobahn/wamp/test/test_serializer.py ++++ b/autobahn/wamp/test/test_serializer.py +@@ -129,11 +129,17 @@ def create_serializers(): + _serializers.append(serializer.MsgPackSerializer()) + _serializers.append(serializer.MsgPackSerializer(batched=True)) + +- _serializers.append(serializer.CBORSerializer()) +- _serializers.append(serializer.CBORSerializer(batched=True)) ++ try: ++ _serializers.append(serializer.CBORSerializer()) ++ _serializers.append(serializer.CBORSerializer(batched=True)) ++ except AttributeError: ++ pass + +- _serializers.append(serializer.UBJSONSerializer()) +- _serializers.append(serializer.UBJSONSerializer(batched=True)) ++ try: ++ _serializers.append(serializer.UBJSONSerializer()) ++ _serializers.append(serializer.UBJSONSerializer(batched=True)) ++ except AttributeError: ++ pass + + # FIXME: implement full FlatBuffers serializer for WAMP + if six.PY3: +@@ -146,6 +152,7 @@ def create_serializers(): + + + @unittest.skipIf(not six.PY3, 'WAMP-FlatBuffers currently only supports Python 3') ++@unittest.skipIf(not hasattr(serializer, 'FlatBuffersSerializer'), 'FlatBuffers support missing') + class TestFlatBuffersSerializer(unittest.TestCase): + + def test_basic(self):