]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/commitdiff
Makefile: add 'find-trailing-spaces' tool and target
authorBrian Warner <warner@allmydata.com>
Tue, 6 Nov 2007 04:32:08 +0000 (21:32 -0700)
committerBrian Warner <warner@allmydata.com>
Tue, 6 Nov 2007 04:32:08 +0000 (21:32 -0700)
Makefile
misc/find-trailing-spaces.py [new file with mode: 0644]

index 793b204041a35e347b2f98d57802027a9be32cc9..29b0349ca4b355a9e9d04961123be08025bfdaf2 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -249,6 +249,8 @@ clean:
        rm -rf support dist
        rm -rf setuptools*.egg *.pyc
 
+find-trailing-spaces:
+       $(PYTHON) misc/find-trailing-spaces.py -r src
 
 
 # DEBIAN PACKAGING
diff --git a/misc/find-trailing-spaces.py b/misc/find-trailing-spaces.py
new file mode 100644 (file)
index 0000000..21b2524
--- /dev/null
@@ -0,0 +1,36 @@
+#! /usr/bin/python
+
+import os
+
+from twisted.python import usage
+
+class Options(usage.Options):
+    optFlags = [
+        ("recursive", "r", "Search for .py files recursively"),
+        ]
+    def parseArgs(self, *starting_points):
+        self.starting_points = starting_points
+
+def check(fn):
+    f = open(fn, "r")
+    for i,line in enumerate(f.readlines()):
+        if line == "\n":
+            continue
+        if line[-1] == "\n":
+            line = line[:-1]
+        if line.rstrip() != line:
+            # the %s:%d:%d: lets emacs' compile-mode jump to those locations
+            print "%s:%d:%d: trailing whitespace" % (fn, i+1, len(line)+1)
+    f.close()
+
+o = Options()
+o.parseOptions()
+if o['recursive']:
+    for starting_point in o.starting_points:
+        for root, dirs, files in os.walk(starting_point):
+            for fn in [f for f in files if f.endswith(".py")]:
+                fn = os.path.join(root, fn)
+                check(fn)
+else:
+    for fn in o.starting_points:
+        check(fn)