diff options
Diffstat (limited to 'Tools/scripts')
| -rwxr-xr-x | Tools/scripts/findnocoding.py | 22 | ||||
| -rwxr-xr-x | Tools/scripts/pysource.py | 6 | 
2 files changed, 14 insertions, 14 deletions
diff --git a/Tools/scripts/findnocoding.py b/Tools/scripts/findnocoding.py index 5aa1febade..d6643860a2 100755 --- a/Tools/scripts/findnocoding.py +++ b/Tools/scripts/findnocoding.py @@ -32,7 +32,7 @@ except ImportError:                           "no sophisticated Python source file search will be done.", file=sys.stderr) -decl_re = re.compile(r"coding[=:]\s*([-\w.]+)") +decl_re = re.compile(rb"coding[=:]\s*([-\w.]+)")  def get_declaration(line):      match = decl_re.search(line) @@ -50,21 +50,21 @@ def has_correct_encoding(text, codec):  def needs_declaration(fullpath):      try: -        infile = open(fullpath) +        infile = open(fullpath, 'rb')      except IOError: # Oops, the file was removed - ignore it          return None -    line1 = infile.readline() -    line2 = infile.readline() +    with infile: +        line1 = infile.readline() +        line2 = infile.readline() -    if get_declaration(line1) or get_declaration(line2): -        # the file does have an encoding declaration, so trust it -        infile.close() -        return False +        if get_declaration(line1) or get_declaration(line2): +            # the file does have an encoding declaration, so trust it +            infile.close() +            return False -    # check the whole file for non utf-8 characters -    rest = infile.read() -    infile.close() +        # check the whole file for non utf-8 characters +        rest = infile.read()      if has_correct_encoding(line1+line2+rest, "utf-8"):          return False diff --git a/Tools/scripts/pysource.py b/Tools/scripts/pysource.py index c7dbe605d4..7348a68f21 100755 --- a/Tools/scripts/pysource.py +++ b/Tools/scripts/pysource.py @@ -22,7 +22,7 @@ __all__ = ["has_python_ext", "looks_like_python", "can_be_compiled", "walk_pytho  import os, re -binary_re = re.compile('[\x00-\x08\x0E-\x1F\x7F]') +binary_re = re.compile(br'[\x00-\x08\x0E-\x1F\x7F]')  debug = False @@ -42,7 +42,7 @@ def _open(fullpath):          return None      try: -        return open(fullpath) +        return open(fullpath, "rb")      except IOError as err: # Access denied, or a special file - ignore it          print_debug("%s: access denied: %s" % (fullpath, err))          return None @@ -65,7 +65,7 @@ def looks_like_python(fullpath):      if fullpath.endswith(".py") or fullpath.endswith(".pyw"):          return True -    elif "python" in line: +    elif b"python" in line:          # disguised Python script (e.g. CGI)          return True  | 
