From 14b470d52b0b97ee57e66b75ea0317f21279877b Mon Sep 17 00:00:00 2001 From: Jan Staněk Date: Aug 23 2016 08:57:09 +0000 Subject: Split metadata loading and validation to separate steps --- diff --git a/modlint b/modlint index df7c30c..fec3e39 100755 --- a/modlint +++ b/modlint @@ -70,10 +70,16 @@ if __name__ == '__main__': try: metadata.load(args.file) + except ValueError as invalid_input_metadata: + message = 'ERROR: Invalid input: {!s}'.format(invalid_input_metadata) + raise SystemExit(message) + + try: metadata.validate() - except Exception as exc: + except (TypeError, ValueError) as invalid_metadata_structure: all_went_well = False - print('ERROR:', str(exc), file=sys.stderr) + print('ERROR: Invalid structure:', str(invalid_metadata_structure), + file=sys.stderr) for error in existing_content(metadata): all_went_well = False