mirror of
https://github.com/esphome/esphome.git
synced 2025-09-01 10:52:19 +01:00
Raise minimum python version to 3.8 (#3176)
This commit is contained in:
@@ -17,14 +17,14 @@ def run_format(args, queue, lock, failed_files):
|
||||
"""Takes filenames out of queue and runs clang-format on them."""
|
||||
while True:
|
||||
path = queue.get()
|
||||
invocation = ['clang-format-11']
|
||||
invocation = ["clang-format-11"]
|
||||
if args.inplace:
|
||||
invocation.append('-i')
|
||||
invocation.append("-i")
|
||||
else:
|
||||
invocation.extend(['--dry-run', '-Werror'])
|
||||
invocation.extend(["--dry-run", "-Werror"])
|
||||
invocation.append(path)
|
||||
|
||||
proc = subprocess.run(invocation, capture_output=True, encoding='utf-8')
|
||||
proc = subprocess.run(invocation, capture_output=True, encoding="utf-8")
|
||||
if proc.returncode != 0:
|
||||
with lock:
|
||||
print_error_for_file(path, proc.stderr)
|
||||
@@ -33,28 +33,36 @@ def run_format(args, queue, lock, failed_files):
|
||||
|
||||
|
||||
def progress_bar_show(value):
|
||||
return value if value is not None else ''
|
||||
return value if value is not None else ""
|
||||
|
||||
|
||||
def main():
|
||||
colorama.init()
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('-j', '--jobs', type=int,
|
||||
default=multiprocessing.cpu_count(),
|
||||
help='number of format instances to be run in parallel.')
|
||||
parser.add_argument('files', nargs='*', default=[],
|
||||
help='files to be processed (regex on path)')
|
||||
parser.add_argument('-i', '--inplace', action='store_true',
|
||||
help='reformat files in-place')
|
||||
parser.add_argument('-c', '--changed', action='store_true',
|
||||
help='only run on changed files')
|
||||
parser.add_argument(
|
||||
"-j",
|
||||
"--jobs",
|
||||
type=int,
|
||||
default=multiprocessing.cpu_count(),
|
||||
help="number of format instances to be run in parallel.",
|
||||
)
|
||||
parser.add_argument(
|
||||
"files", nargs="*", default=[], help="files to be processed (regex on path)"
|
||||
)
|
||||
parser.add_argument(
|
||||
"-i", "--inplace", action="store_true", help="reformat files in-place"
|
||||
)
|
||||
parser.add_argument(
|
||||
"-c", "--changed", action="store_true", help="only run on changed files"
|
||||
)
|
||||
args = parser.parse_args()
|
||||
|
||||
try:
|
||||
get_output('clang-format-11', '-version')
|
||||
get_output("clang-format-11", "-version")
|
||||
except:
|
||||
print("""
|
||||
print(
|
||||
"""
|
||||
Oops. It looks like clang-format is not installed.
|
||||
|
||||
Please check you can run "clang-format-11 -version" in your terminal and install
|
||||
@@ -62,16 +70,17 @@ def main():
|
||||
|
||||
Note you can also upload your code as a pull request on GitHub and see the CI check
|
||||
output to apply clang-format.
|
||||
""")
|
||||
"""
|
||||
)
|
||||
return 1
|
||||
|
||||
files = []
|
||||
for path in git_ls_files(['*.cpp', '*.h', '*.tcc']):
|
||||
for path in git_ls_files(["*.cpp", "*.h", "*.tcc"]):
|
||||
files.append(os.path.relpath(path, os.getcwd()))
|
||||
|
||||
if args.files:
|
||||
# Match against files specified on command-line
|
||||
file_name_re = re.compile('|'.join(args.files))
|
||||
file_name_re = re.compile("|".join(args.files))
|
||||
files = [p for p in files if file_name_re.search(p)]
|
||||
|
||||
if args.changed:
|
||||
@@ -84,14 +93,16 @@ def main():
|
||||
task_queue = queue.Queue(args.jobs)
|
||||
lock = threading.Lock()
|
||||
for _ in range(args.jobs):
|
||||
t = threading.Thread(target=run_format,
|
||||
args=(args, task_queue, lock, failed_files))
|
||||
t = threading.Thread(
|
||||
target=run_format, args=(args, task_queue, lock, failed_files)
|
||||
)
|
||||
t.daemon = True
|
||||
t.start()
|
||||
|
||||
# Fill the queue with files.
|
||||
with click.progressbar(files, width=30, file=sys.stderr,
|
||||
item_show_func=progress_bar_show) as bar:
|
||||
with click.progressbar(
|
||||
files, width=30, file=sys.stderr, item_show_func=progress_bar_show
|
||||
) as bar:
|
||||
for name in bar:
|
||||
task_queue.put(name)
|
||||
|
||||
@@ -100,11 +111,11 @@ def main():
|
||||
|
||||
except KeyboardInterrupt:
|
||||
print()
|
||||
print('Ctrl-C detected, goodbye.')
|
||||
print("Ctrl-C detected, goodbye.")
|
||||
os.kill(0, 9)
|
||||
|
||||
sys.exit(len(failed_files))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
Reference in New Issue
Block a user