Compare commits
36 Commits
rawhide
...
main-riscv
Author | SHA1 | Date | |
---|---|---|---|
09deadb96d | |||
11e86467c9 | |||
2f9f34149e | |||
|
ad2541a279 | ||
|
c01611fead | ||
|
a0689da68d | ||
aa75049d28 | |||
|
108bee32a6 | ||
|
30f786ee65 | ||
|
01b3ebe23c | ||
|
92c93013bd | ||
|
0835ce0dbc | ||
|
e31444d0f7 | ||
|
b13fe9022b | ||
|
fc02ba1a1b | ||
|
a62472cf25 | ||
|
798549d059 | ||
|
2bdf04a38b | ||
|
b566f18f1d | ||
|
e4ec7c9263 | ||
|
9b5b94266f | ||
|
6eb3efc156 | ||
|
39f1a4993a | ||
62dc89d5af | |||
1a858dd6e1 | |||
|
2b65f28774 | ||
|
7f30dda570 | ||
|
cd8020f346 | ||
|
9934e1ad39 | ||
|
38f2f4e1cd | ||
|
c5e584ede7 | ||
|
c7038e4f1a | ||
|
b17de15cba | ||
|
6fb256b537 | ||
|
ac0268dbf2 | ||
|
e866f47374 |
12
.gitignore
vendored
12
.gitignore
vendored
@ -70,3 +70,15 @@
|
||||
/dask-2023.3.2.tar.gz
|
||||
/dask-2023.4.0.tar.gz
|
||||
/dask-2023.4.1.tar.gz
|
||||
/dask-2023.7.0.tar.gz
|
||||
/dask-2023.7.1.tar.gz
|
||||
/dask-2023.8.1.tar.gz
|
||||
/dask-2023.11.0.tar.gz
|
||||
/dask-2023.12.0.tar.gz
|
||||
/dask-2024.1.0.tar.gz
|
||||
/dask-2024.1.1.tar.gz
|
||||
/dask-2024.2.1.tar.gz
|
||||
/dask-2024.6.0.tar.gz
|
||||
/dask-2024.6.2.tar.gz
|
||||
/dask-2024.7.1.tar.gz
|
||||
/dask-2024.8.0.tar.gz
|
||||
|
38
0001-Remove-extra-test-dependencies.patch
Normal file
38
0001-Remove-extra-test-dependencies.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From f72b9ced312c92900ed7903ec07aefde35e22489 Mon Sep 17 00:00:00 2001
|
||||
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
Date: Thu, 20 Jun 2024 21:08:07 -0400
|
||||
Subject: [PATCH] Remove extra test dependencies
|
||||
|
||||
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
---
|
||||
pyproject.toml | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index 1d036cbb..e9600551 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -75,11 +75,9 @@ complete = [
|
||||
test = [
|
||||
"pandas[test]",
|
||||
"pytest",
|
||||
- "pytest-cov",
|
||||
"pytest-rerunfailures",
|
||||
"pytest-timeout",
|
||||
"pytest-xdist",
|
||||
- "pre-commit",
|
||||
]
|
||||
|
||||
[project.entry-points."dask.array.backends"]
|
||||
@@ -128,7 +126,7 @@ markers = [
|
||||
"skip_with_pyarrow_strings: Tests that should be skipped when pyarrow string conversion is turned on",
|
||||
"xfail_with_pyarrow_strings: Tests that should be xfailed when pyarrow string conversion is turned on",
|
||||
]
|
||||
-addopts = "-v -rsfE --durations=10 --color=yes --cov-config=pyproject.toml"
|
||||
+addopts = "-v -rsfE --durations=10 --color=yes"
|
||||
filterwarnings = [
|
||||
"error:::dask[.*]",
|
||||
"error:::pandas[.*]",
|
||||
--
|
||||
2.45.2
|
||||
|
@ -1,33 +0,0 @@
|
||||
From 5ee683719a19c8865a7b80725a0adf55baa3e9c9 Mon Sep 17 00:00:00 2001
|
||||
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
Date: Sun, 7 Mar 2021 04:07:32 -0500
|
||||
Subject: [PATCH 1/2] Skip test_encoding_gh601 on big-endian machines.
|
||||
|
||||
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
---
|
||||
dask/dataframe/io/tests/test_csv.py | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/dask/dataframe/io/tests/test_csv.py b/dask/dataframe/io/tests/test_csv.py
|
||||
index b50a727b..0ac1df4c 100644
|
||||
--- a/dask/dataframe/io/tests/test_csv.py
|
||||
+++ b/dask/dataframe/io/tests/test_csv.py
|
||||
@@ -2,6 +2,7 @@ import gzip
|
||||
import os
|
||||
import warnings
|
||||
from io import BytesIO, StringIO
|
||||
+import sys
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
@@ -1146,6 +1147,7 @@ def test_read_csv_with_datetime_index_partitions_n():
|
||||
xfail_pandas_100 = pytest.mark.xfail(reason="https://github.com/dask/dask/issues/5787")
|
||||
|
||||
|
||||
+@pytest.mark.skipif(sys.byteorder == 'big', reason='Broken on big-endian machines')
|
||||
@pytest.mark.parametrize(
|
||||
"encoding",
|
||||
[
|
||||
--
|
||||
2.40.0
|
||||
|
@ -1,26 +0,0 @@
|
||||
From 54487feeef6d7d41e3b6d4e4ece5b6342071068b Mon Sep 17 00:00:00 2001
|
||||
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
Date: Sun, 7 May 2023 23:13:59 -0400
|
||||
Subject: [PATCH 2/2] Skip coverage testing
|
||||
|
||||
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
||||
---
|
||||
pyproject.toml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index a7d504ff..36dfca8e 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -121,7 +121,7 @@ markers = [
|
||||
"skip_with_pyarrow_strings: Tests that should be skipped when pyarrow string conversion is turned on",
|
||||
"xfail_with_pyarrow_strings: Tests that should be xfailed when pyarrow string conversion is turned on",
|
||||
]
|
||||
-addopts = "-v -rsxfE --durations=10 --color=yes --cov-config=pyproject.toml"
|
||||
+addopts = "-v -rsxfE --durations=10 --color=yes"
|
||||
filterwarnings = [
|
||||
# From Cython-1753
|
||||
"ignore:can't resolve:ImportWarning",
|
||||
--
|
||||
2.40.0
|
||||
|
198
python-dask.spec
198
python-dask.spec
@ -3,25 +3,29 @@
|
||||
# Requires distributed, which is a loop.
|
||||
# Also, some tests require packages that require dask itself.
|
||||
# Force bootstrap for package review.
|
||||
%bcond_without bootstrap
|
||||
%bcond bootstrap 1
|
||||
# We don't have all dependencies available yet.
|
||||
%bcond docs 0
|
||||
|
||||
# We have an arched package to detect arch-dependent issues in dependencies,
|
||||
# but all of the installable RPMs are noarch and there is no compiled code.
|
||||
%global debug_package %{nil}
|
||||
|
||||
Name: python-%{srcname}
|
||||
Version: 2023.4.1
|
||||
%global tag 2023.4.1
|
||||
Release: %autorelease
|
||||
Version: 2024.8.0
|
||||
%global tag 2024.8.0
|
||||
Release: %autorelease -e 0.riscv64
|
||||
Summary: Parallel PyData with Task Scheduling
|
||||
|
||||
License: BSD-3-Clause
|
||||
URL: https://github.com/dask/dask
|
||||
Source0: %{pypi_source %{srcname}}
|
||||
# https://github.com/dask/dask/issues/6725
|
||||
Patch: 0001-Skip-test_encoding_gh601-on-big-endian-machines.patch
|
||||
# Fedora-specific patch.
|
||||
Patch: 0002-Skip-coverage-testing.patch
|
||||
Patch: 0001-Remove-extra-test-dependencies.patch
|
||||
|
||||
# Stop building on i686
|
||||
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
Dask is a flexible parallel computing library for analytics.
|
||||
@ -40,16 +44,11 @@ BuildRequires: python3dist(scikit-image)
|
||||
BuildRequires: python3dist(xarray)
|
||||
%endif
|
||||
# Optional test requirements.
|
||||
# Fastavro does not support 32 bit architectures and is ExcludeArch:
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1943932
|
||||
%ifnarch %{arm32} %{ix86}
|
||||
BuildRequires: python3dist(fastavro)
|
||||
%endif
|
||||
BuildRequires: python3dist(h5py)
|
||||
BuildRequires: python3dist(psutil)
|
||||
# libarrow does not support 32 bit architectures and is ExcludeArch.
|
||||
# Tests don't pass on s390x either.
|
||||
%ifnarch %{arm} %{ix86} s390x
|
||||
# libarrow tests don't pass on s390x either.
|
||||
%ifnarch s390x
|
||||
BuildRequires: python3dist(pyarrow)
|
||||
%endif
|
||||
BuildRequires: python3dist(requests)
|
||||
@ -87,13 +86,82 @@ Provides: bundled(numpy)
|
||||
Dask is a flexible parallel computing library for analytics.
|
||||
|
||||
|
||||
%pyproject_extras_subpkg -n python3-%{srcname} array bag dataframe delayed
|
||||
# Based on (but with BuildArch: noarch):
|
||||
# %%pyproject_extras_subpkg -n python3-%%{srcname} array bag dataframe delayed
|
||||
#
|
||||
# Extras subpackages are arched, they should not be
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2293727
|
||||
#
|
||||
# Further discussion is in
|
||||
# https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/174.
|
||||
|
||||
%package -n python3-%{srcname}+array
|
||||
Summary: Metapackage for python3-%{srcname}: array extras
|
||||
Requires: python3-%{srcname} = %{version}-%{release}
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n python3-%{srcname}+array
|
||||
This is a metapackage bringing in array extras requires for python3-%{srcname}.
|
||||
It makes sure the dependencies are installed.
|
||||
|
||||
%files -n python3-%{srcname}+array -f %{_pyproject_ghost_distinfo}
|
||||
|
||||
%package -n python3-%{srcname}+bag
|
||||
Summary: Metapackage for python3-%{srcname}: bag extras
|
||||
Requires: python3-%{srcname} = %{version}-%{release}
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n python3-%{srcname}+bag
|
||||
This is a metapackage bringing in bag extras requires for python3-%{srcname}.
|
||||
It makes sure the dependencies are installed.
|
||||
|
||||
%files -n python3-%{srcname}+bag -f %{_pyproject_ghost_distinfo}
|
||||
|
||||
%package -n python3-%{srcname}+dataframe
|
||||
Summary: Metapackage for python3-%{srcname}: dataframe extras
|
||||
Requires: python3-%{srcname} = %{version}-%{release}
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n python3-%{srcname}+dataframe
|
||||
This is a metapackage bringing in dataframe extras requires for python3-%{srcname}.
|
||||
It makes sure the dependencies are installed.
|
||||
|
||||
%files -n python3-%{srcname}+dataframe -f %{_pyproject_ghost_distinfo}
|
||||
|
||||
%package -n python3-%{srcname}+delayed
|
||||
Summary: Metapackage for python3-%{srcname}: delayed extras
|
||||
Requires: python3-%{srcname} = %{version}-%{release}
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n python3-%{srcname}+delayed
|
||||
This is a metapackage bringing in delayed extras requires for python3-%{srcname}.
|
||||
It makes sure the dependencies are installed.
|
||||
|
||||
%files -n python3-%{srcname}+delayed -f %{_pyproject_ghost_distinfo}
|
||||
|
||||
%if %{without bootstrap}
|
||||
%pyproject_extras_subpkg distributed
|
||||
# Based on (but with BuildArch: noarch):
|
||||
# %%pyproject_extras_subpkg -n python3-%%{srcname} distributed
|
||||
# (see comments for the other extras metapackages, above)
|
||||
%package -n python3-%{srcname}+distributed
|
||||
Summary: Metapackage for python3-%{srcname}: distributed extras
|
||||
Requires: python3-%{srcname} = %{version}-%{release}
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n python3-%{srcname}+distributed
|
||||
This is a metapackage bringing in distributed extras requires for python3-%{srcname}.
|
||||
It makes sure the dependencies are installed.
|
||||
|
||||
%files -n python3-%{srcname}+distributed -f %{_pyproject_ghost_distinfo}
|
||||
%endif
|
||||
|
||||
|
||||
%if %{without bootstrap}
|
||||
%if %{with docs}
|
||||
%package -n python-%{srcname}-doc
|
||||
Summary: dask documentation
|
||||
|
||||
@ -110,12 +178,10 @@ Documentation for dask.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{srcname}-%{version} -p1
|
||||
# we don't use pre-commit when running tests
|
||||
sed -i '/"pre-commit"/d' setup.py
|
||||
|
||||
|
||||
%generate_buildrequires
|
||||
%pyproject_buildrequires -r -x test,array,bag,dataframe,delayed
|
||||
%pyproject_buildrequires -x test,array,bag,dataframe,delayed
|
||||
%if %{without bootstrap}
|
||||
%pyproject_buildrequires -x distributed
|
||||
%endif
|
||||
@ -124,7 +190,7 @@ sed -i '/"pre-commit"/d' setup.py
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
%if %{without bootstrap}
|
||||
%if %{with docs}
|
||||
# generate html docs
|
||||
PYTHONPATH=${PWD} sphinx-build-3 docs/source html
|
||||
# remove the sphinx-build leftovers
|
||||
@ -135,68 +201,10 @@ rm -rf html/.{doctrees,buildinfo}
|
||||
%install
|
||||
%pyproject_install
|
||||
|
||||
%pyproject_save_files %{srcname}
|
||||
%pyproject_save_files -l %{srcname}
|
||||
|
||||
|
||||
%check
|
||||
%ifarch arm
|
||||
# Is there a way to do this in one line?
|
||||
%global have_arm 1
|
||||
%endif
|
||||
|
||||
%if 0%{?__isa_bits} == 32
|
||||
# read_sql_query with meta converts dtypes from 32 to 64.
|
||||
# https://github.com/dask/dask/issues/8620
|
||||
|
||||
# > tm.assert_frame_equal(
|
||||
# a, b, check_names=check_names, check_dtype=check_dtype, **kwargs
|
||||
# E AssertionError: Attributes of DataFrame.iloc[:, 1] (column name="age") are different
|
||||
# E
|
||||
# E Attribute "dtype" are different
|
||||
# E [left]: int32
|
||||
# E [right]: int64
|
||||
# dask/dataframe/utils.py:555: AssertionError
|
||||
k="${k-}${k+ and }not test_query_with_meta"
|
||||
%endif
|
||||
|
||||
%ifarch ppc64le
|
||||
# TODO: Should this be reported upstream? Is it a dask issue, or a numpy one?
|
||||
# Possibly related to
|
||||
# https://fedoraproject.org/wiki/Changes/PPC64LE_Float128_Transition?
|
||||
|
||||
# > assert allclose(a, b, equal_nan=equal_nan, **kwargs), msg
|
||||
# E AssertionError: found values in 'a' and 'b' which differ by more than the allowed amount
|
||||
# E assert False
|
||||
# E + where False = allclose(array([0.12586355-0.09957204j, 0.20256483+0.04098342j,\n 0.05781123-0.03588671j, 0.01135963-0.03334219j,\n 0.03747771+0.07495994j, 0.2106574 -0.0363521j ,\n 0.16352091+0.03782915j, 0.1381678 -0.06815128j,\n 0.03781295-0.04011523j, 0.01493269+0.07780643j]), array([0.12559072-0.07164038j, 0.20256483+0.05438578j,\n 0.05781123-0.03588671j, 0.01135963-0.03334219j,\n 0.03747771+0.07495994j, 0.2106574 -0.0363521j ,\n 0.16352091+0.03782915j, 0.1381678 -0.06815128j,\n 0.03781295-0.04011523j, 0.01493269+0.07780643j]), equal_nan=True, **{})
|
||||
# dask/array/utils.py:361: AssertionError
|
||||
k="${k-}${k+ and }not test_lstsq[100-10-10-True]"
|
||||
# > assert allclose(a, b, equal_nan=equal_nan, **kwargs), msg
|
||||
# E AssertionError: found values in 'a' and 'b' which differ by more than the allowed amount
|
||||
# E assert False
|
||||
# E + where False = allclose(array([ 0.20168675+0.08857556j, 0.144233 -0.19173091j,\n -0.03367557-0.08053959j, 0.04108325-0.24648308j,\n -0.01844576+0.00841932j, 0.29652375+0.05682199j,\n 0.05551828+0.20156798j, -0.08409592+0.02354949j,\n 0.09848743-0.00748637j, 0.22889193-0.07372773j]), array([ 0.20067551+0.2642591j , 0.144233 -0.18573336j,\n -0.03367557-0.08053959j, 0.04108325-0.24648308j,\n -0.01844576+0.00841932j, 0.29652375+0.05682199j,\n 0.05551828+0.20156798j, -0.08409592+0.02354949j,\n 0.09848743-0.00748637j, 0.22889193-0.07372773j]), equal_nan=True, **{})
|
||||
# dask/array/utils.py:361: AssertionError
|
||||
k="${k-}${k+ and }not test_lstsq[20-10-5-True]"
|
||||
|
||||
# test_vdot fails with NumPy 1.19.0
|
||||
# https://github.com/dask/dask/issues/6406
|
||||
#
|
||||
# vdot returns incorrect results on ppc64le
|
||||
# https://github.com/numpy/numpy/issues/17087
|
||||
|
||||
# > assert allclose(a, b, equal_nan=equal_nan, **kwargs), msg
|
||||
# E AssertionError: found values in 'a' and 'b' which differ by more than the allowed amount
|
||||
# E assert False
|
||||
# E + where False = allclose((0.38772781971416226-0.6851997484294434j), (0.38772781971416226-0.306563166009585j), equal_nan=True, **{})
|
||||
# dask/array/utils.py:361: AssertionError
|
||||
k="${k-}${k+ and }not test_vdot[shape0-chunks0]"
|
||||
# > assert allclose(a, b, equal_nan=equal_nan, **kwargs), msg
|
||||
# E AssertionError: found values in 'a' and 'b' which differ by more than the allowed amount
|
||||
# E assert False
|
||||
# E + where False = allclose((0.38772781971416226-0.6851997484294434j), (0.38772781971416226-0.306563166009585j), equal_nan=True, **{})
|
||||
# dask/array/utils.py:361: AssertionError
|
||||
k="${k-}${k+ and }not test_vdot[shape1-chunks1]"
|
||||
%endif
|
||||
|
||||
# This test compares against files in .github/. It does not work on the PyPI
|
||||
# sdist, and is only relevant to upstream CI anyway.
|
||||
#
|
||||
@ -207,15 +215,27 @@ k="${k-}${k+ and }not test_development_guidelines_matches_ci"
|
||||
pytest_args=(
|
||||
-m 'not network'
|
||||
|
||||
-n %[0%{?have_arm}?"2":"auto"]
|
||||
|
||||
%ifarch %{ix86}
|
||||
# Ignore 32-bit warning
|
||||
-W 'ignore:invalid value encountered in cast:RuntimeWarning'
|
||||
%endif
|
||||
-n "auto"
|
||||
|
||||
-k "${k-}"
|
||||
|
||||
# arrow tests all fail on s390x, it's not at all BE-safe
|
||||
# the exclusion of arrow as a build dep on s390x above is meant to
|
||||
# ensure these tests get skipped, but dask-expr requires arrow, so it
|
||||
# it gets pulled into the build env anyway
|
||||
# https://github.com/dask/dask/issues/11186
|
||||
%ifarch s390x
|
||||
--ignore %{buildroot}%{python3_sitelib}/%{srcname}/dataframe/io/tests/test_parquet.py
|
||||
%endif
|
||||
|
||||
# Upstream uses 'thread' for Windows, but that kills the whole session, and
|
||||
# we'd like to see exactly which tests fail.
|
||||
--timeout_method=signal
|
||||
|
||||
%ifarch riscv64
|
||||
--timeout=3000
|
||||
%endif
|
||||
|
||||
--pyargs dask
|
||||
)
|
||||
|
||||
@ -224,13 +244,13 @@ cd docs
|
||||
|
||||
%files -n python3-%{srcname} -f %{pyproject_files}
|
||||
%doc README.rst
|
||||
%license LICENSE.txt dask/array/NUMPY_LICENSE.txt
|
||||
%license dask/array/NUMPY_LICENSE.txt
|
||||
%{_bindir}/dask
|
||||
|
||||
%if %{without bootstrap}
|
||||
%if %{with docs}
|
||||
%files -n python-%{srcname}-doc
|
||||
%doc html
|
||||
%license LICENSE.txt dask/array/NUMPY_LICENSE.txt
|
||||
%license dask/array/NUMPY_LICENSE.txt
|
||||
%endif
|
||||
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (dask-2023.4.1.tar.gz) = 2fad1317aad845f7b11d8efceafb11eb9e945aca649bcf7ccd71e8692c3ca18c6f595c82b4e2930cba4e9622dd384965b3cf0ea3f68bdbc2f6f18c7a2d806b26
|
||||
SHA512 (dask-2024.8.0.tar.gz) = cf57fa9dacb0cfe4c8f6eb08878ae2233ae77b3945171ebeed7c1182227c990d400fa7b6ff09cfc7a935fac16e20ecbe890aa1cee407fdcaff0d02cdcaba203c
|
||||
|
Loading…
Reference in New Issue
Block a user