Skip self-dependencies in dependency resolver

PyPI packages can have self-referential dependencies for extras
(e.g., pytest[testing] depends on pytest). These were incorrectly
detected as circular dependencies. Now we skip them.
This commit is contained in:
Mondo Diaz
2026-02-02 19:45:34 -06:00
parent 3a09accfe6
commit 101152f87f

View File

@@ -767,6 +767,10 @@ def resolve_dependencies(
# Resolve each dependency first (depth-first)
for dep in deps:
# Skip self-dependencies (can happen with PyPI extras like pytest[testing])
if dep.dependency_project == proj_name and dep.dependency_package == pkg_name:
continue
resolved_dep = _resolve_dependency_to_artifact(
db,
dep.dependency_project,