diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index 63c82cfdab4..dfbe29e6eba 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -3,6 +3,7 @@ ## PyMC3 vNext (4.0.0) ### Breaking Changes - ⚠ Theano-PyMC has been replaced with Aesara, so all external references to `theano`, `tt`, and `pymc3.theanof` need to be replaced with `aesara`, `at`, and `pymc3.aesaraf` (see [4471](https://github.com/pymc-devs/pymc3/pull/4471)). +- ⚠ PyMC3 now requires Scipy version `>= 1.4.1` (see [4736](https://github.com/pymc-devs/pymc3/pull/4736)). - ArviZ `plots` and `stats` *wrappers* were removed. The functions are now just available by their original names (see [#4549](https://github.com/pymc-devs/pymc3/pull/4471) and `3.11.2` release notes). - The GLM submodule has been removed, please use [Bambi](https://bambinos.github.io/bambi/) instead. - The `Distribution` keyword argument `testval` has been deprecated in favor of `initval`. diff --git a/pymc3/tests/test_distributions.py b/pymc3/tests/test_distributions.py index d8c7ce686dd..922db4ee591 100644 --- a/pymc3/tests/test_distributions.py +++ b/pymc3/tests/test_distributions.py @@ -29,8 +29,6 @@ from aesara.tensor.var import TensorVariable from numpy import array, inf, log from numpy.testing import assert_allclose, assert_almost_equal, assert_equal -from packaging.version import parse -from scipy import __version__ as scipy_version from scipy import integrate from scipy.special import erf, logit @@ -108,8 +106,6 @@ from pymc3.tests.helpers import select_by_precision from pymc3.vartypes import continuous_types -SCIPY_VERSION = parse(scipy_version) - def get_lkj_cases(): """ @@ -1560,9 +1556,6 @@ def test_beta_binomial_distribution(self): {"alpha": Rplus, "beta": Rplus, "n": NatSmall}, ) - @pytest.mark.skipif( - condition=(SCIPY_VERSION < parse("1.4.0")), reason="betabinom is new in Scipy 1.4.0" - ) def test_beta_binomial_logp(self): self.check_logp( BetaBinomial, @@ -1572,9 +1565,6 @@ def test_beta_binomial_logp(self): ) @pytest.mark.xfail(condition=(aesara.config.floatX == "float32"), reason="Fails on float32") - @pytest.mark.skipif( - condition=(SCIPY_VERSION < parse("1.4.0")), reason="betabinom is new in Scipy 1.4.0" - ) def test_beta_binomial_logcdf(self): self.check_logcdf( BetaBinomial, diff --git a/pymc3/tests/test_distributions_random.py b/pymc3/tests/test_distributions_random.py index a4e2905d5ba..ae84c57c5a0 100644 --- a/pymc3/tests/test_distributions_random.py +++ b/pymc3/tests/test_distributions_random.py @@ -25,8 +25,6 @@ import scipy.stats as st from numpy.testing import assert_almost_equal, assert_array_almost_equal -from packaging.version import parse -from scipy import __version__ as scipy_version from scipy.special import expit import pymc3 as pm @@ -54,8 +52,6 @@ product, ) -SCIPY_VERSION = parse(scipy_version) - def pymc3_random( dist, @@ -1026,10 +1022,6 @@ def seeded_weibul_rng_fn(self): ] -@pytest.mark.skipif( - condition=(SCIPY_VERSION < parse("1.4.0")), - reason="betabinom is new in Scipy 1.4.0", -) class TestBetaBinomial(BaseTestDistribution): pymc_dist = pm.BetaBinomial pymc_dist_params = {"alpha": 2.0, "beta": 1.0, "n": 5} diff --git a/requirements.txt b/requirements.txt index 12435a66b40..fea9e30e4ae 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,5 +6,5 @@ fastprogress>=0.2.0 numpy>=1.15.0 pandas>=0.24.0 patsy>=0.5.1 -scipy>=1.2.0 +scipy>=1.4.1 typing-extensions>=3.7.4