altimate-datapilot-cli 0.0.16__tar.gz → 0.0.18__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 (212) hide show
  1. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.bumpversion.cfg +1 -1
  2. {altimate-datapilot-cli-0.0.16/src/altimate_datapilot_cli.egg-info → altimate-datapilot-cli-0.0.18}/PKG-INFO +1 -1
  3. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/conf.py +1 -1
  4. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/features.rst +21 -2
  5. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/setup.py +2 -2
  6. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18/src/altimate_datapilot_cli.egg-info}/PKG-INFO +1 -1
  7. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/requires.txt +1 -1
  8. altimate-datapilot-cli-0.0.18/src/datapilot/__init__.py +1 -0
  9. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/clients/altimate/client.py +6 -0
  10. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/clients/altimate/utils.py +10 -0
  11. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/cli/cli.py +31 -1
  12. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/wrapper.py +1 -1
  13. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/wrapper.py +1 -1
  14. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v12/wrapper.py +1 -1
  15. altimate-datapilot-cli-0.0.16/src/datapilot/__init__.py +0 -1
  16. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.cookiecutterrc +0 -0
  17. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.coveragerc +0 -0
  18. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.editorconfig +0 -0
  19. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.github/workflows/github-actions.yml +0 -0
  20. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.pre-commit-config.yaml +0 -0
  21. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.pre-commit-hooks.yaml +0 -0
  22. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/.readthedocs.yml +0 -0
  23. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/AUTHORS.rst +0 -0
  24. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/CHANGELOG.rst +0 -0
  25. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/CONTRIBUTING.rst +0 -0
  26. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/LICENSE +0 -0
  27. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/MANIFEST.in +0 -0
  28. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/README.md +0 -0
  29. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/README.rst +0 -0
  30. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/ci/bootstrap.py +0 -0
  31. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/ci/requirements.txt +0 -0
  32. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/ci/templates/.github/workflows/github-actions.yml +0 -0
  33. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/authors.rst +0 -0
  34. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/changelog.rst +0 -0
  35. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/configuration.rst +0 -0
  36. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/contributing.rst +0 -0
  37. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/hooks.rst +0 -0
  38. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/index.rst +0 -0
  39. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/insights.rst +0 -0
  40. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/installation.rst +0 -0
  41. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/introduction.rst +0 -0
  42. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/performance.rst +0 -0
  43. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/readme.rst +0 -0
  44. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/reference/datapilot.rst +0 -0
  45. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/reference/index.rst +0 -0
  46. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/requirements.txt +0 -0
  47. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/spelling_wordlist.txt +0 -0
  48. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/docs/usage.rst +0 -0
  49. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/pyproject.toml +0 -0
  50. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/pytest.ini +0 -0
  51. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/setup.cfg +0 -0
  52. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/SOURCES.txt +0 -0
  53. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/dependency_links.txt +0 -0
  54. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/entry_points.txt +0 -0
  55. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/not-zip-safe +0 -0
  56. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/altimate_datapilot_cli.egg-info/top_level.txt +0 -0
  57. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/__main__.py +0 -0
  58. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/cli/__init__.py +0 -0
  59. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/cli/main.py +0 -0
  60. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/clients/__init__.py +0 -0
  61. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/clients/altimate/__init__.py +0 -0
  62. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/config/__init__.py +0 -0
  63. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/config/config.py +0 -0
  64. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/config/utils.py +0 -0
  65. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/__init__.py +0 -0
  66. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/__init__.py +0 -0
  67. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/base/__init__.py +0 -0
  68. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/base/insight.py +0 -0
  69. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/report.py +0 -0
  70. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/schema.py +0 -0
  71. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/sql/__init__.py +0 -0
  72. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/sql/base/__init__.py +0 -0
  73. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/sql/base/insight.py +0 -0
  74. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/sql/runtime/__init__.py +0 -0
  75. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/sql/static/__init__.py +0 -0
  76. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/insights/utils.py +0 -0
  77. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/__init__.py +0 -0
  78. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/__init__.py +0 -0
  79. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/cli/__init__.py +0 -0
  80. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/constants.py +0 -0
  81. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/exceptions.py +0 -0
  82. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/executor.py +0 -0
  83. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/factory.py +0 -0
  84. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/formatting.py +0 -0
  85. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/hooks/__init__.py +0 -0
  86. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/hooks/executor_hook.py +0 -0
  87. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/__init__.py +0 -0
  88. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/base.py +0 -0
  89. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/__init__.py +0 -0
  90. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/base.py +0 -0
  91. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py +0 -0
  92. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py +0 -0
  93. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py +0 -0
  94. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py +0 -0
  95. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py +0 -0
  96. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_labels_keys.py +0 -0
  97. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py +0 -0
  98. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py +0 -0
  99. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py +0 -0
  100. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py +0 -0
  101. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py +0 -0
  102. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py +0 -0
  103. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py +0 -0
  104. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py +0 -0
  105. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py +0 -0
  106. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py +0 -0
  107. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py +0 -0
  108. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py +0 -0
  109. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py +0 -0
  110. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py +0 -0
  111. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py +0 -0
  112. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_labels_keys.py +0 -0
  113. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py +0 -0
  114. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py +0 -0
  115. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py +0 -0
  116. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py +0 -0
  117. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py +0 -0
  118. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py +0 -0
  119. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py +0 -0
  120. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py +0 -0
  121. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/dbt_test/__init__.py +0 -0
  122. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/dbt_test/base.py +0 -0
  123. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py +0 -0
  124. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py +0 -0
  125. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/__init__.py +0 -0
  126. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/base.py +0 -0
  127. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py +0 -0
  128. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py +0 -0
  129. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py +0 -0
  130. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py +0 -0
  131. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py +0 -0
  132. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/README.md +0 -0
  133. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/__init__.py +0 -0
  134. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/base.py +0 -0
  135. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py +0 -0
  136. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py +0 -0
  137. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py +0 -0
  138. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py +0 -0
  139. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py +0 -0
  140. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py +0 -0
  141. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py +0 -0
  142. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py +0 -0
  143. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py +0 -0
  144. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py +0 -0
  145. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py +0 -0
  146. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py +0 -0
  147. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/performance/__init__.py +0 -0
  148. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/performance/base.py +0 -0
  149. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py +0 -0
  150. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py +0 -0
  151. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/schema.py +0 -0
  152. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/sql/__init__.py +0 -0
  153. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/sql/base.py +0 -0
  154. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/sql/sql_check.py +0 -0
  155. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/__init__.py +0 -0
  156. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/base.py +0 -0
  157. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py +0 -0
  158. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py +0 -0
  159. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py +0 -0
  160. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py +0 -0
  161. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/insights/utils.py +0 -0
  162. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/schemas/__init__.py +0 -0
  163. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/schemas/catalog.py +0 -0
  164. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/schemas/manifest.py +0 -0
  165. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/utils.py +0 -0
  166. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/__init__.py +0 -0
  167. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/catalog/__init__.py +0 -0
  168. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/catalog/v1/__init__.py +0 -0
  169. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/catalog/v1/wrapper.py +0 -0
  170. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/catalog/wrapper.py +0 -0
  171. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/__init__.py +0 -0
  172. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/__init__.py +0 -0
  173. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v10/schemas.py +0 -0
  174. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/__init__.py +0 -0
  175. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v11/schemas.py +0 -0
  176. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v12/__init__.py +0 -0
  177. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/v12/schemas.py +0 -0
  178. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/manifest/wrapper.py +0 -0
  179. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/run_results/__init__.py +0 -0
  180. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/core/platforms/dbt/wrappers/run_results/run_results.py +0 -0
  181. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/exceptions/__init__.py +0 -0
  182. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/exceptions/exceptions.py +0 -0
  183. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/schemas/__init__.py +0 -0
  184. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/schemas/constants.py +0 -0
  185. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/schemas/nodes.py +0 -0
  186. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/schemas/sql.py +0 -0
  187. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/utils/__init__.py +0 -0
  188. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/utils/formatting/__init__.py +0 -0
  189. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/utils/formatting/utils.py +0 -0
  190. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/src/datapilot/utils/utils.py +0 -0
  191. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/core/__init__.py +0 -0
  192. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/core/platform/__init__.py +0 -0
  193. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/core/platform/dbt/__init__.py +0 -0
  194. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/core/platform/dbt/test_cli.py +0 -0
  195. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/core/platform/dbt/test_utils.py +0 -0
  196. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/catalog_v1.json +0 -0
  197. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/catalog_v12.json +0 -0
  198. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/config.yml +0 -0
  199. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifest_v10.json +0 -0
  200. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifest_v10macroargs.json +0 -0
  201. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifest_v11.json +0 -0
  202. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifest_v11macroargs.json +0 -0
  203. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifest_v12.json +0 -0
  204. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_js.json +0 -0
  205. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_js2.json +0 -0
  206. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_js3.json +0 -0
  207. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_tuva.json +0 -0
  208. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_tuva2.json +0 -0
  209. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/data/manifests/manifest_tuva3.json +0 -0
  210. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/utils/__init__.py +0 -0
  211. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tests/utils/test_utils.py +0 -0
  212. {altimate-datapilot-cli-0.0.16 → altimate-datapilot-cli-0.0.18}/tox.ini +0 -0
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 0.0.16
2
+ current_version = 0.0.18
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.16
3
+ Version: 0.0.18
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.16"
18
+ version = release = "0.0.18"
19
19
 
