Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 842867b

Browse filesBrowse files
committed
Add a dict to lookup the short requirement
the dict will look like this { "third_party_libs_numpy": "numpy=1.0.0" }
1 parent f400682 commit 842867b
Copy full SHA for 842867b

File tree

1 file changed

+15
-0
lines changed
Filter options

1 file changed

+15
-0
lines changed

‎python/pip_install/extract_wheels/parse_requirements_to_bzl.py

Copy file name to clipboardExpand all lines: python/pip_install/extract_wheels/parse_requirements_to_bzl.py
+15Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,13 @@ def repo_names_and_requirements(
7474
for ir, line in install_reqs
7575
]
7676

77+
def repo_names_to_short_requirments(
78+
install_reqs: List[Tuple[InstallRequirement, str]], repo_prefix: str
79+
) -> Dict[str, str]:
80+
return {
81+
bazel.sanitise_name(ir.name, prefix=repo_prefix):
82+
line.split(' ')[0] for ir, line in install_reqs
83+
}
7784

7885
def parse_whl_library_args(args: argparse.Namespace) -> Dict[str, Any]:
7986
whl_library_args = dict(vars(args))
@@ -107,6 +114,9 @@ def generate_parsed_requirements_contents(
107114
repo_names_and_reqs = repo_names_and_requirements(
108115
install_req_and_lines, repo_prefix
109116
)
117+
repo_names_to_short_reqs = repo_names_to_short_requirments(
118+
install_req_and_lines, repo_prefix
119+
)
110120
all_requirements = ", ".join(
111121
[
112122
bazel.sanitised_repo_library_label(ir.name, repo_prefix=repo_prefix)
@@ -131,6 +141,7 @@ def generate_parsed_requirements_contents(
131141
_packages = {repo_names_and_reqs}
132142
_config = {args}
133143
_annotations = {annotations}
144+
_repo_names_to_short_reqs = {repo_names_to_short_reqs}
134145
135146
def _clean_name(name):
136147
return name.replace("-", "_").replace(".", "_").lower()
@@ -151,6 +162,9 @@ def entry_point(pkg, script = None):
151162
if not script:
152163
script = pkg
153164
return "@{repo_prefix}" + _clean_name(pkg) + "//:{entry_point_prefix}_" + script
165+
166+
def short_requirement(repo_name):
167+
return _repo_names_to_short_reqs[repo_name]
154168
155169
def _get_annotation(requirement):
156170
# This expects to parse `setuptools==58.2.0 --hash=sha256:2551203ae6955b9876741a26ab3e767bb3242dafe86a32a749ea0d78b6792f11`
@@ -176,6 +190,7 @@ def install_deps():
176190
entry_point_prefix=bazel.WHEEL_ENTRY_POINT_PREFIX,
177191
py_library_label=bazel.PY_LIBRARY_LABEL,
178192
repo_names_and_reqs=repo_names_and_reqs,
193+
repo_names_to_short_reqs=repo_names_to_short_reqs,
179194
repo_prefix=repo_prefix,
180195
wheel_file_label=bazel.WHEEL_FILE_LABEL,
181196
)

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.