|
@@ -43,6 +43,7 @@ __setvar_regexp__ = re.compile(r'(?P<base>.*?)(?P<keyword>_append|_prepend|_remo
|
|
|
__expand_var_regexp__ = re.compile(r"\${[^{}@\n\t :]+}")
|
|
|
__expand_python_regexp__ = re.compile(r"\${@.+?}")
|
|
|
__whitespace_split__ = re.compile(r'(\s)')
|
|
|
+__override_regexp__ = re.compile(r'[a-z0-9]+')
|
|
|
|
|
|
def infer_caller_details(loginfo, parent = False, varval = True):
|
|
|
"""Save the caller the trouble of specifying everything."""
|
|
@@ -597,7 +598,7 @@ class DataSmart(MutableMapping):
|
|
|
# aka pay the cookie monster
|
|
|
override = var[var.rfind('_')+1:]
|
|
|
shortvar = var[:var.rfind('_')]
|
|
|
- while override and override.islower():
|
|
|
+ while override and __override_regexp__.match(override):
|
|
|
if shortvar not in self.overridedata:
|
|
|
self.overridedata[shortvar] = []
|
|
|
if [var, override] not in self.overridedata[shortvar]:
|