Skip to content

Commit 76b559e

Browse files
♻️ refactor: Classes that inherit from pydantic.BaseModel are now pydantic.dataclass
1 parent 8164afb commit 76b559e

File tree

1 file changed

+22
-11
lines changed

1 file changed

+22
-11
lines changed

squarecloud/data.py

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
from typing import Any, Dict, Literal
44

5-
from pydantic import BaseModel
5+
from pydantic.dataclasses import dataclass
6+
67

78
# pylint: disable=too-many-instance-attributes
89
# pylint: disable=invalid-name
910

1011

11-
class PlanData(BaseModel):
12+
@dataclass(frozen=True)
13+
class PlanData:
1214
"""
1315
Plan data class
1416
@@ -26,12 +28,14 @@ class PlanData(BaseModel):
2628
duration: Dict[str, Any] | None
2729

2830

29-
class Language(BaseModel):
31+
@dataclass(frozen=True)
32+
class Language:
3033
name: str
3134
version: str
3235

3336

34-
class StatusData(BaseModel):
37+
@dataclass(frozen=True)
38+
class StatusData:
3539
"""
3640
Application status class
3741
@@ -67,7 +71,8 @@ class StatusData(BaseModel):
6771
time: int | None = None
6872

6973

70-
class AppData(BaseModel):
74+
@dataclass(frozen=True)
75+
class AppData:
7176
"""
7277
Application data class
7378
@@ -106,7 +111,8 @@ class AppData(BaseModel):
106111
desc: str | None = None
107112

108113

109-
class UserData(BaseModel):
114+
@dataclass(frozen=True)
115+
class UserData:
110116
"""
111117
User data class
112118
@@ -128,7 +134,8 @@ class UserData(BaseModel):
128134
email: str | None = None
129135

130136

131-
class LogsData(BaseModel):
137+
@dataclass(frozen=True)
138+
class LogsData:
132139
"""Logs data class
133140
134141
:ivar logs: A string containing logs of your application
@@ -182,7 +189,8 @@ async def example():
182189
return isinstance(other, LogsData) and self.logs == other.logs
183190

184191

185-
class BackupData(BaseModel):
192+
@dataclass(frozen=True)
193+
class BackupData:
186194
"""
187195
Backup data class
188196
@@ -194,7 +202,8 @@ class BackupData(BaseModel):
194202
downloadURL: str
195203

196204

197-
class UploadData(BaseModel):
205+
@dataclass(frozen=True)
206+
class UploadData:
198207
"""
199208
Upload data class
200209
@@ -224,7 +233,8 @@ class UploadData(BaseModel):
224233
description: str | None = None
225234

226235

227-
class FileInfo(BaseModel):
236+
@dataclass(frozen=True)
237+
class FileInfo:
228238
"""
229239
File information
230240
@@ -248,7 +258,8 @@ class FileInfo(BaseModel):
248258
path: str
249259

250260

251-
class StatisticsData(BaseModel):
261+
@dataclass(frozen=True)
262+
class StatisticsData:
252263
"""
253264
Host statistics
254265

0 commit comments

Comments
 (0)