diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2012-08-01 18:12:51 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2012-08-01 18:12:51 (GMT) |
commit | 98516a6930acdd39f74c609817cbf19be6c4a7df (patch) | |
tree | 89a0cac4c60cb0414c644cb1cc8e52d6096b9e8b | |
parent | 7c7ea62e6c20ed3a91dbac1ea922141975d0100f (diff) | |
download | cpython-98516a6930acdd39f74c609817cbf19be6c4a7df.zip cpython-98516a6930acdd39f74c609817cbf19be6c4a7df.tar.gz cpython-98516a6930acdd39f74c609817cbf19be6c4a7df.tar.bz2 |
Fix findnocoding.p and pysource.py scripts
I suppose that these scripts didn't work since Python 3.0.
-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 5aa1feb..d664386 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 c7dbe60..7348a68 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 |