nicholasyager / dbt-loom

A dbt-core plugin to weave together multi-project dbt-core deployments
The Unlicense
114 stars 18 forks source link

Fix: Correct date parsing for `deprecation_date` #26

Closed nicholasyager closed 11 months ago

nicholasyager commented 11 months ago

Description and Motivation

In #25, the user described having a defect in which adding a deprecation date at the version level resulted in a dbt run failure. I determined that this was the result of how dbt-loom was deserializing datetime values from manifest files. Specifically, these values were being deserialized into strings and not into valid date times.

To resolve this issue, and to stabilize how dbt-loom interfaces with the dbt-core manifest, I've created a basic pydantic model to handle serde operations with manifests. So far, tests have shown that this resolves our issue, and will help mitigate other unexpected type issues in the future.