cmds / lib: Fix more static checker findings
Fix more errors and warnings produced by "make check" as reported by CI and a pyright upgrade.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
cdc1ce9f33
commit
24928c6f5d
16 changed files with 123 additions and 122 deletions
|
|
@ -3,13 +3,14 @@ from argparse import ArgumentParser, Namespace
|
|||
from .Cmd import Cmd, Parent
|
||||
from .lib.templates import tmpl_render
|
||||
|
||||
|
||||
class CmdCreatePkgConfig(Cmd): # export
|
||||
|
||||
def __init__(self, parent: Parent) -> None:
|
||||
super().__init__(parent,
|
||||
'create-pkg-config',
|
||||
help='Generate a pkg-config file for a module')
|
||||
super().__init__(
|
||||
parent,
|
||||
'create-pkg-config',
|
||||
help = 'Generate a pkg-config file for a module'
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def __cleanup_requires(string: str) -> str:
|
||||
|
|
@ -28,17 +29,17 @@ class CmdCreatePkgConfig(Cmd): # export
|
|||
|
||||
def add_arguments(self, parser: ArgumentParser) -> None:
|
||||
super().add_arguments(parser)
|
||||
parser.add_argument('-F', '--project-descr-file', default=None)
|
||||
parser.add_argument('-d', '--description', default=None)
|
||||
parser.add_argument('-n', '--name', default=None)
|
||||
parser.add_argument('-s', '--summary', default=None)
|
||||
parser.add_argument('-p', '--prefix', default=None)
|
||||
parser.add_argument('-v', '--version', default=None)
|
||||
parser.add_argument('-c', '--cflags', default=None)
|
||||
parser.add_argument('-l', '--libflags', default=None)
|
||||
parser.add_argument('-r', '--requires-run', default=None)
|
||||
parser.add_argument('-R', '--requires-build', default=None)
|
||||
parser.add_argument('-V', '--variables', nargs='*')
|
||||
parser.add_argument('-F', '--project-descr-file', default = None)
|
||||
parser.add_argument('-d', '--description', default = None)
|
||||
parser.add_argument('-n', '--name', default = None)
|
||||
parser.add_argument('-s', '--summary', default = None)
|
||||
parser.add_argument('-p', '--prefix', default = None)
|
||||
parser.add_argument('-v', '--version', default = None)
|
||||
parser.add_argument('-c', '--cflags', default = None)
|
||||
parser.add_argument('-l', '--libflags', default = None)
|
||||
parser.add_argument('-r', '--requires-run', default = None)
|
||||
parser.add_argument('-R', '--requires-build', default = None)
|
||||
parser.add_argument('-V', '--variables', nargs = '*')
|
||||
|
||||
async def _run(self, args: Namespace) -> None:
|
||||
project_conf_var_keys = [
|
||||
|
|
@ -47,7 +48,7 @@ class CmdCreatePkgConfig(Cmd): # export
|
|||
'requires_run',
|
||||
'requires_build',
|
||||
]
|
||||
merged: dict[str, str|None] = {}
|
||||
merged: dict[str, str | None] = {}
|
||||
for key in project_conf_var_keys:
|
||||
val = getattr(args, key)
|
||||
if val is not None and args.project_descr_file:
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ import re
|
|||
|
||||
from argparse import ArgumentParser, Namespace
|
||||
|
||||
from ...lib.base import Input
|
||||
from ...lib.log import DEBUG, log
|
||||
from ...lib.Uri import Uri
|
||||
from ...lib.util import get_password, get_username, run_curl_into
|
||||
|
|
@ -78,7 +77,7 @@ class CmdListRepos(Cmd): # export
|
|||
print('\n'.join(result.stdout_str.splitlines()))
|
||||
return
|
||||
case 'https':
|
||||
from jw.pkg.lib.base import InputMode
|
||||
from jw.pkg.lib.base import Input, InputMode
|
||||
|
||||
cmd_input: Input = InputMode.NonInteractive
|
||||
if re.match(r'https://github.com', args.base_url):
|
||||
|
|
|
|||
|
|
@ -10,9 +10,9 @@ class CmdPythonpath(Cmd): # export
|
|||
parent, 'pythonpath', help = 'Generate PYTHONPATH for given modules'
|
||||
)
|
||||
|
||||
def add_arguments(self, p: ArgumentParser) -> None:
|
||||
super().add_arguments(p)
|
||||
p.add_argument('module', help = 'Modules', nargs = '*')
|
||||
def add_arguments(self, parser: ArgumentParser) -> None:
|
||||
super().add_arguments(parser)
|
||||
parser.add_argument('module', help = 'Modules', nargs = '*')
|
||||
|
||||
async def _run(self, args: Namespace) -> None:
|
||||
deps = self.app.get_project_refs(
|
||||
|
|
|
|||
|
|
@ -61,7 +61,6 @@ class CmdRequiredOsPkg(Cmd): # export
|
|||
vals = self.app.get_values(deps, ['pkg.requires.' + sec], [flavour])
|
||||
if vals:
|
||||
requires |= set(vals)
|
||||
if args.quote:
|
||||
out = [f'"{dep}"' for dep in requires]
|
||||
out = [f'"{dep}"' for dep in requires] if args.quote else requires
|
||||
# TODO: add all not in build tree as -devel
|
||||
print(' '.join(out))
|
||||
|
|
|
|||
|
|
@ -68,6 +68,7 @@ def pkg_relations(
|
|||
if cur_pkg in visited or cur_pkg in ignore:
|
||||
continue
|
||||
for subsec in subsections:
|
||||
version: str | None = None
|
||||
section = 'pkg.' + rel_type + '.' + subsec
|
||||
visited.add(cur_pkg)
|
||||
value = app.get_value(cur_pkg, section, flavour)
|
||||
|
|
@ -111,37 +112,38 @@ def pkg_relations(
|
|||
raise Exception('Unknown version specifier in ' + spec)
|
||||
if len(dep) != 3 or not expand_semver_revision_range:
|
||||
expanded_deps = [dep]
|
||||
continue
|
||||
assert version is not None
|
||||
expanded_deps = []
|
||||
semver = re.split(r'[.-]', version)
|
||||
if len(semver) != 4:
|
||||
expanded_deps = [dep]
|
||||
else:
|
||||
expanded_deps = []
|
||||
semver = re.split(r'[.-]', version)
|
||||
if len(semver) != 4:
|
||||
expanded_deps = [dep]
|
||||
else:
|
||||
release = int(semver[2])
|
||||
major_minor = f'{semver[0]}.{semver[1]}'
|
||||
match dep[1]:
|
||||
case '>' | '>=':
|
||||
expanded_deps.append([dep[0], dep[1], dep[2]])
|
||||
expanded_deps.append(
|
||||
[dep[0], '<', f'{major_minor}.{release + 1}']
|
||||
)
|
||||
case '<' | '<=':
|
||||
expanded_deps.append([dep[0], dep[1], dep[2]])
|
||||
case '=':
|
||||
expanded_deps.append(
|
||||
[dep[0], '>=', f'{major_minor}.{release}']
|
||||
)
|
||||
expanded_deps.append(
|
||||
[dep[0], '<', f'{major_minor}.{release + 1}']
|
||||
)
|
||||
case _:
|
||||
raise NotImplementedError(
|
||||
(
|
||||
'Expanding SemVer range '
|
||||
f'"{dep[0]} {dep[1]} {dep[3]}" '
|
||||
'is not yet implemented'
|
||||
)
|
||||
release = int(semver[2])
|
||||
major_minor = f'{semver[0]}.{semver[1]}'
|
||||
match dep[1]:
|
||||
case '>' | '>=':
|
||||
expanded_deps.append([dep[0], dep[1], dep[2]])
|
||||
expanded_deps.append(
|
||||
[dep[0], '<', f'{major_minor}.{release + 1}']
|
||||
)
|
||||
case '<' | '<=':
|
||||
expanded_deps.append([dep[0], dep[1], dep[2]])
|
||||
case '=':
|
||||
expanded_deps.append(
|
||||
[dep[0], '>=', f'{major_minor}.{release}']
|
||||
)
|
||||
expanded_deps.append(
|
||||
[dep[0], '<', f'{major_minor}.{release + 1}']
|
||||
)
|
||||
case _:
|
||||
raise NotImplementedError(
|
||||
(
|
||||
'Expanding SemVer range '
|
||||
f'"{dep[0]} {dep[1]} {dep[3]}" '
|
||||
'is not yet implemented'
|
||||
)
|
||||
)
|
||||
for expanded_dep in expanded_deps:
|
||||
if hide_self and dep_name in seed_pkgs:
|
||||
continue
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue