Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Python inspector command fails when requirements.txt includes sys_platform

オープン
#246 コメント 2 件 リアクション 2 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
52/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
python
領域
tooling

調査の方向性

示されている python-inspector コマンドと requirements.txt で失敗を再現し、次に python_inspector/api.py からの呼び出しをたどって、find_matches と _iter_matches 周辺の python_inspector/resolution.py を調査します。sys_platform 要件に対してコマンドが完了し、示されている macOS のケースで NoVersionsFound を発生させずに torch==2.8.0 を解決できれば完了です。

索引モデルが issue の本文から書いたものです。

説明

Python inspector command fails to scan when some packages include system platform information:

>python-inspector --requirement requirements.txt -p 313 -o macos --json-pdt tmp.json

Traceback (most recent call last):
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/resolve_cli.py", line 259, in resolve_dependencies
    resolution_result: Dict = resolver_api(
                              ~~~~~~~~~~~~^
        requirement_files=requirement_files,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<15 lines>...
        generic_paths=generic_paths,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/api.py", line 283, in resolve_dependencies
    resolution, purls = resolve(
                        ~~~~~~~^
        direct_dependencies=direct_dependencies,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<8 lines>...
        printer=printer,
        ^^^^^^^^^^^^^^^^
    )
    ^
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/api.py", line 374, in resolve
    resolved_dependencies, packages = get_resolved_dependencies(
                                      ~~~~~~~~~~~~~~~~~~~~~~~~~^
        requirements=requirements,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<8 lines>...
        printer=printer,
        ^^^^^^^^^^^^^^^^
    )
    ^
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/api.py", line 465, in get_resolved_dependencies
    resolver_results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 596, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 429, in resolve
    self._add_to_criteria(self.state.criteria, r, parent=None)
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 125, in _add_to_criteria
    matches = self._p.find_matches(
        identifier=identifier,
    ...<9 lines>...
        ),
    )
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/resolution.py", line 634, in find_matches
    candidates = sorted(
        self._iter_matches(identifier, requirements, incompatibilities),
        key=operator.attrgetter("version"),
        reverse=True,
    )
  File "~/Documents/misc/python-torch-multi-platform/.venv/lib/python3.13/site-packages/python_inspector/resolution.py", line 617, in _iter_matches
    raise NoVersionsFound(f"This package does not exist: {name}")
python_inspector.error.NoVersionsFound: This package does not exist: torch

The requirements.txt file (https://github.com/voidpetal/pyinsp-system-platform-test/tree/main):

torch==2.8.0; sys_platform != "linux"
主要言語
Python
スター
23
フォーク
29
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

aboutcode-org/python-inspector のほかの issue

aboutcode-org/python-inspector の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。