Skip to content

Commit e6137e3

Browse files
authored
Merge pull request #838 from superannotateai/fix_dates
fix base entity dates
2 parents 8ed2446 + 472a065 commit e6137e3

3 files changed

Lines changed: 14 additions & 20 deletions

File tree

src/superannotate/lib/app/interface/sdk_interface.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1805,8 +1805,8 @@ def get_project_metadata(
18051805
::
18061806
18071807
{
1808-
"createdAt": "2025-02-04T12:04:01+00:00",
1809-
"updatedAt": "2024-02-04T12:04:01+00:00",
1808+
"createdAt": "2025-02-04T12:04:01.000Z",
1809+
"updatedAt": "2024-02-04T12:04:01.000Z",
18101810
"id": 902174,
18111811
"team_id": 233435,
18121812
"name": "Medical Annotations",
@@ -1820,8 +1820,8 @@ def get_project_metadata(
18201820
"folder_id": 1191383,
18211821
"workflow_id": 1,
18221822
"workflow": {
1823-
"createdAt": "2024-09-03T12:48:09+00:00",
1824-
"updatedAt": "2024-09-03T12:48:09+00:00",
1823+
"createdAt": "2024-09-03T12:48:09.000Z",
1824+
"updatedAt": "2024-09-03T12:48:09.000Z",
18251825
"id": 1,
18261826
"name": "System workflow",
18271827
"type": "system",
@@ -4640,7 +4640,7 @@ def list_projects(
46404640
"classes": [],
46414641
"completed_items_count": None,
46424642
"contributors": [],
4643-
"createdAt": "2025-02-04T12:04:01+00:00",
4643+
"createdAt": "2025-02-04T12:04:01.000Z",
46444644
"creator_id": "ecample@email.com",
46454645
"custom_fields": {
46464646
"Notes": "Something",
@@ -4662,7 +4662,7 @@ def list_projects(
46624662
"status": "InProgress",
46634663
"team_id": 233435,
46644664
"type": "Vector",
4665-
"updatedAt": "2024-02-04T12:04:01+00:00",
4665+
"updatedAt": "2024-02-04T12:04:01.000Z",
46664666
"upload_state": "INITIAL",
46674667
"users": [],
46684668
"workflow_id": 1,
@@ -5687,17 +5687,17 @@ def list_workflows(self):
56875687
56885688
[
56895689
{
5690-
"createdAt": "2024-09-03T12:48:09+00:00",
5691-
"updatedAt": "2024-09-04T12:48:09+00:00",
5690+
"createdAt": "2024-09-03T12:48:09.000Z",
5691+
"updatedAt": "2024-09-04T12:48:09.000Z",
56925692
"id": 1,
56935693
"name": "System workflow",
56945694
"type": "system",
56955695
"description": "This workflow is generated by the system, and prevents annotators from completing items.",
56965696
"raw_config": {"roles": ["Annotator", "QA"], ...}
56975697
},
56985698
{
5699-
"createdAt": "2025-01-03T12:48:09+00:00",
5700-
"updatedAt": "2025-01-05T12:48:09+00:00",
5699+
"createdAt": "2025-01-03T12:48:09.000Z",
5700+
"updatedAt": "2025-01-05T12:48:09.000Z",
57015701
"id": 58758,
57025702
"name": "Custom workflow",
57035703
"type": "user",

src/superannotate/lib/core/entities/base.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,10 @@ def _validate_hex_color(v: str) -> str:
3232

3333

3434
def _validate_string_date(v: Union[datetime, str]) -> str:
35-
"""Convert datetime to string format. For case data output."""
35+
"""Convert datetime to string format."""
3636
if isinstance(v, str):
37-
try:
38-
dt = datetime.fromisoformat(v.replace("Z", "+00:00"))
39-
return dt.strftime("%Y-%m-%dT%H:%M:%S+00:00")
40-
except (ValueError, AttributeError):
41-
return v
42-
elif isinstance(v, datetime):
43-
return v.strftime("%Y-%m-%dT%H:%M:%S+00:00")
44-
return v
37+
return v
38+
return v.isoformat().split("+")[0] + ".000Z"
4539

4640

4741
def _serialize_string_date(v: Union[datetime, str]) -> str:

tests/integration/projects/test_create_project.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ class TestCreateVectorProject(ProjectCreateBaseTestCase):
8585
def test_create_project_datetime(self):
8686
project = sa.create_project(self.PROJECT, "desc", self.PROJECT_TYPE)
8787
metadata = sa.get_project_metadata(project["name"])
88-
assert "Z" not in metadata["createdAt"]
88+
assert "Z" in metadata["createdAt"]
8989

9090
def test_create_project_with_wrong_type(self):
9191
with self.assertRaisesRegex(

0 commit comments

Comments
 (0)