You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.9 KiB
94 lines
2.9 KiB
# Copyright 1999-2020 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=7
|
|
|
|
PYTHON_COMPAT=( python3_{6..9} )
|
|
PYTHON_REQ_USE="threads(+)"
|
|
|
|
inherit flag-o-matic distutils-r1 toolchain-funcs
|
|
|
|
EGIT_COMMIT="dd4dac055152d47c829034224cdecf594c7b3f12"
|
|
DESCRIPTION="Lightweight and super-fast messaging library built on top of the ZeroMQ library"
|
|
HOMEPAGE="
|
|
https://www.zeromq.org/bindings:python
|
|
https://pypi.org/project/pyzmq/
|
|
https://github.com/zeromq/pyzmq/"
|
|
SRC_URI="
|
|
https://github.com/zeromq/pyzmq/archive/${EGIT_COMMIT}.tar.gz
|
|
-> ${P}.tar.gz"
|
|
S=${WORKDIR}/${PN}-${EGIT_COMMIT}
|
|
|
|
LICENSE="LGPL-3"
|
|
SLOT="0"
|
|
KEYWORDS="amd64 arm arm64 ~mips ~ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
|
IUSE="+draft"
|
|
|
|
DEPEND="
|
|
>=net-libs/zeromq-4.2.2-r2:=[drafts]
|
|
"
|
|
RDEPEND="${DEPEND}
|
|
dev-python/py[${PYTHON_USEDEP}]
|
|
dev-python/cffi:=[${PYTHON_USEDEP}]
|
|
"
|
|
BDEPEND="
|
|
dev-python/cython[${PYTHON_USEDEP}]
|
|
test? (
|
|
>=www-servers/tornado-5.0.2[${PYTHON_USEDEP}]
|
|
)
|
|
"
|
|
|
|
distutils_enable_tests pytest
|
|
distutils_enable_sphinx docs \
|
|
"dev-python/numpydoc"
|
|
|
|
python_configure_all() {
|
|
tc-export CC
|
|
append-cppflags -DZMQ_BUILD_DRAFT_API=$(usex draft '1' '0')
|
|
}
|
|
|
|
python_compile() {
|
|
esetup.py cython --force
|
|
distutils-r1_python_compile
|
|
}
|
|
|
|
python_test() {
|
|
local deselect=(
|
|
# lore says it sometimes hangs
|
|
zmq/tests/test_auth.py::TestThreadAuthentication::test_curve
|
|
|
|
# broken tests
|
|
zmq/tests/test_auth.py::TestThreadAuthentication::test_curve_user_id
|
|
zmq/tests/test_constants.py::TestConstants::test_draft
|
|
zmq/tests/test_context.py::TestContext::test_mockable
|
|
zmq/tests/test_draft.py::TestDraftSockets::test_client_server
|
|
zmq/tests/test_draft.py::TestDraftSockets::test_radio_dish
|
|
zmq/tests/test_message.py::TestFrame::test_buffer_numpy
|
|
zmq/tests/test_message.py::TestFrame::test_bytes
|
|
zmq/tests/test_message.py::TestFrame::test_frame_more
|
|
zmq/tests/test_message.py::TestFrame::test_lifecycle1
|
|
zmq/tests/test_message.py::TestFrame::test_lifecycle2
|
|
zmq/tests/test_message.py::TestFrame::test_memoryview_shape
|
|
zmq/tests/test_message.py::TestFrame::test_multi_tracker
|
|
zmq/tests/test_message.py::TestFrame::test_tracker
|
|
zmq/tests/test_security.py::TestSecurity::test_curve
|
|
zmq/tests/test_security.py::TestSecurity::test_plain
|
|
zmq/tests/test_socket.py::TestSocket::test_large_send
|
|
zmq/tests/test_socket.py::TestSocket::test_tracker
|
|
zmq/tests/test_socket.py::TestSocketGreen::test_large_send
|
|
|
|
# hanging tests
|
|
zmq/tests/test_socket.py::TestSocketGreen::test_tracker
|
|
zmq/tests/asyncio/test_asyncio.py::TestAsyncioAuthentication::test_blacklist
|
|
zmq/tests/asyncio/test_asyncio.py::TestAsyncioAuthentication::test_curve
|
|
zmq/tests/asyncio/test_asyncio.py::TestAsyncioAuthentication::test_plain
|
|
)
|
|
[[ ${EPYTHON} == python3.9 ]] && deselect+=(
|
|
# crashes python
|
|
zmq/tests/test_socket.py::TestSocketGreen
|
|
)
|
|
|
|
pytest -vv ${deselect[@]/#/--deselect } ||
|
|
die "Tests failed with ${EPYTHON}"
|
|
}
|