diff --git a/dev-python/pynng/Manifest b/dev-python/pynng/Manifest new file mode 100644 index 0000000000..ad65ff108c --- /dev/null +++ b/dev-python/pynng/Manifest @@ -0,0 +1 @@ +DIST pynng-0.8.1.tar.gz 6364925 BLAKE2B ae10e9155997474634ca7cf6e1ff01572f877dc8157aea069e11866b29fe92a2ee8343fd1512fad57f25e5c4cbf7297c784ab9fcdc7c262aba889cd65595775d SHA512 b150a83b65169aa67aaf99d963ae43ede29ccf22f1ddc9989a0d999f32dd93412bbf464ad0c3eed7aa645e0f5e2726743d131e48276955dad034e219b23c93c4 diff --git a/dev-python/pynng/metadata.xml b/dev-python/pynng/metadata.xml new file mode 100644 index 0000000000..7ddd70337d --- /dev/null +++ b/dev-python/pynng/metadata.xml @@ -0,0 +1,26 @@ + + + + + vowstar@gmail.com + Huang Rui + + + codypiersall/pynng + pynng + https://github.com/codypiersall/pynng/issues + + + pynng provides ergonomic Python bindings for nanomsg next generation (nng), + a lightweight messaging library. It enables inter-process communication + across single computers or networks using various messaging patterns + including Pair, Pub/Sub, Surveyor/Respondent, Req/Rep, and Push/Pull. + The library supports async frameworks like trio, curio, and asyncio. + + + pynng为nanomsg下一代(nng)轻量级消息库提供符合人体工程学的Python绑定。 + 它支持在单台计算机或网络上进行进程间通信,使用多种消息模式,包括Pair(配对)、 + Pub/Sub(发布/订阅)、Surveyor/Respondent(调查者/响应者)、Req/Rep(请求/回复) + 和Push/Pull(推/拉)。该库支持trio、curio和asyncio等异步框架。 + + diff --git a/dev-python/pynng/pynng-0.8.1.ebuild b/dev-python/pynng/pynng-0.8.1.ebuild new file mode 100644 index 0000000000..1cd3bb3da7 --- /dev/null +++ b/dev-python/pynng/pynng-0.8.1.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..14} ) +inherit distutils-r1 pypi + +DESCRIPTION="Ergonomic bindings for nanomsg next generation (nng) in Python" +HOMEPAGE="https://github.com/codypiersall/pynng https://pypi.org/project/pynng" + +LICENSE="MIT" +SLOT=0 +KEYWORDS="~amd64" + +DEPEND="dev-libs/nng" +RDEPEND=" + ${DEPEND} + dev-python/cffi[${PYTHON_USEDEP}] + dev-python/sniffio[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/cffi[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/pytest-trio[${PYTHON_USEDEP}] + dev-python/sniffio[${PYTHON_USEDEP}] + dev-python/trio[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + # Remove source pynng directory to avoid import conflicts + # Tests must run against the installed C extension module + rm -rf pynng || die + epytest +}