feat(core): Upgrade pydantic to 2.x (#1428)

This commit is contained in:
Fangyin Cheng
2024-04-20 09:41:16 +08:00
committed by GitHub
parent baa1e3f9f6
commit 57be1ece18
103 changed files with 1146 additions and 534 deletions

View File

@@ -1,7 +1,7 @@
from dataclasses import dataclass
from typing import Generic, List, Optional, TypeVar
from dbgpt._private.pydantic import BaseModel, Field
from dbgpt._private.pydantic import BaseModel, ConfigDict, Field
T = TypeVar("T")
@@ -13,6 +13,7 @@ class PagenationFilter(BaseModel, Generic[T]):
class PagenationResult(BaseModel, Generic[T]):
model_config = ConfigDict(arbitrary_types_allowed=True)
page_index: int = 1
page_size: int = 20
total_page: int = 0
@@ -34,14 +35,14 @@ class PagenationResult(BaseModel, Generic[T]):
@dataclass
class PluginHubFilter(BaseModel):
name: str
description: str
author: str
email: str
type: str
version: str
storage_channel: str
storage_url: str
name: Optional[str] = None
description: Optional[str] = None
author: Optional[str] = None
email: Optional[str] = None
type: Optional[str] = None
version: Optional[str] = None
storage_channel: Optional[str] = None
storage_url: Optional[str] = None
@dataclass
@@ -67,3 +68,33 @@ class PluginHubParam(BaseModel):
authorization: Optional[str] = Field(
None, description="github download authorization", nullable=True
)
class PluginHubVO(BaseModel):
id: int = Field(..., description="Plugin id")
name: str = Field(..., description="Plugin name")
description: str = Field(..., description="Plugin description")
author: Optional[str] = Field(None, description="Plugin author")
email: Optional[str] = Field(None, description="Plugin email")
type: Optional[str] = Field(None, description="Plugin type")
version: Optional[str] = Field(None, description="Plugin version")
storage_channel: Optional[str] = Field(None, description="Plugin storage channel")
storage_url: Optional[str] = Field(None, description="Plugin storage url")
download_param: Optional[str] = Field(None, description="Plugin download param")
installed: Optional[int] = Field(None, description="Plugin installed")
gmt_created: Optional[str] = Field(None, description="Plugin upload time")
class MyPluginVO(BaseModel):
id: int = Field(..., description="My Plugin")
tenant: Optional[str] = Field(None, description="My Plugin tenant")
user_code: Optional[str] = Field(None, description="My Plugin user code")
user_name: Optional[str] = Field(None, description="My Plugin user name")
sys_code: Optional[str] = Field(None, description="My Plugin sys code")
name: str = Field(..., description="My Plugin name")
file_name: str = Field(..., description="My Plugin file name")
type: Optional[str] = Field(None, description="My Plugin type")
version: Optional[str] = Field(None, description="My Plugin version")
use_count: Optional[int] = Field(None, description="My Plugin use count")
succ_count: Optional[int] = Field(None, description="My Plugin succ count")
gmt_created: Optional[str] = Field(None, description="My Plugin install time")