Skip to content
This repository was archived by the owner on May 25, 2026. It is now read-only.

Commit 402831e

Browse files
committed
Explicitly mark attributes that can be None as Optional
Seems new version of Pydantic now requires this?
1 parent 0d7a144 commit 402831e

1 file changed

Lines changed: 22 additions & 22 deletions

File tree

api/simqueue/data_models.py

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,10 @@ class TimeSeries(BaseModel):
6161

6262
class DataItem(BaseModel):
6363
url: AnyUrl
64-
path: str = None
65-
content_type: str = None
66-
size: int = None # in bytes
67-
hash: str = None
64+
path: Optional[str] = None
65+
content_type: Optional[str] = None
66+
size: Optional[int] = None # in bytes
67+
hash: Optional[str] = None
6868

6969
@classmethod
7070
def from_db(cls, data_item, repository_obj=None):
@@ -127,7 +127,7 @@ class SubmittedJob(BaseModel):
127127
"""
128128

129129
code: str
130-
command: str = None
130+
command: Optional[str] = None
131131
collab: str
132132
input_data: Optional[List[DataItem]] = None
133133
hardware_platform: str
@@ -204,11 +204,11 @@ def from_db(cls, job):
204204

205205

206206
class JobPatch(BaseModel): # todo: rename to JobUpdate
207-
status: JobStatus = None
208-
output_data: DataSet = None
209-
provenance: dict = None
210-
resource_usage: ResourceUsage = None
211-
log: str = None
207+
status: Optional[JobStatus] = None
208+
output_data: Optional[DataSet] = None
209+
provenance: Optional[dict] = None
210+
resource_usage: Optional[ResourceUsage] = None
211+
log: Optional[str] = None
212212

213213
def to_db(self):
214214
values = {}
@@ -231,7 +231,7 @@ class SessionCreation(BaseModel):
231231
collab: str
232232
user_id: str
233233
hardware_platform: str
234-
hardware_config: dict = None
234+
hardware_config: Optional[dict] = None
235235

236236
def to_db(self):
237237
return {
@@ -248,10 +248,10 @@ class Session(SessionCreation):
248248
id: int
249249
user_id: str
250250
status: SessionStatus = SessionStatus.running
251-
timestamp_start: datetime = None
252-
timestamp_end: datetime = None
251+
timestamp_start: Optional[datetime] = None
252+
timestamp_end: Optional[datetime] = None
253253
resource_uri: str
254-
resource_usage: ResourceUsage = None
254+
resource_usage: Optional[ResourceUsage] = None
255255

256256
@classmethod
257257
def from_db(cls, session):
@@ -313,7 +313,7 @@ def to_db(self):
313313
class Quota(QuotaSubmission, QuotaUpdate):
314314
# id: int # do we need this? or just use resource_uri
315315
project: str
316-
resource_uri: str = None
316+
resource_uri: Optional[str] = None
317317

318318
@classmethod
319319
def from_db(cls, quota):
@@ -341,7 +341,7 @@ class ProjectSubmission(BaseModel):
341341
collab: str
342342
title: str
343343
abstract: str
344-
description: str = None
344+
description: Optional[str] = None
345345
status: ProjectStatus = ProjectStatus.in_prep
346346

347347
def to_db(self, owner):
@@ -365,7 +365,7 @@ class Project(ProjectSubmission):
365365
decision_date: Optional[date] = None
366366
resource_uri: str
367367
status: ProjectStatus = ProjectStatus.in_prep
368-
quotas: List[Quota] = None
368+
quotas: Optional[List[Quota]] = None
369369

370370
@classmethod
371371
def _get_status(cls, project):
@@ -401,11 +401,11 @@ def from_db(cls, project, quotas=None):
401401

402402

403403
class ProjectUpdate(BaseModel):
404-
title: str = None
405-
abstract: str = None
406-
description: str = None
407-
owner: str = None
408-
status: ProjectStatus = None
404+
title: Optional[str] = None
405+
abstract: Optional[str] = None
406+
description: Optional[str] = None
407+
owner: Optional[str] = None
408+
status: Optional[ProjectStatus] = None
409409

410410
def to_db(self):
411411
values = {}

0 commit comments

Comments
 (0)