diff options
author | Lars Wirzenius <liw@liw.fi> | 2015-11-02 18:48:13 +0200 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2015-11-02 18:48:13 +0200 |
commit | ea3b43aa7d7e37ecff31bb5b9114affc10d9b311 (patch) | |
tree | 58dd52f6763f64d234b43e47063af75f7d7151cc | |
parent | 3e87ae5c8ced6d78aea6a37a4caa403909e71051 (diff) | |
download | obnam-ea3b43aa7d7e37ecff31bb5b9114affc10d9b311.tar.gz |
Make find-all-obnam-errors not print duplicates
Also, sort output by class name.
-rwxr-xr-x | find-all-obnam-errors | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/find-all-obnam-errors b/find-all-obnam-errors index d739499a..602ae990 100755 --- a/find-all-obnam-errors +++ b/find-all-obnam-errors @@ -75,11 +75,18 @@ template = '''\ {id} ({class_name}): {msg} ''' +error_classes = set() for module in set(all_modules): for error_class in get_obnam_errors(module): - e = error_class() - print template.format( - class_name=error_class.__name__, - id=e.id, - msg=e.msg, - ), + error_classes.add(error_class) + +def class_name(error_class): + return error_class.__name__ + +for error_class in sorted(error_classes, key=class_name): + e = error_class() + print template.format( + class_name=class_name(error_class), + id=e.id, + msg=e.msg, + ), |