@@ -52,6 +52,7 @@ def get_python_version_region_markers(packages: list[Package]) -> list[BaseMarke
52
52
def get_project_dependency_packages (
53
53
locker : Locker ,
54
54
project_requires : list [Dependency ],
55
+ root_package_name : NormalizedName ,
55
56
project_python_marker : BaseMarker | None = None ,
56
57
extras : bool | Sequence [NormalizedName ] | None = None ,
57
58
) -> Iterator [DependencyPackage ]:
@@ -103,13 +104,15 @@ def get_project_dependency_packages(
103
104
for package , dependency in get_project_dependencies (
104
105
project_requires = selected ,
105
106
locked_packages = repository .packages ,
107
+ root_package_name = root_package_name ,
106
108
):
107
109
yield DependencyPackage (dependency = dependency , package = package )
108
110
109
111
110
112
def get_project_dependencies (
111
113
project_requires : list [Dependency ],
112
114
locked_packages : list [Package ],
115
+ root_package_name : NormalizedName ,
113
116
) -> Iterable [tuple [Package , Dependency ]]:
114
117
# group packages entries by name, this is required because requirement might use
115
118
# different constraints.
@@ -129,6 +132,7 @@ def get_project_dependencies(
129
132
nested_dependencies = walk_dependencies (
130
133
dependencies = project_requires ,
131
134
packages_by_name = packages_by_name ,
135
+ root_package_name = root_package_name ,
132
136
)
133
137
134
138
return nested_dependencies .items ()
@@ -137,6 +141,7 @@ def get_project_dependencies(
137
141
def walk_dependencies (
138
142
dependencies : list [Dependency ],
139
143
packages_by_name : dict [str , list [Package ]],
144
+ root_package_name : NormalizedName ,
140
145
) -> dict [Package , Dependency ]:
141
146
nested_dependencies : dict [Package , Dependency ] = {}
142
147
@@ -145,6 +150,8 @@ def walk_dependencies(
145
150
requirement = dependencies .pop (0 )
146
151
if (requirement , requirement .marker ) in visited :
147
152
continue
153
+ if requirement .name == root_package_name :
154
+ continue
148
155
visited .add ((requirement , requirement .marker ))
149
156
150
157
locked_package = get_locked_package (
0 commit comments