From: "Alessandro Barbieri" <lssndrbarbieri@gmail.com>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/proj/guru:dev commit in: dev-python/trio-asyncio/
Date: Sun, 29 Mar 2020 09:29:09 +0000 (UTC) [thread overview]
Message-ID: <1585474143.7395f995d7a506f91b79614047067cf60642dc5c.Alessandro-Barbieri@gentoo> (raw)
commit: 7395f995d7a506f91b79614047067cf60642dc5c
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Sun Mar 29 09:23:26 2020 +0000
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Sun Mar 29 09:29:03 2020 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=7395f995
dev-python/trio-asyncio: new package
Package-Manager: Portage-2.3.96, Repoman-2.3.22
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
dev-python/trio-asyncio/Manifest | 1 +
dev-python/trio-asyncio/metadata.xml | 27 ++++++++++++++
dev-python/trio-asyncio/trio-asyncio-0.11.0.ebuild | 41 ++++++++++++++++++++++
3 files changed, 69 insertions(+)
diff --git a/dev-python/trio-asyncio/Manifest b/dev-python/trio-asyncio/Manifest
new file mode 100644
index 0000000..7d22a12
--- /dev/null
+++ b/dev-python/trio-asyncio/Manifest
@@ -0,0 +1 @@
+DIST trio-asyncio-0.11.0.tar.gz 67424 BLAKE2B 2d38b621eb5698521ba58c06295f6e2337821c64a35c4938ed9ffd4a01285c95df9c512d9922e88afbdff7c6fc0ef028784a1f189fbc9255ea46ee346b2f892c SHA512 718098f7ab18b168dd6a926d9bb64b636e06e6a1ea8e557ba4bf7782db16bb7fcccf226412284bfbc5183ff6df7624fc1a7ac73dd20bc841ffffd5e766e84d0a
diff --git a/dev-python/trio-asyncio/metadata.xml b/dev-python/trio-asyncio/metadata.xml
new file mode 100644
index 0000000..cc48483
--- /dev/null
+++ b/dev-python/trio-asyncio/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription>
+Rationale
+
+Trio has native concepts of tasks and task cancellation. Asyncio is based on callbacks and chaining Futures, albeit with nicer syntax, which make handling of failures and timeouts fundamentally less reliable, especially in larger programs. Thus, you really want to base your async project on Trio.
+
+On the other hand, there are quite a few asyncio-enhanced libraries. You really don't want to re-invent any wheels in your project.
+
+Thus, being able to use asyncio libraries from Trio is useful. trio-asyncio enables you to do that, and more.
+Transparent vs. explicit translation
+
+trio_asyncio does not try to magically allow calling await trio_code() from asyncio or vice versa. There are multiple reasons for this; the executive summary is that cross-domain calls can't be made to work correctly, and any such call is likely to result in an irrecoverable error. You need to keep your code's asyncio and trio domains rigidly separate.
+
+Fortunately, this is not difficult.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">python-trio/trio-asyncio</remote-id>
+ <remote-id type="pypi">trio-asyncio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/trio-asyncio/trio-asyncio-0.11.0.ebuild b/dev-python/trio-asyncio/trio-asyncio-0.11.0.ebuild
new file mode 100644
index 0000000..eac1549
--- /dev/null
+++ b/dev-python/trio-asyncio/trio-asyncio-0.11.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_6 )
+
+inherit distutils-r1
+
+DESCRIPTION="a re-implementation of the asyncio mainloop on top of Trio"
+HOMEPAGE="
+ https://github.com/python-trio/trio-asyncio
+ https://pypi.org/project/trio-asyncio
+"
+SRC_URI="https://github.com/python-trio/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE=" || ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/async_generator-1.6[${PYTHON_USEDEP}]
+ dev-python/outcome[${PYTHON_USEDEP}]
+ >=dev-python/trio-0.12.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '>=dev-python/contextvars-2.1[${PYTHON_USEDEP}]' python3_6)
+"
+DEPEND="
+ ${RDEPEND}
+ dev-python/pytest-runner[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs/source
+
+src_prepare() {
+ #remove tests from installed packages
+ #TODO: remove hardcoded
+ sed -i 's|packages=find_packages()|packages=["trio_asyncio"]|' setup.py || die
+
+ default
+}
next reply other threads:[~2020-03-29 9:29 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-29 9:29 Alessandro Barbieri [this message]
-- strict thread matches above, loose matches on Subject: below --
2020-03-29 13:21 [gentoo-commits] repo/proj/guru:master commit in: dev-python/trio-asyncio/ Andrew Ammerlaan
2020-03-29 13:21 ` [gentoo-commits] repo/proj/guru:dev " Andrew Ammerlaan
2020-04-01 14:57 Alessandro Barbieri
2020-04-01 15:30 Alessandro Barbieri
2020-04-02 10:12 [gentoo-commits] repo/proj/guru:master " Andrew Ammerlaan
2020-04-01 16:17 ` [gentoo-commits] repo/proj/guru:dev " Andrew Ammerlaan
2020-06-15 11:34 Andrew Ammerlaan
2020-08-29 14:14 Andrew Ammerlaan
2020-09-24 12:50 Andrew Ammerlaan
2021-04-13 12:27 Andrew Ammerlaan
2021-04-19 1:55 Alessandro Barbieri
2021-06-14 23:09 Alessandro Barbieri
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1585474143.7395f995d7a506f91b79614047067cf60642dc5c.Alessandro-Barbieri@gentoo \
--to=lssndrbarbieri@gmail.com \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox