altimate-datapilot-cli 0.0.11__tar.gz → 0.0.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.bumpversion.cfg +1 -1
  2. {altimate-datapilot-cli-0.0.11/src/altimate_datapilot_cli.egg-info → altimate-datapilot-cli-0.0.13}/PKG-INFO +1 -1
  3. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/conf.py +1 -1
  4. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/setup.py +2 -2
  5. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13/src/altimate_datapilot_cli.egg-info}/PKG-INFO +1 -1
  6. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/SOURCES.txt +5 -0
  7. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/requires.txt +1 -1
  8. altimate-datapilot-cli-0.0.13/src/datapilot/__init__.py +1 -0
  9. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/clients/altimate/client.py +5 -1
  10. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/clients/altimate/utils.py +24 -3
  11. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/cli/cli.py +41 -4
  12. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/factory.py +4 -0
  13. altimate-datapilot-cli-0.0.13/src/datapilot/core/platforms/dbt/wrappers/manifest/v12/schemas.py +36 -0
  14. altimate-datapilot-cli-0.0.13/src/datapilot/core/platforms/dbt/wrappers/manifest/v12/wrapper.py +409 -0
  15. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/utils/utils.py +11 -4
  16. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/core/platform/dbt/test_cli.py +15 -0
  17. altimate-datapilot-cli-0.0.13/tests/data/catalog_v12.json +1 -0
  18. altimate-datapilot-cli-0.0.13/tests/data/manifest_v12.json +1 -0
  19. altimate-datapilot-cli-0.0.13/tests/utils/__init__.py +0 -0
  20. altimate-datapilot-cli-0.0.11/src/datapilot/__init__.py +0 -1
  21. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.cookiecutterrc +0 -0
  22. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.coveragerc +0 -0
  23. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.editorconfig +0 -0
  24. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.github/workflows/github-actions.yml +0 -0
  25. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.pre-commit-config.yaml +0 -0
  26. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.pre-commit-hooks.yaml +0 -0
  27. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/.readthedocs.yml +0 -0
  28. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/AUTHORS.rst +0 -0
  29. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/CHANGELOG.rst +0 -0
  30. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/CONTRIBUTING.rst +0 -0
  31. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/LICENSE +0 -0
  32. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/MANIFEST.in +0 -0
  33. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/README.md +0 -0
  34. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/README.rst +0 -0
  35. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/ci/bootstrap.py +0 -0
  36. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/ci/requirements.txt +0 -0
  37. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/ci/templates/.github/workflows/github-actions.yml +0 -0
  38. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/authors.rst +0 -0
  39. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/changelog.rst +0 -0
  40. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/configuration.rst +0 -0
  41. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/contributing.rst +0 -0
  42. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/features.rst +0 -0
  43. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/hooks.rst +0 -0
  44. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/index.rst +0 -0
  45. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/insights.rst +0 -0
  46. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/installation.rst +0 -0
  47. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/introduction.rst +0 -0
  48. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/performance.rst +0 -0
  49. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/readme.rst +0 -0
  50. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/reference/datapilot.rst +0 -0
  51. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/reference/index.rst +0 -0
  52. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/requirements.txt +0 -0
  53. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/spelling_wordlist.txt +0 -0
  54. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/docs/usage.rst +0 -0
  55. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/pyproject.toml +0 -0
  56. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/pytest.ini +0 -0
  57. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/setup.cfg +0 -0
  58. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/dependency_links.txt +0 -0
  59. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/entry_points.txt +0 -0
  60. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/not-zip-safe +0 -0
  61. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/altimate_datapilot_cli.egg-info/top_level.txt +0 -0
  62. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/__main__.py +0 -0
  63. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/cli/__init__.py +0 -0
  64. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/cli/main.py +0 -0
  65. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/clients/__init__.py +0 -0
  66. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/clients/altimate/__init__.py +0 -0
  67. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/config/__init__.py +0 -0
  68. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/config/config.py +0 -0
  69. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/config/utils.py +0 -0
  70. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/__init__.py +0 -0
  71. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/__init__.py +0 -0
  72. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/base/__init__.py +0 -0
  73. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/base/insight.py +0 -0
  74. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/report.py +0 -0
  75. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/schema.py +0 -0
  76. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/sql/__init__.py +0 -0
  77. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/sql/base/__init__.py +0 -0
  78. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/sql/base/insight.py +0 -0
  79. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/sql/runtime/__init__.py +0 -0
  80. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/sql/static/__init__.py +0 -0
  81. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/insights/utils.py +0 -0
  82. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/__init__.py +0 -0
  83. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/__init__.py +0 -0
  84. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/cli/__init__.py +0 -0
  85. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/constants.py +0 -0
  86. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/exceptions.py +0 -0
  87. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/executor.py +0 -0
  88. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/formatting.py +0 -0
  89. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/hooks/__init__.py +0 -0
  90. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/hooks/executor_hook.py +0 -0
  91. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/__init__.py +0 -0
  92. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/base.py +0 -0
  93. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/__init__.py +0 -0
  94. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/base.py +0 -0
  95. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py +0 -0
  96. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py +0 -0
  97. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py +0 -0
  98. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py +0 -0
  99. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py +0 -0
  100. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_labels_keys.py +0 -0
  101. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py +0 -0
  102. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py +0 -0
  103. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py +0 -0
  104. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py +0 -0
  105. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py +0 -0
  106. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py +0 -0
  107. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py +0 -0
  108. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py +0 -0
  109. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py +0 -0
  110. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py +0 -0
  111. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py +0 -0
  112. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py +0 -0
  113. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py +0 -0
  114. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py +0 -0
  115. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py +0 -0
  116. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_labels_keys.py +0 -0
  117. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py +0 -0
  118. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py +0 -0
  119. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py +0 -0
  120. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py +0 -0
  121. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py +0 -0
  122. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py +0 -0
  123. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py +0 -0
  124. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py +0 -0
  125. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/dbt_test/__init__.py +0 -0
  126. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/dbt_test/base.py +0 -0
  127. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py +0 -0
  128. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py +0 -0
  129. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/__init__.py +0 -0
  130. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/base.py +0 -0
  131. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py +0 -0
  132. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py +0 -0
  133. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py +0 -0
  134. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py +0 -0
  135. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py +0 -0
  136. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/README.md +0 -0
  137. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/__init__.py +0 -0
  138. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/base.py +0 -0
  139. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py +0 -0
  140. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py +0 -0
  141. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py +0 -0
  142. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py +0 -0
  143. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py +0 -0
  144. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py +0 -0
  145. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py +0 -0
  146. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py +0 -0
  147. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py +0 -0
  148. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py +0 -0
  149. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py +0 -0
  150. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py +0 -0
  151. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/performance/__init__.py +0 -0
  152. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/performance/base.py +0 -0
  153. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py +0 -0
  154. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py +0 -0
  155. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/schema.py +0 -0
  156. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/__init__.py +0 -0
  157. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/base.py +0 -0
  158. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py +0 -0
  159. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py +0 -0
  160. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py +0 -0
  161. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py +0 -0
  162. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/insights/utils.py +0 -0
  163. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/schemas/__init__.py +0 -0
  164. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/schemas/catalog.py +0 -0
  165. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/schemas/manifest.py +0 -0
  166. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/utils.py +0 -0
  167. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/__init__.py +0 -0
  168. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/catalog/__init__.py +0 -0
  169. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/catalog/v1/__init__.py +0 -0
  170. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/catalog/v1/wrapper.py +0 -0
  171. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/catalog/wrapper.py +0 -0
  172. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/__init__.py +0 -0
  173. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/__init__.py +0 -0
  174. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/schemas.py +0 -0
  175. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/wrapper.py +0 -0
  176. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/__init__.py +0 -0
  177. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/schemas.py +0 -0
  178. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/wrapper.py +0 -0
  179. {altimate-datapilot-cli-0.0.11/src/datapilot/core/platforms/dbt/wrappers/run_results → altimate-datapilot-cli-0.0.13/src/datapilot/core/platforms/dbt/wrappers/manifest/v12}/__init__.py +0 -0
  180. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/manifest/wrapper.py +0 -0
  181. {altimate-datapilot-cli-0.0.11/src/datapilot/exceptions → altimate-datapilot-cli-0.0.13/src/datapilot/core/platforms/dbt/wrappers/run_results}/__init__.py +0 -0
  182. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/core/platforms/dbt/wrappers/run_results/run_results.py +0 -0
  183. {altimate-datapilot-cli-0.0.11/src/datapilot/schemas → altimate-datapilot-cli-0.0.13/src/datapilot/exceptions}/__init__.py +0 -0
  184. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/exceptions/exceptions.py +0 -0
  185. {altimate-datapilot-cli-0.0.11/src/datapilot/utils → altimate-datapilot-cli-0.0.13/src/datapilot/schemas}/__init__.py +0 -0
  186. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/schemas/constants.py +0 -0
  187. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/schemas/nodes.py +0 -0
  188. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/schemas/sql.py +0 -0
  189. {altimate-datapilot-cli-0.0.11/src/datapilot/utils/formatting → altimate-datapilot-cli-0.0.13/src/datapilot/utils}/__init__.py +0 -0
  190. {altimate-datapilot-cli-0.0.11/tests/core → altimate-datapilot-cli-0.0.13/src/datapilot/utils/formatting}/__init__.py +0 -0
  191. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/src/datapilot/utils/formatting/utils.py +0 -0
  192. {altimate-datapilot-cli-0.0.11/tests/core/platform → altimate-datapilot-cli-0.0.13/tests/core}/__init__.py +0 -0
  193. {altimate-datapilot-cli-0.0.11/tests/core/platform/dbt → altimate-datapilot-cli-0.0.13/tests/core/platform}/__init__.py +0 -0
  194. {altimate-datapilot-cli-0.0.11/tests/utils → altimate-datapilot-cli-0.0.13/tests/core/platform/dbt}/__init__.py +0 -0
  195. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/core/platform/dbt/test_utils.py +0 -0
  196. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/catalog_v1.json +0 -0
  197. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/config.yml +0 -0
  198. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifest_v10.json +0 -0
  199. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifest_v10macroargs.json +0 -0
  200. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifest_v11.json +0 -0
  201. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifest_v11macroargs.json +0 -0
  202. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_js.json +0 -0
  203. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_js2.json +0 -0
  204. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_js3.json +0 -0
  205. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_tuva.json +0 -0
  206. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_tuva2.json +0 -0
  207. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/data/manifests/manifest_tuva3.json +0 -0
  208. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tests/utils/test_utils.py +0 -0
  209. {altimate-datapilot-cli-0.0.11 → altimate-datapilot-cli-0.0.13}/tox.ini +0 -0
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 0.0.11
2
+ current_version = 0.0.13
3
3
  commit = True
