Skip to content

Commit

Permalink
Merged main, resolved conflict
Browse files Browse the repository at this point in the history
  • Loading branch information
Meraldo Antonio committed Oct 10, 2024
2 parents fd4d5fd + 098b7f8 commit 1f0402e
Show file tree
Hide file tree
Showing 39 changed files with 2,440 additions and 345 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,8 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [ubuntu-latest, windows-latest, macOS-13]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
os: [ubuntu-latest, windows-latest, macOS-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -107,8 +107,8 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [ubuntu-latest, windows-latest, macOS-13]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
os: [ubuntu-latest, windows-latest, macOS-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ jobs:
strategy:
fail-fast: false # to not fail all combinations if just one fail
matrix:
os: [ubuntu-latest, macOS-13]
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [ubuntu-latest, macOS-latest]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -66,7 +66,7 @@ jobs:
fail-fast: false # to not fail all combinations if just one fail
matrix:
os: [windows-latest]
python-version: ['3.9', '3.10', '3.11', '3.12']
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<a href="https://skpro.readthedocs.io/en/latest"><img src="https://github.com/sktime/skpro/blob/main/docs/source/images/skpro-banner.png" width="500" align="right" /></a>

:rocket: **Version 2.5.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:
Expand Down
17 changes: 16 additions & 1 deletion docs/source/_static/switcher.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,22 @@
"url": "https://skpro.readthedocs.io/en/latest/"
},
{
"name": "2.5.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/"
},
{
"name": "2.5.1",
"version": "stable",
"url": "https://skpro.readthedocs.io/en/v2.5.1/"
},
{
"name": "2.5.0",
"version": "stable",
"url": "https://skpro.readthedocs.io/en/v2.5.0/"
},
Expand Down
13 changes: 13 additions & 0 deletions docs/source/api_reference/regression.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,19 @@ Model selection and tuning

evaluate

Online learning
---------------

.. currentmodule:: skpro.regression.online

.. autosummary::
:toctree: auto_generated/
:template: class.rst

OnlineRefit
OnlineRefitEveryN
OnlineDontRefit

Reduction - adding ``predict_proba``
------------------------------------

Expand Down
114 changes: 114 additions & 0 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,120 @@ For planned changes and upcoming releases, see roadmap in the
`issue tracker <https://github.com/sktime/skpro/issues>`_.


[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
====================

Maintenance release with scheduled deprecations and updates.

Dependency changes
~~~~~~~~~~~~~~~~~~

* ``numpy`` bounds have been updated to ``>=1.21.0,<2.2``.
* ``scikit-base`` bounds have been updated to ``>=0.6.1,<0.10.0``.

Enhancements
~~~~~~~~~~~~

* [ENH] refactor ``datatypes`` mtypes - checkers, converters (:pr:`392`) :user:`fkiraly`
* [ENH] refactor ``datatypes`` mtypes - example fixtures (:pr:`458`) :user:`fkiraly`

Maintenance
~~~~~~~~~~~

* [MNT] [Dependabot](deps): Update ``scikit-base`` requirement from ``<0.9.0,>=0.6.1`` to ``>=0.6.1,<0.10.0`` (:pr:`454`) :user:`dependabot[bot]`
* [MNT] [Dependabot](deps): Update ``numpy`` requirement from ``<2.1,>=1.21.0`` to ``>=1.21.0,<2.2`` (:pr:`453`) :user:`dependabot[bot]`


[2.5.1] - 2024-09-07
====================

Minor feature and bugfix release.

Dependency changes
~~~~~~~~~~~~~~~~~~

* ``polars`` (data container and parallelization back-end) bounds have been updated to ``<1.7.0``

Enhancements
~~~~~~~~~~~~

* [ENH] Polars adapter enhancements (:pr:`449`) :user:`julian-fong`

Maintenance
~~~~~~~~~~~

* [MNT] [Dependabot](deps): Update polars requirement from ``<1.5.0`` to ``<1.7.0`` (:pr:`456`) :user:`dependabot[bot]`

Fixes
~~~~~

* [BUG] changelog utility: fix termination condition to retrieve merged PR (:pr:`448`) :user:`fkiraly`
* [BUG] Update ``skpro.utils.git_diff`` to fix issue with encoding (:pr:`452`) :user:`julian-fong`
* [BUG] fix variance bug in ``DummyProbaRegressor`` (:pr:`455`) :user:`fkiraly`

Documentation
~~~~~~~~~~~~~

* [DOC] minor updates to ``README.md`` (:pr:`451`) :user:`fkiraly`

Contributors
~~~~~~~~~~~~

:user:`fkiraly`,
:user:`julian-fong`

[2.5.0] - 2024-08-02
====================

Expand Down
30 changes: 15 additions & 15 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
[project]
name = "skpro"
version = "2.5.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.[email protected]"},
{name = "skpro developers", email = "info@sktime.net"},
{name = "Franz Király"},
{name = "Frithjof Gressmann"},
{name = "Vitaly Davydov"},
]
maintainers = [
{name = "skpro developers", email = "sktime.[email protected]"},
{name = "skpro developers", email = "info@sktime.net"},
]
readme = "README.md"
keywords = [
Expand All @@ -35,29 +35,29 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
requires-python = ">=3.9,<3.13"
requires-python = ">=3.9,<3.14"
dependencies = [
"numpy>=1.21.0,<2.1",
"numpy>=1.21.0,<2.2",
"pandas>=1.1.0,<2.3.0",
"packaging",
"scikit-base>=0.6.1,<0.9.0",
"scikit-base>=0.6.1,<0.12.0",
"scikit-learn>=0.24.0,<1.6.0",
"scipy<2.0.0,>=1.2.0",
]

[project.optional-dependencies]
all_extras = [
"attrs",
"cyclic-boosting>=1.4.0; python_version < '3.12'",
"distfit",
"lifelines<0.30.0",
"mapie",
"distfit; python_version < '3.13'",
"lifelines<0.30.0; python_version < '3.13'",
"mapie; python_version < '3.13'",
"matplotlib>=3.3.2",
"ngboost<0.6.0",
"polars<1.5.0",
"ngboost<0.6.0; python_version < '3.13'",
"polars<1.10.0",
"pyarrow<14.0.0; python_version < '3.12'",
"scikit-survival<0.24.0",
"scikit-survival<0.24.0; python_version < '3.13'",
"statsmodels>=0.12.1",
"tabulate",
"uncertainties",
Expand Down Expand Up @@ -89,7 +89,7 @@ docs = [
"sphinx!=7.2.0,<9.0.0",
"sphinx-design<0.7.0",
"sphinx-issues<5.0.0",
"sphinx-gallery<0.18.0",
"sphinx-gallery<0.19.0",
"sphinx-panels",
"tabulate",
]
Expand Down
2 changes: 1 addition & 1 deletion skpro/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"""skpro."""

__version__ = "2.5.0"
__version__ = "2.7.0"

__all__ = ["show_versions"]

Expand Down
2 changes: 1 addition & 1 deletion skpro/base/_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def __init__(self):
py39_or_higher = SpecifierSet(">=3.9")
sys_version = sys.version.split(" ")[0]

# todo 2.6.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(
Expand Down
5 changes: 5 additions & 0 deletions skpro/datatypes/_base/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
"""Base module for datatypes."""

from skpro.datatypes._base._base import BaseConverter, BaseDatatype, BaseExample

__all__ = ["BaseConverter", "BaseDatatype", "BaseExample"]
Loading

0 comments on commit 1f0402e

Please sign in to comment.