Skip to content

Latest commit

 

History

History
766 lines (549 loc) · 23.9 KB

changelog.rst

File metadata and controls

766 lines (549 loc) · 23.9 KB

Changelog

All notable changes to this project beginning with version 0.1.0 will be documented in this file. The format is based on Keep a Changelog and we adhere to Semantic Versioning. The source code for all releases is available on GitHub.

You can also subscribe to skbase's PyPi release.

For planned changes and upcoming releases, see our :ref:`roadmap`.

[0.8.2] - 2024-08-02

Regular maintenance release.

Contents

Contributors

:user:`fkiraly`, :user:`szepeviktor`, :user:`yarnabrina`

[0.8.1] - 2024-06-20

Regular bugfix and maintenance release.

Core interface changes

  • get_param_names now allows users to return the parameter names in the same order as in the`` __init__ method, by passing the argument sort=False.

Contents

[0.8.0] - 2024-05-25

Feature update for all_objects, bugfix and maintenance release.

Core interface changes

  • all_objects now allows filtering tag values by re.Pattern regular expressions passed as query values via filter_tags.

Deprecations and removals

  • In all_objects, the meaning of filter_tags arguments ot type str, and iterable of str, will change from scikit-base 0.9.0. Currently, str or iterable of str arguments select objects that possess the tag(s) with the specified name, of any value. From 0.9.0 onwards, str or iterable of str will select objects that possess the tag with the specified name, with the value True (boolean). See scikit-base issue #326 for the rationale behind this change. To retain previous behaviour, that is, to select objects that possess the tag with the specified name, of any value, use a dict with the tag name as key, and re.Pattern('*?') as value. That is, from re import Pattern, and pass {tag_name: Pattern('*?')} as filter_tags, and similarly with multiple tag names.

Contents

[0.7.8] - 2024-05-10

Regular bugfix and maintenance release.

Contents

[0.7.7] - 2024-04-17

Small hotfix release.

Contents

[0.7.6] - 2024-03-02

Minor feature and bugfix release.

Contents

[0.7.5] - 2024-03-02

Small hotfix release.

Contents

[0.7.4] - 2024-03-01

Small hotfix release.

Contents

[0.7.3] - 2024-02-29

Feature and bugfix release.

Core interface changes

  • all_objects now allows filtering for arbitrary parent classes, not just classes inheriting from BaseObject. This is useful for looking up objects in a third party package that are not part of the skbase hierarchy.

Enhancements

Fixes

Documentation

Maintenance

Contributors

:user:`fkiraly`, :user:`MBristle`, :user:`tpvasconcelos`

[0.7.2] - 2024-01-31

Feature and bugfix release.

Core interface changes

  • all BaseObject descendants now possess a method set_random_state. This can be used for nested setting of random_state variables, and is useful for ensuring reproducibility in nested estimators. (:pr:`268`) :user:`fkiraly`
  • all_objects now supports filtering for list-valued tags in filter_tags as a convenience feature. When the query value is a single value or a list, the filter condition is that the tag value and the query value have at least one element in common. (:pr:`273`) :user:`fkiraly`

Enhancements

Fixes

Documentation

Maintenance

Contributors

:user:`fkiraly`, :user:`tpvasconcelos`

[0.7.1] - 2023-01-12

Minor bugfix and maintenance release.

Contents

[0.7.0] - 2023-01-03

Bugfix release with potentially breaking changes related to set_config, get_config (:pr:`257`, :pr:`259`, :user:`fkiraly`) due to masking of third party bugs, please consult the changelog for details in case of breakage.

Core interface changes

  • configuration values - set via set_config and inspectable via get_config - are now retained through clone and reset. Previous behaviour was to reset configuration values to default, which is considered a bug. However, this change may break existing code if two errors cancel out, e.g., if a breaking (without bug) configuration was set, the reset through the bug. In this case, the bug masked the breaking configuration, which should be addressed. Most breakages over 0.6.2 should be addressable by removing set_config calls, i.e., removing the genuinely breaking configuration.
  • A configuration field clone_config was added that allows to configure whether clone should clone the configuration. This is useful for meta-estimators that should not clone the configuration of their components. This change is not breaking - considered in difference to the above - as the default behaviour is to clone the configuration.

Fixes

[0.6.2] - 2023-12-30