20
20
  pygments_style = "trac"
21
21
  templates_path = ["."]
@@ -42,6 +42,25 @@ You can also select specific list of models to run the health check on by provid
42
42
 
43
43
  datapilot dbt project-health --manifest-path ./target/manifest.json --select "path:dir1 path:dir2 model1 model2"
44
44
 
45
- This will run the health check on all the models in the 'dir1' and 'dir2' directory. It will also run the health check on the 'model1' and 'model2' models.
45
+ This will run the health check on all the models in the 'dir1' and 'dir2' directory, as well as the 'model1' and 'model2' models.
46
46
  As of now, the '--select' flag only supports filtering based on model path and model name. We will add support for other filters and make it compatible
47
- with the dbt comands soon.
47
+ with the dbt commands soon.
48
+
49
+ 3. **Configuration**:
50
+ You can provide configuration in two ways:
51
+
52
+ a. Using a local config file:
53
+ .. code-block:: shell
54
+
55
+ datapilot dbt project-health --manifest-path ./target/manifest.json --config-path ./path/to/config.yml
56
+
57
+ b. Using a named config from the API:
58
+ .. code-block:: shell
59
+
60
+ datapilot dbt project-health --manifest-path ./target/manifest.json --config-name "my-config" --token "YOUR_API_TOKEN" --instance-name "YOUR_INSTANCE"
61
+
62
+ The ``--config-name`` option allows you to use a configuration stored in the Altimate API. When using this option, you must also provide:
63
+ - ``--token``: Your API token for authentication
64
+ - ``--instance-name``: Your tenant ID
65
+
66
+ If both ``--config-path`` and ``--config-name`` are provided, the local config file (``--config-path``) takes precedence.
@@ -13,7 +13,7 @@ def read(*names, **kwargs):
13
13
 
