4141from .packaging_context import PackagingContext
4242from .root_url import RootHttpUrl
4343from .url import HttpUrl
44- from .utils import (
45- get_format_version_tuple ,
46- )
47- from .validation_context import (
48- ValidationContext ,
49- validation_context_var ,
50- )
44+ from .utils import get_format_version_tuple
45+ from .validation_context import ValidationContext , get_validation_context
5146from .warning_levels import ALERT , ERROR , INFO
5247
5348
@@ -148,7 +143,10 @@ def _ignore_future_patch(cls, data: Union[Dict[Any, Any], Any], /) -> Any:
148143
149144 @model_validator (mode = "after" )
150145 def _set_init_validation_summary (self ) -> Self :
151- context = validation_context_var .get ()
146+ context = get_validation_context ()
147+ detail_name = (
148+ "Created" if isinstance (self , InvalidDescr ) else "Successfully created"
149+ ) + f" `{ self .__class__ .__name__ } ` object."
152150 self ._validation_summary = ValidationSummary (
153151 name = "bioimageio format validation" ,
154152 source_name = context .source_name ,
@@ -158,11 +156,8 @@ def _set_init_validation_summary(self) -> Self:
158156 status = "failed" if isinstance (self , InvalidDescr ) else "valid-format" ,
159157 details = [
160158 ValidationDetail (
161- name = (
162- f"Sucessfully created `{ self .__class__ .__name__ } ` object."
163- + " Further validation is pending."
164- ),
165- status = "passed" ,
159+ name = detail_name ,
160+ status = "failed" if isinstance (self , InvalidDescr ) else "passed" ,
166161 context = context .summary ,
167162 )
168163 ],
@@ -175,11 +170,11 @@ def validation_summary(self) -> ValidationSummary:
175170 return self ._validation_summary
176171
177172 _root : Union [RootHttpUrl , DirectoryPath , ZipFile ] = PrivateAttr (
178- default_factory = lambda : validation_context_var . get ().root
173+ default_factory = lambda : get_validation_context ().root
179174 )
180175
181176 _file_name : Optional [FileName ] = PrivateAttr (
182- default_factory = lambda : validation_context_var . get ().file_name
177+ default_factory = lambda : get_validation_context ().file_name
183178 )
184179
185180 @property
@@ -211,7 +206,7 @@ def load(
211206 cls , data : BioimageioYamlContent , context : Optional [ValidationContext ] = None
212207 ) -> Union [Self , InvalidDescr ]:
213208 """factory method to create a resource description object"""
214- context = context or validation_context_var . get ()
209+ context = context or get_validation_context ()
215210 assert isinstance (data , dict )
216211 with context :
217212 rd , errors , val_warnings = cls ._load_impl (deepcopy (data ))
@@ -247,7 +242,7 @@ def _load_impl(
247242 val_errors : List [ErrorEntry ] = []
248243 val_warnings : List [WarningEntry ] = []
249244
250- context = validation_context_var . get ()
245+ context = get_validation_context ()
251246 try :
252247 rd = cls .model_validate (data )
253248 except pydantic .ValidationError as e :
@@ -275,7 +270,7 @@ def _load_impl(
275270 msg = (
276271 f"Encountered { len (val_warnings )} more severe than warning"
277272 " level "
278- f"'{ WARNING_LEVEL_TO_NAME [validation_context_var . get () .warning_level ]} '"
273+ f"'{ WARNING_LEVEL_TO_NAME [context .warning_level ]} '"
279274 ),
280275 type = "severe_warnings" ,
281276 )
0 commit comments