diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c3b8616..3bb5cec2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # PEtab changelog +## 0.11 series + +### 0.11.0 (unreleased) + +**Breaking changes** +* Follow SPEC 0 instead of NEP 29 for minimum supported dependency versions. + Require `numpy>=2.2`, and for the `vis` extra, `matplotlib>=3.10` and + `scipy>=1.15` + (by @dweindl in https://github.com/PEtab-dev/libpetab-python/pull/578) + ## 0.10 series ### 0.10.0 diff --git a/README.md b/README.md index d66d3e7e..231c840f 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,9 @@ and the easiest way to install it is running pip3 install petab `petab` requires Python>=3.12. We are following -[NumPy's Python support policy](https://numpy.org/neps/nep-0029-deprecation_policy.html). +[SPEC 0](https://scientific-python.org/specs/spec-0000/) +for the minimum supported versions of Python and core dependencies, +but may keep supporting a Python version until NumPy drops it. Development versions of the PEtab library can be installed using diff --git a/doc/development.rst b/doc/development.rst index cf829692..ab4ad2c9 100644 --- a/doc/development.rst +++ b/doc/development.rst @@ -23,7 +23,10 @@ remove it earlier. Python compatibility -------------------- -We follow `numpy's Python support policy `_. +We follow `SPEC 0 `_ +for the minimum supported versions of Python and core dependencies +(NumPy, SciPy, Matplotlib, pandas, ...), +but may keep supporting a Python version until NumPy drops it. Release process --------------- diff --git a/pyproject.toml b/pyproject.toml index 05683be8..2fd4ec0c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ dynamic = ["version", "readme"] description = "Parameter estimation tabular data" requires-python = ">=3.12" dependencies = [ - "numpy>=2.1", + "numpy>=2.2", "pandas>=2.3", "python-libsbml>=5.17.0", "sympy", @@ -40,9 +40,9 @@ combine = [ "python-libcombine>=0.2.6", ] vis = [ - "matplotlib>=3.6.0", + "matplotlib>=3.10", "seaborn", - "scipy" + "scipy>=1.15" ] reports = [ "Jinja2", @@ -81,8 +81,7 @@ doc = [ "sphinx-rtd-theme>=0.5.1", "m2r2", "myst-nb>=0.14.0", - # https://github.com/spatialaudio/nbsphinx/issues/687#issuecomment-1339271312 - "ipython>=7.21.0, !=8.7.0", + "ipython>=8.30", "pysb", ] dev = [