Andrew Stewart08/31/2022, 6:34 PM
seems to correspond to the version of Kedro, not the actual project at hand. Is the package version in
the right place, or is that being controlled by some higher level process?
Antony Milne08/31/2022, 8:35 PM
version should correspond to your project template’s version (i.e. the kedro version when you did
). The one in requirements.txt (which goes to setup.py) should correspond to the version of kedro you have installed as a python dependency (like
) used when you do
pip install kedro
etc. Very often these will be the same, but it’s also common to e.g. start your project with
when new versions come out since they will have new bug fixes, features, etc. which in general don’t need a change to your project template. Anything in the
pip install -U kedro
line of kedro releases will be non-breaking, so compatible with a project with any other
template. Hence the recommended pattern would be to specify e.g.
in your requirements file so you can take advantage of the new
features without it trying to upgrade to
which will not be backwards compatible.
Andrew Stewart08/31/2022, 8:49 PM
Nok Lam Chan08/31/2022, 9:02 PM
is the right place to manage your own project’s version
Andrew Stewart08/31/2022, 9:25 PM
Antony Milne09/01/2022, 8:14 AM
as set in
. I’m not sure why it doesn’t seem to do so currently, i.e. we have
and trying to distribute your project. The vast majority of people will never change that
(or the kedro project template version in
version, as in
2. The version of the kedro template that your project was started with - specified in
pip show kedro
3. Your project version - only relevant for packaging purposes. Specified in
. Not sure why this seems to be duplicated, probably a mistake 4. (optional) pipeline versions, specified in
within a pipeline folder e.g.
. This enables you to version each pipeline independently, which is rarely done but useful if you need pull/push/distribute/manage multiple pipelines