14
14
  setup(
15
15
  name="altimate-datapilot-cli",
16
- version="0.0.16",
16
+ version="0.0.18",
17
17
  license="MIT",
18
18
  description="Assistant for Data Teams",
19
19
  long_description="{}\n{}".format(
@@ -66,7 +66,7 @@ setup(
66
66
  "dbt-artifacts-parser~=0.8.1",
67
67
  "ruamel.yaml~=0.18.6",
68
68
  "tabulate~=0.9.0",
69
- "requests~=2.31.0",
69
+ "requests>=2.31",
70
70
  "sqlglot~=25.30.0",
71
71
  ],
72
72
  extras_require={
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: altimate-datapilot-cli
3
- Version: 0.0.16
3
+ Version: 0.0.18
4
4
  Summary: Assistant for Data Teams
5
5
  Home-page: https://github.com/AltimateAI/datapilot-cli
6
6
  Author: Altimate Inc
@@ -2,5 +2,5 @@ click~=8.1.7
2
2
  dbt-artifacts-parser~=0.8.1
3
3
  ruamel.yaml~=0.18.6
4
4
  tabulate~=0.9.0
5
- requests~=2.31.0
5
+ requests>=2.31
6
6
  sqlglot~=25.30.0
@@ -0,0 +1 @@
1
+ __version__ = "0.0.18"
@@ -104,3 +104,9 @@ class APIClient:
104
104
  "check_names": check_names,
105
105
  }
106
106
  return self.post(endpoint, data=data)
107
+
108
+ def get_all_dbt_configs(self):
109
+ """Get all DBT configs with a page size of 100."""
110
+ endpoint = "/dbtconfig/"
111
+ params = {"size": 100}
112
+ return self.get(endpoint, params=params)
@@ -124,3 +124,13 @@ def run_project_governance_llm_checks(
124
124
  ):
125
125
  api_client = APIClient(api_token=api_token, base_url=backend_url, tenant=tenant)
126
126
  return api_client.run_project_governance_llm_checks(manifest, catalog, check_names)
127
+
128
+
129
+ def get_all_dbt_configs(
130
+ api_token,
131
+ tenant,
132
+ backend_url,
133
+ ):
134
+ """Get all DBT configs from the API."""
135
+ api_client = APIClient(api_token=api_token, base_url=backend_url, tenant=tenant)
136
+ return api_client.get_all_dbt_configs()
@@ -3,6 +3,7 @@ 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 get_all_dbt_configs
6
7
  from datapilot.clients.altimate.utils import onboard_file
7
8
  from datapilot.clients.altimate.utils import start_dbt_ingestion
8
9
  from datapilot.clients.altimate.utils import validate_credentials
@@ -45,6 +46,11 @@ def dbt():
45
46
  required=False,
46
47
  help="Path to the DBT config file",
47
48
  )
49
+ @click.option(
50
+ "--config-name",
51
+ required=False,
52
+ help="Name of the DBT config to use from the API",
53
+ )
48
54
  @click.option(
49
55
  "--select",
50
56
  required=False,
@@ -53,7 +59,14 @@ def dbt():
53
59
  )
54
60
  @click.option("--backend-url", required=False, help="Altimate's Backend URL", default="https://api.myaltimate.com")
55
61
  def project_health(
56
- token, instance_name, manifest_path, catalog_path, config_path=None, select=None, backend_url="https://api.myaltimate.com"
62
+ token,
63
+ instance_name,
64
+ manifest_path,
65
+ catalog_path,
66
+ config_path=None,
67
+ config_name=None,
68
+ select=None,
69
+ backend_url="https://api.myaltimate.com",
57
70
  ):
58
71
  """
59
72
  Validate the DBT project's configuration and structure.
@@ -62,6 +75,23 @@ def project_health(
62
75
  config = None
63
76
  if config_path:
64
77
  config = load_config(config_path)
78
+ elif config_name and token and instance_name:
79
+ # Get configs from API
80
+ configs = get_all_dbt_configs(token, instance_name, backend_url)
81
+ if configs and "items" in configs:
82
+ # Find config by name
83
+ matching_configs = [c for c in configs["items"] if c["name"] == config_name]
84
+ if matching_configs:
85
+ # Get the config directly from the API response
86
+ click.echo(f"Using config: {config_name}")
87
+ config = matching_configs[0].get("config", {})
88
+ else:
89
+ click.echo(f"No config found with name: {config_name}")
90
+ return
91
+ else:
92
+ click.echo("Failed to fetch configs from API")
93
+ return
94
+
65
95
  selected_models = []
66
96
  if select:
67
97
  selected_models = select.split(" ")
@@ -116,7 +116,7 @@ class ManifestV10Wrapper(BaseManifestWrapper):
116
116
  contract=contract,
117
117
  meta=node.meta,
118
118
  patch_path=node.patch_path,
119
- access=node.access.value,
119
+ access=getattr(node.access, "value", None) if hasattr(node, "access") and node.access is not None else None,
120
120
  )
121
121
 
122
122
  def _get_source(self, source: SourceNode) -> AltimateManifestSourceNode:
@@ -116,7 +116,7 @@ class ManifestV11Wrapper(BaseManifestWrapper):
116
116
  contract=contract,
117
117
  meta=node.meta,
118
118
  patch_path=node.patch_path,
119
- access=node.access.value,
119
+ access=getattr(node.access, "value", None) if hasattr(node, "access") and node.access is not None else None,
120
120
  )
121
121
 
122
122
  def _get_source(self, source: SourceNode) -> AltimateManifestSourceNode:
@@ -116,7 +116,7 @@ class ManifestV12Wrapper(BaseManifestWrapper):
116
116
  contract=contract,
117
117
  meta=node.meta,
118
118
  patch_path=node.patch_path,
119
- access=node.access.value,
119
+ access=getattr(node.access, "value", None) if hasattr(node, "access") and node.access is not None else None,
120
120
  )
121
121
 
122
122
  def _get_source(self, source: SourceNode) -> AltimateManifestSourceNode:
@@ -1 +0,0 @@
1
- __version__ = "0.0.16"