InconsistentCandidate: Pre-Release not allow
@Anurag-S1ngh 已經在處理了。
開始於 2026年10月25日。
評估
研究方向
使用提供的 pyproject.toml 和匯出的 requirements.txt 重現回報的命令,然後檢查 python_inspector/resolve_cli.py 和 python_inspector/api.py 中與相依性解析相關的部分。檢查 resolvelib 如何處理 pre-release 候選項和條件式需求;完成標準是範例在保留所述版本限制的情況下,能夠在不出現 InconsistentCandidate 的狀態下完成解析。
由索引模型根據 Issue 內容生成。
描述
I'm using Open Source Review Toolkit to resolve the dependencies of a poetry.project. Within the pyproject.tom, a pre-release version of a dependency is used: genai_endpoints = { version = "0.2.2rc20251105201257", source = "GENAI" } which is resolved to poetry.lock as
[[package]]
name = "genai-endpoints"
version = "0.2.2rc20251105201257"
description = "Semvox genAI endpoints"
optional = false
python-versions = ">=3.12,<4.0"
groups = ["main", "dev"]
files = [
{file = "genai_endpoints-0.2.2rc20251105201257-py3-none-any.whl", hash = "sha256:23f0d77f01d07c4c08a44045c3d8876affd88e48cf4de6e5953ee3d8a60f931e"},
{file = "genai_endpoints-0.2.2rc20251105201257.tar.gz", hash = "sha256:0f4a6fd239ea18cafe3f9c468f81048adbb710a8e6235f25defe436f590dc1c1"},
]
and with poetry export to requirements.txt: genai-endpoints==0.2.2rc20251105201257 ; python_version == "3.12"
but python-inspector fails with :
Running 'python-inspector --python-version 312 --operating-system linux --json-pdt /tmp/ort-PythonInspector17489324190711353943/python-inspector9615377530813343324.json --analyze-setup-py-insecurely --requirement /tmp/ort-Poetry2549011213989081689/requirements6460697747488281912.txt --prefer-source' in '/tmp/ort-Poetry2549011213989081689' failed with exit code 1:
10:06:45 Traceback (most recent call last):
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/python_inspector/resolve_cli.py", line 259, in resolve_dependencies
10:06:45 resolution_result: Dict = resolver_api(
10:06:45 ~~~~~~~~~~~~^
10:06:45 requirement_files=requirement_files,
10:06:45 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
10:06:45 ...<15 lines>...
10:06:45 generic_paths=generic_paths,
10:06:45 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
10:06:45 )
10:06:45 ^
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/python_inspector/api.py", line 283, in resolve_dependencies
10:06:45 resolution, purls = resolve(
10:06:45 ~~~~~~~^
10:06:45 direct_dependencies=direct_dependencies,
10:06:45 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
10:06:45 ...<8 lines>...
10:06:45 printer=printer,
10:06:45 ^^^^^^^^^^^^^^^^
10:06:45 )
10:06:45 [...skipping 2 lines...]
10:06:45 resolved_dependencies, packages = get_resolved_dependencies(
10:06:45 ~~~~~~~~~~~~~~~~~~~~~~~~~^
10:06:45 requirements=requirements,
10:06:45 ^^^^^^^^^^^^^^^^^^^^^^^^^^
10:06:45 ...<8 lines>...
10:06:45 printer=printer,
10:06:45 ^^^^^^^^^^^^^^^^
10:06:45 )
10:06:45 ^
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/python_inspector/api.py", line 465, in get_resolved_dependencies
10:06:45 resolver_results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 601, in resolve
10:06:45 state = resolution.resolve(requirements, max_rounds=max_rounds)
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 513, in resolve
10:06:45 failure_criterion = self._attempt_to_pin_criterion(name)
10:06:45 File "/opt/python/versions/3.13.5/lib/python3.13/site-packages/resolvelib/resolvers/resolution.py", line 235, in _attempt_to_pin_criterion
10:06:45 raise InconsistentCandidate(candidate, criterion)
10:06:45 resolvelib.resolvers.exceptions.InconsistentCandidate: Provided candidate Candidate(name='genai-endpoints', version=<Version('0.2.2rc20251105201257')>, extras=set()) does not satisfy <Requirement('genai-endpoints==0.2.2rc20251105201257; python_version == "3.12"')>, <Requirement('genai-endpoints<0.3.0,>=0.2.1')>
10:06:45
IS there any way to either allow-prereleases or pin a version to conditions?
- 主要語言
- Python
- 星號
- 23
- 分支
- 29
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
這個專案沒有提供開發容器、Dockerfile 或貢獻指南,環境需要你自己搭建:先看它的 README,通用步驟見我們的新手貢獻指南。
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 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 則留言 ·
-
Feature request: Mask repository credentials in --verbose output可能已有人在做 @Rajeshwari2857 於 6 天前認領。 未關閉
難度 2/5 1-3 小時 新手友好度 58/100
aboutcode-org/python-inspector#254 · 4 則留言 · 4 個 reaction ·
-
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 則留言 ·
-
難度 3/5 1-2 天 新手友好度 52/100
aboutcode-org/python-inspector#246 · 2 則留言 · 2 個 reaction ·
查看 aboutcode-org/python-inspector 的全部 Issue
相似的 Issue
-
[oblt-aw][autodoc] Document new required `shared-org-key` input for `obs-aw-dependency-review`可能已有人在做 @github-actions 今天認領。 未關閉
難度 1/5 1 小時以內 新手友好度 90/100
維護者通常 1 天內回覆
-
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 小時 新手友好度 76/100
Dao-AILab/flash-attention#3097 ·
維護者通常 3 天內回覆