This is managed through standard Python requirements. One way you can check Kedro version compatibility is in the requirements file in the Kedro-Viz repo:
https://github.com/kedro-org/kedro-viz/blob/v12.2.0/package/requirements.txt
There are many places you can see minimum supported Python version, including on PyPI.
Ideally, you would use a package manager that respects the requirements set by different packages.
pip
doesn't do this by default; you could consider using something like
uv
.