Skip to content

0.19.9

Latest
Compare
Choose a tag to compare
@merelcht merelcht released this 10 Oct 19:13
· 34 commits to main since this release
91468e6

Major features and improvements

  • Dropped Python 3.8 support.
  • Implemented KedroDataCatalog repeating DataCatalog functionality with a few API enhancements:
    • Removed _FrozenDatasets and access datasets as properties;
    • Added get dataset by name feature;
    • add_feed_dict() was simplified to only add raw data;
    • Datasets' initialisation was moved out from from_config() method to the constructor.
  • Moved development requirements from requirements.txt to the dedicated section in pyproject.toml for project template.
  • Implemented Protocol abstraction for the current DataCatalog and adding new catalog implementations.
  • Refactored kedro run and kedro catalog commands.
  • Moved pattern resolution logic from DataCatalog to a separate component - CatalogConfigResolver. Updated DataCatalog to use CatalogConfigResolver internally.
  • Made packaged Kedro projects return session.run() output to be used when running it in the interactive environment.
  • Enhanced OmegaConfigLoader configuration validation to detect duplicate keys at all parameter levels, ensuring comprehensive nested key checking.

Note: KedroDataCatalog is an experimental feature and is under active development. Therefore, it is possible we'll introduce breaking changes to this class, so be mindful of that if you decide to use it already. Let us know if you have any feedback about the KedroDataCatalog or ideas for new features.

Bug fixes and other changes

  • Fixed bug where using dataset factories breaks with ThreadRunner.
  • Fixed a bug where SharedMemoryDataset.exists would not call the underlying MemoryDataset.
  • Fixed template projects example tests.
  • Made credentials loading consistent between KedroContext._get_catalog() and resolve_patterns so that both use _get_config_credentials()

Breaking changes to the API

  • Removed ShelveStore to address a security vulnerability.

Documentation changes

  • Fix logo on PyPI page.
  • Minor language/styling updates.

Community contributions