kedro-org / kedro

Kedro is a toolbox for production-ready data science. It uses software engineering best practices to help you create data engineering and data science pipelines that are reproducible, maintainable, and modular.
https://kedro.org
Apache License 2.0
9.49k stars 875 forks source link

Add a test for transcoding loops of 1 or more nodes #3810

Closed idanov closed 2 months ago

idanov commented 2 months ago

Description

A recent change from toposort to graphlib accidentally revealed and fixed a bug, where 1 node loops were allowed through transcoding. For more information, read https://github.com/kedro-org/kedro/issues/3799

Here a regression test is added now in order to avoid reintroducing the same bug in the future.

Development notes

This PR includes only tests and a slight modification of the error message to make it clearer how many nodes and what nodes exactly cause the loop.

Developer Certificate of Origin

We need all contributions to comply with the Developer Certificate of Origin (DCO). All commits must be signed off by including a Signed-off-by line in the commit message. See our wiki for guidance.

If your PR is blocked due to unsigned commits, then you must follow the instructions under "Rebase the branch" on the GitHub Checks page for your PR. This will retroactively add the sign-off to all unsigned commits and allow the DCO check to pass.

Checklist