mirror of
https://github.com/PyCQA/flake8.git
synced 2026-03-29 18:46:52 +00:00
config: Normalize paths in config relative to provided parent directory
This sets things up to support normalizing paths relative to parent directories specified by callers who have more context for determining what paths should be relative to.
This commit is contained in:
parent
c8494e7ac0
commit
8be5a7294b
1 changed files with 7 additions and 4 deletions
|
|
@ -184,9 +184,12 @@ class MergedConfigParser(object):
|
|||
#: Our instance of our :class:`~ConfigFileFinder`
|
||||
self.config_finder = config_finder
|
||||
|
||||
def _normalize_value(self, option, value):
|
||||
def _normalize_value(self, option, value, parent=None):
|
||||
if parent is None:
|
||||
parent = self.config_finder.local_directory
|
||||
|
||||
final_value = option.normalize(
|
||||
value, self.config_finder.local_directory
|
||||
value, parent
|
||||
)
|
||||
LOG.debug(
|
||||
'%r has been normalized to %r for option "%s"',
|
||||
|
|
@ -196,7 +199,7 @@ class MergedConfigParser(object):
|
|||
)
|
||||
return final_value
|
||||
|
||||
def _parse_config(self, config_parser):
|
||||
def _parse_config(self, config_parser, parent=None):
|
||||
config_dict = {}
|
||||
for option_name in config_parser.options(self.program_name):
|
||||
if option_name not in self.config_options:
|
||||
|
|
@ -216,7 +219,7 @@ class MergedConfigParser(object):
|
|||
value = method(self.program_name, option_name)
|
||||
LOG.debug('Option "%s" returned value: %r', option_name, value)
|
||||
|
||||
final_value = self._normalize_value(option, value)
|
||||
final_value = self._normalize_value(option, value, parent)
|
||||
config_dict[option.config_name] = final_value
|
||||
|
||||
return config_dict
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue