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
2323from fastapi_cloud_cli .utils .apps import AppConfig , get_app_config , write_app_config
2424from fastapi_cloud_cli .utils .auth import is_logged_in
2525from fastapi_cloud_cli .utils .cli import get_rich_toolkit , handle_http_errors
26- from fastapi_cloud_cli .utils .pydantic_compat import (
27- TypeAdapter ,
28- model_dump ,
29- model_validate ,
30- )
3126
3227logger = logging .getLogger (__name__ )
3328
@@ -108,7 +103,7 @@ def _get_teams() -> list[Team]:
108103
109104 data = response .json ()["data" ]
110105
111- return [model_validate (Team , team ) for team in data ]
106+ return [Team . model_validate (team ) for team in data ]
112107
113108
114109class AppResponse (BaseModel ):
@@ -125,7 +120,7 @@ def _create_app(team_id: str, app_name: str) -> AppResponse:
125120
126121 response .raise_for_status ()
127122
128- return model_validate (AppResponse , response .json ())
123+ return AppResponse . model_validate (response .json ())
129124
130125
131126class DeploymentStatus (str , Enum ):
@@ -178,7 +173,7 @@ def _create_deployment(app_id: str) -> CreateDeploymentResponse:
178173 response = client .post (f"/apps/{ app_id } /deployments/" )
179174 response .raise_for_status ()
180175
181- return model_validate (CreateDeploymentResponse , response .json ())
176+ return CreateDeploymentResponse . model_validate (response .json ())
182177
183178
184179class RequestUploadResponse (BaseModel ):
@@ -203,7 +198,7 @@ def _upload_deployment(deployment_id: str, archive_path: Path) -> None:
203198 response = fastapi_client .post (f"/deployments/{ deployment_id } /upload" )
204199 response .raise_for_status ()
205200
206- upload_data = model_validate (RequestUploadResponse , response .json ())
201+ upload_data = RequestUploadResponse . model_validate (response .json ())
207202 logger .debug ("Received upload URL: %s" , upload_data .url )
208203
209204 logger .debug ("Starting file upload to S3" )
@@ -238,7 +233,7 @@ def _get_app(app_slug: str) -> Optional[AppResponse]:
238233
239234 data = response .json ()
240235
241- return model_validate (AppResponse , data )
236+ return AppResponse . model_validate (data )
242237
243238
244239def _get_apps (team_id : str ) -> list [AppResponse ]:
@@ -248,7 +243,7 @@ def _get_apps(team_id: str) -> list[AppResponse]:
248243
249244 data = response .json ()["data" ]
250245
251- return [model_validate (AppResponse , app ) for app in data ]
246+ return [AppResponse . model_validate (app ) for app in data ]
252247
253248
254249WAITING_MESSAGES = [
@@ -434,7 +429,7 @@ def _send_waitlist_form(
434429 with toolkit .progress ("Sending your request..." ) as progress :
435430 with APIClient () as client :
436431 with handle_http_errors (progress ):
437- response = client .post ("/users/waiting-list" , json = model_dump (result ))
432+ response = client .post ("/users/waiting-list" , json = result . model_dump ())
438433
439434 response .raise_for_status ()
440435
@@ -459,7 +454,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
459454
460455 toolkit .print_line ()
461456
462- result = model_validate (SignupToWaitingList , {"email" : email })
457+ result = SignupToWaitingList . model_validate ({"email" : email })
463458
464459 if toolkit .confirm (
465460 "Do you want to get access faster by giving us more information?" ,
@@ -483,8 +478,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
483478 result = form .run () # type: ignore
484479
485480 try :
486- result = model_validate (
487- SignupToWaitingList ,
481+ result = SignupToWaitingList .model_validate (
488482 {
489483 "email" : email ,
490484 ** result , # type: ignore
0 commit comments