diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2024-01-26 12:23:55 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2024-01-30 20:48:46 +0000 |
commit | 854262f698bd5ba819de833736249279b9153de6 (patch) | |
tree | 504b80fa8cf2fac8b9c35022f6c2947c648581ab | |
parent | 82e3d79437a37761adaa716927b0dee9ab8ec7fb (diff) |
Fix DEPS keys with '.'
The Python syntax treats dot as a hierarchical lookup, but we need it as
a flat key lookup.
Forgotten part missed from 118 adaptation.
Change-Id: I9c5bd009081da31ba85cbf6c9122f77aa1b81651
Pick-to: 6.7
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
-rw-r--r-- | tools/scripts/git_submodule.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/scripts/git_submodule.py b/tools/scripts/git_submodule.py index 89af8aa41..3d301d16b 100644 --- a/tools/scripts/git_submodule.py +++ b/tools/scripts/git_submodule.py @@ -4,6 +4,7 @@ import glob import os import re +import string import subprocess import sys import version_resolver as resolver @@ -18,6 +19,11 @@ def subprocessCheckOutput(args): print(args) return subprocess.check_output(args).decode() +# Special string formatter that support flat key names with '.' in them +class DepsFormatter(string.Formatter): + def get_field(self, field_name, args, kwargs): + return (self.get_value(field_name, args, kwargs), field_name) + class SubmoduleDEPSParser(resolver.DEPSParser): def __init__(self): super().__init__() @@ -45,7 +51,7 @@ class SubmoduleDEPSParser(resolver.DEPSParser): (not dep in module_whitelist): continue if url: - url = url.format(**self.get_vars()) + url = DepsFormatter().vformat(url, [], self.get_vars()) repo_rev = url.split('@') repo = repo_rev[0] rev = repo_rev[1] |