Merge pull request #4347 from sashka/devel

Remove options and protocols in source line with regex.
reviewable/pr18780/r1
Michael DeHaan 11 years ago
commit 3835c2cb3a

@ -133,16 +133,14 @@ class SourcesList(object):
return os.path.abspath(os.path.join(apt_pkg.config.find_dir('Dir::Etc::sourceparts'), filename))
def _suggest_filename(self, line):
def _remove_protocol(s):
if '://' in s:
return s.split('://')[1]
else:
return s
def _cleanup_filename(s):
return '_'.join(re.sub('[^a-zA-Z0-9]', ' ', s).split())
parts = [_remove_protocol(part) for part in line.split() if part not in VALID_SOURCE_TYPES]
# Drop options and protocols.
line = re.sub('\[[^\]]+\]', '', line)
line = re.sub('\w+://', '', line)
parts = [part for part in line.split() if part not in VALID_SOURCE_TYPES]
return '%s.list' % _cleanup_filename(' '.join(parts[:1]))
def _parse(self, line, raise_if_invalid_or_disabled=False):

Loading…
Cancel
Save