33from datetime import timedelta
44from pathlib import Path
55from tempfile import TemporaryDirectory
6+ from typing import Annotated
67from urllib .parse import quote
78from uuid import UUID
89
1617
1718class UserSettings (BaseSettings ):
1819 model_config = SettingsConfigDict (extra = "ignore" )
19- OSPARC_API_KEY : str = Field (default = ...)
20- OSPARC_API_SECRET : str = Field (default = ...)
20+ OSPARC_API_KEY : Annotated [ str , Field ()] # required, no default
21+ OSPARC_API_SECRET : Annotated [ str , Field ()] # required, no default
2122
2223
2324_SOLVER_KEY = "simcore/services/comp/osparc-python-runner"
@@ -44,19 +45,19 @@ def main():
4445
4546
4647class Schema (BaseModel ):
47- schema_content : dict = Field ( default = {})
48- schema_class : str = Field ( default = "application/schema+json" )
48+ schema_content : dict = {}
49+ schema_class : str = "application/schema+json"
4950
5051
5152class Function (BaseModel ):
52- function_class : str = Field ( default = "SOLVER" )
53+ function_class : str = "SOLVER"
5354 title : str
5455 description : str
55- input_schema : Schema = Field (default = Schema () )
56- output_schema : Schema = Field (default = Schema () )
57- default_inputs : dict [str , str ] = Field (default = dict () )
58- solver_key : str = Field (default = _SOLVER_KEY )
59- solver_version : str = Field (default = _SOLVER_VERSION )
56+ input_schema : Annotated [ Schema , Field ()] = Schema ()
57+ output_schema : Annotated [ Schema , Field ()] = Schema ()
58+ default_inputs : Annotated [ dict [str , str ], Field ()] = dict ()
59+ solver_key : Annotated [ str , Field ()] = _SOLVER_KEY
60+ solver_version : Annotated [ str , Field ()] = _SOLVER_VERSION
6061
6162
6263class MetaModelingUser (HttpUser ):
0 commit comments