Download Pytorch/Tools/scripts/findnocoding.py from RayTBRP/codellama-CodeLlama-7b-Python-hf: direct link, hf CLI and curl.
- Browser
- Download file 2.95 kB
-
https://huggingface.co/RayTBRP/codellama-CodeLlama-7b-Python-hf/resolve/c0c5506eba15c7ab03ff4f59bbe251ee2db72517/Pytorch/Tools/scripts/findnocoding.py
- Command line
-
hf download hf://RayTBRP/codellama-CodeLlama-7b-Python-hf@c0c5506eba15c7ab03ff4f59bbe251ee2db72517/Pytorch/Tools/scripts/findnocoding.py
-
curl -L -o findnocoding.py https://huggingface.co/RayTBRP/codellama-CodeLlama-7b-Python-hf/resolve/c0c5506eba15c7ab03ff4f59bbe251ee2db72517/Pytorch/Tools/scripts/findnocoding.py
2.95 kB
| #!/usr/bin/env python3 | |
| """List all those Python files that require a coding directive | |
| Usage: findnocoding.py dir1 [dir2...] | |
| """ | |
| __author__ = "Oleg Broytmann, Georg Brandl" | |
| import sys, os, re, getopt | |
| # our pysource module finds Python source files | |
| try: | |
| import pysource | |
| except ImportError: | |
| # emulate the module with a simple os.walk | |
| class pysource: | |
| has_python_ext = looks_like_python = can_be_compiled = None | |
| def walk_python_files(self, paths, *args, **kwargs): | |
| for path in paths: | |
| if os.path.isfile(path): | |
| yield path.endswith(".py") | |
| elif os.path.isdir(path): | |
| for root, dirs, files in os.walk(path): | |
| for filename in files: | |
| if filename.endswith(".py"): | |
| yield os.path.join(root, filename) | |
| pysource = pysource() | |
| print("The pysource module is not available; " | |
| "no sophisticated Python source file search will be done.", file=sys.stderr) | |
| decl_re = re.compile(rb'^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)') | |
| blank_re = re.compile(rb'^[ \t\f]*(?:[#\r\n]|$)') | |
| def get_declaration(line): | |
| match = decl_re.match(line) | |
| if match: | |
| return match.group(1) | |
| return b'' | |
| def has_correct_encoding(text, codec): | |
| try: | |
| str(text, codec) | |
| except UnicodeDecodeError: | |
| return False | |
| else: | |
| return True | |
| def needs_declaration(fullpath): | |
| try: | |
| infile = open(fullpath, 'rb') | |
| except IOError: # Oops, the file was removed - ignore it | |
| return None | |
| with infile: | |
| line1 = infile.readline() | |
| line2 = infile.readline() | |
| if (get_declaration(line1) or | |
| blank_re.match(line1) and get_declaration(line2)): | |
| # the file does have an encoding declaration, so trust it | |
| return False | |
| # check the whole file for non utf-8 characters | |
| rest = infile.read() | |
| if has_correct_encoding(line1+line2+rest, "utf-8"): | |
| return False | |
| return True | |
| usage = """Usage: %s [-cd] paths... | |
| -c: recognize Python source files trying to compile them | |
| -d: debug output""" % sys.argv[0] | |
| if __name__ == '__main__': | |
| try: | |
| opts, args = getopt.getopt(sys.argv[1:], 'cd') | |
| except getopt.error as msg: | |
| print(msg, file=sys.stderr) | |
| print(usage, file=sys.stderr) | |
| sys.exit(1) | |
| is_python = pysource.looks_like_python | |
| debug = False | |
| for o, a in opts: | |
| if o == '-c': | |
| is_python = pysource.can_be_compiled | |
| elif o == '-d': | |
| debug = True | |
| if not args: | |
| print(usage, file=sys.stderr) | |
| sys.exit(1) | |
| for fullpath in pysource.walk_python_files(args, is_python): | |
| if debug: | |
| print("Testing for coding: %s" % fullpath) | |
| result = needs_declaration(fullpath) | |
| if result: | |
| print(fullpath) | |