summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/distutils/cmd.py54
-rw-r--r--Lib/distutils/dir_util.py60
-rw-r--r--Lib/distutils/fancy_getopt.py109
-rw-r--r--Lib/distutils/filelist.py69
4 files changed, 145 insertions, 147 deletions
diff --git a/Lib/distutils/cmd.py b/Lib/distutils/cmd.py
index 7866d1b..ce44829 100644
--- a/Lib/distutils/cmd.py
+++ b/Lib/distutils/cmd.py
@@ -59,13 +59,13 @@ class Command:
# late import because of mutual dependence between these classes
from distutils.dist import Distribution
- if not isinstance (dist, Distribution):
+ if not isinstance(dist, Distribution):
raise TypeError, "dist must be a Distribution instance"
if self.__class__ is Command:
raise RuntimeError, "Command is an abstract class"
self.distribution = dist
- self.initialize_options ()
+ self.initialize_options()
# Per-command versions of the global flags, so that the user can
# customize Distutils' behaviour command-by-command and let some
@@ -98,9 +98,9 @@ class Command:
def __getattr__ (self, attr):
if attr in ('verbose', 'dry_run'):
- myval = getattr (self, "_" + attr)
+ myval = getattr(self, "_" + attr)
if myval is None:
- return getattr (self.distribution, attr)
+ return getattr(self.distribution, attr)
else:
return myval
else:
@@ -109,7 +109,7 @@ class Command:
def ensure_finalized (self):
if not self.finalized:
- self.finalize_options ()
+ self.finalize_options()
self.finalized = 1
@@ -273,7 +273,7 @@ class Command:
# -- Convenience methods for commands ------------------------------
def get_command_name (self):
- if hasattr (self, 'command_name'):
+ if hasattr(self, 'command_name'):
return self.command_name
else:
return self.__class__.__name__
@@ -296,12 +296,12 @@ class Command:
# Option_pairs: list of (src_option, dst_option) tuples
- src_cmd_obj = self.distribution.get_command_obj (src_cmd)
- src_cmd_obj.ensure_finalized ()
+ src_cmd_obj = self.distribution.get_command_obj(src_cmd)
+ src_cmd_obj.ensure_finalized()
for (src_option, dst_option) in option_pairs:
- if getattr (self, dst_option) is None:
- setattr (self, dst_option,
- getattr (src_cmd_obj, src_option))
+ if getattr(self, dst_option) is None:
+ setattr(self, dst_option,
+ getattr(src_cmd_obj, src_option))
def get_finalized_command (self, command, create=1):
@@ -310,8 +310,8 @@ class Command:
'command', call its 'ensure_finalized()' method, and return the
finalized command object.
"""
- cmd_obj = self.distribution.get_command_obj (command, create)
- cmd_obj.ensure_finalized ()
+ cmd_obj = self.distribution.get_command_obj(command, create)
+ cmd_obj.ensure_finalized()
return cmd_obj
# XXX rename to 'get_reinitialized_command()'? (should do the
@@ -325,7 +325,7 @@ class Command:
Distribution, which creates and finalizes the command object if
necessary and then invokes its 'run()' method.
"""
- self.distribution.run_command (command)
+ self.distribution.run_command(command)
def get_sub_commands (self):
@@ -345,8 +345,8 @@ class Command:
# -- External world manipulation -----------------------------------
def warn (self, msg):
- sys.stderr.write ("warning: %s: %s\n" %
- (self.get_command_name(), msg))
+ sys.stderr.write("warning: %s: %s\n" %
+ (self.get_command_name(), msg))
def execute (self, func, args, msg=None, level=1):
@@ -389,17 +389,17 @@ class Command:
def move_file (self, src, dst, level=1):
"""Move a file respecting verbose and dry-run flags."""
- return file_util.move_file (src, dst,
- self.verbose >= level,
- self.dry_run)
+ return file_util.move_file(src, dst,
+ self.verbose >= level,
+ self.dry_run)
def spawn (self, cmd, search_path=1, level=1):
"""Spawn an external command respecting verbose and dry-run flags."""
from distutils.spawn import spawn
- spawn (cmd, search_path,
- self.verbose >= level,
- self.dry_run)
+ spawn(cmd, search_path,
+ self.verbose >= level,
+ self.dry_run)
def make_archive (self, base_name, format,
@@ -421,15 +421,15 @@ class Command:
"""
if exec_msg is None:
exec_msg = "generating %s from %s" % \
- (outfile, string.join (infiles, ', '))
+ (outfile, string.join(infiles, ', '))
if skip_msg is None:
skip_msg = "skipping %s (inputs unchanged)" % outfile
# Allow 'infiles' to be a single string
- if type (infiles) is StringType:
+ if type(infiles) is StringType:
infiles = (infiles,)
- elif type (infiles) not in (ListType, TupleType):
+ elif type(infiles) not in (ListType, TupleType):
raise TypeError, \
"'infiles' must be a string, or a list or tuple of strings"
@@ -437,11 +437,11 @@ class Command:
# exist, is out-of-date, or the 'force' flag is true) then
# perform the action that presumably regenerates it
if self.force or dep_util.newer_group (infiles, outfile):
- self.execute (func, args, exec_msg, level)
+ self.execute(func, args, exec_msg, level)
# Otherwise, print the "skip" message
else:
- self.announce (skip_msg, level)
+ self.announce(skip_msg, level)
# make_file ()
diff --git a/Lib/distutils/dir_util.py b/Lib/distutils/dir_util.py
index 85f8a18..768cb4e 100644
--- a/Lib/distutils/dir_util.py
+++ b/Lib/distutils/dir_util.py
@@ -40,21 +40,21 @@ def mkpath (name, mode=0777, verbose=0, dry_run=0):
# the creation of the whole path? (quite easy to do the latter since
# we're not using a recursive algorithm)
- name = os.path.normpath (name)
+ name = os.path.normpath(name)
created_dirs = []
- if os.path.isdir (name) or name == '':
+ if os.path.isdir(name) or name == '':
return created_dirs
- if _path_created.get (name):
+ if _path_created.get(name):
return created_dirs
- (head, tail) = os.path.split (name)
+ (head, tail) = os.path.split(name)
tails = [tail] # stack of lone dirs to create
- while head and tail and not os.path.isdir (head):
+ while head and tail and not os.path.isdir(head):
#print "splitting '%s': " % head,
- (head, tail) = os.path.split (head)
+ (head, tail) = os.path.split(head)
#print "to ('%s','%s')" % (head, tail)
- tails.insert (0, tail) # push next higher dir onto stack
+ tails.insert(0, tail) # push next higher dir onto stack
#print "stack of tails:", tails
@@ -63,8 +63,8 @@ def mkpath (name, mode=0777, verbose=0, dry_run=0):
# that does *not* exist)
for d in tails:
#print "head = %s, d = %s: " % (head, d),
- head = os.path.join (head, d)
- if _path_created.get (head):
+ head = os.path.join(head, d)
+ if _path_created.get(head):
continue
if verbose:
@@ -72,7 +72,7 @@ def mkpath (name, mode=0777, verbose=0, dry_run=0):
if not dry_run:
try:
- os.mkdir (head)
+ os.mkdir(head)
created_dirs.append(head)
except OSError, exc:
raise DistutilsFileError, \
@@ -97,13 +97,13 @@ def create_tree (base_dir, files, mode=0777, verbose=0, dry_run=0):
# First get the list of directories to create
need_dir = {}
for file in files:
- need_dir[os.path.join (base_dir, os.path.dirname (file))] = 1
+ need_dir[os.path.join(base_dir, os.path.dirname(file))] = 1
need_dirs = need_dir.keys()
need_dirs.sort()
# Now create them
for dir in need_dirs:
- mkpath (dir, mode, verbose, dry_run)
+ mkpath(dir, mode, verbose, dry_run)
# create_tree ()
@@ -136,11 +136,11 @@ def copy_tree (src, dst,
from distutils.file_util import copy_file
- if not dry_run and not os.path.isdir (src):
+ if not dry_run and not os.path.isdir(src):
raise DistutilsFileError, \
"cannot copy tree '%s': not a directory" % src
try:
- names = os.listdir (src)
+ names = os.listdir(src)
except os.error, (errno, errstr):
if dry_run:
names = []
@@ -149,32 +149,32 @@ def copy_tree (src, dst,
"error listing files in '%s': %s" % (src, errstr)
if not dry_run:
- mkpath (dst, verbose=verbose)
+ mkpath(dst, verbose=verbose)
outputs = []
for n in names:
- src_name = os.path.join (src, n)
- dst_name = os.path.join (dst, n)
+ src_name = os.path.join(src, n)
+ dst_name = os.path.join(dst, n)
- if preserve_symlinks and os.path.islink (src_name):
- link_dest = os.readlink (src_name)
+ if preserve_symlinks and os.path.islink(src_name):
+ link_dest = os.readlink(src_name)
if verbose:
print "linking %s -> %s" % (dst_name, link_dest)
if not dry_run:
- os.symlink (link_dest, dst_name)
- outputs.append (dst_name)
+ os.symlink(link_dest, dst_name)
+ outputs.append(dst_name)
- elif os.path.isdir (src_name):
- outputs.extend (
- copy_tree (src_name, dst_name,
- preserve_mode, preserve_times, preserve_symlinks,
- update, verbose, dry_run))
+ elif os.path.isdir(src_name):
+ outputs.extend(
+ copy_tree(src_name, dst_name,
+ preserve_mode, preserve_times, preserve_symlinks,
+ update, verbose, dry_run))
else:
- copy_file (src_name, dst_name,
- preserve_mode, preserve_times,
- update, None, verbose, dry_run)
- outputs.append (dst_name)
+ copy_file(src_name, dst_name,
+ preserve_mode, preserve_times,
+ update, None, verbose, dry_run)
+ outputs.append(dst_name)
return outputs
diff --git a/Lib/distutils/fancy_getopt.py b/Lib/distutils/fancy_getopt.py
index f935200..6f8b8c0 100644
--- a/Lib/distutils/fancy_getopt.py
+++ b/Lib/distutils/fancy_getopt.py
@@ -22,14 +22,14 @@ from distutils.errors import *
# utilities, we use '-' in place of '_'. (The spirit of LISP lives on!)
# The similarities to NAME are again not a coincidence...
longopt_pat = r'[a-zA-Z](?:[a-zA-Z0-9-]*)'
-longopt_re = re.compile (r'^%s$' % longopt_pat)
+longopt_re = re.compile(r'^%s$' % longopt_pat)
# For recognizing "negative alias" options, eg. "quiet=!verbose"
-neg_alias_re = re.compile ("^(%s)=!(%s)$" % (longopt_pat, longopt_pat))
+neg_alias_re = re.compile("^(%s)=!(%s)$" % (longopt_pat, longopt_pat))
# This is used to translate long options to legitimate Python identifiers
# (for use as attributes of some object).
-longopt_xlate = string.maketrans ('-', '_')
+longopt_xlate = string.maketrans('-', '_')
# This records (option, value) pairs in the order seen on the command line;
# it's close to what getopt.getopt() returns, but with short options
@@ -107,7 +107,7 @@ class FancyGetopt:
"option conflict: already an option '%s'" % long_option
else:
option = (long_option, short_option, help_string)
- self.option_table.append (option)
+ self.option_table.append(option)
self.option_index[long_option] = option
@@ -120,7 +120,7 @@ class FancyGetopt:
"""Translate long option name 'long_option' to the form it
has as an attribute of some object: ie., translate hyphens
to underscores."""
- return string.translate (long_option, longopt_xlate)
+ return string.translate(long_option, longopt_xlate)
def _check_alias_dict (self, aliases, what):
@@ -137,7 +137,7 @@ class FancyGetopt:
def set_aliases (self, alias):
"""Set the aliases for this option parser."""
- self._check_alias_dict (alias, "alias")
+ self._check_alias_dict(alias, "alias")
self.alias = alias
def set_negative_aliases (self, negative_alias):
@@ -145,15 +145,15 @@ class FancyGetopt:
'negative_alias' should be a dictionary mapping option names to
option names, both the key and value must already be defined
in the option table."""
- self._check_alias_dict (negative_alias, "negative alias")
+ self._check_alias_dict(negative_alias, "negative alias")
self.negative_alias = negative_alias
def _grok_option_table (self):
- """Populate the various data structures that keep tabs on
- the option table. Called by 'getopt()' before it can do
- anything worthwhile."""
-
+ """Populate the various data structures that keep tabs on the
+ option table. Called by 'getopt()' before it can do anything
+ worthwhile.
+ """
self.long_opts = []
self.short_opts = []
self.short2long.clear()
@@ -163,7 +163,7 @@ class FancyGetopt:
(long, short, help) = option
except ValueError:
raise DistutilsGetoptError, \
- "invalid option tuple " + str (option)
+ "invalid option tuple " + str(option)
# Type- and value-check the option names
if type(long) is not StringType or len(long) < 2:
@@ -172,12 +172,12 @@ class FancyGetopt:
"must be a string of length >= 2") % long
if (not ((short is None) or
- (type (short) is StringType and len (short) == 1))):
+ (type(short) is StringType and len(short) == 1))):
raise DistutilsGetoptError, \
("invalid short option '%s': "
"must a single character or None") % short
- self.long_opts.append (long)
+ self.long_opts.append(long)
if long[-1] == '=': # option takes an argument?
if short: short = short + ':'
@@ -216,14 +216,14 @@ class FancyGetopt:
# later translate it to an attribute name on some object. Have
# to do this a bit late to make sure we've removed any trailing
# '='.
- if not longopt_re.match (long):
+ if not longopt_re.match(long):
raise DistutilsGetoptError, \
("invalid long option name '%s' " +
"(must be letters, numbers, hyphens only") % long
- self.attr_name[long] = self.get_attr_name (long)
+ self.attr_name[long] = self.get_attr_name(long)
if short:
- self.short_opts.append (short)
+ self.short_opts.append(short)
self.short2long[short[0]] = long
# for option_table
@@ -239,8 +239,8 @@ class FancyGetopt:
(args, object). If 'object' is supplied, it is modified in place
and 'getopt()' just returns 'args'; in both cases, the returned
'args' is a modified copy of the passed-in 'args' list, which is
- left untouched."""
-
+ left untouched.
+ """
if args is None:
args = sys.argv[1:]
if object is None:
@@ -251,17 +251,17 @@ class FancyGetopt:
self._grok_option_table()
- short_opts = string.join (self.short_opts)
+ short_opts = string.join(self.short_opts)
try:
- (opts, args) = getopt.getopt (args, short_opts, self.long_opts)
+ (opts, args) = getopt.getopt(args, short_opts, self.long_opts)
except getopt.error, msg:
raise DistutilsArgError, msg
for (opt, val) in opts:
- if len (opt) == 2 and opt[0] == '-': # it's a short option
+ if len(opt) == 2 and opt[0] == '-': # it's a short option
opt = self.short2long[opt[1]]
- elif len (opt) > 2 and opt[0:2] == '--':
+ elif len(opt) > 2 and opt[0:2] == '--':
opt = opt[2:]
else:
@@ -277,7 +277,7 @@ class FancyGetopt:
raise DistutilsInternalError, \
"this can't happen: bad option value '%s'" % value
- alias = self.negative_alias.get (opt)
+ alias = self.negative_alias.get(opt)
if alias:
opt = alias
val = 0
@@ -285,8 +285,8 @@ class FancyGetopt:
val = 1
attr = self.attr_name[opt]
- setattr (object, attr, val)
- self.option_order.append ((opt, val))
+ setattr(object, attr, val)
+ self.option_order.append((opt, val))
# for opts
@@ -301,8 +301,8 @@ class FancyGetopt:
def get_option_order (self):
"""Returns the list of (option, value) tuples processed by the
previous run of 'getopt()'. Raises RuntimeError if
- 'getopt()' hasn't been called yet."""
-
+ 'getopt()' hasn't been called yet.
+ """
if self.option_order is None:
raise RuntimeError, "'getopt()' hasn't been called yet"
else:
@@ -311,8 +311,8 @@ class FancyGetopt:
def generate_help (self, header=None):
"""Generate help text (a list of strings, one per suggested line of
- output) from the option table for this FancyGetopt object."""
-
+ output) from the option table for this FancyGetopt object.
+ """
# Blithely assume the option table is good: probably wouldn't call
# 'generate_help()' unless you've already called 'getopt()'.
@@ -321,7 +321,7 @@ class FancyGetopt:
for option in self.option_table:
long = option[0]
short = option[1]
- l = len (long)
+ l = len(long)
if long[-1] == '=':
l = l - 1
if short is not None:
@@ -363,29 +363,29 @@ class FancyGetopt:
for (long,short,help) in self.option_table:
- text = wrap_text (help, text_width)
+ text = wrap_text(help, text_width)
if long[-1] == '=':
long = long[0:-1]
# Case 1: no short option at all (makes life easy)
if short is None:
if text:
- lines.append (" --%-*s %s" % (max_opt, long, text[0]))
+ lines.append(" --%-*s %s" % (max_opt, long, text[0]))
else:
- lines.append (" --%-*s " % (max_opt, long))
+ lines.append(" --%-*s " % (max_opt, long))
# Case 2: we have a short option, so we have to include it
# just after the long option
else:
opt_names = "%s (-%s)" % (long, short)
if text:
- lines.append (" --%-*s %s" %
- (max_opt, opt_names, text[0]))
+ lines.append(" --%-*s %s" %
+ (max_opt, opt_names, text[0]))
else:
- lines.append (" --%-*s" % opt_names)
+ lines.append(" --%-*s" % opt_names)
for l in text[1:]:
- lines.append (big_indent + l)
+ lines.append(big_indent + l)
# for self.option_table
@@ -396,20 +396,19 @@ class FancyGetopt:
def print_help (self, header=None, file=None):
if file is None:
file = sys.stdout
- for line in self.generate_help (header):
- file.write (line + "\n")
- # print_help ()
+ for line in self.generate_help(header):
+ file.write(line + "\n")
# class FancyGetopt
def fancy_getopt (options, negative_opt, object, args):
- parser = FancyGetopt (options)
- parser.set_negative_aliases (negative_opt)
- return parser.getopt (args, object)
+ parser = FancyGetopt(options)
+ parser.set_negative_aliases(negative_opt)
+ return parser.getopt(args, object)
-WS_TRANS = string.maketrans (string.whitespace, ' ' * len (string.whitespace))
+WS_TRANS = string.maketrans(string.whitespace, ' ' * len(string.whitespace))
def wrap_text (text, width):
"""wrap_text(text : string, width : int) -> [string]
@@ -420,13 +419,13 @@ def wrap_text (text, width):
if text is None:
return []
- if len (text) <= width:
+ if len(text) <= width:
return [text]
- text = string.expandtabs (text)
- text = string.translate (text, WS_TRANS)
- chunks = re.split (r'( +|-+)', text)
- chunks = filter (None, chunks) # ' - ' results in empty strings
+ text = string.expandtabs(text)
+ text = string.translate(text, WS_TRANS)
+ chunks = re.split(r'( +|-+)', text)
+ chunks = filter(None, chunks) # ' - ' results in empty strings
lines = []
while chunks:
@@ -435,9 +434,9 @@ def wrap_text (text, width):
cur_len = 0 # length of current line
while chunks:
- l = len (chunks[0])
+ l = len(chunks[0])
if cur_len + l <= width: # can squeeze (at least) this chunk in
- cur_line.append (chunks[0])
+ cur_line.append(chunks[0])
del chunks[0]
cur_len = cur_len + l
else: # this line is full
@@ -452,7 +451,7 @@ def wrap_text (text, width):
# chunk that's too big too fit on a line -- so we break
# down and break it up at the line width
if cur_len == 0:
- cur_line.append (chunks[0][0:width])
+ cur_line.append(chunks[0][0:width])
chunks[0] = chunks[0][width:]
# all-whitespace chunks at the end of a line can be discarded
@@ -463,7 +462,7 @@ def wrap_text (text, width):
# and store this line in the list-of-all-lines -- as a single
# string, of course!
- lines.append (string.join (cur_line, ''))
+ lines.append(string.join(cur_line, ''))
# while chunks
@@ -501,5 +500,5 @@ say, "How should I know?"].)"""
for w in (10, 20, 30, 40):
print "width: %d" % w
- print string.join (wrap_text (text, w), "\n")
+ print string.join(wrap_text(text, w), "\n")
print
diff --git a/Lib/distutils/filelist.py b/Lib/distutils/filelist.py
index 84f36d2..211b65f 100644
--- a/Lib/distutils/filelist.py
+++ b/Lib/distutils/filelist.py
@@ -55,7 +55,7 @@ class FileList:
# -- Fallback warning/debug functions ------------------------------
def __warn (self, msg):
- sys.stderr.write ("warning: %s\n" % msg)
+ sys.stderr.write("warning: %s\n" % msg)
def __debug_print (self, msg):
"""Print 'msg' to stdout if the global DEBUG (taken from the
@@ -87,7 +87,7 @@ class FileList:
def remove_duplicates (self):
# Assumes list has been sorted!
- for i in range (len(self.files)-1, 0, -1):
+ for i in range(len(self.files)-1, 0, -1):
if self.files[i] == self.files[i-1]:
del self.files[i]
@@ -95,21 +95,21 @@ class FileList:
# -- "File template" methods ---------------------------------------
def _parse_template_line (self, line):
- words = string.split (line)
+ words = string.split(line)
action = words[0]
patterns = dir = dir_pattern = None
if action in ('include', 'exclude',
'global-include', 'global-exclude'):
- if len (words) < 2:
+ if len(words) < 2:
raise DistutilsTemplateError, \
"'%s' expects <pattern1> <pattern2> ..." % action
patterns = map(convert_path, words[1:])
elif action in ('recursive-include', 'recursive-exclude'):
- if len (words) < 3:
+ if len(words) < 3:
raise DistutilsTemplateError, \
"'%s' expects <dir> <pattern1> <pattern2> ..." % action
@@ -117,7 +117,7 @@ class FileList:
patterns = map(convert_path, words[2:])
elif action in ('graft', 'prune'):
- if len (words) != 2:
+ if len(words) != 2:
raise DistutilsTemplateError, \
"'%s' expects a single <dir_pattern>" % action
@@ -146,13 +146,13 @@ class FileList:
if action == 'include':
self.debug_print("include " + string.join(patterns))
for pattern in patterns:
- if not self.include_pattern (pattern, anchor=1):
+ if not self.include_pattern(pattern, anchor=1):
self.warn("no files found matching '%s'" % pattern)
elif action == 'exclude':
self.debug_print("exclude " + string.join(patterns))
for pattern in patterns:
- if not self.exclude_pattern (pattern, anchor=1):
+ if not self.exclude_pattern(pattern, anchor=1):
self.warn(
"no previously-included files found matching '%s'"%
pattern)
@@ -160,15 +160,15 @@ class FileList:
elif action == 'global-include':
self.debug_print("global-include " + string.join(patterns))
for pattern in patterns:
- if not self.include_pattern (pattern, anchor=0):
- self.warn (("no files found matching '%s' " +
- "anywhere in distribution") %
- pattern)
+ if not self.include_pattern(pattern, anchor=0):
+ self.warn(("no files found matching '%s' " +
+ "anywhere in distribution") %
+ pattern)
elif action == 'global-exclude':
self.debug_print("global-exclude " + string.join(patterns))
for pattern in patterns:
- if not self.exclude_pattern (pattern, anchor=0):
+ if not self.exclude_pattern(pattern, anchor=0):
self.warn(("no previously-included files matching '%s' " +
"found anywhere in distribution") %
pattern)
@@ -177,8 +177,8 @@ class FileList:
self.debug_print("recursive-include %s %s" %
(dir, string.join(patterns)))
for pattern in patterns:
- if not self.include_pattern (pattern, prefix=dir):
- self.warn (("no files found matching '%s' " +
+ if not self.include_pattern(pattern, prefix=dir):
+ self.warn(("no files found matching '%s' " +
"under directory '%s'") %
(pattern, dir))
@@ -190,11 +190,11 @@ class FileList:
self.warn(("no previously-included files matching '%s' " +
"found under directory '%s'") %
(pattern, dir))
-
+
elif action == 'graft':
self.debug_print("graft " + dir_pattern)
if not self.include_pattern(None, prefix=dir_pattern):
- self.warn ("no directories found matching '%s'" % dir_pattern)
+ self.warn("no directories found matching '%s'" % dir_pattern)
elif action == 'prune':
self.debug_print("prune " + dir_pattern)
@@ -212,8 +212,7 @@ class FileList:
# -- Filtering/selection methods -----------------------------------
def include_pattern (self, pattern,
- anchor=1, prefix=None, is_regex=0):
-
+ anchor=1, prefix=None, is_regex=0):
"""Select strings (presumably filenames) from 'self.files' that
match 'pattern', a Unix-style wildcard (glob) pattern. Patterns
are not quite the same as implemented by the 'fnmatch' module: '*'
@@ -239,7 +238,7 @@ class FileList:
Return 1 if files are found.
"""
files_found = 0
- pattern_re = translate_pattern (pattern, anchor, prefix, is_regex)
+ pattern_re = translate_pattern(pattern, anchor, prefix, is_regex)
self.debug_print("include_pattern: applying regex r'%s'" %
pattern_re.pattern)
@@ -248,9 +247,9 @@ class FileList:
self.findall()
for name in self.allfiles:
- if pattern_re.search (name):
+ if pattern_re.search(name):
self.debug_print(" adding " + name)
- self.files.append (name)
+ self.files.append(name)
files_found = 1
return files_found
@@ -267,11 +266,11 @@ class FileList:
Return 1 if files are found.
"""
files_found = 0
- pattern_re = translate_pattern (pattern, anchor, prefix, is_regex)
+ pattern_re = translate_pattern(pattern, anchor, prefix, is_regex)
self.debug_print("exclude_pattern: applying regex r'%s'" %
pattern_re.pattern)
- for i in range (len(self.files)-1, -1, -1):
- if pattern_re.search (self.files[i]):
+ for i in range(len(self.files)-1, -1, -1):
+ if pattern_re.search(self.files[i]):
self.debug_print(" removing " + self.files[i])
del self.files[i]
files_found = 1
@@ -299,11 +298,11 @@ def findall (dir = os.curdir):
while stack:
dir = pop()
- names = os.listdir (dir)
+ names = os.listdir(dir)
for name in names:
if dir != os.curdir: # avoid the dreaded "./" syndrome
- fullname = os.path.join (dir, name)
+ fullname = os.path.join(dir, name)
else:
fullname = name
@@ -311,9 +310,9 @@ def findall (dir = os.curdir):
stat = os.stat(fullname)
mode = stat[ST_MODE]
if S_ISREG(mode):
- list.append (fullname)
+ list.append(fullname)
elif S_ISDIR(mode) and not S_ISLNK(mode):
- push (fullname)
+ push(fullname)
return list
@@ -324,7 +323,7 @@ def glob_to_re (pattern):
that '*' does not match "special characters" (which are
platform-specific).
"""
- pattern_re = fnmatch.translate (pattern)
+ pattern_re = fnmatch.translate(pattern)
# '?' and '*' in the glob pattern become '.' and '.*' in the RE, which
# IMHO is wrong -- '?' and '*' aren't supposed to match slash in Unix,
@@ -333,7 +332,7 @@ def glob_to_re (pattern):
# character except the special characters.
# XXX currently the "special characters" are just slash -- i.e. this is
# Unix-only.
- pattern_re = re.sub (r'(^|[^\\])\.', r'\1[^/]', pattern_re)
+ pattern_re = re.sub(r'(^|[^\\])\.', r'\1[^/]', pattern_re)
return pattern_re
# glob_to_re ()
@@ -352,17 +351,17 @@ def translate_pattern (pattern, anchor=1, prefix=None, is_regex=0):
return pattern
if pattern:
- pattern_re = glob_to_re (pattern)
+ pattern_re = glob_to_re(pattern)
else:
pattern_re = ''
if prefix is not None:
- prefix_re = (glob_to_re (prefix))[0:-1] # ditch trailing $
- pattern_re = "^" + os.path.join (prefix_re, ".*" + pattern_re)
+ prefix_re = (glob_to_re(prefix))[0:-1] # ditch trailing $
+ pattern_re = "^" + os.path.join(prefix_re, ".*" + pattern_re)
else: # no prefix -- respect anchor flag
if anchor:
pattern_re = "^" + pattern_re
- return re.compile (pattern_re)
+ return re.compile(pattern_re)
# translate_pattern ()