InfiniTensor/scripts/format.py

51 lines
1.6 KiB
Python
Raw Normal View History

import sys
from pathlib import Path
from subprocess import run
c_style_file = [".h", ".hh", ".hpp", ".c", ".cc", ".cpp", ".cxx", ".cu", ".mlu"]
py_file = ".py"
proj_path = Path(sys.path[0]).parent
# Formats one file under project path.
def format_file(file):
file = Path(proj_path.joinpath(file))
if file.suffix in c_style_file:
Xpu (#82) * support kunlun xpu and add an operator named Add * add sub, mul, div, pow, maximum, minimum * add code * add xpu code * add code * add matmul * add transpose * add unary operator * add unary operator * add some operator * add code * support run resnet18 on xpu * add code * add max pool2d * fix xpu code, let it can run. * 添加XPU算子 (#120) * add floordiv for xpu * add batchnorm for xpu * add more cast types for xpu * add conv_trans for xpu * add pad for xpu * add logical ops for xpu * fix format for xpu src and include * fix format for xpu test * fix format for xpu src --------- Co-authored-by: Bolun <bolunz@u.nus.edu> * Xpu abs (#121) * add: unary kernel for xpu * formatting * format * format * format * fix: pointer jump * fix optype comments * fix bug introduced while resolving conflict * change cmake option for kunlunxin xpu from 'xpu' to 'kunlun'; fix bug after merging distributed infrastructure * Add doc support for xpu (#141) * fix * fix * fix pooling test * format * format * fix * fix * set cmake version requirement * fix cmakelists * rename xpu to kunlun * fix * fix format * fix format * fix format * fix change name to kunlun * format * fix format * clang format * fix format --------- Co-authored-by: root <root@localhost.localdomain> Co-authored-by: wanghailu <wanghailu@qiyuanlab.com> Co-authored-by: wanghailu <wanghailu0717@163.com> Co-authored-by: Bolun Zhang <48948016+Chamberlain0w0@users.noreply.github.com> Co-authored-by: Bolun <bolunz@u.nus.edu> Co-authored-by: zhangyue207 <138768300+zhangyue207@users.noreply.github.com> Co-authored-by: Haojie Wang <haojie0429@gmail.com> Co-authored-by: baominghelly <41820386+baominghelly@users.noreply.github.com> Co-authored-by: Bolun <chamberlain0w0@gmail.com>
2023-10-16 10:57:08 +08:00
run(f"clang-format-14 -style=file -i {file}", cwd=proj_path, shell=True)
run(f"git add {file}", cwd=proj_path, shell=True)
elif file.suffix == py_file:
run(f"black {file}", cwd=proj_path, shell=True)
run(f"git add {file}", cwd=proj_path, shell=True)
if len(sys.argv) == 1:
# Last commit.
print("Formats git added files.")
for line in (
run("git status", cwd=proj_path, capture_output=True, shell=True)
.stdout.decode()
.splitlines()
):
line = line.strip()
# Only formats git added files.
for pre in ["new file:", "modified:"]:
if line.startswith(pre):
format_file(line[len(pre) :].strip())
break
else:
# Origin commit.
origin = sys.argv[1]
print(f'Formats changed files from "{origin}".')
for line in (
run(f"git diff {origin}", cwd=proj_path, capture_output=True, shell=True)
.stdout.decode()
.splitlines()
):
diff = "diff --git "
if line.startswith(diff):
files = line[len(diff) :].split(" ")
assert len(files) == 2
assert files[0][:2] == "a/"
assert files[1][:2] == "b/"
format_file(files[1][2:])