Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

python-inspector can't handle simple requirements file

Ouverte
#98 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
28/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
python
Domaine
tooling

Piste de recherche

La trace d’erreur pointe vers python_inspector/resolution.py, en particulier vers get_requirements_from_python_manifest et get_requirements_for_package_from_pypi_simple. Reproduisez d’abord l’échec avec le requirements.txt fourni et la commande python-inspector. C’est terminé lorsque cette entrée résout ses dépendances sans l’exception de sécurité et produit la sortie JSON demandée.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

With python 3.10.8, trying to use below requirement.txt failed to find dependencies.
Same backtrace could be obtained with python 3.8.15, as used below to match default python-inspector recommended version

ort@c8d70fdc61ff:~$ python-inspector -r req.txt --json-pdt source.txt
Traceback (most recent call last):
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/resolve_cli.py", line 238, in resolve_dependencies
resolution_result: Dict = resolver_api(
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/api.py", line 235, in resolve_dependencies
resolution, purls = resolve(
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/api.py", line 292, in resolve
resolved_dependencies, packages = get_resolved_dependencies(
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/api.py", line 330, in get_resolved_dependencies
resolver_results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/resolvelib/resolvers.py", line 481, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/resolvelib/resolvers.py", line 373, in resolve
failure_causes = self._attempt_to_pin_criterion(name)
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/resolvelib/resolvers.py", line 213, in _attempt_to_pin_criterion
criteria = self._get_updated_criteria(candidate)
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/resolvelib/resolvers.py", line 203, in _get_updated_criteria
for requirement in self._p.get_dependencies(candidate=candidate):
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/resolution.py", line 600, in get_dependencies
return list(self._iter_dependencies(candidate))
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/resolution.py", line 591, in _iter_dependencies
for r in self.get_requirements_for_package(purl=purl, candidate=candidate):
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/resolution.py", line 470, in get_requirements_for_package_from_pypi_simple
yield from get_requirements_from_python_manifest(
File "/opt/python/versions/3.8.15/lib/python3.8/site-packages/python_inspector/resolution.py", line 304, in get_requirements_from_python_manifest
raise Exception(
Exception: Unable to collect setup.py dependencies securely: .cache/thirdparty/extracted_sdists/conan-1.52.0/conan-1.52.0/setup.py

ort@c8d70fdc61ff:~$

requirements.txt

attrs==22.1.0
banal==1.0.6
beautifulsoup4==4.11.1
binaryornot==0.4.4
bitarray==2.6.0
boolean.py==3.8
bottle==0.12.23
CacheControl==0.12.11
cachy==0.3.0
certifi==2022.9.24
cffi==1.15.1
chardet==5.0.0
charset-normalizer==2.1.1
cleo==0.8.1
click==8.1.3
clikit==0.6.2
colorama==0.4.6
commoncode==30.0.0
conan==1.52.0
crashtest==0.3.1
cryptography==38.0.3
debian-inspector==31.0.0
distlib==0.3.6
distro==1.6.0
dparse==0.6.2
dparse2==0.6.1
extractcode==30.0.0
extractcode-7z==16.5.210531
extractcode-libarchive==3.5.1.210531
fasteners==0.18
filelock==3.8.0
fingerprints==1.0.3
ftfy==6.1.1
future==0.18.2
gemfileparser==0.8.0
html5lib==1.1
idna==3.4
importlib-metadata==5.0.0
intbitset==2.4.1
isodate==0.6.1
jaraco.classes==3.2.3
jaraco.functools==3.5.2
javaproperties==0.8.1
jeepney==0.8.0
Jinja2==3.1.2
jsonstreams==0.6.0
keyring==23.11.0
license-expression==21.6.14
lockfile==0.12.2
lxml==4.9.1
MarkupSafe==2.1.1
mercurial==6.2.3
mock==4.0.3
more-itertools==9.0.0
msgpack==1.0.4
node-semver==0.6.1
normality==2.4.0
packageurl-python==0.10.4
packaging==20.9
parameter-expansion-patched==0.3.1
pastel==0.2.1
patch==1.16
patch-ng==1.17.4
pdfminer.six==20221105
pefile==2022.5.30
pexpect==4.8.0
pip-requirements-parser==31.2.0
pipenv==2022.9.24
pkginfo==1.8.3
pkginfo2==30.0.0
platformdirs==2.5.2
pluggy==0.13.1
pluginbase==1.0.1
plugincode==21.1.21
ply==3.11
poetry==1.1.13
poetry-core==1.0.8
ptyprocess==0.7.0
publicsuffix2==2.20191221
pyahocorasick==1.4.4
pycparser==2.21
pygmars==0.7.0
Pygments==2.13.0
PyJWT==2.6.0
pylev==1.4.0
pymaven-patch==0.3.0
pyparsing==3.0.9
python-dateutil==2.8.2
python-inspector==0.9.0
PyYAML==6.0
rdflib==6.2.0
requests==2.28.1
requests-toolbelt==0.9.1
resolvelib==0.8.1
saneyaml==0.5.2
scancode-toolkit==30.1.0
SecretStorage==3.3.3
shellingham==1.5.0
six==1.16.0
soupsieve==2.3.2.post1
spdx-tools==0.7.0a3
text-unidecode==1.3
tinynetrc==1.3.1
toml==0.10.2
tomlkit==0.11.6
tqdm==4.64.1
typecode==21.6.1
typecode-libmagic==5.39.210531
urllib3==1.26.12
urlpy==0.5
virtualenv==20.16.6
virtualenv-clone==0.5.7
wcwidth==0.2.5
webencodings==0.5.1
xmltodict==0.13.0
zipp==3.10.0
Langage dominant
Python
Étoiles
23
Forks
29
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de aboutcode-org/python-inspector

Toutes les issues de aboutcode-org/python-inspector

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.