Closed
Description
For Python projects it is hard (impossible) to determine to which Python version they apply.
ORT has some mechanism which tries (1) Python 2.x and (2) Python 3. In particular, for the latter Python 3.6 is used.
When installing dependencies via pip install -r requirements.txt
from pypi.org, pip considers only the dependencies which are compatible with the used Python version, 3.6.
For example in a Python 3.7 project this can lead to the following two issues:
- A dependency cannot be resolved by ORT, while it is actually resolvable using the appropriate Python version. This
happens if none of the versions allowed by the constraints is compatible with Python 3.7. - Even worse, the wrong dependency version is resolved. This happens e.g. if the youngest 3.6 compatible version allowed by
the constraints does not equal the youngest 3.7 compatible version. In the worst case it can happen that the project uses the
latest version of a dependency while ORT resolves a really old (Python 3.6 compatible) version of that dependency.