Major features and improvements
- Added stricter validation to dataset names in the
Node
class, ensuring.
characters are reserved to be used as part of a namespace. - Added a
prefix_datasets_with_namespace
argument to thePipeline
class which allows users to turn on or off the prefixing of the namespace to the node inputs, outputs, and parameters. - Changed the default node name to be formed of the function name used in the node suffixed by a secure hash (SHA-256) based on the function, inputs, and outputs, ensuring uniqueness and improved readability.
- Added an option to select which multiprocessing start method is going to be used on
ParallelRunner
via theKEDRO_MP_CONTEXT
environment variable.
Bug fixes and other changes
- Changed pipeline filtering for namespace to return exact namespace matches instead of partial matches.
- Added support for running multiple namespaces within a single session.
- Updated
kedro registry describe
to return the node name property instead of creating its own name for the node.
Documentation changes
- Updated the
DataCatalog
documentation with improved structure and detailed description of new features.
Community contributions
Breaking changes to the API
- Private methods
_is_project
and_find_kedro_project
are changed tois_kedro_project
andfind_kedro_project
. - Renamed instances of
extra_params
and_extra_params
toruntime_params
. - Removed the
modular_pipeline
module and moved functionality to thepipeline
module instead. - Renamed
ModularPipelineError
toPipelineError
. Pipeline.grouped_nodes_by_namespace()
was replaced withgroup_nodes_by(group_by)
, which supports multiple strategies and returns a list ofGroupedNodes
, improving type safety and consistency for deployment plugin integrations.- The micro-packaging feature and the corresponding
micropkg
CLI command have been removed. - Renamed
session_id
parameter torun_id
in all runner methods and hooks to improve API clarity and prepare for future multi-run session support. - Removed the following
DataCatalog
methods:_get_dataset()
,add_all()
,add_feed_dict()
,list()
, andshallow_copy()
. - Removed the CLI command
kedro catalog create
. - Changed the output of
runner.run()
— it now always returns all pipeline outputs, regardless of catalog configuration.
Migration guide from Kedro 0.19.* to 1.*
See the migration guide for 1.0.0 in the Kedro documentation.