Skip to content

Commit 38a8fb1

Browse files
authored
Merge pull request #12140 from uranusjr/ensure-preparation-for-dist
Ensure requirements are prepared before get_dist()
2 parents ea727e4 + 0cabefb commit 38a8fb1

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

src/pip/_internal/commands/download.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,14 +130,17 @@ def run(self, options: Values, args: List[str]) -> int:
130130
self.trace_basic_info(finder)
131131

132132
requirement_set = resolver.resolve(reqs, check_supported_wheels=True)
133-
requirement_set.warn_legacy_versions_and_specifiers()
134133

135134
downloaded: List[str] = []
136135
for req in requirement_set.requirements.values():
137136
if req.satisfied_by is None:
138137
assert req.name is not None
139138
preparer.save_linked_requirement(req)
140139
downloaded.append(req.name)
140+
141+
preparer.prepare_linked_requirements_more(requirement_set.requirements.values())
142+
requirement_set.warn_legacy_versions_and_specifiers()
143+
141144
if downloaded:
142145
write_output("Successfully downloaded %s", " ".join(downloaded))
143146

src/pip/_internal/commands/wheel.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,6 @@ def run(self, options: Values, args: List[str]) -> int:
145145
self.trace_basic_info(finder)
146146

147147
requirement_set = resolver.resolve(reqs, check_supported_wheels=True)
148-
requirement_set.warn_legacy_versions_and_specifiers()
149148

150149
reqs_to_build: List[InstallRequirement] = []
151150
for req in requirement_set.requirements.values():
@@ -154,6 +153,9 @@ def run(self, options: Values, args: List[str]) -> int:
154153
elif should_build_for_wheel_command(req):
155154
reqs_to_build.append(req)
156155

156+
preparer.prepare_linked_requirements_more(requirement_set.requirements.values())
157+
requirement_set.warn_legacy_versions_and_specifiers()
158+
157159
# build wheels
158160
build_successes, build_failures = build(
159161
reqs_to_build,

src/pip/_internal/resolution/resolvelib/resolver.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,9 @@ def resolve(
159159

160160
reqs = req_set.all_requirements
161161
self.factory.preparer.prepare_linked_requirements_more(reqs)
162+
for req in reqs:
163+
req.prepared = True
164+
req.needs_more_preparation = False
162165
return req_set
163166

164167
def get_installation_order(

0 commit comments

Comments
 (0)