From f2fd9c7f436d891067f2237ec9b1031d428d4611 Mon Sep 17 00:00:00 2001 From: Benjamin A. Beasley Date: Jan 31 2024 20:13:00 +0000 Subject: Update to 0.5.4 (close RHBZ#2258253) --- diff --git a/.gitignore b/.gitignore index 08933f9..eef9f53 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /pingouin-0.5.1.tar.gz /pingouin-0.5.2.tar.gz /pingouin-0.5.3.tar.gz +/pingouin-0.5.4.tar.gz diff --git a/344.patch b/344.patch deleted file mode 100644 index 5c445de..0000000 --- a/344.patch +++ /dev/null @@ -1,259 +0,0 @@ -From 72912915970f1d0615452846816b027acb61838a Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 21:21:59 +0100 -Subject: [PATCH 1/6] disable power_chi2 test - ---- - pingouin/tests/test_power.py | 44 ++++++++++++++++++------------------ - 1 file changed, 22 insertions(+), 22 deletions(-) - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index 60025c64..1e4339aa 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -7,7 +7,7 @@ - power_anova, - power_rm_anova, - power_corr, -- power_chi2, -+ # power_chi2, - ) - - -@@ -231,24 +231,24 @@ def test_power_corr(self): - power_corr(r=0.5, n=4) - power_corr(power=0.80, n=4) - -- def test_power_chi2(self): -- """Test function power_chi2. -- Values are compared to the pwr R package. -- """ -- w = 0.30 -- # Power -- assert np.isclose(power_chi2(dof=1, w=0.3, n=20), 0.2686618) -- assert np.isclose(power_chi2(dof=2, w=0.3, n=100), 0.7706831) -- # Sample size -- assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) -- assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) -- # Effect size -- assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -- assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -- # Alpha -- assert np.isclose( -- power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 -- ) -- # Error -- with pytest.raises(ValueError): -- power_chi2(1, w=w) -+ # def test_power_chi2(self): -+ # """Test function power_chi2. -+ # Values are compared to the pwr R package. -+ # """ -+ # w = 0.30 -+ # # Power -+ # assert np.isclose(power_chi2(dof=1, w=0.3, n=20), 0.2686618) -+ # assert np.isclose(power_chi2(dof=2, w=0.3, n=100), 0.7706831) -+ # # Sample size -+ # assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) -+ # assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) -+ # # Effect size -+ # assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -+ # assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ # # Alpha -+ # assert np.isclose( -+ # power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 -+ # ) -+ # # Error -+ # with pytest.raises(ValueError): -+ # power_chi2(1, w=w) - -From 7548a34d8523935552b4501e2583e8201d187c65 Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 21:31:57 +0100 -Subject: [PATCH 2/6] Add back first test - ---- - pingouin/tests/test_power.py | 19 +++++++++---------- - 1 file changed, 9 insertions(+), 10 deletions(-) - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index 1e4339aa..4f8f8695 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -7,7 +7,7 @@ - power_anova, - power_rm_anova, - power_corr, -- # power_chi2, -+ power_chi2, - ) - - -@@ -231,14 +231,13 @@ def test_power_corr(self): - power_corr(r=0.5, n=4) - power_corr(power=0.80, n=4) - -- # def test_power_chi2(self): -- # """Test function power_chi2. -- # Values are compared to the pwr R package. -- # """ -- # w = 0.30 -- # # Power -- # assert np.isclose(power_chi2(dof=1, w=0.3, n=20), 0.2686618) -- # assert np.isclose(power_chi2(dof=2, w=0.3, n=100), 0.7706831) -+ def test_power_chi2(self): -+ """Test function power_chi2. -+ Values are compared to the pwr R package. -+ """ -+ # Power -+ assert np.isclose(power_chi2(dof=1, w=0.3, n=20), 0.2686618) -+ assert np.isclose(power_chi2(dof=2, w=0.3, n=100), 0.7706831) - # # Sample size - # assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) - # assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) -@@ -251,4 +250,4 @@ def test_power_corr(self): - # ) - # # Error - # with pytest.raises(ValueError): -- # power_chi2(1, w=w) -+ # power_chi2(1, w=0.3) - -From 045a5e3981e3035a90c72a84379d284b7fdd0c48 Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 21:38:54 +0100 -Subject: [PATCH 3/6] Add back second test - ---- - pingouin/tests/test_power.py | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index 4f8f8695..ca4abc0b 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -238,9 +238,11 @@ def test_power_chi2(self): - # Power - assert np.isclose(power_chi2(dof=1, w=0.3, n=20), 0.2686618) - assert np.isclose(power_chi2(dof=2, w=0.3, n=100), 0.7706831) -- # # Sample size -- # assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) -- # assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) -+ -+ # Sample size -+ assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) -+ assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) -+ - # # Effect size - # assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) - # assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) - -From cfb8428cf72bc224bb8d6cc89e2b5ce484531d23 Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 21:46:35 +0100 -Subject: [PATCH 4/6] Add third test - ---- - pingouin/tests/test_power.py | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index ca4abc0b..9be4a994 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -243,9 +243,10 @@ def test_power_chi2(self): - assert np.isclose(power_chi2(dof=1, w=0.3, power=0.80), 87.20954) - assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) - -- # # Effect size -- # assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -- # assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ # Effect size -+ assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -+ assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ - # # Alpha - # assert np.isclose( - # power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 - -From 30ca9f5a6c5291d3b6c5d3dde665b6ad349ee28e Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 21:53:05 +0100 -Subject: [PATCH 5/6] "Effect size" is causing the failure! - ---- - pingouin/tests/test_power.py | 13 +++++++------ - 1 file changed, 7 insertions(+), 6 deletions(-) - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index 9be4a994..08bebd91 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -244,13 +244,14 @@ def test_power_chi2(self): - assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) - - # Effect size -- assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -- assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ # assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -+ # assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ -+ # Alpha -+ assert np.isclose( -+ power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 -+ ) - -- # # Alpha -- # assert np.isclose( -- # power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 -- # ) - # # Error - # with pytest.raises(ValueError): - # power_chi2(1, w=0.3) - -From da3d6561c63cf9cc9e8074cc9e2c1a34327bc0fe Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Wed, 22 Feb 2023 22:04:33 +0100 -Subject: [PATCH 6/6] Fix segmentation error - ---- - pingouin/power.py | 2 +- - pingouin/tests/test_power.py | 10 +++++----- - 2 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/pingouin/power.py b/pingouin/power.py -index 5f2c4426..45e5589d 100644 ---- a/pingouin/power.py -+++ b/pingouin/power.py -@@ -1058,7 +1058,7 @@ def _eval_w(w, n, power, alpha): - return func(w, n, power, alpha) - power - - try: -- return brenth(_eval_w, 1e-10, 1e07, args=(n, power, alpha)) -+ return brenth(_eval_w, 1e-10, 100, args=(n, power, alpha)) - except ValueError: # pragma: no cover - return np.nan - -diff --git a/pingouin/tests/test_power.py b/pingouin/tests/test_power.py -index 08bebd91..f16fbe31 100644 ---- a/pingouin/tests/test_power.py -+++ b/pingouin/tests/test_power.py -@@ -244,14 +244,14 @@ def test_power_chi2(self): - assert np.isclose(power_chi2(dof=3, w=0.3, power=0.80), 121.1396) - - # Effect size -- # assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -- # assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) -+ assert np.isclose(power_chi2(dof=4, n=50, power=0.80), 0.4885751) -+ assert np.isclose(power_chi2(dof=1, n=50, power=0.80), 0.3962023) - - # Alpha - assert np.isclose( - power_chi2(dof=1, w=0.3, n=100, power=0.80, alpha=None), 0.03089736, atol=1e-03 - ) - -- # # Error -- # with pytest.raises(ValueError): -- # power_chi2(1, w=0.3) -+ # Error -+ with pytest.raises(ValueError): -+ power_chi2(1, w=0.3) diff --git a/370.patch b/370.patch deleted file mode 100644 index 7c9892a..0000000 --- a/370.patch +++ /dev/null @@ -1,31 +0,0 @@ -From e4608aaa1105f31a5781c835e82d7005814d8ecb Mon Sep 17 00:00:00 2001 -From: Raphael Vallat -Date: Sat, 29 Jul 2023 14:30:24 +0200 -Subject: [PATCH] Fix in flatten_list for Python 3.12 - ---- - pingouin/utils.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/pingouin/utils.py b/pingouin/utils.py -index 3613bf8d..df4e4587 100644 ---- a/pingouin/utils.py -+++ b/pingouin/utils.py -@@ -297,8 +297,6 @@ def _flatten_list(x, include_tuple=False): - # If x is not iterable, return x - if not isinstance(x, collections.abc.Iterable): - return x -- # Remove None -- x = list(filter(None.__ne__, x)) - # Initialize empty output variable - result = [] - # Loop over items in x -@@ -315,6 +313,8 @@ def _flatten_list(x, include_tuple=False): - result.append(el) - else: - result.append(el) -+ # Remove None from output -+ result = [r for r in result if r is not None] - return result - - diff --git a/python-pingouin.spec b/python-pingouin.spec index 2c612b3..f039c5c 100644 --- a/python-pingouin.spec +++ b/python-pingouin.spec @@ -1,7 +1,7 @@ %bcond tests 1 Name: python-pingouin -Version: 0.5.3 +Version: 0.5.4 Release: %autorelease Summary: Statistical package in Python based on Pandas @@ -10,14 +10,6 @@ URL: https://pingouin-stats.org/ # PyPI tar does not contain docs and tests Source: https://github.com/raphaelvallat/pingouin/archive/v%{version}/pingouin-%{version}.tar.gz -# hotfix: CI crash in test_power_chi2 -# https://github.com/raphaelvallat/pingouin/pull/344 -Patch: https://github.com/raphaelvallat/pingouin/pull/344.patch - -# Fix in flatten_list for Python 3.12 -# https://github.com/raphaelvallat/pingouin/pull/370 -Patch: https://github.com/raphaelvallat/pingouin/pull/370.patch - # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} diff --git a/sources b/sources index 29d2320..c71bd35 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (pingouin-0.5.3.tar.gz) = 7326302d12b5b56ca8efa6eaf765e010938e753549026155aaf38802df06b1172aaa4996f50424de040f7ea67cbdb5819440a9410383175d0bec0b35ef306d53 +SHA512 (pingouin-0.5.4.tar.gz) = 5f1f58a85ee99cc4fc093828fa9f077ad8765ab8ae889d4684af9a8de8477f26a2146be757c8f0af3f523d30772244bb94495098d5a0800132946cd420829240