mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-02 23:48:17 -07:00
Merge updates from master
This commit is contained in:
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 arm ~arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="doc test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
|
||||
@@ -116,7 +116,6 @@ src_prepare() {
|
||||
|
||||
python_compile() {
|
||||
local DISTUTILS_USE_PEP517=$(usex rust maturin setuptools)
|
||||
local DISTUTILS_UPSTREAM_PEP517=${DISTUTILS_USE_PEP517}
|
||||
|
||||
if ! use rust; then
|
||||
cd c_impl || die
|
||||
|
||||
@@ -21,7 +21,7 @@ SRC_URI="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
DIST plotly.py-5.24.1.gh.tar.gz 32096988 BLAKE2B 79c1f3350bb43780f5f5f2f54955591875c2819a4b819e667e8df14ae72e42cf2939167a3425bd725e80af8823c8578a9cf286f4e4d82881578ca13f7e1cd860 SHA512 dc1484f5b0630bd4d936ab23231be7a577b887701f1f3c33d8f6501dc65718d871bee7af9f467fe130d2e7dcdded22717562352ce4ec70d25bc368faeb51d0e8
|
||||
DIST plotly.py-6.0.1.gh.tar.gz 7619570 BLAKE2B 6c88b24d15aa233e1d3871975d224bd9829f1726beba665bc68a2d1af293361774b10a9d4a95ce2c5c53afe7ac01f7770809fbfbab3733ff31531233905c97f1 SHA512 192d5ea5e5d75548d9fbacc36d419b695d5e976ab0e2e538b1453c89ba3b1b0494abc4631d0d631cd6fe60a74b4a67937173564f9661aa408ffc1fc0bfac2559
|
||||
|
||||
@@ -1,87 +0,0 @@
|
||||
From 99df182e9171e9b9e81811447f37ace05acc9272 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Greiner <code@bnavigator.de>
|
||||
Date: Sun, 2 Jun 2024 16:43:06 +0200
|
||||
Subject: [PATCH 1/3] Remove np.nan and np.inf aliases no longer present in
|
||||
numpy2
|
||||
|
||||
---
|
||||
.../tests/test_optional/test_utils/test_utils.py | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/plotly/tests/test_optional/test_utils/test_utils.py b/plotly/tests/test_optional/test_utils/test_utils.py
|
||||
index cf32e1bdff..d7d982e635 100644
|
||||
--- a/plotly/tests/test_optional/test_utils/test_utils.py
|
||||
+++ b/plotly/tests/test_optional/test_utils/test_utils.py
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
## JSON encoding
|
||||
numeric_list = [1, 2, 3]
|
||||
-np_list = np.array([1, 2, 3, np.NaN, np.NAN, np.Inf, dt(2014, 1, 5)])
|
||||
+np_list = np.array([1, 2, 3, np.nan, np.inf, dt(2014, 1, 5)])
|
||||
mixed_list = [
|
||||
1,
|
||||
"A",
|
||||
@@ -45,7 +45,7 @@
|
||||
dt_list = [dt(2014, 1, 5), dt(2014, 1, 5, 1, 1, 1), dt(2014, 1, 5, 1, 1, 1, 1)]
|
||||
|
||||
df = pd.DataFrame(
|
||||
- columns=["col 1"], data=[1, 2, 3, dt(2014, 1, 5), pd.NaT, np.NaN, np.Inf]
|
||||
+ columns=["col 1"], data=[1, 2, 3, dt(2014, 1, 5), pd.NaT, np.nan, np.inf]
|
||||
)
|
||||
|
||||
rng = pd.date_range("1/1/2011", periods=2, freq="H")
|
||||
@@ -184,7 +184,7 @@ def test_figure_json_encoding(self):
|
||||
|
||||
assert (
|
||||
js1 == '{"type": "scatter3d", "x": [1, 2, 3], '
|
||||
- '"y": [1, 2, 3, null, null, null, "2014-01-05T00:00:00"], '
|
||||
+ '"y": [1, 2, 3, null, null, "2014-01-05T00:00:00"], '
|
||||
'"z": [1, "A", "2014-01-05T00:00:00", '
|
||||
'"2014-01-05T01:01:01", "2014-01-05T01:01:01.000001"]}'
|
||||
)
|
||||
@@ -195,9 +195,9 @@ def test_figure_json_encoding(self):
|
||||
_json.dumps(figure, cls=utils.PlotlyJSONEncoder, sort_keys=True)
|
||||
|
||||
# Test data wasn't mutated
|
||||
- np_array = np.array([1, 2, 3, np.NaN, np.NAN, np.Inf, dt(2014, 1, 5)])
|
||||
+ np_array = np.array([1, 2, 3, np.nan, np.inf, dt(2014, 1, 5)])
|
||||
for k in range(len(np_array)):
|
||||
- if k in [3, 4]:
|
||||
+ if k == 3:
|
||||
# check NaN
|
||||
assert np.isnan(np_list[k]) and np.isnan(np_array[k])
|
||||
else:
|
||||
@@ -237,7 +237,7 @@ def test_pandas_json_encoding(self):
|
||||
# Test that data wasn't mutated
|
||||
assert_series_equal(
|
||||
df["col 1"],
|
||||
- pd.Series([1, 2, 3, dt(2014, 1, 5), pd.NaT, np.NaN, np.Inf], name="col 1"),
|
||||
+ pd.Series([1, 2, 3, dt(2014, 1, 5), pd.NaT, np.nan, np.inf], name="col 1"),
|
||||
)
|
||||
|
||||
j2 = _json.dumps(df.index, cls=utils.PlotlyJSONEncoder)
|
||||
|
||||
From 23b50d9df805349674e11949459976fb338b3d76 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Greiner <code@bnavigator.de>
|
||||
Date: Sun, 2 Jun 2024 16:48:34 +0200
|
||||
Subject: [PATCH 2/3] Avoid putting 255 into int8 due to new numpy 2 type
|
||||
promotion rules
|
||||
|
||||
---
|
||||
.../plotly/plotly/tests/test_optional/test_px/test_imshow.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plotly/tests/test_optional/test_px/test_imshow.py b/plotly/tests/test_optional/test_px/test_imshow.py
|
||||
index c2e863c846..d8f9ad98c7 100644
|
||||
--- a/plotly/tests/test_optional/test_px/test_imshow.py
|
||||
+++ b/plotly/tests/test_optional/test_px/test_imshow.py
|
||||
@@ -341,7 +341,7 @@ def test_imshow_source_dtype_zmax(dtype, contrast_rescaling):
|
||||
assert (
|
||||
np.abs(
|
||||
np.max(decode_image_string(fig.data[0].source))
|
||||
- - 255 * img.max() / np.iinfo(dtype).max
|
||||
+ - np.int64(255) * img.max() / np.iinfo(dtype).max
|
||||
)
|
||||
< 1
|
||||
)
|
||||
|
||||
@@ -1,119 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_P=plotly.py-${PV}
|
||||
DESCRIPTION="Browser-based graphing library for Python"
|
||||
HOMEPAGE="
|
||||
https://plotly.com/python/
|
||||
https://github.com/plotly/plotly.py/
|
||||
https://pypi.org/project/plotly/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/plotly/plotly.py/archive/refs/tags/v${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S="${WORKDIR}/${MY_P}/packages/python/plotly"
|
||||
# The tests are not included in the PyPI tarball, to use the GitHub tarball
|
||||
# we have to skip npm, which means that the resulting install will
|
||||
# unfortunately lack the jupyterlab extension.
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
>=dev-python/tenacity-6.2.0[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/versioneer[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
dev-python/ipykernel[${PYTHON_USEDEP}]
|
||||
dev-python/ipython[${PYTHON_USEDEP}]
|
||||
dev-python/ipywidgets[${PYTHON_USEDEP}]
|
||||
dev-python/jupyter[${PYTHON_USEDEP}]
|
||||
dev-python/jupyterlab[${PYTHON_USEDEP}]
|
||||
dev-python/matplotlib[${PYTHON_USEDEP}]
|
||||
dev-python/numpy[${PYTHON_USEDEP}]
|
||||
dev-python/pandas[${PYTHON_USEDEP}]
|
||||
dev-python/pillow[${PYTHON_USEDEP}]
|
||||
dev-python/psutil[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
dev-python/pytz[${PYTHON_USEDEP}]
|
||||
dev-python/scipy[${PYTHON_USEDEP}]
|
||||
dev-python/shapely[${PYTHON_USEDEP}]
|
||||
dev-python/statsmodels[${PYTHON_USEDEP}]
|
||||
dev-python/xarray[${PYTHON_USEDEP}]
|
||||
dev-python/scikit-image[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
# There are sphinx docs but we are missing a bunch of dependencies.
|
||||
# distutils_enable_sphinx ../../../doc/apidoc
|
||||
distutils_enable_tests pytest
|
||||
|
||||
# README ends up a broken symlink
|
||||
DOCS=()
|
||||
|
||||
python_prepare_all() {
|
||||
local PATCHES=(
|
||||
# https://github.com/plotly/plotly.py/pull/4622
|
||||
"${FILESDIR}/${PN}-5.23.0-numpy-2.patch"
|
||||
)
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
|
||||
# unbundle versioneer
|
||||
rm versioneer.py || die
|
||||
# Do not try to fetch stuff with npm
|
||||
export SKIP_NPM=1
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_IGNORE=(
|
||||
# kaleido not packaged
|
||||
plotly/tests/test_optional/test_kaleido
|
||||
|
||||
# plotly-orca not packaged
|
||||
plotly/tests/test_orca
|
||||
)
|
||||
|
||||
local EPYTEST_DESELECT=(
|
||||
# kaleido not packaged
|
||||
plotly/tests/test_orca/test_to_image.py::test_bytesio
|
||||
|
||||
# fails in non-isolated env
|
||||
test_init/test_dependencies_not_imported.py::test_dependencies_not_imported
|
||||
test_init/test_lazy_imports.py::test_lazy_imports
|
||||
|
||||
# Minor matplotlib incompatibility
|
||||
plotly/matplotlylib/mplexporter/tests/test_basic.py::test_legend_dots
|
||||
plotly/matplotlylib/mplexporter/tests/test_utils.py::test_linestyle
|
||||
|
||||
# TODO
|
||||
plotly/tests/test_io/test_to_from_plotly_json.py::test_sanitize_json
|
||||
|
||||
# two subtests that require 'vaex' and 'polars' respectively
|
||||
plotly/tests/test_optional/test_px/test_px_input.py::test_build_df_from_vaex_and_polars
|
||||
plotly/tests/test_optional/test_px/test_px_input.py::test_build_df_with_hover_data_from_vaex_and_polars
|
||||
|
||||
# the usual recursion problem
|
||||
plotly/tests/test_optional/test_utils/test_utils.py::test_masked_constants_example
|
||||
)
|
||||
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
epytest
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
mv "${ED}"/{usr/etc,etc} || die
|
||||
}
|
||||
@@ -26,7 +26,7 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/narwhals-1.15.1[${PYTHON_USEDEP}]
|
||||
|
||||
@@ -62,7 +62,6 @@ python_compile() {
|
||||
|
||||
if use native-extensions; then
|
||||
local DISTUTILS_USE_PEP517=maturin
|
||||
local DISTUTILS_UPSTREAM_PEP517=maturin
|
||||
cd sqlglotrs || die
|
||||
distutils-r1_python_compile
|
||||
cd - >/dev/null || die
|
||||
|
||||
@@ -154,10 +154,11 @@
|
||||
# will be merged into ${D}.
|
||||
|
||||
# @ECLASS_VARIABLE: DISTUTILS_UPSTREAM_PEP517
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# Specifies the PEP517 build backend used upstream. It is used
|
||||
# by the eclass to verify the correctness of DISTUTILS_USE_PEP517,
|
||||
# and matches DISTUTILS_USE_PEP517 by default. However, it can be
|
||||
# and defaults to ${DISTUTILS_USE_PEP517}. However, it can be
|
||||
# overriden to workaround the eclass check, when it is desirable
|
||||
# to build the wheel using other backend than the one used upstream.
|
||||
#
|
||||
@@ -165,7 +166,6 @@
|
||||
# be subtle differences between the behavior of different PEP517 build
|
||||
# backends, for example regarding finding package files. When using
|
||||
# this option, please make sure that the package is installed correctly.
|
||||
: "${DISTUTILS_UPSTREAM_PEP517:=${DISTUTILS_USE_PEP517}}"
|
||||
|
||||
# @ECLASS_VARIABLE: DISTUTILS_USE_SETUPTOOLS
|
||||
# @DEFAULT_UNSET
|
||||
@@ -322,7 +322,7 @@ _distutils_set_globals() {
|
||||
;;
|
||||
setuptools)
|
||||
bdep+='
|
||||
>=dev-python/setuptools-75.8.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/setuptools-78.1.0[${PYTHON_USEDEP}]
|
||||
'
|
||||
;;
|
||||
sip)
|
||||
@@ -347,7 +347,7 @@ _distutils_set_globals() {
|
||||
eqawarn "is enabled."
|
||||
fi
|
||||
else
|
||||
local setuptools_dep='>=dev-python/setuptools-75.8.2[${PYTHON_USEDEP}]'
|
||||
local setuptools_dep='>=dev-python/setuptools-78.1.0[${PYTHON_USEDEP}]'
|
||||
|
||||
case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in
|
||||
no|manual)
|
||||
@@ -388,6 +388,11 @@ _distutils_set_globals() {
|
||||
DISTUTILS_DEPS=${bdep}
|
||||
readonly DISTUTILS_DEPS
|
||||
fi
|
||||
else
|
||||
eqawarn "distutils-r1.eclass legacy mode is deprecated and will be removed."
|
||||
eqawarn "Please migrate your ebuilds to use DISTUTILS_USE_PEP517 (common values"
|
||||
eqawarn "are 'setuptools' for packages using setuptools/distutils,"
|
||||
eqawarn "and 'no' for packages using non-PEP517 build systems)."
|
||||
fi
|
||||
|
||||
if [[ ! ${DISTUTILS_OPTIONAL} ]]; then
|
||||
@@ -599,7 +604,7 @@ distutils_enable_sphinx() {
|
||||
#
|
||||
# - pytest: dev-python/pytest
|
||||
#
|
||||
# - setup.py: setup.py test (no deps included)
|
||||
# - setup.py: setup.py test (no deps included; deprecated)
|
||||
#
|
||||
# - unittest: for built-in Python unittest module
|
||||
#
|
||||
@@ -645,14 +650,10 @@ distutils_enable_tests() {
|
||||
fi
|
||||
;;
|
||||
setup.py)
|
||||
eqawarn "'distutils_enable_tests setup.py' is deprecated and will be removed."
|
||||
eqawarn "Please use unittest or pytest instead."
|
||||
;;
|
||||
unittest)
|
||||
# unittest-or-fail is needed in py<3.12
|
||||
local test_pkgs="$(python_gen_cond_dep '
|
||||
dev-python/unittest-or-fail[${PYTHON_USEDEP}]
|
||||
' 3.10 3.11
|
||||
)"
|
||||
[[ -n ${test_pkgs} ]] && test_deps+=" ${test_pkgs}"
|
||||
;;
|
||||
*)
|
||||
die "${FUNCNAME}: unsupported argument: ${1}"
|
||||
@@ -981,15 +982,6 @@ distutils-r1_python_prepare_all() {
|
||||
if [[ ! ${DISTUTILS_USE_PEP517} ]]; then
|
||||
_distutils-r1_disable_ez_setup
|
||||
_distutils-r1_handle_pyproject_toml
|
||||
|
||||
case ${DISTUTILS_USE_SETUPTOOLS} in
|
||||
no)
|
||||
eqawarn "Non-PEP517 builds are deprecated for ebuilds using plain distutils."
|
||||
eqawarn "Please migrate to DISTUTILS_USE_PEP517=setuptools."
|
||||
eqawarn "Please see Python Guide for more details:"
|
||||
eqawarn " https://projects.gentoo.org/python/guide/distutils.html"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [[ ${DISTUTILS_IN_SOURCE_BUILD} && ! ${DISTUTILS_SINGLE_IMPL} ]]
|
||||
@@ -1164,7 +1156,10 @@ _distutils-r1_get_backend() {
|
||||
fi
|
||||
|
||||
# verify that the ebuild correctly specifies the build backend
|
||||
local expected_backend=$(_distutils-r1_key_to_backend "${DISTUTILS_UPSTREAM_PEP517}")
|
||||
local expected_backend=$(
|
||||
_distutils-r1_key_to_backend \
|
||||
"${DISTUTILS_UPSTREAM_PEP517:-${DISTUTILS_USE_PEP517}}"
|
||||
)
|
||||
if [[ ${expected_backend} != ${build_backend} ]]; then
|
||||
# special-case deprecated backends
|
||||
case ${build_backend} in
|
||||
|
||||
@@ -1481,7 +1481,7 @@ epytest() {
|
||||
# @FUNCTION: eunittest
|
||||
# @USAGE: [<args>...]
|
||||
# @DESCRIPTION:
|
||||
# Run unit tests using dev-python/unittest-or-fail, passing the standard
|
||||
# Run unit tests using unittest, passing the standard
|
||||
# set of options, followed by user-specified options.
|
||||
#
|
||||
# This command dies on failure and respects nonfatal.
|
||||
@@ -1492,11 +1492,7 @@ eunittest() {
|
||||
_python_check_occluded_packages
|
||||
|
||||
# unittest fails with "no tests" correctly since Python 3.12
|
||||
local runner=unittest
|
||||
if _python_impl_matches "${EPYTHON}" 3.{9..11}; then
|
||||
runner=unittest_or_fail
|
||||
fi
|
||||
set -- "${EPYTHON}" -m "${runner}" discover -v "${@}"
|
||||
set -- "${EPYTHON}" -m unittest discover -v "${@}"
|
||||
|
||||
echo "${@}" >&2
|
||||
"${@}" || die -n "Tests failed with ${EPYTHON}"
|
||||
|
||||
Reference in New Issue
Block a user