From 43b321ce917620a007298b5139be2c5d032c85f5 Mon Sep 17 00:00:00 2001 From: Andrew Bogott Date: Tue, 5 Mar 2019 19:01:05 +0000 Subject: [PATCH] Replace a bunch of \\ escapes with raw strings There are a few cases where changing to a raw string will change the behavior; I'll address that in a later patch. --- bootstrapvz/base/fs/partitionmaps/abstract.py | 6 +++--- bootstrapvz/base/pkg/sourceslist.py | 10 +++++----- bootstrapvz/common/bytes.py | 2 +- bootstrapvz/common/fs/__init__.py | 2 +- bootstrapvz/common/tasks/host.py | 2 +- bootstrapvz/plugins/cloud_init/tasks.py | 6 +++--- bootstrapvz/plugins/minimize_size/tasks/dpkg.py | 2 +- bootstrapvz/plugins/ntp/tasks.py | 2 +- bootstrapvz/providers/ec2/tasks/boot.py | 2 +- 9 files changed, 17 insertions(+), 17 deletions(-) diff --git a/bootstrapvz/base/fs/partitionmaps/abstract.py b/bootstrapvz/base/fs/partitionmaps/abstract.py index 5278110..be0eea4 100644 --- a/bootstrapvz/base/fs/partitionmaps/abstract.py +++ b/bootstrapvz/base/fs/partitionmaps/abstract.py @@ -69,9 +69,9 @@ class AbstractPartitionMap(FSMProxy): # Ask kpartx how the partitions will be mapped before actually attaching them. mappings = log_check_call(['kpartx', '-l', volume.device_path]) import re - regexp = re.compile('^(?P.+[^\\d](?P\\d+)) : ' - '(?P\\d) (?P\\d+) ' - '{device_path} (?P\\d+)$' + regexp = re.compile(r'^(?P.+[^\d](?P\d+)) : ' + r'(?P\d) (?P\d+) ' + r'{device_path} (?P\d+)$' .format(device_path=volume.device_path)) log_check_call(['kpartx', '-as', volume.device_path]) diff --git a/bootstrapvz/base/pkg/sourceslist.py b/bootstrapvz/base/pkg/sourceslist.py index 2f8fa4f..049b054 100644 --- a/bootstrapvz/base/pkg/sourceslist.py +++ b/bootstrapvz/base/pkg/sourceslist.py @@ -56,11 +56,11 @@ class Source(object): # The format is taken from `man sources.list` # or: http://manpages.debian.org/cgi-bin/man.cgi?sektion=5&query=sources.list&apropos=0&manpath=sid&locale=en import re - regexp = re.compile('^(?Pdeb|deb-src)\\s+' - '(\\[\\s*(?P.+\\S)?\\s*\\]\\s+)?' - '(?P\\S+)\\s+' - '(?P\\S+)' - '(\\s+(?P.+\\S))?\\s*$') + regexp = re.compile(r'^(?Pdeb|deb-src)\s+' + r'(\[\s*(?P.+\S)?\s*\]\s+)?' + r'(?P\S+)\s+' + r'(?P\S+)' + r'(\s+(?P.+\S))?\s*$') match = regexp.match(line).groupdict() if match is None: from .exceptions import SourceError diff --git a/bootstrapvz/common/bytes.py b/bootstrapvz/common/bytes.py index 3f29525..572ba23 100644 --- a/bootstrapvz/common/bytes.py +++ b/bootstrapvz/common/bytes.py @@ -29,7 +29,7 @@ class Bytes(object): @staticmethod def parse(qty_str): import re - regex = re.compile('^(?P\\d+)(?P[KMGT]i?B|B)$') + regex = re.compile(r'^(?P\d+)(?P[KMGT]i?B|B)$') parsed = regex.match(qty_str) if parsed is None: raise UnitError('Unable to parse ' + qty_str) diff --git a/bootstrapvz/common/fs/__init__.py b/bootstrapvz/common/fs/__init__.py index 191dc73..0f93c75 100644 --- a/bootstrapvz/common/fs/__init__.py +++ b/bootstrapvz/common/fs/__init__.py @@ -3,7 +3,7 @@ from contextlib import contextmanager def get_partitions(): import re - regexp = re.compile('^ *(?P\\d+) *(?P\\d+) *(?P\\d+) (?P\\S+)$') + regexp = re.compile(r'^ *(?P\d+) *(?P\d+) *(?P\d+) (?P\S+)$') matches = {} path = '/proc/partitions' with open(path) as partitions: diff --git a/bootstrapvz/common/tasks/host.py b/bootstrapvz/common/tasks/host.py index 64b41c3..2f5b480 100644 --- a/bootstrapvz/common/tasks/host.py +++ b/bootstrapvz/common/tasks/host.py @@ -21,7 +21,7 @@ class CheckExternalCommands(Task): log.debug('Checking availability of ' + command) path = find_executable(command) if path is None or not os.access(path, os.X_OK): - if re.match('^https?:\\/\\/', package): + if re.match(r'^https?:\/\/', package): msg = ('The command `{command}\' is not available, ' 'you can download the software at `{package}\'.' .format(command=command, package=package)) diff --git a/bootstrapvz/plugins/cloud_init/tasks.py b/bootstrapvz/plugins/cloud_init/tasks.py index 3382237..45ad979 100644 --- a/bootstrapvz/plugins/cloud_init/tasks.py +++ b/bootstrapvz/plugins/cloud_init/tasks.py @@ -51,8 +51,8 @@ class SetGroups(Task): from bootstrapvz.common.tools import sed_i cloud_cfg = os.path.join(info.root, 'etc/cloud/cloud.cfg') groups = info.manifest.plugins['cloud_init']['groups'] - search = ('^ groups: \\[adm, audio, cdrom, dialout, floppy, video,' - ' plugdev, dip\\]$') + search = (r'^ groups: \[adm, audio, cdrom, dialout, floppy, video,' + r' plugdev, dip\]$') replace = (' groups: [adm, audio, cdrom, dialout, floppy, video,' ' plugdev, dip, {groups}]').format(groups=', '.join(groups)) sed_i(cloud_cfg, search, replace) @@ -92,7 +92,7 @@ class DisableModules(Task): if patterns != "": patterns = patterns + "|" + pattern else: - patterns = "^\\s+-\\s+(" + pattern + patterns = r"^\s+-\s+(" + pattern patterns = patterns + ")$" regex = re.compile(patterns) diff --git a/bootstrapvz/plugins/minimize_size/tasks/dpkg.py b/bootstrapvz/plugins/minimize_size/tasks/dpkg.py index afd920a..652e107 100644 --- a/bootstrapvz/plugins/minimize_size/tasks/dpkg.py +++ b/bootstrapvz/plugins/minimize_size/tasks/dpkg.py @@ -44,7 +44,7 @@ class CreateBootstrapFilterScripts(Task): # The pattern matching when excluding is needed in order to filter # everything below e.g. /usr/share/locale but not the folder itself filter_lists = info._minimize_size['bootstrap_filter'] - exclude_list = '\\|'.join(map(lambda p: '.' + p + '.\\+', filter_lists['exclude'])) + exclude_list = r'\|'.join(map(lambda p: '.' + p + r'.\+', filter_lists['exclude'])) include_list = '\n'.join(map(lambda p: '.' + p, filter_lists['include'])) sed_i(filter_script, r'EXCLUDE_PATTERN', exclude_list) sed_i(filter_script, r'INCLUDE_PATHS', include_list) diff --git a/bootstrapvz/plugins/ntp/tasks.py b/bootstrapvz/plugins/ntp/tasks.py index 2fb31b9..9741a06 100644 --- a/bootstrapvz/plugins/ntp/tasks.py +++ b/bootstrapvz/plugins/ntp/tasks.py @@ -24,7 +24,7 @@ class SetNtpServers(Task): import re ntp_path = os.path.join(info.root, 'etc/ntp.conf') servers = list(info.manifest.plugins['ntp']['servers']) - debian_ntp_server = re.compile('.*[0-9]\\.debian\\.pool\\.ntp\\.org.*') + debian_ntp_server = re.compile(r'.*[0-9]\.debian\.pool\.ntp\.org.*') for line in fileinput.input(files=ntp_path, inplace=True): # Will write all the specified servers on the first match, then supress all other default servers if re.match(debian_ntp_server, line): diff --git a/bootstrapvz/providers/ec2/tasks/boot.py b/bootstrapvz/providers/ec2/tasks/boot.py index 9ef6493..3b630c1 100644 --- a/bootstrapvz/providers/ec2/tasks/boot.py +++ b/bootstrapvz/providers/ec2/tasks/boot.py @@ -53,7 +53,7 @@ class CreatePVGrubCustomRule(Task): grub_device = 'GRUB_DEVICE=/dev/xvda' + str(root_idx) sed_i(script_dst, '^GRUB_DEVICE=/dev/xvda$', grub_device) grub_root = '\troot (hd0,{idx})'.format(idx=root_idx - 1) - sed_i(script_dst, r'^\troot \(hd0\)$', grub_root) + sed_i(script_dst, '^\troot \\(hd0\\)$', grub_root) if info.manifest.volume['backing'] == 's3': from bootstrapvz.common.tools import sed_i