4
4
  tag = True
5
5
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: altimate-datapilot-cli
3
- Version: 0.0.11
3
+ Version: 0.0.13
4
4
  Summary: Assistant for Data Teams
5
5
  Home-page: https://github.com/AltimateAI/datapilot-cli
6
6
  Author: Altimate Inc
@@ -15,7 +15,7 @@ project = "datapilot-cli"
15
15
  year = "2024"
16
16
  author = "Altimate Inc."
17
17
  copyright = f"{year}, {author}"
18
- version = release = "0.0.11"
18
+ version = release = "0.0.13"
19
19
 
20
20
  pygments_style = "trac"
21
21
  templates_path = ["."]
@@ -13,7 +13,7 @@ def read(*names, **kwargs):
13
13
 
14
14
  setup(
15
15
  name="altimate-datapilot-cli",
16
- version="0.0.11",
16
+ version="0.0.13",
17
17
  license="MIT",
18
18
  description="Assistant for Data Teams",
19
19
  long_description="{}\n{}".format(
@@ -63,7 +63,7 @@ setup(
63
63
  python_requires=">=3.8",
64
64
  install_requires=[
65
65
  "click==8.1.7",
66
- "dbt-artifacts-parser==0.5.1",
66
+ "dbt-artifacts-parser==0.6.0",
67
67
  "ruamel.yaml==0.18.6",
68
68
  "tabulate==0.9.0",
69
69
  "requests==2.31.0",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: altimate-datapilot-cli
3
- Version: 0.0.11
3
+ Version: 0.0.13
4
4
  Summary: Assistant for Data Teams
5
5
  Home-page: https://github.com/AltimateAI/datapilot-cli
6
6
  Author: Altimate Inc
@@ -168,6 +168,9 @@ src/datapilot/core/platforms/dbt/wrappers/manifest/v10/wrapper.py
168
168
  src/datapilot/core/platforms/dbt/wrappers/manifest/v11/__init__.py
169
169
  src/datapilot/core/platforms/dbt/wrappers/manifest/v11/schemas.py
170
170
  src/datapilot/core/platforms/dbt/wrappers/manifest/v11/wrapper.py
171
+ src/datapilot/core/platforms/dbt/wrappers/manifest/v12/__init__.py
172
+ src/datapilot/core/platforms/dbt/wrappers/manifest/v12/schemas.py
173
+ src/datapilot/core/platforms/dbt/wrappers/manifest/v12/wrapper.py
171
174
  src/datapilot/core/platforms/dbt/wrappers/run_results/__init__.py
172
175
  src/datapilot/core/platforms/dbt/wrappers/run_results/run_results.py
173
176
  src/datapilot/exceptions/__init__.py
@@ -186,11 +189,13 @@ tests/core/platform/dbt/__init__.py
186
189
  tests/core/platform/dbt/test_cli.py
187
190
  tests/core/platform/dbt/test_utils.py
188
191
  tests/data/catalog_v1.json
192
+ tests/data/catalog_v12.json
189
193
  tests/data/config.yml
190
194
  tests/data/manifest_v10.json
191
195
  tests/data/manifest_v10macroargs.json
192
196
  tests/data/manifest_v11.json
193
197
  tests/data/manifest_v11macroargs.json
198
+ tests/data/manifest_v12.json
194
199
  tests/data/manifests/manifest_js.json
195
200
  tests/data/manifests/manifest_js2.json
196
201
  tests/data/manifests/manifest_js3.json
@@ -1,5 +1,5 @@
1
1
  click==8.1.7
2
- dbt-artifacts-parser==0.5.1
2
+ dbt-artifacts-parser==0.6.0
3
3
  ruamel.yaml==0.18.6
4
4
  tabulate==0.9.0
5
5
  requests==2.31.0
@@ -0,0 +1 @@
1
+ __version__ = "0.0.13"
@@ -62,7 +62,7 @@ class APIClient:
62
62
  response = requests.post(url, headers=headers, json=data, timeout=timeout)
63
63
  self.logger.debug(f"Received POST response with status: {response.status_code }")
64
64
 
65
- return response
65
+ return response.json()
66
66
 
67
67
  def put(self, endpoint, data, timeout=None):
68
68
  url = f"{self.base_url}{endpoint}"
@@ -83,3 +83,7 @@ class APIClient:
83
83
  def validate_credentials(self):
84
84
  endpoint = "/dbt/v3/validate-credentials"
85
85
  return self.get(endpoint)
86
+
87
+ def start_dbt_ingestion(self, params=None):
88
+ endpoint = "/dbt/v1/start_dbt_ingestion"
89
+ return self.post(endpoint, data=params)
@@ -46,10 +46,14 @@ def validate_credentials(
46
46
  return api_client.validate_credentials()
47
47
 
48
48
 
49
- def onboard_manifest(api_token, tenant, dbt_core_integration_id, manifest_path, backend_url) -> Dict:
49
+ def onboard_file(api_token, tenant, dbt_core_integration_id, dbt_core_integration_environment, file_type, file_path, backend_url) -> Dict:
50
50
  api_client = APIClient(api_token, base_url=backend_url, tenant=tenant)
51
51
 
52
- params = {"dbt_core_integration_id": dbt_core_integration_id, "file_type": "manifest"}
52
+ params = {
53
+ "dbt_core_integration_id": dbt_core_integration_id,
54
+ "dbt_core_integration_environment_type": dbt_core_integration_environment,
55
+ "file_type": file_type,
56
+ }
53
57
  signed_url_data = api_client.get_signed_url(params)
54
58
  if signed_url_data:
55
59
  signed_url = signed_url_data.get("url")
@@ -57,7 +61,7 @@ def onboard_manifest(api_token, tenant, dbt_core_integration_id, manifest_path,
57
61
  api_client.log(f"Received signed URL: {signed_url}")
58
62
  api_client.log(f"Received File ID: {file_id}")
59
63
 
60
- upload_response = upload_content_to_signed_url(manifest_path, signed_url)
64
+ upload_response = upload_content_to_signed_url(file_path, signed_url)
61
65
 
62
66
  if upload_response:
63
67
  verify_params = {"dbt_core_integration_file_id": file_id}
@@ -73,3 +77,20 @@ def onboard_manifest(api_token, tenant, dbt_core_integration_id, manifest_path,
73
77
  "ok": False,
74
78
  "message": "Error in uploading the manifest. ",
75
79
  }
80
+
81
+
82
+ def start_dbt_ingestion(api_token, tenant, dbt_core_integration_id, dbt_core_integration_environment, backend_url):
83
+ api_client = APIClient(api_token, base_url=backend_url, tenant=tenant)
84
+ params = {
85
+ "dbt_core_integration_id": dbt_core_integration_id,
86
+ "dbt_core_integration_environment_type": dbt_core_integration_environment,
87
+ }
88
+ data = api_client.start_dbt_ingestion(params)
89
+ if data and data.get("ok"):
90
+ return {"ok": True}
91
+ else:
92
+ api_client.log("Error starting dbt ingestion worker")
93
+ return {
94
+ "ok": False,
95
+ "message": "Error starting dbt ingestion worker. ",
96
+ }
@@ -3,7 +3,8 @@ import logging
3
3
  import click
4
4
 
5
5
  from datapilot.clients.altimate.utils import check_token_and_instance
6
- from datapilot.clients.altimate.utils import onboard_manifest
6
+ from datapilot.clients.altimate.utils import onboard_file
7
+ from datapilot.clients.altimate.utils import start_dbt_ingestion
7
8
  from datapilot.clients.altimate.utils import validate_credentials
8
9
  from datapilot.config.config import load_config
9
10
  from datapilot.core.platforms.dbt.constants import MODEL
@@ -14,6 +15,7 @@ from datapilot.core.platforms.dbt.formatting import generate_project_insights_ta
14
15
  from datapilot.core.platforms.dbt.utils import load_catalog
15
16
  from datapilot.core.platforms.dbt.utils import load_manifest
16
17
  from datapilot.utils.formatting.utils import tabulate_data
18
+ from datapilot.utils.utils import map_url_to_instance
17
19
 
18
20
  logging.basicConfig(level=logging.INFO)
19
21
 
@@ -87,9 +89,21 @@ def project_health(manifest_path, catalog_path, config_path=None, select=None):
87
89
  @click.option("--token", prompt="API Token", help="Your API token for authentication.")
88
90
  @click.option("--instance-name", prompt="Instance Name", help="Your tenant ID.")
89
91
  @click.option("--dbt_core_integration_id", prompt="DBT Core Integration ID", help="DBT Core Integration ID")
92
+ @click.option(
93
+ "--dbt_core_integration_environment", default="PROD", prompt="DBT Core Integration Environment", help="DBT Core Integration Environment"
94
+ )
90
95
  @click.option("--manifest-path", required=True, prompt="Manifest Path", help="Path to the manifest file.")
96
+ @click.option("--catalog-path", required=False, prompt=False, help="Path to the catalog file.")
91
97
  @click.option("--backend-url", required=False, help="Altimate's Backend URL", default="https://api.myaltimate.com")
92
- def onboard(token, instance_name, dbt_core_integration_id, manifest_path, backend_url="https://api.myaltimate.com", env=None):
98
+ def onboard(
99
+ token,
100
+ instance_name,
101
+ dbt_core_integration_id,
102
+ dbt_core_integration_environment,
103
+ manifest_path,
104
+ catalog_path,
105
+ backend_url="https://api.myaltimate.com",
106
+ ):
93
107
  """Onboard a manifest file to DBT."""
94
108
  check_token_and_instance(token, instance_name)
95
109
 
@@ -104,9 +118,32 @@ def onboard(token, instance_name, dbt_core_integration_id, manifest_path, backen
104
118
  click.echo(f"Error: {e}")
105
119
  return
106
120
 
107
- response = onboard_manifest(token, instance_name, dbt_core_integration_id, manifest_path, backend_url)
108
-
121
+ response = onboard_file(
122
+ token, instance_name, dbt_core_integration_id, dbt_core_integration_environment, "manifest", manifest_path, backend_url
123
+ )
109
124
  if response["ok"]:
110
125
  click.echo("Manifest onboarded successfully!")
111
126
  else:
112
127
  click.echo(f"{response['message']}")
128
+
129
+ if not catalog_path:
130
+ return
131
+
132
+ response = onboard_file(
133
+ token, instance_name, dbt_core_integration_id, dbt_core_integration_environment, "catalog", catalog_path, backend_url
134
+ )
135
+ if response["ok"]:
136
+ click.echo("Catalog onboarded successfully!")
137
+ else:
138
+ click.echo(f"{response['message']}")
139
+
140
+ response = start_dbt_ingestion(token, instance_name, dbt_core_integration_id, dbt_core_integration_environment, backend_url)
141
+ if response["ok"]:
142
+ url = map_url_to_instance(backend_url, instance_name)
143
+ if not url:
144
+ click.echo("Manifest and catalog ingestion has started.")
145
+ else:
146
+ url = f"{url}/settings/integrations/{dbt_core_integration_id}/{dbt_core_integration_environment}"
147
+ click.echo(f"Manifest and catalog ingestion has started. You can check the status at {url}")
148
+ else:
149
+ click.echo(f"{response['message']}")
@@ -1,18 +1,22 @@
1
1
  from dbt_artifacts_parser.parsers.catalog.catalog_v1 import CatalogV1
2
2
  from dbt_artifacts_parser.parsers.manifest.manifest_v10 import ManifestV10
3
3
  from dbt_artifacts_parser.parsers.manifest.manifest_v11 import ManifestV11
4
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import ManifestV12
4
5
 
5
6
  from datapilot.core.platforms.dbt.schemas.manifest import Catalog
6
7
  from datapilot.core.platforms.dbt.schemas.manifest import Manifest
7
8
  from datapilot.core.platforms.dbt.wrappers.catalog.v1.wrapper import CatalogV1Wrapper
8
9
  from datapilot.core.platforms.dbt.wrappers.manifest.v10.wrapper import ManifestV10Wrapper
9
10
  from datapilot.core.platforms.dbt.wrappers.manifest.v11.wrapper import ManifestV11Wrapper
11
+ from datapilot.core.platforms.dbt.wrappers.manifest.v12.wrapper import ManifestV12Wrapper
10
12
  from datapilot.exceptions.exceptions import AltimateNotSupportedError
11
13
 
12
14
 
13
15
  class DBTFactory:
14
16
  @classmethod
15
17
  def get_manifest_wrapper(cls, manifest: Manifest):
18
+ if isinstance(manifest, ManifestV12):
19
+ return ManifestV12Wrapper(manifest)
16
20
  if isinstance(manifest, ManifestV11):
17
21
  return ManifestV11Wrapper(manifest)
18
22
  if isinstance(manifest, ManifestV10):
@@ -0,0 +1,36 @@
1
+ from typing import Dict
2
+ from typing import Type
3
+ from typing import Union
4
+
5
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Exposures
6
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Macros
7
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node
8
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node1
9
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node2
10
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node3
11
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node4
12
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node5
13
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node6
14
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Node7
15
+ from dbt_artifacts_parser.parsers.manifest.manifest_v12 import Sources
16
+
17
+ from datapilot.core.platforms.dbt.constants import GENERIC
18
+ from datapilot.core.platforms.dbt.constants import SINGULAR
19
+
20
+ ManifestNode = Union[Node, Node1, Node2, Node3, Node4, Node5, Node6, Node7]
21
+
22
+ SourceNode = Sources
23
+
24
+ ExposureNode = Exposures
25
+
26
+ TestNode = Union[Node6, Node2]
27
+
28
+ MacroNode = Macros
29
+
30
+ TEST_TYPE_TO_NODE_MAP: Dict[str, Type] = {
31
+ GENERIC: [Node6],
32
+ SINGULAR: [Node2],
33
+ }
34
+
35
+
36
+ SeedNodeMap = Node