Dependencies

Both pip install kedro and conda install -c conda-forge kedro install the core Kedro module, which includes the CLI tool, project template, pipeline abstraction, framework, and support for configuration.

When you create a project, you then introduce additional dependencies for the tasks it performs.

Project-specific dependencies

You can use Kedro to specify a project’s exact dependencies to make it easier for you and others to run your project in the future, and to avoid version conflicts downstream.

To add or remove dependencies to a project, edit the src/requirements.txt file, then run the following:

kedro build-reqs

The build-reqs command will pip compile the requirements listed in the src/requirements.txt file into a src/requirements.lock that specifies a list of pinned project dependencies (those with a strict version).

Note

The src/requirements.txt file contains “source” requirements, while src/requirements.lock contains the compiled version of those and requires no manual updates.

To further update the project requirements, modify the src/requirements.txt file (not src/requirements.lock) and re-run kedro build-reqs.

Install project-specific dependencies

To install the project-specific dependencies, navigate to the root directory of the project and run:

pip install -r src/requirements.txt

Workflow dependencies

To install all of the dependencies recorded in Kedro’s setup.py, run:

pip install "kedro[all]"