summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHao Li <hao.x.li@intel.com>2018-07-08 13:56:03 +0800
committerRyan Dahl <ry@tinyclouds.org>2018-07-08 01:56:03 -0400
commitcf0c0668dadb43834f4f0b75581736496c7b5ca3 (patch)
tree4b9c2bade2cef9ee597324e7622cc808cfb28ae6
parent740b47db6c32699148e5dd6f2f5ac99c29fb57f6 (diff)
Rewrite tools/lint.sh in python (#343)
-rw-r--r--.travis.yml2
-rwxr-xr-xtools/lint.py30
-rwxr-xr-xtools/lint.sh11
3 files changed, 31 insertions, 12 deletions
diff --git a/.travis.yml b/.travis.yml
index 64654912c..afcd2fc22 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -48,4 +48,4 @@ script:
- $BUILD_PATH/handlers_test
- $BUILD_PATH/deno_cc foo bar
- $BUILD_PATH/deno meow
- - ./tools/lint.sh
+ - ./tools/lint.py
diff --git a/tools/lint.py b/tools/lint.py
new file mode 100755
index 000000000..1fa0d461d
--- /dev/null
+++ b/tools/lint.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+# Does google-lint on c++ files and ts-lint on typescript files
+
+import os
+import subprocess
+
+root_path = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
+third_party_path = os.path.join(root_path, "third_party")
+cpplint = os.path.join(third_party_path, "cpplint", "cpplint.py")
+tslint = os.path.join(third_party_path, "node_modules", "tslint", "bin",
+ "tslint")
+
+
+def run(args):
+ print(" ".join(args))
+ env = os.environ.copy()
+ subprocess.check_call(args, env=env)
+
+
+def main():
+ os.chdir(root_path)
+ run([
+ "python", cpplint, "--filter=-build/include_subdir",
+ "--repository=src", "--extensions=cc,h", "--recursive", "src/."
+ ])
+ run(["node", tslint, "-p", ".", "--exclude", "js/msg_generated.ts"])
+
+
+if __name__ == "__main__":
+ main()
diff --git a/tools/lint.sh b/tools/lint.sh
deleted file mode 100755
index 97dd9d8c9..000000000
--- a/tools/lint.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-# TODO(ry) Rewrite this script in python for portability to Windows.
-set -e
-cd `dirname "$0"`/..
-./third_party/cpplint/cpplint.py \
- --filter=-build/include_subdir \
- --repository=src \
- src/*.cc \
- src/*.h
-node third_party/node_modules/.bin/tslint -p . \
- --exclude js/msg_generated.ts