Release with minor improvements and bugfixes.

Enhancements

  • [ENH] deep_equals - clearer return on diffs from dtypes and index, relaxation of MultiIndex equality check (:pr:`246`) :user:`fkiraly`

Fixes

Documentation

Maintenance

[0.6.1] - 2023-10-26

Highlights

  • set_params now recognizes unique suffixes as aliases for full parameter strings, e.g., foo instead of estimator__component__foo (:pr:`229`) :user:`fkiraly`
  • the deep_equals utility now admits custom plugins with dependency isolation, e.g., for data types such as dask or polars (:pr:`238`) :user:`fkiraly`
  • dependabot is now enabled for the skbase repository (:pr:`228`) :user:`fkiraly`

Core interface changes

  • set_params now recognizes unique suffixes as aliases for full parameter strings. This change is not breaking as behaviour changes only in cases where previously exceptions were raised.

Enhancements

Maintenance

Fixes

[0.6.0] - 2023-10-05

Maintenance release at python 3.12 release.

Adds support for python 3.12.

Dependency changes

  • skbase now supports python 3.12.

Deprecations and removals

  • the deep_equals utility has moved to skbase.utils.deep_equals. The old location in skbase.testing.utils.deep_equals has now been removed.

Contents

[0.5.2] - 2023-10-03

Release with minor improvements.

[0.5.1] - 2023-08-14

Release with minor improvements and bugfixes.

Enhancements

Documentation

Maintenance

Fixes

[0.5.0] - 2023-06-21

Maintenance release at python 3.7 end-of-life.

Removes support for python 3.7.

[0.4.6] - 2023-06-16

Bugfix release:

[0.4.5] - 2023-05-14

Dummy release for aarch64 support on conda (added in recipe there).

[0.4.4] - 2023-05-13

Regular maintenance release.

Deprecations and removals

The deep_equals utility has moved to skbase.utils.deep_equals. The old location in skbase.testing.utils.deep_equals will be removed in skbase 0.6.0, until then it can still be imported from there, with a warning.

Maintenance

Contributors

:user:`fkiraly`, :user:`yarnabrina`

[0.4.3] - 2023-05-04

Hotfix for accidental import of pytest through BaseObject.clone, including test for pytest dependency isolation.

Contents

[0.4.2] - 2023-05-02

Maintenance update that cleans up dependencies.

Notably, scikit-base no longer has any core dependencies.

This is as per usage intention as a base module, therefore this removal is not accompanied by deprecation.

Dependency changes

  • scikit-learn, typing-extensions, and pytest are no longer core dependencies. pytest remains a dependency in dev and test dependency sets.
  • scikit-learn is now part of the dev and test dependency sets, as it is required to test compatibility with scikit-learn
  • a dependency conflict has been resolved in the docs dependency set for the docs build, by pinning versions

Maintenance

[0.4.1] - 2023-04-26

Small bugfix patch for pydata 2023 Seattle notebooks.

Fixes

[0.4.0] - 2023-04-25

Highlights

Enhancements

Fixes

Documentation

Maintenance

Contributors

:user:`achieveordie`, :user:`fkiraly`, :user:`rnkuhns`

[0.3.0] - 2023-01-08

Highlights

  • Reorganized package functionality into submodules focused on specific functionality (:pr:`78`):
    • skbase.base for BaseObject, BaseEstimator and other base classes
    • skbase.testing for functionality to test BaseObject-s
    • skbase.lookup for retrieving metadata and all BaseObject-s from a package
    • skbase.validate for comparing and validating BaseObject-s
  • Expanded test coverage of skbase.base and skbase.lookup modules and skbase exceptions (:pr:`62`, :pr:`80`, :pr:`91`) :user:`rnkuhns`
  • Add equality dunder to BaseObject to allow BaseObject-s to be compared based on parameter equality (:pr:`86`) :user:`fkiraly`
  • Add sktime-like interface for retrieving fitted parameters to BaseEstimator (:pr:`87`) :user:`fkiraly`

Enhancements

Fixes

Documentation

Maintenance

Contributors

:user:`fkiraly`, :user:`rnkuhns`

[0.2.0] - 2022-09-09

This release is a maintenance release to change the name of the package from baseobject to skbase.

Highlights

[0.1.0] - 2022-09-08

Highlights