mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2024-12-19 04:57:54 +00:00
40 lines
1.0 KiB
Python
40 lines
1.0 KiB
Python
#! /usr/bin/python3
|
|
|
|
"""
|
|
Ensure UMIDS are unique.
|
|
|
|
This runs on Python 3.
|
|
"""
|
|
|
|
# ./check-umids.py src
|
|
|
|
|
|
import sys, re, os
|
|
|
|
ok = True
|
|
umids = {}
|
|
|
|
for starting_point in sys.argv[1:]:
|
|
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)
|
|
for lineno,line in enumerate(open(fn, "r").readlines()):
|
|
lineno = lineno+1
|
|
if "umid" not in line:
|
|
continue
|
|
mo = re.search("umid=[\"\']([^\"\']+)[\"\']", line)
|
|
if mo:
|
|
umid = mo.group(1)
|
|
if umid in umids:
|
|
oldfn, oldlineno = umids[umid]
|
|
print("%s:%d: duplicate umid '%s'" % (fn, lineno, umid))
|
|
print("%s:%d: first used here" % (oldfn, oldlineno))
|
|
ok = False
|
|
umids[umid] = (fn,lineno)
|
|
|
|
if ok:
|
|
print("all umids are unique")
|
|
else:
|
|
print("some umids were duplicates")
|
|
sys.exit(1)
|