summaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2025-05-02 15:45:33 +0200
committerDylan Baker <dylan@pnwbakers.com>2025-05-06 13:21:24 -0700
commitd55364fba7c61dbc103e758b2ac27bc172de9b3d (patch)
tree38f50efffac071aeb14e90a1ed4c09a084f12237 /mesonbuild
parent8e2e5c52d00c014ffb90464fa09633fb2a0cc6a4 (diff)
downloadmeson-d55364fba7c61dbc103e758b2ac27bc172de9b3d.tar.gz
options: fix types for initialize_from_subproject_call
No code changes, just making mypy annotations truthful. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/options.py15
1 files changed, 6 insertions, 9 deletions
diff --git a/mesonbuild/options.py b/mesonbuild/options.py
index 8a6387894..594aaf940 100644
--- a/mesonbuild/options.py
+++ b/mesonbuild/options.py
@@ -1394,21 +1394,19 @@ class OptionStore:
keys = ', '.join(unknown_options)
raise MesonException(f'Unknown options: {keys}')
- def hacky_mchackface_back_to_list(self, optdict: T.Dict[str, str]) -> T.List[str]:
+ def hacky_mchackface_back_to_list(self, optdict: T.Union[T.List[str], OptionStringLikeDict]) -> T.List[str]:
if isinstance(optdict, dict):
return [f'{k}={v}' for k, v in optdict.items()]
return optdict
def initialize_from_subproject_call(self,
subproject: str,
- spcall_default_options: T.Union[T.List[str], OptionStringLikeDict],
- project_default_options: T.Union[T.List[str], OptionStringLikeDict],
- cmd_line_options: T.Union[T.List[str], OptionStringLikeDict]) -> None:
+ spcall_default_options_in: T.Union[T.List[str], OptionStringLikeDict],
+ project_default_options_in: T.Union[T.List[str], OptionStringLikeDict],
+ cmd_line_options: OptionStringLikeDict) -> None:
is_first_invocation = True
- spcall_default_options = self.hacky_mchackface_back_to_list(spcall_default_options) # type: ignore [arg-type]
- project_default_options = self.hacky_mchackface_back_to_list(project_default_options) # type: ignore [arg-type]
- if isinstance(spcall_default_options, str):
- spcall_default_options = [spcall_default_options]
+ spcall_default_options = self.hacky_mchackface_back_to_list(spcall_default_options_in)
+ project_default_options = self.hacky_mchackface_back_to_list(project_default_options_in)
for o in itertools.chain(project_default_options, spcall_default_options):
keystr, valstr = o.split('=', 1)
key = OptionKey.from_string(keystr)
@@ -1426,7 +1424,6 @@ class OptionStore:
aug_str = str(key)
self.augments[aug_str] = valstr
# Check for pending options
- assert isinstance(cmd_line_options, dict)
for key, valstr in cmd_line_options.items(): # type: ignore [assignment]
if not isinstance(key, OptionKey):
key = OptionKey.from_string(key)