File tree Expand file tree Collapse file tree 1 file changed +18
-5
lines changed
Expand file tree Collapse file tree 1 file changed +18
-5
lines changed Original file line number Diff line number Diff line change 66import logging
77import sys
88
9+ import pydantic
910from colorama import Fore
1011from colorama import init as init_colorama
1112from jsonschema .exceptions import ValidationError as SchemaValidationError
@@ -179,12 +180,24 @@ def main():
179180 case 2 :
180181 from petab .v2 .lint import lint_problem
181182
182- validation_issues = lint_problem (args .yaml_file_name )
183- if validation_issues :
184- validation_issues .log (logger = logger )
183+ try :
184+ validation_issues = lint_problem (args .yaml_file_name )
185+ if validation_issues :
186+ # Handle petab.v2.lint.ValidationTask issues
187+ validation_issues .log (logger = logger )
188+ sys .exit (1 )
189+ logger .info ("PEtab format check completed successfully." )
190+ sys .exit (0 )
191+ except pydantic .ValidationError as e :
192+ # Handle Pydantic validation errors
193+ for err in e .errors ():
194+ loc = ", " .join (str (loc ) for loc in err ["loc" ])
195+ msg = err ["msg" ]
196+ # TODO: include model info here once available
197+ # https://github.com/pydantic/pydantic/issues/7224
198+ logger .error (f"Error in field(s) `{ loc } `: { msg } " )
185199 sys .exit (1 )
186- logger .info ("PEtab format check completed successfully." )
187- sys .exit (0 )
200+
188201 case _:
189202 logger .error (
190203 "The provided PEtab files are of unsupported version "
You can’t perform that action at this time.
0 commit comments