summaryrefslogtreecommitdiff
path: root/dev-python/pyzmq
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-05-27 09:11:36 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-05-27 09:11:36 +0100
commite67c9b35124c5b3338943cf7793fe4402f03ad0f (patch)
treeae666570705e3bb470ce37171e065978b46063f5 /dev-python/pyzmq
parent9e68aee0e16e4b361fe06f9566c74b4bb2a22a27 (diff)
gentoo auto-resync : 27:05:2023 - 09:11:36
Diffstat (limited to 'dev-python/pyzmq')
-rw-r--r--dev-python/pyzmq/Manifest3
-rw-r--r--dev-python/pyzmq/files/pyzmq-25.1.0-build_ext.patch50
-rw-r--r--dev-python/pyzmq/pyzmq-25.1.0.ebuild89
3 files changed, 142 insertions, 0 deletions
diff --git a/dev-python/pyzmq/Manifest b/dev-python/pyzmq/Manifest
index a609bd2cc110..2e686e7b36a5 100644
--- a/dev-python/pyzmq/Manifest
+++ b/dev-python/pyzmq/Manifest
@@ -1,4 +1,7 @@
AUX pyzmq-23.2.0-libdir.patch 510 BLAKE2B cb7884416d3e15f735412d69a7ae0decbbf8eca14ae909b23e68231a65b3ad36d021b5c6f5315a3cb982cd571913ce021cc5df60509d90b28d4353dd7bd316e8 SHA512 f268d03de45971d50a89210366b4aef0e79e652a45d650fc3e4a6711558ee186ee558a2808b7c9f5c5a64ce8b9282adf024ab21a782ba614900a4813e8b6d6ca
+AUX pyzmq-25.1.0-build_ext.patch 1762 BLAKE2B 2d0a382183dc764a55862e034be6f57690234c5d5279bf9b782d0fc0fca8b7aacb44626459d3950427cade4713524f4e3333223b9db470a3ad0ba30525136a1e SHA512 285623c14dc11c4b07a66dd2b64f524133a92c084db185770df3c3658cb5b4f31e85348036427629ef1daa44aeed99d4e8bfe2cefa994f70f47b059c2bc0a166
DIST pyzmq-25.0.2.gh.tar.gz 398050 BLAKE2B 501aea8b46ef5c06ca75489869047b2e6aefd06d121b540fdfc85c45ea2f9a40b58b84433555d8001fbfb1671ad6df1953c79567aabc8cffba26516a4a60626c SHA512 dcba8fb561d1be135ba03e28078ed68835dc20a52ef9c47be240bd1edd37eb92d4da184045e8eff666f3d84a376ae35ca08172fc207823b5255160e9e3b1ef01
+DIST pyzmq-25.1.0.gh.tar.gz 399044 BLAKE2B c5507819844f174fcc5245fd89e6bff231ddc99add2c431a77a73955ce5e874f7387727380dee6a0618842762ed19a867699efed69c7997d5d4bcca480e30c44 SHA512 5a2a80162da4d1eb34cc13bc831cf01b98a1cfb62dd0595b81e47e77d752ecd59110fd447e5a936f74239253073fc5ceb6451e924928cd2c472e2ac61d26a78c
EBUILD pyzmq-25.0.2.ebuild 2228 BLAKE2B b27e68cc020f21d5177808b7955c3fb7519e0b02afd1ae9c33367370514af6c22443afc0974e4aa8d6dbb0e05dc3e8f00651d4be0c41889ca63fc87a64114600 SHA512 cdbb12f1cfc48606c559f4dae613f6f1ad2f5367e68b8aea1bfb22bf50708edcdeb9e7e36ebd7ad455540eeb820db9f85b063c79d858fc9d245a279c6dc343f5
+EBUILD pyzmq-25.1.0.ebuild 2259 BLAKE2B 9844cb6ed750f37e63db92813a786c8e38e0afe2a209df00ecc514ca5e9dccb03cbf278f7c8031fdbcab4784d97c4e489a85aa485a7bf4f7ab9ec5851d7d3d4a SHA512 f277e7fea1978e0a4cbcabe480fa937e2aab9dddcd8a1ea42e964b0bcb40ea7fd7c9524ed7242115ecaa0b83e3e29cadd468da3fba2851409527127c28e12ace
MISC metadata.xml 549 BLAKE2B 46a9a1476f68f05c71bb4f849a9e0822c58142ac036da635454f57781dcea81687accfbf9563273d4f8672a8479b098c9f03cec64e5e7f456e50ad8c7ffba9d3 SHA512 3765c31f1b0048a60d5ccf90aa1fa5416c92addb7b01c62e529419e53a4e29746d0e4434d4d4fbd5918413e7521144c8758cdef9eacf5298108c2287783908c1
diff --git a/dev-python/pyzmq/files/pyzmq-25.1.0-build_ext.patch b/dev-python/pyzmq/files/pyzmq-25.1.0-build_ext.patch
new file mode 100644
index 000000000000..491ae6b23ea4
--- /dev/null
+++ b/dev-python/pyzmq/files/pyzmq-25.1.0-build_ext.patch
@@ -0,0 +1,50 @@
+From 24d65e10bee5b68751dc36e2ee7e6d6ed35751e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 27 May 2023 07:11:24 +0200
+Subject: [PATCH] =?UTF-8?q?Call=20distutils'=20finalize=5Foptions()=20earl?=
+ =?UTF-8?q?y=20to=20fix=20build=5Fext=20-j=E2=80=A6?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Call the `finalize_options()` method of overridden distutils commands
+before running the `configure` command, in order to fix errors due
+to unconfigured `--jobs` option. This can be reproduced by running:
+
+ $ python setup.py build_ext -j12
+ […]
+ error: '<' not supported between instances of 'str' and 'int'
+
+ Fatal: Falling back on bundled libzmq, but config has explicitly prohibited building the libzmq extension.
+---
+ setup.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index c52723d1..a4f8b4e3 100755
+--- a/setup.py
++++ b/setup.py
+@@ -1107,9 +1107,9 @@ class CheckingBuildExt(build_ext):
+ patch_lib_paths(ext_path, self.compiler.library_dirs)
+
+ def finalize_options(self):
++ super().finalize_options()
+ # check version, to prevent confusing undefined constant errors
+ self.distribution.run_command("configure")
+- return super().finalize_options()
+
+
+ class ConstantsCommand(Command):
+@@ -1258,8 +1258,8 @@ else:
+ patch_lib_paths(ext_path, self.compiler.library_dirs)
+
+ def finalize_options(self):
++ super().finalize_options()
+ self.distribution.run_command("configure")
+- return super().finalize_options()
+
+ cmdclass["cython"] = CythonCommand
+ cmdclass["build_ext"] = zbuild_ext
+--
+2.40.1
+
diff --git a/dev-python/pyzmq/pyzmq-25.1.0.ebuild b/dev-python/pyzmq/pyzmq-25.1.0.ebuild
new file mode 100644
index 000000000000..2a5adc9d8913
--- /dev/null
+++ b/dev-python/pyzmq/pyzmq-25.1.0.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+# TODO: Find out exactly where this error comes from
+# error: '<' not supported between instances of 'str' and 'int'
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Lightweight and super-fast messaging library built on top of the ZeroMQ library"
+HOMEPAGE="
+ https://zeromq.org/languages/python/
+ https://pypi.org/project/pyzmq/
+ https://github.com/zeromq/pyzmq/
+"
+SRC_URI="
+ https://github.com/zeromq/pyzmq/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="drafts"
+
+# There are additional test failures if zeromq has the draft api enabled, but pyzmq has it disabled.
+DEPEND="
+ >=net-libs/zeromq-4.2.2-r2:=[drafts=]
+"
+# It uses cffi backend for pypy, cython backend for cpython
+RDEPEND="${DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/py[${PYTHON_USEDEP}]
+ dev-python/cffi:=[${PYTHON_USEDEP}]
+ ' pypy3)
+"
+BDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ ' 'python*')
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ >=dev-python/tornado-5.0.2[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-23.2.0-libdir.patch
+ # fix build_ext -j... invocation used by PEP517 build
+ # https://github.com/zeromq/pyzmq/pull/1872
+ "${FILESDIR}"/${P}-build_ext.patch
+)
+
+EPYTEST_DESELECT=(
+ # TODO
+ zmq/tests/test_auth.py
+ zmq/tests/test_cython.py
+ zmq/tests/test_zmqstream.py
+)
+
+EPYTEST_IGNORE=(
+ # Avoid dependency on mypy
+ zmq/tests/test_mypy.py
+)
+
+distutils_enable_tests pytest
+# TODO: Package enum_tools
+# distutils_enable_sphinx docs/source \
+# dev-python/numpydoc \
+# dev-python/sphinx-rtd-theme \
+# dev-python/myst-parser
+
+python_prepare_all() {
+ export ZMQ_DRAFT_API=$(usex drafts '1' '0')
+ export ZMQ_PREFIX="${EPREFIX}/usr"
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ epytest -p asyncio -p rerunfailures
+}