33
44from __future__ import annotations
55
6- from datetime import datetime
76from enum import Enum
87from typing import Any , Dict , List , Optional , Union
98
10- from pydantic import ConfigDict
9+ from pydantic import AwareDatetime , ConfigDict
1110
1211from dbt_artifacts_parser .parsers .base import BaseParserModel
1312
@@ -18,7 +17,7 @@ class FreshnessMetadata(BaseParserModel):
1817 )
1918 dbt_schema_version : Optional [str ] = 'https://schemas.getdbt.com/dbt/sources/v2.json'
2019 dbt_version : Optional [str ] = '0.21.0rc1'
21- generated_at : Optional [datetime ] = '2021-09-24T13:29:14.312598Z'
20+ generated_at : Optional [AwareDatetime ] = '2021-09-24T13:29:14.312598Z'
2221 invocation_id : Optional [str ] = None
2322 env : Optional [Dict [str , str ]] = {}
2423
@@ -62,8 +61,8 @@ class TimingInfo(BaseParserModel):
6261 extra = 'forbid' ,
6362 )
6463 name : str
65- started_at : Optional [datetime ] = None
66- completed_at : Optional [datetime ] = None
64+ started_at : Optional [AwareDatetime ] = None
65+ completed_at : Optional [AwareDatetime ] = None
6766
6867
6968class FreshnessThreshold (BaseParserModel ):
@@ -80,8 +79,8 @@ class SourceFreshnessOutput(BaseParserModel):
8079 extra = 'forbid' ,
8180 )
8281 unique_id : str
83- max_loaded_at : datetime
84- snapshotted_at : datetime
82+ max_loaded_at : AwareDatetime
83+ snapshotted_at : AwareDatetime
8584 max_loaded_at_time_ago_in_s : float
8685 status : Status1
8786 criteria : FreshnessThreshold
0 commit comments