diff --git a/README.md b/README.md index 3fea151b..ba57a1b2 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -:rocket: **Version 2.6.0 out now!** [Read the release notes here.](https://skpro.readthedocs.io/en/latest/changelog.html). +:rocket: **Version 2.7.0 out now!** [Read the release notes here.](https://skpro.readthedocs.io/en/latest/changelog.html). `skpro` is a library for supervised probabilistic prediction in python. It provides `scikit-learn`-like, `scikit-base` compatible interfaces to: diff --git a/docs/source/_static/switcher.json b/docs/source/_static/switcher.json index bbd6b78b..904bbdd2 100644 --- a/docs/source/_static/switcher.json +++ b/docs/source/_static/switcher.json @@ -5,7 +5,12 @@ "url": "https://skpro.readthedocs.io/en/latest/" }, { - "name": "2.6.0 (stable)", + "name": "2.7.0 (stable)", + "version": "stable", + "url": "https://skpro.readthedocs.io/en/v2.7.0/" + }, + { + "name": "2.6.0", "version": "stable", "url": "https://skpro.readthedocs.io/en/v2.6.0/" }, diff --git a/docs/source/changelog.rst b/docs/source/changelog.rst index 241b302c..ffda1181 100644 --- a/docs/source/changelog.rst +++ b/docs/source/changelog.rst @@ -16,6 +16,58 @@ For planned changes and upcoming releases, see roadmap in the `issue tracker `_. +[2.7.0] - 2024-10-08 +==================== + +Maintenance release with ``python 3.13`` support. + +Also contains: + +* new ``update`` unified interface point for probabilistic regressors, + to enable online learning and Bayesian updates in models +* dependency updates + +Dependency changes +~~~~~~~~~~~~~~~~~~ + +* ``skpro`` is now compatible with ``python 3.13``. +* ``scikit-base`` bounds have been updated to ``>=0.6.1,<0.12.0``. +* ``polars`` (data container soft dependency) bounds have been updated to ``<1.10.0``. +* dead (unimported) soft dependencies have been removed: ``attrs``, ``tabulate``, ``uncertainties``. + +Core interface changes +~~~~~~~~~~~~~~~~~~~~~~ + +Probabilistic regressors and time-to-event predictors now have an ``update`` method. +The ``update`` method is the unified interface point for incremental fitting strategies, +such as online learning, efficient re-fit strategies, or Bayesian updates. + +Whether a non-trivial ``update`` method is implemented depends on the specific estimator, +this can be inspected via the ``capability:update`` tag of the estimator. + +Estimators without a dedicated ``update`` method, that is, those with +``capability:update=False``, implement the trivial ``update`` where no update +is performed, with the internal estimator state remaining unchanged. + +Enhancements +~~~~~~~~~~~~ + +* [ENH] online update capability for probabilistic regressors (:pr:`462`) :user:`fkiraly` +* [ENH] online refitting strategy after N data points (:pr:`469`) :user:`fkiraly` +* [ENH] ``datatypes`` examples - docstrings, deepcopy (:pr:`466`) :user:`fkiraly` +* [ENH] sync proba predict utils with ``sktime`` (:pr:`465`) :user:`fkiraly` +* [ENH] minor refactor - remove unnecessary `__init__` methods in `datatypes` module (:pr:`475`) :user:`fkiraly` + +Maintenance +~~~~~~~~~~~ + +* [MNT] ``python 3.13`` support, add ``3.13`` to CI test matrix (:pr:`471`) :user:`fkiraly` +* [MNT] differential testing - handle non-package changes in ``pyproject.toml`` (:pr:`472`) :user:`fkiraly` +* [MNT] change macos runners to ``macos-latest`` version (:pr:`477`) :user:`fkiraly` +* [MNT] [Dependabot](deps): Update ``scikit-base`` requirement from ``<0.10.0,>=0.6.1`` to ``>=0.6.1,<0.12.0`` (:pr:`468`) :user:`dependabot[bot]` +* [MNT] [Dependabot](deps): Update ``polars`` requirement from ``<1.7.0`` to ``<1.10.0`` (:pr:`473`) :user:`dependabot[bot]` + + [2.6.0] - 2024-09-08 ==================== diff --git a/pyproject.toml b/pyproject.toml index 7efe98b2..2f31faad 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,15 +1,15 @@ [project] name = "skpro" -version = "2.6.0" -description = "A unified framework for probability distributions and probabilistic supervised regression" +version = "2.7.0" +description = "A unified framework for tabular probabilistic regression, time-to-event prediction, and probability distributions in python" authors = [ - {name = "skpro developers", email = "sktime.toolbox@gmail.com"}, + {name = "skpro developers", email = "info@sktime.net"}, {name = "Franz Király"}, {name = "Frithjof Gressmann"}, {name = "Vitaly Davydov"}, ] maintainers = [ - {name = "skpro developers", email = "sktime.toolbox@gmail.com"}, + {name = "skpro developers", email = "info@sktime.net"}, ] readme = "README.md" keywords = [ diff --git a/skpro/__init__.py b/skpro/__init__.py index 538b4a33..62dc671a 100644 --- a/skpro/__init__.py +++ b/skpro/__init__.py @@ -1,6 +1,6 @@ """skpro.""" -__version__ = "2.6.0" +__version__ = "2.7.0" __all__ = ["show_versions"] diff --git a/skpro/base/_base.py b/skpro/base/_base.py index 0314ad0b..08c9f78c 100644 --- a/skpro/base/_base.py +++ b/skpro/base/_base.py @@ -36,7 +36,7 @@ def __init__(self): py39_or_higher = SpecifierSet(">=3.9") sys_version = sys.version.split(" ")[0] - # todo 2.7.0 - check whether python 3.8 eol is reached. + # todo 2.8.0 - check whether python 3.8 eol is reached. # If yes, remove this msg. if sys_version not in py39_or_higher: warn(