mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-06 02:17:34 -08:00
dev-python/pyqtgraph: Bump to 0.14.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
parent
e7ee0b4a9f
commit
6267e6350c
@ -1 +1,2 @@
|
||||
DIST pyqtgraph-0.13.7.gh.tar.gz 2364456 BLAKE2B 3ce1a3eb177a2a6328f1b7354bf9d4a87ffedcf4fa75fa407bd2df708b91fe98e2500364220ac7395745c69ac86f4830ea58999d05af49850edc723a6ccad5a1 SHA512 91e06e143fec4b1a6fae5cc7112a1fb6b7e74c7a38605172aacc5639eb220e30c54694e419313c7bb8368ea5c5f45f41d58e4510735e63a7d6ef03cdbb0f05e9
|
||||
DIST pyqtgraph-0.14.0.gh.tar.gz 2397130 BLAKE2B 51cec6093e1061a62f8db1ba431a43a8fc4831c5b7e07c8c88bdf3bdcf615589375c2fae5927ca027ce0b77529b49ad232a60a2751948e8fe100fcddaff9805a SHA512 f9c973d5dbfd79ef34652a5eb8eadbc1b0215aa1c30773e5c58148bae6a6d79d3e21a904b1a6dd8ff6eb7fe15debf6c1d45c8a9cce96cbcc60495bc9814259f7
|
||||
|
||||
167
dev-python/pyqtgraph/pyqtgraph-0.14.0.ebuild
Normal file
167
dev-python/pyqtgraph/pyqtgraph-0.14.0.ebuild
Normal file
@ -0,0 +1,167 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{11..13} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A pure-python graphics and GUI library built on PyQt and numpy"
|
||||
HOMEPAGE="
|
||||
https://www.pyqtgraph.org/
|
||||
https://github.com/pyqtgraph/pyqtgraph/
|
||||
https://pypi.org/project/pyqtgraph/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/pyqtgraph/pyqtgraph/archive/${P}.tar.gz
|
||||
-> ${P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
|
||||
IUSE="opengl svg qt5 +qt6"
|
||||
REQUIRED_USE="test? ( opengl svg ) || ( qt5 qt6 )"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
>=dev-python/numpy-1.22[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]
|
||||
opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] )
|
||||
qt5? ( dev-python/pyqt5[gui,widgets,opengl=,svg=,${PYTHON_USEDEP}] )
|
||||
qt6? ( dev-python/pyqt6[gui,widgets,opengl=,svg=,${PYTHON_USEDEP}] )
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/h5py[${PYTHON_USEDEP}]
|
||||
qt5? ( dev-python/pyqt5[testlib,${PYTHON_USEDEP}] )
|
||||
qt6? ( dev-python/pyqt6[testlib,${PYTHON_USEDEP}] )
|
||||
dev-vcs/git
|
||||
)
|
||||
sys-apps/gawk
|
||||
"
|
||||
|
||||
EPYTEST_PLUGINS=( pytest-xvfb )
|
||||
EPYTEST_XDIST=1
|
||||
distutils_enable_tests pytest
|
||||
|
||||
EPYTEST_DESELECT=(
|
||||
# apparently fragile
|
||||
tests/test_reload.py::test_reload
|
||||
|
||||
# TODO
|
||||
tests/exporters/test_svg.py::test_plotscene
|
||||
tests/graphicsItems/test_ROI.py::test_PolyLineROI
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
||||
distutils-r1_python_prepare_all
|
||||
|
||||
if ! use opengl; then
|
||||
rm -r pyqtgraph/opengl || die
|
||||
fi
|
||||
|
||||
# pyqtgraph will automatically use any QT bindings it finds,
|
||||
# patch the supported Qt versions to only include the ones we have enabled
|
||||
# This can be simplified to:
|
||||
# `sed 's/QT_LIB = os.getenv('PYQTGRAPH_QT_LIB')/'QT_LIB = "PyQt6"/' -i pyqtgraph/Qt/__init__.py`
|
||||
# when we only need to support pyqt6.
|
||||
local upstream_supported_qt=(
|
||||
PySide{,2,6}
|
||||
PyQt{4,5,6}
|
||||
)
|
||||
local gentoo_qt=()
|
||||
local is_supported_impl use_qt qt
|
||||
# pyqtgraph has conditionals that depend on these values; we can't just remove them.
|
||||
# set deselected or unsupported to None to avoid more patching
|
||||
for qt in "${upstream_supported_qt[@]}"; do
|
||||
is_supported_impl=0
|
||||
case ${qt} in
|
||||
PyQt5) is_supported_impl=1; use_qt=${qt:2} ;;
|
||||
PyQt6) is_supported_impl=1; use_qt=${qt:2} ;;
|
||||
esac
|
||||
if [[ "${is_supported_impl}" -eq 0 ]]; then
|
||||
gentoo_qt+=( "${qt^^} = None" )
|
||||
continue
|
||||
fi
|
||||
if use ${use_qt,,}; then
|
||||
gentoo_qt+=( "${qt^^} = '${qt}'" )
|
||||
else
|
||||
gentoo_qt+=( "${qt^^} = None" )
|
||||
fi
|
||||
done
|
||||
|
||||
gawk -v qt_string="$(printf "%s\n" "${gentoo_qt[@]}")" -i inplace '
|
||||
BEGIN {
|
||||
i = 0
|
||||
split(qt_string, qt_array, "\n")
|
||||
j = 1
|
||||
}
|
||||
/PYSIDE = '"'"'PySide'"'"'/ {
|
||||
i = 6 # length of upstream_supported_qt
|
||||
for (k = 1; k <= length(qt_array); k++) {
|
||||
print qt_array[k]
|
||||
j++
|
||||
}
|
||||
}
|
||||
i > 0 {
|
||||
i--
|
||||
next
|
||||
}
|
||||
{ print }
|
||||
' pyqtgraph/Qt/__init__.py || die "Failed to patch supported Qt versions"
|
||||
|
||||
# We also need to remove them from load order.
|
||||
local liborder=()
|
||||
local qt
|
||||
# The order is important (we want to prefer the newest at runtime)
|
||||
for qt in qt6 qt5; do
|
||||
if use ${qt}; then
|
||||
liborder+=( "PY${qt^^}" )
|
||||
fi
|
||||
done
|
||||
|
||||
gawk -v libOrder="$(printf "%s, " "${liborder[@]}")" -i inplace '
|
||||
BEGIN {
|
||||
libOrder = "[" substr(libOrder, 1, length(libOrder) - 2) "]"
|
||||
}
|
||||
/libOrder = \[PYQT6, PYSIDE6, PYQT5, PYSIDE2\]/ {
|
||||
sub(/\[PYQT6, PYSIDE6, PYQT5, PYSIDE2\]/, libOrder)
|
||||
}
|
||||
{ print }
|
||||
' pyqtgraph/Qt/__init__.py || die "Failed to patch qt version order"
|
||||
|
||||
# Finally update the list of supported frontends in test to never try unsupported or deselected
|
||||
if use test; then
|
||||
local frontends=()
|
||||
for qt in qt5 qt6; do
|
||||
if use ${qt}; then
|
||||
frontends+=( "Qt.PY${qt^^}: False," )
|
||||
fi
|
||||
done
|
||||
gawk -v frontends="$(printf "%s\n" "${frontends[@]}")" -i inplace '
|
||||
BEGIN {
|
||||
i = 0
|
||||
split(frontends, frontend_array, "\n")
|
||||
j = 1
|
||||
}
|
||||
/frontends = {/ {
|
||||
i = 6 # length of frontends
|
||||
|
||||
print "frontends = {"
|
||||
for (k = 1; k <= length(frontend_array); k++) {
|
||||
print " " frontend_array[k]
|
||||
}
|
||||
print "}"
|
||||
}
|
||||
i > 0 {
|
||||
i--
|
||||
next
|
||||
}
|
||||
{ print }
|
||||
' pyqtgraph/examples/test_examples.py || die "Failed to patch test frontends"
|
||||
fi
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user