summaryrefslogtreecommitdiff
path: root/dev-python/txaio
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-python/txaio
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-python/txaio')
-rw-r--r--dev-python/txaio/Manifest10
-rw-r--r--dev-python/txaio/files/txaio-2.7.1.chained-callback.patch48
-rw-r--r--dev-python/txaio/files/txaio-2.7.1.f._result.patch36
-rw-r--r--dev-python/txaio/files/util.py40
-rw-r--r--dev-python/txaio/metadata.xml19
-rw-r--r--dev-python/txaio/txaio-2.7.1.ebuild71
-rw-r--r--dev-python/txaio/txaio-2.8.2.ebuild65
-rw-r--r--dev-python/txaio/txaio-2.9.0.ebuild64
8 files changed, 353 insertions, 0 deletions
diff --git a/dev-python/txaio/Manifest b/dev-python/txaio/Manifest
new file mode 100644
index 000000000000..0721d83941ee
--- /dev/null
+++ b/dev-python/txaio/Manifest
@@ -0,0 +1,10 @@
+AUX txaio-2.7.1.chained-callback.patch 1297 BLAKE2B 41aea0fac54ef4256e191d7d505d5d74119f77f23825a4a944813540874f69566fe15f1f7e535a8402dcf85fcded3183632898657c5257b695dcc899ad98e6b0 SHA512 69132c9cbda71da30ecce6385552e1d3ecdf0ca57562d7c0ef2dd8917ef1d1bfd03c55008690f34a31d31418bb7cdb9f690c75a0b996a4f8de0b0642a824e40e
+AUX txaio-2.7.1.f._result.patch 1140 BLAKE2B 675ffec2a0d4d9bb312492603765e79ddab23c063297f4ab79d3cbb57cace511b92e357cf54a283d0f096de9d3209fca266238282cd3a1e77039332c696ca00e SHA512 bcf4681ca1501dc9b21514dca68fb36d6b50550fe1760b4af00786a698b26c3fb64afebcf29c2404dd0923867da010bfa41afa9501f59f43306b55871d951a29
+AUX util.py 977 BLAKE2B ced53147ac1b8153d0b891b07514cee5692372bb630797d172c5b7daa3cb5f20b88935a2c9dcd0784968edda8586a00ea69552e72ffd04647ce4ef96928059da SHA512 a82754ff4b81cdacd7010cb30065ae1a3408b2ed6e8a47021a2c7066adb614a87cc3d70b7980f10b9a6b063f4087ee44c5df2adab0d23ce90c1beb1368b4a498
+DIST txaio-2.7.1.tar.gz 43591 BLAKE2B 4efdcfb8ce3e8860af1efe56ae4c23efc9887a8f3a53c322444a95651f4dbb502443bdcc1d0da0ba5db8f9a832ad90b3c6dea06ca688d7120857854d3eb7c17e SHA512 d77a8b5e8fc21be0bef43f2a6795229456a351abc1a5eb6d2b7de0da0a58e67a228cb06d1a7962efcc760099ef5df94e9421875ea5628985260911efc7deb85e
+DIST txaio-2.8.2.tar.gz 43670 BLAKE2B e5238e59964b2ddb3ab400b2e2819c25a9ceed2da7db4c8a6e450f45314818b5c5dbb9f6e9bacbda738cb382a5b63ddc6650278b35734e48aa0e59c5c581b8fa SHA512 8b60a64ebfa1208995bc42e6ccbc87c4c3cd4687cb431435c6450cff31e5d0dba468c3f3494902e666cb2ee6dea84ded458fd8f1b3b9c25421b440dcd3fc5884
+DIST txaio-2.9.0.tar.gz 44195 BLAKE2B 6c62fc6f17ee860aead90cf5f5d02c7c0d9709adf7bcecbb6a7c1723abf0d8672dbc0b869dfe4683bc26c9608e94c41364add18c22e8e98678de8e10018d991c SHA512 ee07d776fa5894b716fdced36aaa6436336a1f1db97dedb0fd0575d61a7b48b12dfc90ed6078602d7a2c2a00bfa7f815ca76cd75e472a27ff7bfdb56291efa46
+EBUILD txaio-2.7.1.ebuild 1951 BLAKE2B 279769adca8634a3db2fcdb2bd8d6a34a2400e69394bb04f8b5b8e9d67e73721f566165871ae0cf85d4c5585901fa09411860c52e1cb800a71293fa7a99a2759 SHA512 4648355ea28264e43599a3b924497b8d6fccc68ed80e4b126aea7e90794a87af76db76b4d3c95feb3406a3e6482bbef88150d0adf26f089d949a9857643b7051
+EBUILD txaio-2.8.2.ebuild 1790 BLAKE2B 1e07b504a86e8189dc4a188980573e0188e134d6b6bb54a11a79d10fa7e2b5b3348ffdb65b3aa40812e845349f72a87f714e98f7c297af9cd9116c9a226f6e10 SHA512 103699f096bb49daf1ffcbb974eb6b3230cb413db178740b86e61133accc3c5b8b11d1aa6e668dd21b65d4a2dd5b8dd7021027c709c533224953f21fc62ca70d
+EBUILD txaio-2.9.0.ebuild 1749 BLAKE2B ae1bcef6b698fd4fc5dbdbfe82b15e3bcacaf94bea960c01c3a89de190a0a27e04af3b38792b57e6c8206a0b0b55c469a877d661ffb08f9cc6e8db550c72d184 SHA512 d289c0131fedf12ff71cc90686f0b607656c5492802f4d0e1ab861f028b8d5a7bc7bd9da98186370ae59a647c8e369a3b6876e8e37969f78fb3143f3803e727c
+MISC metadata.xml 565 BLAKE2B 6ac243a37d1d168acb5af08993ea9ebe89003b5d1de5cc123f00f8bb09df9d106164c6b6fef4ab4923ec85b756efc175ad6ec5235bd0985f3af214003b27a33a SHA512 65e8db68004013282e5db56040eb37ec7d1016c5057accc2a1f512b72d66e0de1967cc6ec2ced38cadcd700e21a2c1b2c0206004eb72c26f2bd4b134eda9f77f
diff --git a/dev-python/txaio/files/txaio-2.7.1.chained-callback.patch b/dev-python/txaio/files/txaio-2.7.1.chained-callback.patch
new file mode 100644
index 000000000000..f72ccb03918b
--- /dev/null
+++ b/dev-python/txaio/files/txaio-2.7.1.chained-callback.patch
@@ -0,0 +1,48 @@
+From f27f2945c8ca06e2eb0c2b95366a7a4c1363d857 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alex=20Gr=C3=B6nholm?= <alex.gronholm@nextday.fi>
+Date: Mon, 8 May 2017 21:20:01 +0300
+Subject: [PATCH] Removed the test for the chained callback feature
+
+---
+ test/test_callback.py | 25 -------------------------
+ 1 file changed, 25 deletions(-)
+
+diff --git a/test/test_callback.py b/test/test_callback.py
+index 08d31e3..9c8ab99 100644
+--- a/test/test_callback.py
++++ b/test/test_callback.py
+@@ -59,31 +59,6 @@ def test_callback(framework):
+ assert results[0] == "it worked"
+
+
+-def test_chained_callback(framework):
+- """
+- Chain two callbacks where the first one alters the value.
+- """
+- calls = []
+-
+- def callback0(arg):
+- calls.append(arg)
+- return arg + " pray I do not alter it futher"
+-
+- def callback1(arg):
+- calls.append(arg)
+-
+- f = txaio.create_future()
+- txaio.add_callbacks(f, callback0, None)
+- txaio.add_callbacks(f, callback1, None)
+- txaio.resolve(f, "the deal")
+-
+- run_once()
+-
+- assert len(calls) == 2
+- assert calls[0] == "the deal"
+- assert calls[1] == "the deal pray I do not alter it futher"
+-
+-
+ def test_immediate_result(framework):
+ f = txaio.create_future_success("it worked")
+ results = []
+--
+2.13.0
+
diff --git a/dev-python/txaio/files/txaio-2.7.1.f._result.patch b/dev-python/txaio/files/txaio-2.7.1.f._result.patch
new file mode 100644
index 000000000000..8c72b45e48de
--- /dev/null
+++ b/dev-python/txaio/files/txaio-2.7.1.f._result.patch
@@ -0,0 +1,36 @@
+From 7ecd9cbb4e7202f7c583f9080ac13db94672bc4b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alex=20Gr=C3=B6nholm?= <alex.gronholm@nextday.fi>
+Date: Thu, 4 May 2017 21:47:02 +0300
+Subject: [PATCH] Removed code that sets f._result
+
+This stopped working from Python 3.6 onwards, as the Future implementation is now written in C.
+---
+ txaio/aio.py | 7 +------
+ 1 file changed, 1 insertion(+), 6 deletions(-)
+
+diff --git a/txaio/aio.py b/txaio/aio.py
+index 55d3ca5..becfba5 100644
+--- a/txaio/aio.py
++++ b/txaio/aio.py
+@@ -437,17 +437,12 @@ class _AsyncioApi(object):
+ """
+ callback or errback may be None, but at least one must be
+ non-None.
+-
+- XXX beware the "f._result" hack to get "chainable-callback" type
+- behavior.
+ """
+ def done(f):
+ try:
+ res = f.result()
+ if callback:
+- x = callback(res)
+- if x is not None:
+- f._result = x
++ callback(res)
+ except Exception:
+ if errback:
+ errback(create_failure())
+--
+2.13.0
+
diff --git a/dev-python/txaio/files/util.py b/dev-python/txaio/files/util.py
new file mode 100644
index 000000000000..254df70a5aac
--- /dev/null
+++ b/dev-python/txaio/files/util.py
@@ -0,0 +1,40 @@
+try:
+ import asyncio
+ from asyncio.test_utils import run_once as _run_once
+
+ def run_once():
+ return _run_once(asyncio.get_event_loop())
+
+except ImportError as e:
+ try:
+ import trollius as asyncio
+ except ImportError:
+ asyncio = None
+
+ def run_once():
+ '''
+ copied from asyncio.testutils because trollius has no
+ "testutils"
+ '''
+ # in Twisted, this method is a no-op
+ if asyncio is None:
+ return
+
+ # just like modern asyncio.testutils.run_once does it...
+ loop = asyncio.get_event_loop()
+ loop.stop()
+ loop.run_forever()
+ asyncio.gather(*asyncio.Task.all_tasks())
+
+
+try:
+ # XXX fixme hack better way to detect twisted
+ # (has to work on py3 where asyncio exists always, though)
+ import twisted # noqa
+
+ def await(_):
+ return
+
+except ImportError:
+ def await(future):
+ asyncio.get_event_loop().run_until_complete(future)
diff --git a/dev-python/txaio/metadata.xml b/dev-python/txaio/metadata.xml
new file mode 100644
index 000000000000..6cc067014bb5
--- /dev/null
+++ b/dev-python/txaio/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>dolsen@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>autobahnws@googlegroups.com</email>
+ <name>Crossbar.io Technologies GmbH</name>
+ </maintainer>
+ <remote-id type="pypi">txaio</remote-id>
+ <remote-id type="github">crossbario/txaio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/txaio/txaio-2.7.1.ebuild b/dev-python/txaio/txaio-2.7.1.ebuild
new file mode 100644
index 000000000000..0d6b45adb066
--- /dev/null
+++ b/dev-python/txaio/txaio-2.7.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1
+
+DESCRIPTION="Compatibility API between asyncio/Twisted/Trollius"
+HOMEPAGE="https://github.com/crossbario/txaio https://pypi.org/project/txaio/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+IUSE="doc test"
+
+RDEPEND="
+ $(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' python2_7)
+ $(python_gen_cond_dep '>=dev-python/futures-3.0.3[${PYTHON_USEDEP}]' python2_7)
+"
+DEPEND="app-arch/unzip
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ doc? (
+ >=dev-python/sphinx-1.2.3[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-spelling-2.1.2[${PYTHON_USEDEP}]
+ >=dev-python/sphinx_rtd_theme-0.1.9[${PYTHON_USEDEP}]
+ dev-python/alabaster[${PYTHON_USEDEP}]
+ )
+ test? ( >=dev-python/pytest-2.6.4[${PYTHON_USEDEP}]
+ >=dev-python/pytest-cov-1.8.1[${PYTHON_USEDEP}]
+ ~dev-python/mock-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tox-2.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pep8-1.6.2[${PYTHON_USEDEP}]
+ >=dev-python/pyenchant-1.6.6[${PYTHON_USEDEP}]
+ )
+"
+
+# py 3.6 upstream bug fixes applied just after the release
+PATCHES=(
+ "${FILESDIR}/txaio-2.7.1.f._result.patch"
+ "${FILESDIR}/txaio-2.7.1.chained-callback.patch"
+)
+
+src_prepare() {
+ default_src_prepare
+ # Take out failing tests known to pass when run manually
+ # we certainly don't need to test "python setup.py sdist" here
+ rm "${S}/test/test_packaging.py" || die
+}
+
+python_prepare() {
+ # https://github.com/tavendo/txaio/issues/3
+ cp -r "${FILESDIR}"/util.py test || die
+
+ distutils-r1_python_prepare
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ py.test || die "Tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && HTML_DOCS=( doc/_build/html/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/txaio/txaio-2.8.2.ebuild b/dev-python/txaio/txaio-2.8.2.ebuild
new file mode 100644
index 000000000000..d75f1ebb10f8
--- /dev/null
+++ b/dev-python/txaio/txaio-2.8.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1
+
+DESCRIPTION="Compatibility API between asyncio/Twisted/Trollius"
+HOMEPAGE="https://github.com/crossbario/txaio https://pypi.org/project/txaio/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="doc test"
+
+RDEPEND="
+ $(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' python2_7)
+ $(python_gen_cond_dep '>=dev-python/futures-3.0.3[${PYTHON_USEDEP}]' python2_7)
+"
+DEPEND="app-arch/unzip
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ doc? (
+ >=dev-python/sphinx-1.2.3[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-spelling-2.1.2[${PYTHON_USEDEP}]
+ >=dev-python/sphinx_rtd_theme-0.1.9[${PYTHON_USEDEP}]
+ dev-python/alabaster[${PYTHON_USEDEP}]
+ )
+ test? ( >=dev-python/pytest-2.6.4[${PYTHON_USEDEP}]
+ >=dev-python/pytest-cov-1.8.1[${PYTHON_USEDEP}]
+ >=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tox-2.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pep8-1.6.2[${PYTHON_USEDEP}]
+ >=dev-python/pyenchant-1.6.6[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ default_src_prepare
+ # Take out failing tests known to pass when run manually
+ # we certainly don't need to test "python setup.py sdist" here
+ rm "${S}/test/test_packaging.py" || die
+}
+
+python_prepare() {
+ # https://github.com/tavendo/txaio/issues/3
+ cp -r "${FILESDIR}"/util.py test || die
+
+ distutils-r1_python_prepare
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ py.test || die "Tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && HTML_DOCS=( doc/_build/html/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/txaio/txaio-2.9.0.ebuild b/dev-python/txaio/txaio-2.9.0.ebuild
new file mode 100644
index 000000000000..62ffde7501e8
--- /dev/null
+++ b/dev-python/txaio/txaio-2.9.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1
+
+DESCRIPTION="Compatibility API between asyncio/Twisted/Trollius"
+HOMEPAGE="https://github.com/crossbario/txaio https://pypi.org/project/txaio/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="doc test"
+
+RDEPEND="
+ $(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' python2_7)
+ $(python_gen_cond_dep '>=dev-python/futures-3.0.3[${PYTHON_USEDEP}]' python2_7)
+"
+DEPEND="app-arch/unzip
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ doc? (
+ >=dev-python/sphinx-1.2.3[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-spelling-2.1.2[${PYTHON_USEDEP}]
+ >=dev-python/sphinx_rtd_theme-0.1.9[${PYTHON_USEDEP}]
+ )
+ test? ( >=dev-python/pytest-2.6.4[${PYTHON_USEDEP}]
+ >=dev-python/pytest-cov-1.8.1[${PYTHON_USEDEP}]
+ >=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tox-2.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pep8-1.6.2[${PYTHON_USEDEP}]
+ >=dev-python/pyenchant-1.6.6[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ default_src_prepare
+ # Take out failing tests known to pass when run manually
+ # we certainly don't need to test "python setup.py sdist" here
+ rm "${S}/test/test_packaging.py" || die
+}
+
+python_prepare() {
+ # https://github.com/tavendo/txaio/issues/3
+ cp -r "${FILESDIR}"/util.py test || die
+
+ distutils-r1_python_prepare
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ py.test || die "Tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && HTML_DOCS=( doc/_build/html/. )
+ distutils-r1_python_install_all
+}