|
|
|
@ -114,11 +114,11 @@ class PackageDefinition: |
|
|
|
|
|
|
|
|
|
def parse_wrap(self) -> None: |
|
|
|
|
try: |
|
|
|
|
self.config = configparser.ConfigParser(interpolation=None) |
|
|
|
|
self.config.read(self.filename) |
|
|
|
|
config = configparser.ConfigParser(interpolation=None) |
|
|
|
|
config.read(self.filename) |
|
|
|
|
except configparser.Error as e: |
|
|
|
|
raise WrapException('Failed to parse {}: {}'.format(self.basename, str(e))) |
|
|
|
|
self.parse_wrap_section() |
|
|
|
|
self.parse_wrap_section(config) |
|
|
|
|
if self.type == 'redirect': |
|
|
|
|
# [wrap-redirect] have a `filename` value pointing to the real wrap |
|
|
|
|
# file we should parse instead. It must be relative to the current |
|
|
|
@ -140,21 +140,21 @@ class PackageDefinition: |
|
|
|
|
self.filename = str(fname) |
|
|
|
|
self.parse_wrap() |
|
|
|
|
return |
|
|
|
|
self.parse_provide_section() |
|
|
|
|
self.parse_provide_section(config) |
|
|
|
|
|
|
|
|
|
def parse_wrap_section(self) -> None: |
|
|
|
|
if len(self.config.sections()) < 1: |
|
|
|
|
def parse_wrap_section(self, config: configparser.ConfigParser) -> None: |
|
|
|
|
if len(config.sections()) < 1: |
|
|
|
|
raise WrapException('Missing sections in {}'.format(self.basename)) |
|
|
|
|
self.wrap_section = self.config.sections()[0] |
|
|
|
|
self.wrap_section = config.sections()[0] |
|
|
|
|
if not self.wrap_section.startswith('wrap-'): |
|
|
|
|
m = '{!r} is not a valid first section in {}' |
|
|
|
|
raise WrapException(m.format(self.wrap_section, self.basename)) |
|
|
|
|
self.type = self.wrap_section[5:] |
|
|
|
|
self.values = dict(self.config[self.wrap_section]) |
|
|
|
|
self.values = dict(config[self.wrap_section]) |
|
|
|
|
|
|
|
|
|
def parse_provide_section(self) -> None: |
|
|
|
|
if self.config.has_section('provide'): |
|
|
|
|
for k, v in self.config['provide'].items(): |
|
|
|
|
def parse_provide_section(self, config: configparser.ConfigParser) -> None: |
|
|
|
|
if config.has_section('provide'): |
|
|
|
|
for k, v in config['provide'].items(): |
|
|
|
|
if k == 'dependency_names': |
|
|
|
|
# A comma separated list of dependency names that does not |
|
|
|
|
# need a variable name |
|
|
|
|