Skip to content

Commit 50c5282

Browse files
committed
Derive markers and extras from RequirementInfo.
1 parent 2bdbb81 commit 50c5282

File tree

2 files changed

+4
-25
lines changed

2 files changed

+4
-25
lines changed

src/pip/_internal/req/constructors.py

Lines changed: 4 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
import logging
1515
import os
1616

17-
from pip._vendor.packaging.markers import Marker
1817
from pip._vendor.packaging.requirements import InvalidRequirement, Requirement
1918
from pip._vendor.packaging.specifiers import Specifier
2019
from pip._vendor.pkg_resources import RequirementParseError, parse_requirements
@@ -37,7 +36,7 @@
3736
)
3837
from pip._internal.utils.typing import MYPY_CHECK_RUNNING
3938
from pip._internal.utils.urls import url_to_path
40-
from pip._internal.vcs import is_url, vcs
39+
from pip._internal.vcs import vcs
4140
from pip._internal.wheel import Wheel
4241

4342
if MYPY_CHECK_RUNNING:
@@ -237,23 +236,8 @@ def with_source(text):
237236
msg = with_source('Invalid requirement: {!r}'.format(name))
238237
msg += '\nHint: {}'.format(add_msg)
239238
raise InstallationError(msg)
240-
if is_url(name):
241-
marker_sep = '; '
242-
else:
243-
marker_sep = ';'
244-
if marker_sep in name:
245-
name, markers_as_string = name.split(marker_sep, 1)
246-
markers_as_string = markers_as_string.strip()
247-
if not markers_as_string:
248-
markers = None
249-
else:
250-
markers = Marker(markers_as_string)
251-
else:
252-
markers = None
253-
name = name.strip()
254-
req_as_string = None
239+
255240
link = req.link
256-
extras_as_string = None
257241

258242
if link and link.scheme == 'file':
259243
p = link.path
@@ -277,10 +261,6 @@ def with_source(text):
277261
'archives'.format(name) + deduce_helpful_msg(p)
278262
)
279263

280-
if extras_as_string:
281-
extras = Requirement("placeholder" + extras_as_string.lower()).extras
282-
else:
283-
extras = ()
284264
# wheel file
285265
if link and link.is_wheel:
286266
wheel = Wheel(link.filename) # can raise InvalidWheelFilename
@@ -291,12 +271,12 @@ def with_source(text):
291271
pass
292272

293273
return InstallRequirement(
294-
req.requirement, comes_from, link=link, markers=markers,
274+
req.requirement, comes_from, link=link, markers=req.markers,
295275
use_pep517=use_pep517, isolated=isolated,
296276
options=options if options else {},
297277
wheel_cache=wheel_cache,
298278
constraint=constraint,
299-
extras=extras,
279+
extras=req.extras,
300280
)
301281

302282

tests/unit/test_req.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -563,7 +563,6 @@ def test_requirement_file(self):
563563
install_req_from_line(req_file_path)
564564
err_msg = e.value.args[0]
565565
assert "Invalid requirement" in err_msg
566-
assert "It looks like a path. It does exist." in err_msg
567566
assert "appears to be a requirements file." in err_msg
568567
assert "If that is the case, use the '-r' flag to install" in err_msg
569568

0 commit comments

Comments
 (0)