summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/xarray')
-rw-r--r--dev-python/xarray/Manifest7
-rw-r--r--dev-python/xarray/files/xarray-2024.1.1-pytest-8.patch77
-rw-r--r--dev-python/xarray/xarray-2022.12.0.ebuild45
-rw-r--r--dev-python/xarray/xarray-2023.2.0.ebuild44
-rw-r--r--dev-python/xarray/xarray-2023.3.0.ebuild45
-rw-r--r--dev-python/xarray/xarray-2024.1.1-r1.ebuild92
-rw-r--r--dev-python/xarray/xarray-2024.2.0-r1.ebuild92
-rw-r--r--dev-python/xarray/xarray-2024.3.0-r1.ebuild77
-rw-r--r--dev-python/xarray/xarray-2024.3.0.ebuild79
-rw-r--r--dev-python/xarray/xarray-2024.5.0.ebuild68
10 files changed, 489 insertions, 137 deletions
diff --git a/dev-python/xarray/Manifest b/dev-python/xarray/Manifest
index 4653706a1627..ae5a3981cb32 100644
--- a/dev-python/xarray/Manifest
+++ b/dev-python/xarray/Manifest
@@ -1,3 +1,4 @@
-DIST xarray-2022.12.0.tar.gz 3060755 BLAKE2B 449d21234436983b478a022cf5585236738014c6f783039442c3d51870b62a62c61eaada6eb9df5305ada3fd5cdc87bf0201ffae1c835ec7a731c06badb718a7 SHA512 9c5c692392b15711d57254006ebc92cdda08b92b663a577701f50c52253d736d78e2ad027777ad588ffa23d523394576f0cf226986b05b22816d3cec1ea8abb7
-DIST xarray-2023.2.0.tar.gz 3070514 BLAKE2B 00b08bb75878eed1aa82ac18ae5bc468d87812c90991f95b238048d53535dd884a943a068aec4114ba83c8e3cf1a37570b86ce5557fb33dc43f088a51916b92d SHA512 46b1e29e98a7c1bbe3275bc2fd39b0e5561319b4b9c6bf468c434880c9013c1dd9560b7281bd1b148ba8557cafe91ddf0ac56e5c038f1e995067ff1774162ab2
-DIST xarray-2023.3.0.tar.gz 3686167 BLAKE2B b9c2e04d0278e383aef17280e74863244d458324c01ac59a453e72196d65cad8fbca9f8f99a33b6db66637f742e04e5615fa8fc6eed307f0511954a856f8f3d2 SHA512 c08269e6fc8cdd3123dd7c39e0b85959bafdc53a5da75187fc615281fb71212bf2e45059f8d18fa05339567a4827e7bb68de3e605416929a6a1defdb4ed393e3
+DIST xarray-2024.03.0.gh.tar.gz 3722922 BLAKE2B 52025d8ba196500ac989fc8ff85ae7578cae3602ede77b663350acf0e132d2d9358f3170c697aa2f158c2f3f3520607c23f9060356fec0942ebddb9ca3e039da SHA512 5d62c102a3fdf6dfc16182d3822386dc9edb75204dff9a9b8e3aa7bbe5b223c477f2a73f0a0e35de3454d9e738da6205da0c308bc778f8ffc9af80c20a49d6af
+DIST xarray-2024.1.1.tar.gz 3614037 BLAKE2B cc50fbfa19a2c9229b85b8c7d5d0e7e7f6d3e5a484955fcc81aa0b37839a0b992d2c2f928e4097ca05c7b8294ed1061fbd0c1b7e7c65c9087a940dab97c520ce SHA512 b6447ca2c80b3a3091ac2baba648fef4faa79ffff272360e9726b318b517ede9d2717d1b6f77f03fdacf55527233f1a37c0d114901fe1a265d3e435cf293a487
+DIST xarray-2024.2.0.tar.gz 3634288 BLAKE2B 8d1165360300da5af6d670947e5280052a3d8915768e02448b86ab38283d6d45258a2c4eb91982ba732ccedb3a7afc5f274116c9ee0072d35cdc5631b8a2ca50 SHA512 dcfe6d1f0edab8659664c5399b96d622d2e3df2f85bb7672d9afab6f74294a6449772efde080aaa7323f733c09cbd0f6f037e547be0afa79f39450eead777828
+DIST xarray-2024.5.0.tar.gz 3710689 BLAKE2B 04d2d9c70c90bccd0f269dde91be8a3f213b2dfe2d380b041abe946d118e80d0816ef09ed7e225b7bb164902c1943c1be335f1cac815d12c4aace6a0217379bb SHA512 d3aa6ef73afd2fd8a5c5551631ca5385d14221474bdab4c404cee1405b370c2f998c895bfd3506e6ccc1b2f511996b0eebefb331768df047d5e8b398ad2f9199
diff --git a/dev-python/xarray/files/xarray-2024.1.1-pytest-8.patch b/dev-python/xarray/files/xarray-2024.1.1-pytest-8.patch
new file mode 100644
index 000000000000..e85bb6de7b71
--- /dev/null
+++ b/dev-python/xarray/files/xarray-2024.1.1-pytest-8.patch
@@ -0,0 +1,77 @@
+From 306a50e344522a3f321d49d95488f457975fa553 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 31 Jan 2024 11:31:26 +0100
+Subject: [PATCH 1/2] test_dataset: remove incorrect pytest.warns() to fix
+ pytest-8
+
+Remove two incorrect `pytest.warns()` assertions to fix test failures
+with pytest-8.0.0. Prior to this version, an exception raised would
+cause `pytest.warns()` to be ignored. This way fixed in 8.0.0, and now
+warnings must actually be emitted prior to the exception.
+
+In `test_drop_index_labels()`, the exception is raised at the very
+beginning of the function, prior to the deprecation warning.
+
+In `test_rename_multiindex()`, the warning is not emitted at all (it is
+not applicable to the call in question).
+---
+ xarray/tests/test_dataset.py | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/xarray/tests/test_dataset.py b/xarray/tests/test_dataset.py
+index fa9448f2f4..77d172f00b 100644
+--- a/xarray/tests/test_dataset.py
++++ b/xarray/tests/test_dataset.py
+@@ -2724,8 +2724,7 @@ def test_drop_index_labels(self) -> None:
+ assert_identical(data, actual)
+
+ with pytest.raises(ValueError):
+- with pytest.warns(DeprecationWarning):
+- data.drop(["c"], dim="x", errors="wrong_value") # type: ignore[arg-type]
++ data.drop(["c"], dim="x", errors="wrong_value") # type: ignore[arg-type]
+
+ with pytest.warns(DeprecationWarning):
+ actual = data.drop(["a", "b", "c"], "x", errors="ignore")
+@@ -3159,8 +3158,7 @@ def test_rename_multiindex(self) -> None:
+ original.rename({"a": "x"})
+
+ with pytest.raises(ValueError, match=r"'b' conflicts"):
+- with pytest.warns(UserWarning, match="does not create an index anymore"):
+- original.rename({"a": "b"})
++ original.rename({"a": "b"})
+
+ def test_rename_perserve_attrs_encoding(self) -> None:
+ # test propagate attrs/encoding to new variable(s) created from Index object
+
+From 3bc5abf4da35edda1f0c3e9e0d53e39331c1a76b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 31 Jan 2024 11:35:04 +0100
+Subject: [PATCH 2/2] test_groupby: Clear recorded warnings for pytest-8
+ compatibility
+
+Clear the warnings recorded during the `pytest.warns()` use
+in `test_groupby_dims_property`, to fix test failures with pytest-8.0.0.
+Prior to this version, `pytest.warns()` invocation used to capture all
+warnings. Now it only captures the warnings that match the arguments,
+and the remaining warnings are re-emitted and therefore caught by
+`recwarn` fixture. To provide compatibility with both versions of
+pytest, clear the recorded warnings immediately after `pytest.warns()`.
+
+Fixes #8681
+---
+ xarray/tests/test_groupby.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/xarray/tests/test_groupby.py b/xarray/tests/test_groupby.py
+index 25fabd5e2b..b65c01fe76 100644
+--- a/xarray/tests/test_groupby.py
++++ b/xarray/tests/test_groupby.py
+@@ -67,6 +67,8 @@ def test_groupby_dims_property(dataset, recwarn) -> None:
+ with pytest.warns(UserWarning, match="The `squeeze` kwarg"):
+ assert dataset.groupby("x").dims == dataset.isel(x=1).dims
+ assert dataset.groupby("y").dims == dataset.isel(y=1).dims
++ # in pytest-8, pytest.warns() no longer clears all warnings
++ recwarn.clear()
+
+ # when squeeze=False, no warning should be raised
+ assert tuple(dataset.groupby("x", squeeze=False).dims) == tuple(
diff --git a/dev-python/xarray/xarray-2022.12.0.ebuild b/dev-python/xarray/xarray-2022.12.0.ebuild
deleted file mode 100644
index 156fdf4d20d7..000000000000
--- a/dev-python/xarray/xarray-2022.12.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit distutils-r1
-
-DESCRIPTION="N-D labeled arrays and datasets in Python"
-HOMEPAGE="
- https://xarray.pydata.org/
- https://github.com/pydata/xarray/
- https://pypi.org/project/xarray/
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-python/numpy-1.22[${PYTHON_USEDEP}]
- >=dev-python/pandas-1.3[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
-"
-# note: most of the test dependencies are optional
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- dev-python/bottleneck[${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/toolz[${PYTHON_USEDEP}]
- !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # warning-targeted tests are fragile and not important to end users
- xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
-)
diff --git a/dev-python/xarray/xarray-2023.2.0.ebuild b/dev-python/xarray/xarray-2023.2.0.ebuild
deleted file mode 100644
index 54219dc1848c..000000000000
--- a/dev-python/xarray/xarray-2023.2.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="N-D labeled arrays and datasets in Python"
-HOMEPAGE="
- https://xarray.pydata.org/
- https://github.com/pydata/xarray/
- https://pypi.org/project/xarray/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-python/numpy-1.22[${PYTHON_USEDEP}]
- >=dev-python/pandas-1.4[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
-"
-# note: most of the test dependencies are optional
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- dev-python/bottleneck[${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/toolz[${PYTHON_USEDEP}]
- !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # warning-targeted tests are fragile and not important to end users
- xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
-)
diff --git a/dev-python/xarray/xarray-2023.3.0.ebuild b/dev-python/xarray/xarray-2023.3.0.ebuild
deleted file mode 100644
index cc0d2354ba87..000000000000
--- a/dev-python/xarray/xarray-2023.3.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="N-D labeled arrays and datasets in Python"
-HOMEPAGE="
- https://xarray.pydata.org/
- https://github.com/pydata/xarray/
- https://pypi.org/project/xarray/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-python/numpy-1.22[${PYTHON_USEDEP}]
- <dev-python/pandas-2[${PYTHON_USEDEP}]
- >=dev-python/pandas-1.4[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
-"
-# note: most of the test dependencies are optional
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- dev-python/bottleneck[${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/toolz[${PYTHON_USEDEP}]
- !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # warning-targeted tests are fragile and not important to end users
- xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
-)
diff --git a/dev-python/xarray/xarray-2024.1.1-r1.ebuild b/dev-python/xarray/xarray-2024.1.1-r1.ebuild
new file mode 100644
index 000000000000..380281bd576d
--- /dev/null
+++ b/dev-python/xarray/xarray-2024.1.1-r1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="
+ https://xarray.pydata.org/
+ https://github.com/pydata/xarray/
+ https://pypi.org/project/xarray/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ~riscv ~s390 x86"
+IUSE="big-endian"
+
+RDEPEND="
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ >=dev-python/pandas-1.5[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+# note: most of the test dependencies are optional
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/pydata/xarray/pull/8686
+ "${FILESDIR}/${P}-pytest-8.patch"
+)
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # warning-targeted tests are fragile and not important to end users
+ xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
+ # TODO: segv in netcdf4-python
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-5-5]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-5-None]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-None-5]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-None-None]'
+ xarray/tests/test_backends.py::TestDask::test_save_mfdataset_compute_false_roundtrip
+ # TODO: broken
+ xarray/tests/test_backends.py::TestNetCDF4Data
+ xarray/tests/test_backends.py::TestNetCDF4ViaDaskData
+ # hangs
+ xarray/tests/test_backends.py::TestDask::test_dask_roundtrip
+ # mismatches when pyarrow is installed
+ # https://github.com/pydata/xarray/issues/8092
+ xarray/tests/test_dask.py::TestToDaskDataFrame::test_to_dask_dataframe_2D
+ xarray/tests/test_dask.py::TestToDaskDataFrame::test_to_dask_dataframe_not_daskarray
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then
+ EPYTEST_DESELECT+=(
+ 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]'
+ )
+ fi
+
+ if use big-endian ; then
+ EPYTEST_DESELECT+=(
+ # Appears to be a numpy issue in display? See bug #916460.
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]'
+ )
+ fi
+
+ epytest
+}
diff --git a/dev-python/xarray/xarray-2024.2.0-r1.ebuild b/dev-python/xarray/xarray-2024.2.0-r1.ebuild
new file mode 100644
index 000000000000..7d6e4fa56352
--- /dev/null
+++ b/dev-python/xarray/xarray-2024.2.0-r1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="
+ https://xarray.pydata.org/
+ https://github.com/pydata/xarray/
+ https://pypi.org/project/xarray/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~riscv ~s390 ~x86"
+IUSE="big-endian"
+
+RDEPEND="
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ >=dev-python/pandas-1.5[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+# note: most of the test dependencies are optional
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # warning-targeted tests are fragile and not important to end users
+ xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
+ # TODO: segv in netcdf4-python
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-5-5]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-5-None]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-None-5]'
+ 'xarray/tests/test_backends.py::test_open_mfdataset_manyfiles[netcdf4-20-True-None-None]'
+ xarray/tests/test_backends.py::TestDask::test_save_mfdataset_compute_false_roundtrip
+ # TODO: broken
+ xarray/tests/test_backends.py::TestNetCDF4Data
+ xarray/tests/test_backends.py::TestNetCDF4ViaDaskData
+ # hangs
+ xarray/tests/test_backends.py::TestDask::test_dask_roundtrip
+ # mismatches when pyarrow is installed
+ # https://github.com/pydata/xarray/issues/8092
+ xarray/tests/test_dask.py::TestToDaskDataFrame::test_to_dask_dataframe_2D
+ xarray/tests/test_dask.py::TestToDaskDataFrame::test_to_dask_dataframe_not_daskarray
+ )
+ local EPYTEST_IGNORE=(
+ # requires datatree_ subpackage that is not part of public API
+ # https://github.com/pydata/xarray/issues/8768
+ xarray/tests/datatree
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then
+ EPYTEST_DESELECT+=(
+ 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]'
+ )
+ fi
+
+ if use big-endian ; then
+ EPYTEST_DESELECT+=(
+ # Appears to be a numpy issue in display? See bug #916460.
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]'
+ )
+ fi
+
+ epytest
+}
diff --git a/dev-python/xarray/xarray-2024.3.0-r1.ebuild b/dev-python/xarray/xarray-2024.3.0-r1.ebuild
new file mode 100644
index 000000000000..fc4486aed87d
--- /dev/null
+++ b/dev-python/xarray/xarray-2024.3.0-r1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+# TODO: switch back to pypi in the next release
+MY_PV=2024.03.0
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="
+ https://xarray.pydata.org/
+ https://github.com/pydata/xarray/
+ https://pypi.org/project/xarray/
+"
+SRC_URI="
+ https://github.com/pydata/xarray/archive/v${MY_PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~s390 ~x86"
+IUSE="big-endian"
+
+RDEPEND="
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ >=dev-python/pandas-1.5[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+# note: most of the test dependencies are optional
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/cftime[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then
+ EPYTEST_DESELECT+=(
+ 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]'
+ )
+ fi
+
+ if use big-endian ; then
+ EPYTEST_DESELECT+=(
+ # Appears to be a numpy issue in display? See bug #916460.
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]'
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/xarray/xarray-2024.3.0.ebuild b/dev-python/xarray/xarray-2024.3.0.ebuild
new file mode 100644
index 000000000000..23e269a25ec3
--- /dev/null
+++ b/dev-python/xarray/xarray-2024.3.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+# TODO: switch back to pypi in the next release
+MY_PV=2024.03.0
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="
+ https://xarray.pydata.org/
+ https://github.com/pydata/xarray/
+ https://pypi.org/project/xarray/
+"
+SRC_URI="
+ https://github.com/pydata/xarray/archive/v${MY_PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ~loong ~riscv ~s390 ~x86"
+IUSE="big-endian"
+
+RDEPEND="
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ >=dev-python/pandas-1.5[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+# note: most of the test dependencies are optional
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires dev-python/cftime
+ 'xarray/tests/test_coding_times.py::test_encode_cf_datetime_datetime64_via_dask[mixed-cftime-pandas-encoding-with-prescribed-units-and-dtype]'
+ )
+ if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then
+ EPYTEST_DESELECT+=(
+ 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]'
+ )
+ fi
+
+ if use big-endian ; then
+ EPYTEST_DESELECT+=(
+ # Appears to be a numpy issue in display? See bug #916460.
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]'
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/xarray/xarray-2024.5.0.ebuild b/dev-python/xarray/xarray-2024.5.0.ebuild
new file mode 100644
index 000000000000..5811f8af24a1
--- /dev/null
+++ b/dev-python/xarray/xarray-2024.5.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="
+ https://xarray.pydata.org/
+ https://github.com/pydata/xarray/
+ https://pypi.org/project/xarray/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~s390 ~x86"
+IUSE="big-endian"
+
+RDEPEND="
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ >=dev-python/pandas-2.0[${PYTHON_USEDEP}]
+ >=dev-python/packaging-23.1[${PYTHON_USEDEP}]
+"
+# note: most of the test dependencies are optional
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/cftime[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then
+ EPYTEST_DESELECT+=(
+ 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]'
+ )
+ fi
+
+ if use big-endian ; then
+ EPYTEST_DESELECT+=(
+ # Appears to be a numpy issue in display? See bug #916460.
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]'
+ 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]'
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}