diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
| commit | b590c8d7572b727d565cc0b8ff660d43569845de (patch) | |
| tree | 06f7a4102ea4e845df8b66660f252920d52952f9 /dev-python/aiorpcx | |
| parent | 24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff) | |
| download | baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip | |
Adding metadata
Diffstat (limited to 'dev-python/aiorpcx')
| -rw-r--r-- | dev-python/aiorpcx/Manifest | 1 | ||||
| -rw-r--r-- | dev-python/aiorpcx/aiorpcx-0.25.0.ebuild | 47 | ||||
| -rw-r--r-- | dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch | 22 | ||||
| -rw-r--r-- | dev-python/aiorpcx/files/aiorpcx-0.25.0-pytest-asyncio-1.patch | 152 | ||||
| -rw-r--r-- | dev-python/aiorpcx/metadata.xml | 10 |
5 files changed, 232 insertions, 0 deletions
diff --git a/dev-python/aiorpcx/Manifest b/dev-python/aiorpcx/Manifest new file mode 100644 index 000000000000..3e9cfb48cbf3 --- /dev/null +++ b/dev-python/aiorpcx/Manifest @@ -0,0 +1 @@ +DIST aiorpcX-0.25.0.gh.tar.gz 70797 BLAKE2B 50b613b9bd7baf97ef1d42bbe9808dc7d425f1a941702aa40a8f8101e0a2772ae222bb298876b4dd67cfe062183eed061ab64194bafa1bb7a5cca72d54e8f7f9 SHA512 324093a9fbc1170ff3f9f8f97e6cea9250ba2a6fb32bacb12cf8bc67ff2f2abc941aa76158a3842e86b32300bcde48641730d1fb0afa73e647dd7ac5cea911df diff --git a/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild b/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild new file mode 100644 index 000000000000..633f948e608b --- /dev/null +++ b/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +MY_P=aiorpcX-${PV} +DESCRIPTION="Generic async RPC implementation, including JSON-RPC" +HOMEPAGE=" + https://github.com/kyuupichan/aiorpcX/ + https://pypi.org/project/aiorpcX/ +" +SRC_URI=" + https://github.com/kyuupichan/aiorpcX/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64 ~arm arm64 x86" + +BDEPEND=" + test? ( + dev-python/uvloop[${PYTHON_USEDEP}] + >=dev-python/websockets-0.14[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-asyncio ) +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # require Internet + tests/test_socks.py::TestSOCKSProxy::test_create_connection_resolve_good +) + +PATCHES=( + # https://github.com/kyuupichan/aiorpcX/commit/b8ce32889c45c98b44c4e247ec0b0ae206e9ee91 + "${FILESDIR}/${P}-pytest-asyncio-1.patch" + # https://github.com/kyuupichan/aiorpcX/commit/25043621700672ee375d20b78804118acac43b1b + "${FILESDIR}/${P}-py314.patch" +) diff --git a/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch b/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch new file mode 100644 index 000000000000..b000d6eb18ed --- /dev/null +++ b/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch @@ -0,0 +1,22 @@ +From 25043621700672ee375d20b78804118acac43b1b Mon Sep 17 00:00:00 2001 +From: Neil Booth <kyuupichan@pm.me> +Date: Thu, 19 Feb 2026 13:29:30 +0000 +Subject: [PATCH] Make test_misc() async (danigm) + +--- + tests/test_jsonrpc.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test_jsonrpc.py b/tests/test_jsonrpc.py +index 81414a7..8cda788 100755 +--- a/tests/test_jsonrpc.py ++++ b/tests/test_jsonrpc.py +@@ -1064,7 +1064,7 @@ async def send_batch(batch): + await group.spawn(send_batch(batch)) + + +-def test_misc(protocol): ++async def test_misc(protocol): + '''Misc tests to get full coverage.''' + connection = JSONRPCConnection(protocol) + diff --git a/dev-python/aiorpcx/files/aiorpcx-0.25.0-pytest-asyncio-1.patch b/dev-python/aiorpcx/files/aiorpcx-0.25.0-pytest-asyncio-1.patch new file mode 100644 index 000000000000..4f8a94d2926c --- /dev/null +++ b/dev-python/aiorpcx/files/aiorpcx-0.25.0-pytest-asyncio-1.patch @@ -0,0 +1,152 @@ +From b8ce32889c45c98b44c4e247ec0b0ae206e9ee91 Mon Sep 17 00:00:00 2001 +From: Neil Booth <kyuupichan@pm.me> +Date: Wed, 30 Jul 2025 14:41:44 -0400 +Subject: [PATCH] Remove event_loop fixture usage from tests + +--- + tests/test_session.py | 43 +++++++++------------------------------- + tests/test_socks.py | 6 +++--- + tests/test_unixsocket.py | 16 +++++---------- + tests/test_util.py | 3 ++- + 4 files changed, 19 insertions(+), 49 deletions(-) + +diff --git a/tests/test_session.py b/tests/test_session.py +index 8877fca..f52ab6b 100755 +--- a/tests/test_session.py ++++ b/tests/test_session.py +@@ -17,13 +17,6 @@ from aiorpcx.session import Concurrency + from util import RaiseTest + + +-if sys.version_info >= (3, 7): +- from asyncio import all_tasks +-else: +- from asyncio import Task +- all_tasks = Task.all_tasks +- +- + def raises_method_not_found(message): + return RaiseTest(JSONRPC.METHOD_NOT_FOUND, message, RPCError) + +@@ -86,21 +79,12 @@ def caplog_count(caplog, message): + + + @pytest.fixture +-def server_port(unused_tcp_port, event_loop): +- coro = serve_rs(MyServerSession, 'localhost', unused_tcp_port, loop=event_loop) +- server = event_loop.run_until_complete(coro) ++async def server_port(unused_tcp_port): ++ server = await serve_rs(MyServerSession, 'localhost', unused_tcp_port) + yield unused_tcp_port +- if hasattr(asyncio, 'all_tasks'): +- tasks = asyncio.all_tasks(event_loop) +- else: +- tasks = asyncio.Task.all_tasks(loop=event_loop) + +- async def close_all(): +- server.close() +- await server.wait_closed() +- if tasks: +- await asyncio.wait(tasks) +- event_loop.run_until_complete(close_all()) ++ server.close() ++ await server.wait_closed() + + + class TestRPCSession: +@@ -765,21 +749,12 @@ class MessageServer(MessageSession): + + + @pytest.fixture +-def msg_server_port(event_loop, unused_tcp_port): +- coro = serve_rs(MessageServer, 'localhost', unused_tcp_port, loop=event_loop) +- server = event_loop.run_until_complete(coro) ++async def msg_server_port(unused_tcp_port): ++ server = await serve_rs(MessageServer, 'localhost', unused_tcp_port) + yield unused_tcp_port +- if hasattr(asyncio, 'all_tasks'): +- tasks = asyncio.all_tasks(event_loop) +- else: +- tasks = asyncio.Task.all_tasks(loop=event_loop) +- +- async def close_all(): +- server.close() +- await server.wait_closed() +- if tasks: +- await asyncio.wait(tasks) +- event_loop.run_until_complete(close_all()) ++ ++ server.close() ++ await server.wait_closed() + + + def connect_message_session(host, port, proxy=None, framer=None): +diff --git a/tests/test_socks.py b/tests/test_socks.py +index 43ca282..a8d3af2 100755 +--- a/tests/test_socks.py ++++ b/tests/test_socks.py +@@ -482,10 +482,10 @@ localhosts = ['127.0.0.1', '::1', 'localhost'] + + + @pytest.fixture(params=localhosts) +-def proxy_address(request, event_loop, unused_tcp_port): ++async def proxy_address(request, unused_tcp_port): + host = request.param +- coro = event_loop.create_server(FakeServer, host=host, port=unused_tcp_port) +- server = event_loop.run_until_complete(coro) ++ event_loop = asyncio.get_running_loop() ++ server = await event_loop.create_server(FakeServer, host=host, port=unused_tcp_port) + yield NetAddress(host, unused_tcp_port) + server.close() + +diff --git a/tests/test_unixsocket.py b/tests/test_unixsocket.py +index f75f23d..ae8c27f 100755 +--- a/tests/test_unixsocket.py ++++ b/tests/test_unixsocket.py +@@ -11,20 +11,14 @@ if sys.platform.startswith("win"): + + + @pytest.fixture +-def us_server(event_loop): ++async def us_server(): ++ event_loop = asyncio.get_running_loop() + with tempfile.TemporaryDirectory() as tmp_folder: + socket_path = path.join(tmp_folder, 'test.socket') +- coro = serve_us(MyServerSession, socket_path, loop=event_loop) +- server = event_loop.run_until_complete(coro) ++ server = await serve_us(MyServerSession, socket_path) + yield socket_path +- tasks = asyncio.all_tasks(event_loop) +- +- async def close_all(): +- server.close() +- await server.wait_closed() +- if tasks: +- await asyncio.wait(tasks) +- event_loop.run_until_complete(close_all()) ++ server.close() ++ await server.wait_closed() + + + class TestUSTransport: +diff --git a/tests/test_util.py b/tests/test_util.py +index 8ce9691..5980607 100755 +--- a/tests/test_util.py ++++ b/tests/test_util.py +@@ -15,6 +15,7 @@ async def coro(x, y): + + + def test_is_async_call(): ++ event_loop = asyncio.new_event_loop() + z = coro(2, 3) + assert not is_async_call(z) + assert is_async_call(coro) +@@ -23,7 +24,7 @@ def test_is_async_call(): + assert not is_async_call(test_is_async_call) + assert not is_async_call(partial(is_async_call)) + # Lose a warning +- asyncio.get_event_loop().run_until_complete(z) ++ event_loop.run_until_complete(z) + + + @pytest.mark.parametrize("hostname,answer", ( diff --git a/dev-python/aiorpcx/metadata.xml b/dev-python/aiorpcx/metadata.xml new file mode 100644 index 000000000000..5e95859f915a --- /dev/null +++ b/dev-python/aiorpcx/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + <name>Python</name> + </maintainer> + <stabilize-allarches /> + <origin>baldeagleos-repo</origin> +</pkgmetadata> |
