Analysis with 0.9.7 fails with `cannot import name 'Feature' from 'setuptools'`
まだ誰も着手していません。
評価
調査の方向性
提供されたコマンドとリンク先の requirements.txt を使って失敗を再現します。resolution.py の get_reqs_insecurely と parse_reqs_from_setup_py_insecurely から調査を始め、トレースバックでインポート失敗が示されている setup_py_live_eval.py と iter_requirements を追います。完了条件は、0.9.6 の挙動が有効なまま、python-inspector 0.9.7 でプロジェクトを正常に分析できることです。
索引モデルが issue の本文から書いたものです。
説明
Running the python-inspector on this requirements.txt, fails with the following error.
The same project can successfully be analyzed using python-inspector 0.9.6.
The command I used is:
python-inspector --python-version 310 --operating-system linux --json-pdt result.json --analyze-setup-py-insecurely --requirement requirements.txt --verbose
Warning: ambiguous setup provider in /Volumes/src/oss/ort/plugins/package-managers/python/src/funTest/assets/projects/synthetic/python-inspector/.cache/python_inspector/extracted_sdists/itsdangerous-0.24/itsdangerous-0.24/setup.py: candidates are ['setuptools', 'distutils.core']defaulting to 'distutils.core'.
Traceback (most recent call last):
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolve_cli.py", line 247, in resolve_dependencies
resolution_result: Dict = resolver_api(
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/api.py", line 263, in resolve_dependencies
resolution, purls = resolve(
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/api.py", line 322, in resolve
resolved_dependencies, packages = get_resolved_dependencies(
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/api.py", line 360, in get_resolved_dependencies
resolver_results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/resolvelib/resolvers.py", line 546, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/resolvelib/resolvers.py", line 427, in resolve
failure_causes = self._attempt_to_pin_criterion(name)
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/resolvelib/resolvers.py", line 239, in _attempt_to_pin_criterion
criteria = self._get_updated_criteria(candidate)
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/resolvelib/resolvers.py", line 229, in _get_updated_criteria
for requirement in self._p.get_dependencies(candidate=candidate):
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolution.py", line 644, in get_dependencies
return list(self._iter_dependencies(candidate))
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolution.py", line 635, in _iter_dependencies
for r in self.get_requirements_for_package(purl=purl, candidate=candidate):
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolution.py", line 497, in get_requirements_for_package_from_pypi_simple
yield from get_reqs_insecurely(
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolution.py", line 277, in get_reqs_insecurely
yield from parse_reqs_from_setup_py_insecurely(setup_py=setup_py_location)
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/resolution.py", line 128, in parse_reqs_from_setup_py_insecurely
for req in iter_requirements(level="", extras=[], setup_file=setup_py):
File "/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/python_inspector/setup_py_live_eval.py", line 117, in iter_requirements
exec(file_contents, g)
File "<string>", line 6, in <module>
ImportError: cannot import name 'Feature' from 'setuptools' (/Users/bom1wa3/Library/Python/3.9/lib/python/site-packages/setuptools/__init__.py)
- 主要言語
- Python
- スター
- 23
- フォーク
- 29
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
aboutcode-org/python-inspector のほかの issue
-
難易度 3/5 半日 初心者へのやさしさ 62/100
aboutcode-org/python-inspector#268 · コメント 1 件 ·
-
Add support for pylock.toml対応中かも @Anurag-S1ngh が 6 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
aboutcode-org/python-inspector#259 · コメント 1 件 ·
-
InconsistentCandidate: Pre-Release not allow対応中かも @Anurag-S1ngh が 6 日前に担当しました。 オープンbug design nice-to-have
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
aboutcode-org/python-inspector#257 · コメント 1 件 ·
-
Feature request: Mask repository credentials in --verbose output対応中かも @Rajeshwari2857 が 6 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 58/100
aboutcode-org/python-inspector#254 · コメント 4 件 · リアクション 4 件 ·
-
Python Inspector version 0.15.0 contains the wrong version string対応中かも @Anurag-S1ngh が 6 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
aboutcode-org/python-inspector#253 · コメント 1 件 ·
aboutcode-org/python-inspector の issue をすべて見る
似ている issue
-
getchaintips leaves out the active tip once a header is staged on it, where Core always lists itオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
btclib-org/btclib-node#2158 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
dbt-msft/dbt-sqlserver#897 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
Gathin23/cleanyourtv#2770 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
vllm-project/vllm#64845 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
dekobon/big-code-analysis#1729 ·
メンテナーはふだん 1 日以内に返信