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 = [
@@ -431,7 +426,7 @@ def _send_waitlist_form(
431426 with toolkit .progress ("Sending your request..." ) as progress :
432427 with APIClient () as client :
433428 with handle_http_errors (progress ):
434- response = client .post ("/users/waiting-list" , json = model_dump (result ))
429+ response = client .post ("/users/waiting-list" , json = result . model_dump ())
435430
436431 response .raise_for_status ()
437432
@@ -456,7 +451,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
456451
457452 toolkit .print_line ()
458453
459- result = model_validate (SignupToWaitingList , {"email" : email })
454+ result = SignupToWaitingList . model_validate ({"email" : email })
460455
461456 if toolkit .confirm (
462457 "Do you want to get access faster by giving us more information?" ,
@@ -480,8 +475,7 @@ def _waitlist_form(toolkit: RichToolkit) -> None:
480475 result = form .run () # type: ignore
481476
482477 try :
483- result = model_validate (
484- SignupToWaitingList ,
478+ result = SignupToWaitingList .model_validate (
485479 {
486480 "email" : email ,
487481 ** result , # type: ignore
0 commit comments