mirror of
ssh://git.janware.com/janware/proj/jw-pkg
synced 2026-04-24 17:23:36 +02:00
cmds.projects.BaseCmdPkgRelations: Better variables
Make variable names a little more readable and searchable within the long pkg_relations_list() method by making their names longer and truer to what they actually mean. Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
8c34dae526
commit
a0dcf59277
1 changed files with 24 additions and 26 deletions
|
|
@ -20,7 +20,7 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
self,
|
self,
|
||||||
rel_type: str,
|
rel_type: str,
|
||||||
flavours: list[str],
|
flavours: list[str],
|
||||||
modules: list[str],
|
seed_pkgs: list[str],
|
||||||
subsections: list[str]|None=None,
|
subsections: list[str]|None=None,
|
||||||
delimiter: str=' ',
|
delimiter: str=' ',
|
||||||
no_subpackages: bool=False,
|
no_subpackages: bool=False,
|
||||||
|
|
@ -36,35 +36,33 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
) -> list[str]:
|
) -> list[str]:
|
||||||
|
|
||||||
if subsections is None:
|
if subsections is None:
|
||||||
subsecs = self.app.os_cascade()
|
subsections = self.app.os_cascade()
|
||||||
subsecs.append('jw')
|
subsections.append('jw')
|
||||||
else:
|
|
||||||
subsecs = subsections
|
|
||||||
|
|
||||||
expand_semver_revision_range = expand_semver_revision_range
|
expand_semver_revision_range = expand_semver_revision_range
|
||||||
if syntax == self.Syntax.debian:
|
if syntax == self.Syntax.debian:
|
||||||
expand_semver_revision_range = True
|
expand_semver_revision_range = True
|
||||||
|
|
||||||
if skip_excluded:
|
if skip_excluded:
|
||||||
excluded = self.app.get_project_refs(modules, ['build'], 'exclude',
|
excluded = self.app.get_project_refs(seed_pkgs, ['build'], 'exclude',
|
||||||
scope = Scope.One, add_self=False, names_only=True)
|
scope = Scope.One, add_self=False, names_only=True)
|
||||||
ignore |= set(excluded)
|
ignore |= set(excluded)
|
||||||
|
|
||||||
log(DEBUG, f'flavours="{", ".join(flavours)}", subsecs="{", ".join(subsecs)}", "ignore="{", ".join(ignore)}"')
|
log(DEBUG, f'flavours="{", ".join(flavours)}", subsections="{", ".join(subsections)}", "ignore="{", ".join(ignore)}"')
|
||||||
|
|
||||||
version_pattern = re.compile("[0-9-.]*")
|
version_pattern = re.compile("[0-9-.]*")
|
||||||
r: list[str] = []
|
ret: list[str] = []
|
||||||
for flavour in flavours:
|
for flavour in flavours: # build / release / run / devel
|
||||||
for s in subsecs:
|
for subsec in subsections:
|
||||||
section = 'pkg.' + rel_type + '.' + s
|
section = 'pkg.' + rel_type + '.' + subsec
|
||||||
visited = set()
|
visited = set()
|
||||||
sec_modules = modules.copy()
|
cur_pkgs = seed_pkgs.copy()
|
||||||
while len(sec_modules):
|
while len(cur_pkgs):
|
||||||
m = sec_modules.pop(0)
|
cur_pkg = cur_pkgs.pop(0)
|
||||||
if m in visited or m in ignore:
|
if cur_pkg in visited or cur_pkg in ignore:
|
||||||
continue
|
continue
|
||||||
visited.add(m)
|
visited.add(cur_pkg)
|
||||||
value = self.app.get_value(m, section, flavour)
|
value = self.app.get_value(cur_pkg, section, flavour)
|
||||||
if not value:
|
if not value:
|
||||||
continue
|
continue
|
||||||
deps = value.split(',')
|
deps = value.split(',')
|
||||||
|
|
@ -80,11 +78,11 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
dep[0] = dep_name
|
dep[0] = dep_name
|
||||||
for i, item in enumerate(dep):
|
for i, item in enumerate(dep):
|
||||||
dep[i] = item.strip()
|
dep[i] = item.strip()
|
||||||
if s == 'jw':
|
if subsec == 'jw':
|
||||||
if recursive and not dep_name in visited and not dep_name in sec_modules:
|
if recursive and not dep_name in visited and not dep_name in cur_pkgs:
|
||||||
sec_modules.append(dep_name)
|
cur_pkgs.append(dep_name)
|
||||||
if len(dep) == 3:
|
if len(dep) == 3:
|
||||||
if dont_expand_version_macros and dep_name in sec_modules:
|
if dont_expand_version_macros and dep_name in cur_pkgs:
|
||||||
version = dep[2]
|
version = dep[2]
|
||||||
else:
|
else:
|
||||||
version = self.app.get_value(dep_name, 'version', '')
|
version = self.app.get_value(dep_name, 'version', '')
|
||||||
|
|
@ -122,7 +120,7 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
case _:
|
case _:
|
||||||
raise NotImplementedError(f'Expanding SemVer range "{dep[0]} {dep[1]} {dep[3]}" is not yet implemented')
|
raise NotImplementedError(f'Expanding SemVer range "{dep[0]} {dep[1]} {dep[3]}" is not yet implemented')
|
||||||
for expanded_dep in expanded_deps:
|
for expanded_dep in expanded_deps:
|
||||||
if hide_self and dep_name in modules:
|
if hide_self and dep_name in seed_pkgs:
|
||||||
continue
|
continue
|
||||||
match syntax:
|
match syntax:
|
||||||
case self.Syntax.semver:
|
case self.Syntax.semver:
|
||||||
|
|
@ -139,10 +137,10 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
dep_str = ' '.join(expanded_dep)
|
dep_str = ' '.join(expanded_dep)
|
||||||
if quote:
|
if quote:
|
||||||
dep_str = '"' + dep_str + '"'
|
dep_str = '"' + dep_str + '"'
|
||||||
if not dep_str in r:
|
if not dep_str in ret:
|
||||||
log(DEBUG, f'Appending dependency >{dep_str}<')
|
log(DEBUG, f'Appending dependency >{dep_str}<')
|
||||||
r.append(dep_str)
|
ret.append(dep_str)
|
||||||
return r
|
return ret
|
||||||
|
|
||||||
def pkg_relations(self, rel_type: str, args: Namespace) -> str:
|
def pkg_relations(self, rel_type: str, args: Namespace) -> str:
|
||||||
|
|
||||||
|
|
@ -150,7 +148,7 @@ class BaseCmdPkgRelations(Cmd):
|
||||||
self.pkg_relations_list(
|
self.pkg_relations_list(
|
||||||
rel_type=rel_type,
|
rel_type=rel_type,
|
||||||
flavours = args.flavours.split(','),
|
flavours = args.flavours.split(','),
|
||||||
modules = args.modules,
|
seed_pkgs = args.modules,
|
||||||
subsections = None if args.subsections is None else args.subsections.split(','),
|
subsections = None if args.subsections is None else args.subsections.split(','),
|
||||||
no_subpackages = args.no_subpackages,
|
no_subpackages = args.no_subpackages,
|
||||||
dont_strip_revision = args.dont_strip_revision,
|
dont_strip_revision = args.dont_strip_revision,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue