1313import rignore
1414import typer
1515from httpx import Client
16- from pydantic import BaseModel , EmailStr , ValidationError
16+ from pydantic import BaseModel , EmailStr , TypeAdapter , ValidationError
1717from rich .text import Text
1818from rich_toolkit import RichToolkit
1919from rich_toolkit .menu import Option
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 (
28- TypeAdapter ,
29- model_dump ,
30- model_validate ,
31- )
3227
3328logger = logging .getLogger (__name__ )
3429
@@ -109,7 +104,7 @@ def _get_teams() -> List[Team]:
109104
110105 data = response .json ()["data" ]
111106
112- return [model_validate (Team , team ) for team in data ]
107+ return [Team . model_validate (team ) for team in data ]
113108
114109
115110class AppResponse (BaseModel ):
@@ -126,7 +121,7 @@ def _create_app(team_id: str, app_name: str) -> AppResponse:
126121
127122 response .raise_for_status ()
128123
129- return model_validate (AppResponse , response .json ())
124+ return AppResponse . model_validate (response .json ())
130125
131126
132127class DeploymentStatus (str , Enum ):
@@ -179,7 +174,7 @@ def _create_deployment(app_id: str) -> CreateDeploymentResponse:
179174 response = client .post (f"/apps/{ app_id } /deployments/" )
180175 response .raise_for_status ()
181176
182- return model_validate (CreateDeploymentResponse , response .json ())
177+ return CreateDeploymentResponse . model_validate (response .json ())
183178
184179
185180class RequestUploadResponse (BaseModel ):
@@ -204,7 +199,7 @@ def _upload_deployment(deployment_id: str, archive_path: Path) -> None:
204199 response = fastapi_client .post (f"/deployments/{ deployment_id } /upload" )
205200 response .raise_for_status ()
206201
207- upload_data = model_validate (RequestUploadResponse , response .json ())
202+ upload_data = RequestUploadResponse . model_validate (response .json ())
208203 logger .debug ("Received upload URL: %s" , upload_data .url )
209204
210205 logger .debug ("Starting file upload to S3" )
@@ -239,7 +234,7 @@ def _get_app(app_slug: str) -> Optional[AppResponse]:
239234
240235 data = response .json ()
241236
242- return model_validate (AppResponse , data )
237+ return AppResponse . model_validate (data )
243238
244239
245240def _get_apps (team_id : str ) -> List [AppResponse ]:
@@ -249,7 +244,7 @@ def _get_apps(team_id: str) -> List[AppResponse]:
249244
250245 data = response .json ()["data" ]
251246
252- return [model_validate (AppResponse , app ) for app in data ]
247+ return [AppResponse . model_validate (app ) for app in data ]
253248
254249
255250WAITING_MESSAGES = [
@@ -432,7 +427,7 @@ def _send_waitlist_form(
432427 with toolkit .progress ("Sending your request..." ) as progress :
433428 with APIClient () as client :
434429 with handle_http_errors (progress ):
435- response = client .post ("/users/waiting-list" , json = model_dump (result ))
430+ response = client .post ("/users/waiting-list" , json = result . model_dump ())
436431
437432 response .raise_for_status ()
438433
@@ -457,7 +452,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
457452
458453 toolkit .print_line ()
459454
460- result = model_validate (SignupToWaitingList , {"email" : email })
455+ result = SignupToWaitingList . model_validate ({"email" : email })
461456
462457 if toolkit .confirm (
463458 "Do you want to get access faster by giving us more information?" ,
@@ -481,8 +476,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
481476 result = form .run () # type: ignore
482477
483478 try :
484- result = model_validate (
485- SignupToWaitingList ,
479+ result = SignupToWaitingList .model_validate (
486480 {
487481 "email" : email ,
488482 ** result , # type: ignore
0 commit comments