2424from fastapi_cloud_cli .utils .apps import AppConfig , get_app_config , write_app_config
2525from fastapi_cloud_cli .utils .auth import is_logged_in
2626from fastapi_cloud_cli .utils .cli import get_rich_toolkit , handle_http_errors
27+ from fastapi_cloud_cli .utils .pydantic_compat import model_validate
2728
2829logger = logging .getLogger (__name__ )
2930
@@ -91,7 +92,7 @@ def _get_teams() -> List[Team]:
9192
9293 data = response .json ()["data" ]
9394
94- return [Team . model_validate (team ) for team in data ]
95+ return [model_validate (Team , team ) for team in data ]
9596
9697
9798class AppResponse (BaseModel ):
@@ -108,7 +109,7 @@ def _create_app(team_id: str, app_name: str) -> AppResponse:
108109
109110 response .raise_for_status ()
110111
111- return AppResponse . model_validate (response .json ())
112+ return model_validate (AppResponse , response .json ())
112113
113114
114115class DeploymentStatus (str , Enum ):
@@ -161,7 +162,7 @@ def _create_deployment(app_id: str) -> CreateDeploymentResponse:
161162 response = client .post (f"/apps/{ app_id } /deployments/" )
162163 response .raise_for_status ()
163164
164- return CreateDeploymentResponse . model_validate (response .json ())
165+ return model_validate (CreateDeploymentResponse , response .json ())
165166
166167
167168class RequestUploadResponse (BaseModel ):
@@ -186,7 +187,7 @@ def _upload_deployment(deployment_id: str, archive_path: Path) -> None:
186187 response = fastapi_client .post (f"/deployments/{ deployment_id } /upload" )
187188 response .raise_for_status ()
188189
189- upload_data = RequestUploadResponse . model_validate (response .json ())
190+ upload_data = model_validate (RequestUploadResponse , response .json ())
190191 logger .debug ("Received upload URL: %s" , upload_data .url )
191192
192193 # Upload the archive
@@ -221,7 +222,7 @@ def _get_app(app_slug: str) -> Optional[AppResponse]:
221222
222223 data = response .json ()
223224
224- return AppResponse . model_validate (data )
225+ return model_validate (AppResponse , data )
225226
226227
227228def _get_apps (team_id : str ) -> List [AppResponse ]:
@@ -231,7 +232,7 @@ def _get_apps(team_id: str) -> List[AppResponse]:
231232
232233 data = response .json ()["data" ]
233234
234- return [AppResponse . model_validate (app ) for app in data ]
235+ return [model_validate (AppResponse , app ) for app in data ]
235236
236237
237238def _stream_build_logs (deployment_id : str ) -> Generator [str , None , None ]:
@@ -467,11 +468,12 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
467468 result = form .run () # type: ignore
468469
469470 try :
470- result = SignupToWaitingList .model_validate (
471+ result = model_validate (
472+ SignupToWaitingList ,
471473 {
472474 "email" : email ,
473475 ** result , # type: ignore
474- }
476+ },
475477 )
476478 except ValidationError :
477479 toolkit .print (
0 commit comments