The package rpms/python-pingouin.git has added or updated architecture specific content in
its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python-pingouin.git/commit/?id=74....
Change:
+%ifarch %{arm32} %{ix86}
Thanks.
Full change:
============
commit 74106f4fac76025eb8d4b622c4c4a2a4c9f47a5f
Author: Benjamin A. Beasley <code(a)musicinmybrain.net>
Date: Mon Sep 13 11:22:10 2021 -0400
Update to 0.4.0
diff --git a/.gitignore b/.gitignore
index 2c4f18a..9009347 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
/pingouin-0.3.10.tar.gz
/pingouin-0.3.11.tar.gz
/pingouin-0.3.12.tar.gz
+/pingouin-0.4.0.tar.gz
diff --git a/0001-Loosen-one-test-to-allow-near-unity-correlation.patch
b/0001-Loosen-one-test-to-allow-near-unity-correlation.patch
new file mode 100644
index 0000000..524f9c5
--- /dev/null
+++ b/0001-Loosen-one-test-to-allow-near-unity-correlation.patch
@@ -0,0 +1,26 @@
+From 396881ee4799eff9cb09b553154d55596362c680 Mon Sep 17 00:00:00 2001
+From: "Benjamin A. Beasley" <code(a)musicinmybrain.net>
+Date: Mon, 13 Sep 2021 13:33:07 -0400
+Subject: [PATCH] Loosen one test to allow near-unity correlation
+
+---
+ pingouin/tests/test_correlation.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/pingouin/tests/test_correlation.py b/pingouin/tests/test_correlation.py
+index 8d13b42..4f6399b 100644
+--- a/pingouin/tests/test_correlation.py
++++ b/pingouin/tests/test_correlation.py
+@@ -113,7 +113,8 @@ class TestCorrelation(TestCase):
+ assert np.isclose(1 / float(stats['BF10'].to_numpy()), 1.478e-13)
+ # Perfect correlation, CI and power should be 1, BF should be Inf
+ stats = corr(x, x)
+- assert stats.at['pearson', 'r'] == 1
++ assert np.isclose(stats.at['pearson', 'r'], 1)
++ assert stats.at['pearson', 'r'] <= 1
+ assert stats.at['pearson', 'power'] == 1
+ # When one column is a constant, the correlation is not defined
+ # and Pingouin return a DataFrame full of NaN, except for ``n``
+--
+2.31.1
+
diff --git a/098db4b8453a93958bd179b2fc47e3a44716721f-partial.patch
b/098db4b8453a93958bd179b2fc47e3a44716721f-partial.patch
deleted file mode 100644
index a0befe2..0000000
--- a/098db4b8453a93958bd179b2fc47e3a44716721f-partial.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 098db4b8453a93958bd179b2fc47e3a44716721f Mon Sep 17 00:00:00 2001
-From: Raphael Vallat <raphaelvallat9(a)gmail.com>
-Date: Thu, 24 Jun 2021 14:40:14 -0700
-Subject: [PATCH] post-PR cleanup
-
-This patch contains only part of the named commit.
-
-diff --git a/pingouin/tests/test_nonparametric.py b/pingouin/tests/test_nonparametric.py
-index 9a1d7eb..efc7c56 100644
---- a/pingouin/tests/test_nonparametric.py
-+++ b/pingouin/tests/test_nonparametric.py
-@@ -177,9 +177,10 @@ def test_harrelldavis(self):
- """
- a = [77, 87, 88, 114, 151, 210, 219, 246, 253, 262, 296, 299,
- 306, 376, 428, 515, 666, 1310, 2611]
-- assert harrelldavis(a, quantile=0.5) == 271.72120054908913
-+ assert np.isclose(harrelldavis(a, quantile=0.5), 271.72120054908913)
- harrelldavis(x=x, quantile=np.arange(0.1, 1, 0.1))
-- assert harrelldavis(a, [0.25, 0.5, 0.75])[1] == 271.72120054908913
-+ assert np.isclose(harrelldavis(a, [0.25, 0.5, 0.75])[1],
-+ 271.72120054908913)
- # Test multiple axis
- p = np.random.normal(0, 1, (10, 100))
-
diff --git a/python-pingouin.spec b/python-pingouin.spec
index 31a7c0b..556a846 100644
--- a/python-pingouin.spec
+++ b/python-pingouin.spec
@@ -26,91 +26,96 @@ Pingouin is designed for users who want simple yet exhaustive
statistical
functions.}
Name: python-%{srcname}
-Version: 0.3.12
-Release: 3%{?dist}
-Summary: Statistical package for Python
+Version: 0.4.0
+Release: 1%{?dist}
+Summary: Statistical package in Python based on Pandas
# Documentation pulls in bootstrap, bootswatch, jquery which are MIT
License: GPLv3 and MIT
-URL:
https://pypi.python.org/pypi/%{srcname}
-# Pypi tar does not contain docs and tests
+URL:
https://pingouin-stats.org/
+# PyPI tar does not contain docs and tests
Source0:
https://github.com/raphaelvallat/%{srcname}/archive/v%{version}/%{srcname...
-# Partial backport of upstream commit
-# 098db4b8453a93958bd179b2fc47e3a44716721fc, which stopped testing for exact
-# floating-point equality in TestNonparametric.test_harrelldavis.
-Patch0: 098db4b8453a93958bd179b2fc47e3a44716721f-partial.patch
+# TestCorrelation::test_corr fails on aarch64, ppc64le, and s390x without this
+# patch.
+#
https://github.com/raphaelvallat/pingouin/issues/195
+Patch0: 0001-Loosen-one-test-to-allow-near-unity-correlation.patch
-BuildArch: noarch
+BuildRequires: python3-devel
+
+# The odd combination of an arched package with only noarch binary packages
+# makes it easier for us to detect with arch-dependent test failures, since the
+# tests will always be run on every platform, and easier for us to skip failing
+# tests if necessary, since we can be sure that %%ifarch macros work as
+# expected.
+#
+# Since the package still contains no compiled machine code, we still have no
+# debuginfo.
+%global debug_package %{nil}
%description %_description
%package -n python3-%{srcname}
Summary: %{summary}
-BuildRequires: python3-devel
-
-BuildRequires: %{py3_dist numpy}
-BuildRequires: %{py3_dist pandas}
-BuildRequires: %{py3_dist seaborn}
-BuildRequires: %{py3_dist setuptools}
-
-%if %{with tests}
-BuildRequires: %{py3_dist pandas-flavor}
-BuildRequires: %{py3_dist pytest}
-BuildRequires: %{py3_dist pytest-cov}
-BuildRequires: %{py3_dist pytest-remotedata}
-BuildRequires: %{py3_dist statsmodels}
-BuildRequires: %{py3_dist pytest-sugar}
-BuildRequires: %{py3_dist outdated}
-BuildRequires: %{py3_dist openpyxl}
-BuildRequires: %{py3_dist mpmath}
-BuildRequires: %{py3_dist scikit-learn}
-BuildRequires: %{py3_dist tabulate}
-BuildRequires: %{py3_dist scipy} >= 1.5
-# Only required and works in TRAVIS, so not needed here
-# BuildRequires: python3-pytest-travis-fold
-%endif
+BuildArch: noarch
%description -n python3-%{srcname} %_description
%package doc
-Summary: %{summary}
-BuildRequires: %{py3_dist numpydoc}
-BuildRequires: %{py3_dist pandas-flavor}
+Summary: Documentation and examples for %{name}
+BuildArch: noarch
+
+%if %{with docs}
+BuildRequires: make
BuildRequires: %{py3_dist sphinx}
+# docs/conf.py
BuildRequires: %{py3_dist sphinx-bootstrap-theme}
+BuildRequires: %{py3_dist sphinx-copybutton}
+BuildRequires: %{py3_dist numpydoc}
+%endif
%description doc
-Documentation for %{name}.
+%{summary}.
%prep
%autosetup -n %{srcname}-%{version} -p1
-rm -rf %{srcname}.egg-info
+%if %{with tests}
+# Only required and works in TRAVIS, so not needed here
+sed -r -i 's/^(pytest-travis-fold)$/# \1/' requirements-test.txt
+%endif
+
+%generate_buildrequires
+%pyproject_buildrequires -r %{?with_tests:requirements-test.txt}
%build
-%py3_build
+%pyproject_wheel
%if %{with docs}
-PYTHONPATH=. sphinx-build-%{python3_version} -b html docs html
-rm -rf html/.doctrees
-rm -rf html/.buildinfo
-rm -rf html/.nojekyll
+PYTHONPATH="${PWD}" %make_build -C docs html
SPHINXOPTS='%{_smp_mflags}'
+find docs/build/html -maxdepth 1 -name '.*' -execdir rm -rvf '{}'
'+'
%endif
%install
-%py3_install
+%pyproject_install
+%pyproject_save_files %{srcname}
%check
%if %{with tests}
-export PYTHONPATH=%{buildroot}%{python3_sitelib}
-%{pytest}
+%ifarch %{arm32}
+#
https://github.com/raphaelvallat/pingouin/issues/196
+k="${k-}${k+ and }not (TestRegression and test_linear_regression)"
+%endif
+%ifarch %{arm32} %{ix86}
+#
https://github.com/raphaelvallat/pingouin/issues/197
+#
https://github.com/pandas-dev/pandas/issues/43588
+k="${k-}${k+ and }not (TestParametric and test_pandas)"
+%endif
+%pytest -k "${k-}"
%endif
-%files -n python3-%{srcname}
-%license LICENSE
+%files -n python3-%{srcname} -f %{pyproject_files}
+%doc CODE_OF_CONDUCT.md
%doc README.rst
-%{python3_sitelib}/%{srcname}-%{version}-py%{python3_version}.egg-info
-%{python3_sitelib}/%{srcname}
%files doc
%license LICENSE
@@ -120,6 +125,13 @@ export PYTHONPATH=%{buildroot}%{python3_sitelib}
%endif
%changelog
+* Thu Sep 23 2021 Benjamin A. Beasley <code(a)musicinmybrain.net> - 0.4.0-1
+- Update to 0.4.0
+- Switch to pyproject-rpm-macros to avoid manual BR’s
+- Use an arched source package with only noarch binary packages to ensure tests
+ are run on all arches; while this package really is noarch, it has a history
+ of arch-dependent test failures
+
* Fri Jul 23 2021 Benjamin A. Beasley <code(a)musicinmybrain.net> - 0.3.12-3
- Fix RHBZ#1981679
diff --git a/sources b/sources
index 0beea2e..e1a2eaf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (pingouin-0.3.12.tar.gz) =
f3414cf959e9e8d5b6c364d974cbb5e5a9c1993c35e7c138023cb5f03f65ba9690f8aeec088f9672d0b35394a9109d7388b900d3012735747a4b2d0d7e3aa83e
+SHA512 (pingouin-0.4.0.tar.gz) =
0a9dcfe3bca1991e576c9dca8cd157e7f4258540898576a0ef382ab53774d7ab7020ff7e3f9cd0abd7b4c07b1e3ded95d3acc15fcf78e40fe110dc95e095485f