Skip to content

Commit c3ceac8

Browse files
Bordalexierule
authored andcommitted
pkg, strict version (#14814)
(cherry picked from commit 5dc370f)
1 parent 445e426 commit c3ceac8

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

.actions/setup_tools.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
from importlib.util import module_from_spec, spec_from_file_location
2626
from itertools import chain, groupby
2727
from types import ModuleType
28-
from typing import List
28+
from typing import List, Sequence
2929

3030
from pkg_resources import parse_requirements
3131

@@ -500,18 +500,22 @@ def _download_frontend(root: str = _PROJECT_ROOT):
500500
print("The Lightning UI downloading has failed!")
501501

502502

503-
def _relax_require_versions(source_dir: str = "src", req_dir: str = "requirements") -> None:
503+
def _relax_require_versions(
504+
source_dir: str = "src", req_dir: str = "requirements", strict_pkgs: Sequence[str] = ("lightning_app",)
505+
) -> None:
504506
"""Parse the base requirements and append as version adjustments if needed `pkg>=X1.Y1.Z1,==X2.Y2.*`.
505507
506508
>>> _relax_require_versions("../src", "../requirements")
507509
"""
510+
strict_pkgs = strict_pkgs or tuple()
508511
reqs = load_requirements(req_dir, file_name="base.txt")
509512
for i, req in enumerate(parse_requirements(reqs)):
510-
ver_ = parse_version_from_file(os.path.join(source_dir, req.name))
511-
if not ver_:
513+
ver = parse_version_from_file(os.path.join(source_dir, req.name))
514+
if not ver:
512515
continue
513-
ver2 = ".".join(ver_.split(".")[:2] + ["*"])
514-
reqs[i] = f"{req}, =={ver2}"
516+
if req.name not in strict_pkgs:
517+
ver = ".".join(ver.split(".")[:2] + ["*"])
518+
reqs[i] = f"{req}, =={ver}"
515519

516520
with open(os.path.join(req_dir, "base.txt"), "w") as fp:
517521
fp.writelines([ln + os.linesep for ln in reqs])

0 commit comments

Comments
 (0)