Description
Error:
python-inspector fails during analyse of requirement.txt generated with poetry export from a valid poetry.lock file
Using ort analyse with
ORT docker image 61.1.0
PYTHON_VERSION=3.11.10
PYTHON_POETRY_VERSION=2.0.1
PYTHON_INSPECTOR_VERSION=0.14.0
the python-inspector fails with
java.io.IOException: Running 'python-inspector --python-version 311 --operating-system linux --json-pdt /tmp/ort-PythonInspector13710381662136651418/python-inspector6283273422756952523.json --analyze-setup-py-insecurely --requirement /tmp/ort-Poetry12499612839497264533/requirements.txt14705584514466321039.tmp --verbose' in '/tmp/ort-Poetry12499612839497264533' failed with exit code 1:
Traceback (most recent call last):
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/resolvelib/resolvers/resolution.py", line 388, in resolve
self._add_to_criteria(self.state.criteria, r, parent=None)
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/resolvelib/resolvers/resolution.py", line 142, in _add_to_criteria
raise RequirementsConflicted(criterion)
resolvelib.resolvers.exceptions.RequirementsConflicted: Requirements conflict: <Requirement('onnxruntime==1.21.1; python_version >= "3.10" and python_version < "3.13"')>
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/python_inspector/resolve_cli.py", line 253, in resolve_dependencies
resolution_result: Dict = resolver_api(
^^^^^^^^^^^^^
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/python_inspector/api.py", line 279, in resolve_dependencies
resolution, purls = resolve(
^^^^^^^^
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/python_inspector/api.py", line 341, in resolve
resolved_dependencies, packages = get_resolved_dependencies(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/python_inspector/api.py", line 379, in get_resolved_dependencies
resolver_results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/resolvelib/resolvers/resolution.py", line 515, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/python/versions/3.11.10/lib/python3.11/site-packages/resolvelib/resolvers/resolution.py", line 390, in resolve
raise ResolutionImpossible(e.criterion.information) from e
resolvelib.resolvers.exceptions.ResolutionImpossible: [RequirementInformation(requirement=<Requirement('onnxruntime==1.21.1; python_version >= "3.10" and python_version < "3.13"')>, parent=None)]
requirement.txt generate with "poetry export --without-hashes --format=requirements.txt --only=main" from attached poetry.lock