atlan-application-sdk 0.1.1rc41__tar.gz → 0.1.1rc42__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 (419) hide show
  1. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/ISSUE_TEMPLATE/bug_report.yaml +9 -9
  2. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/ISSUE_TEMPLATE/feature_request.yaml +8 -8
  3. atlan_application_sdk-0.1.1rc42/.github/release_notes.md +7 -0
  4. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/CHANGELOG.md +9 -0
  5. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/PKG-INFO +1 -1
  6. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/common/utils.py +78 -4
  7. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/metadata_extraction/sql.py +0 -2
  8. atlan_application_sdk-0.1.1rc42/application_sdk/inputs/__init__.py +168 -0
  9. atlan_application_sdk-0.1.1rc42/application_sdk/inputs/json.py +136 -0
  10. atlan_application_sdk-0.1.1rc42/application_sdk/inputs/parquet.py +260 -0
  11. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/inputs/json_input.py +10 -5
  12. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/inputs/parquet_input.py +9 -4
  13. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/version.py +1 -1
  14. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/pyproject.toml +1 -1
  15. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/common/test_utils.py +165 -0
  16. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/metadata_extraction/test_sql.py +2 -2
  17. atlan_application_sdk-0.1.1rc42/tests/unit/common/test_utils_file_discovery.py +147 -0
  18. atlan_application_sdk-0.1.1rc42/tests/unit/inputs/test_base_input.py +398 -0
  19. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/inputs/test_json.py +99 -69
  20. atlan_application_sdk-0.1.1rc42/tests/unit/inputs/test_parquet.py +469 -0
  21. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/uv.lock +1 -1
  22. atlan_application_sdk-0.1.1rc41/.github/release_notes.md +0 -8
  23. atlan_application_sdk-0.1.1rc41/application_sdk/inputs/__init__.py +0 -72
  24. atlan_application_sdk-0.1.1rc41/application_sdk/inputs/json.py +0 -164
  25. atlan_application_sdk-0.1.1rc41/application_sdk/inputs/parquet.py +0 -181
  26. atlan_application_sdk-0.1.1rc41/tests/unit/inputs/test_parquet.py +0 -688
  27. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/BUGBOT.md +0 -0
  28. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/documentation.mdc +0 -0
  29. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/exception-handling.mdc +0 -0
  30. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/guidelines.mdc +0 -0
  31. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/logging.mdc +0 -0
  32. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/performance.mdc +0 -0
  33. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/setup.mdc +0 -0
  34. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/standards.mdc +0 -0
  35. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.cursor/rules/testing.mdc +0 -0
  36. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.env.example +0 -0
  37. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/CODEOWNERS +0 -0
  38. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/ISSUE_TEMPLATE/config.yaml +0 -0
  39. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/docgen/action.yaml +0 -0
  40. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/doclint/action.yaml +0 -0
  41. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/docstring-coverage/action.yaml +0 -0
  42. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/e2e-apps/action.yaml +0 -0
  43. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/e2e-examples/action.yaml +0 -0
  44. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/setup-deps/action.yaml +0 -0
  45. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/sync-branches/action.yaml +0 -0
  46. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/trivy/action.yaml +0 -0
  47. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/trivy-container/action.yaml +0 -0
  48. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/actions/unit-tests/action.yaml +0 -0
  49. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/dependabot.yaml +0 -0
  50. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/pull_request_template.md +0 -0
  51. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/scripts/extract_release_notes.py +0 -0
  52. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/scripts/pre_release.py +0 -0
  53. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/scripts/release.py +0 -0
  54. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/scripts/trivy-to-markdown.py +0 -0
  55. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/scripts/update_changelog.py +0 -0
  56. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/AMPM.yml +0 -0
  57. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Accessibility.yml +0 -0
  58. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Acronyms.yml +0 -0
  59. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Adverbs.yml +0 -0
  60. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Auto.yml +0 -0
  61. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Avoid.yml +0 -0
  62. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Contractions.yml +0 -0
  63. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Dashes.yml +0 -0
  64. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/DateFormat.yml +0 -0
  65. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/DateNumbers.yml +0 -0
  66. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/DateOrder.yml +0 -0
  67. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Ellipses.yml +0 -0
  68. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/FirstPerson.yml +0 -0
  69. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Foreign.yml +0 -0
  70. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Gender.yml +0 -0
  71. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/GenderBias.yml +0 -0
  72. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/GeneralURL.yml +0 -0
  73. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/HeadingAcronyms.yml +0 -0
  74. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/HeadingColons.yml +0 -0
  75. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/HeadingPunctuation.yml +0 -0
  76. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Headings.yml +0 -0
  77. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Hyphens.yml +0 -0
  78. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Negative.yml +0 -0
  79. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Ordinal.yml +0 -0
  80. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/OxfordComma.yml +0 -0
  81. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Passive.yml +0 -0
  82. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Percentages.yml +0 -0
  83. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Plurals.yml +0 -0
  84. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Quotes.yml +0 -0
  85. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/RangeTime.yml +0 -0
  86. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Semicolon.yml +0 -0
  87. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/SentenceLength.yml +0 -0
  88. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Spacing.yml +0 -0
  89. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Suspended.yml +0 -0
  90. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Terms.yml +0 -0
  91. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/URLFormat.yml +0 -0
  92. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Units.yml +0 -0
  93. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Vocab.yml +0 -0
  94. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/We.yml +0 -0
  95. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/Wordiness.yml +0 -0
  96. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/Microsoft/meta.json +0 -0
  97. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/config/vocabularies/deviations/accept.txt +0 -0
  98. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/styles/config/vocabularies/deviations/reject.txt +0 -0
  99. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/checks.properties.json +0 -0
  100. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/checks.yaml +0 -0
  101. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/codeql.properties.json +0 -0
  102. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/codeql.yaml +0 -0
  103. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/dependency-review.properties.json +0 -0
  104. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/dependency-review.yml +0 -0
  105. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/stale.properties.json +0 -0
  106. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/stale.yml +0 -0
  107. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/trivy-container.properties.json +0 -0
  108. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/trivy-container.yaml +0 -0
  109. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/trivy.properties.json +0 -0
  110. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflow-templates/trivy.yaml +0 -0
  111. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/codeql.yaml +0 -0
  112. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/pre-release.yaml +0 -0
  113. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/pull_request.yaml +0 -0
  114. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/push.yaml +0 -0
  115. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/release.yaml.disabled +0 -0
  116. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/scale-tests.yaml +0 -0
  117. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/schedule.yaml +0 -0
  118. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/tag-and-publish.yaml +0 -0
  119. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/trivy-container.yaml +0 -0
  120. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.github/workflows/verify-snyk-status.yml +0 -0
  121. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.gitignore +0 -0
  122. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.pre-commit-config.yaml +0 -0
  123. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/.vscode/launch.json +0 -0
  124. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/CODE_OF_CONDUCT.md +0 -0
  125. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/CONTRIBUTING.md +0 -0
  126. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/LICENSE +0 -0
  127. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/NOTICE +0 -0
  128. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/README.md +0 -0
  129. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/SECURITY.md +0 -0
  130. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/__init__.py +0 -0
  131. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/.cursor/BUGBOT.md +0 -0
  132. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/__init__.py +0 -0
  133. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/common/__init__.py +0 -0
  134. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/common/models.py +0 -0
  135. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/lock_management.py +0 -0
  136. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/metadata_extraction/__init__.py +0 -0
  137. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/metadata_extraction/base.py +0 -0
  138. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/metadata_extraction/rest.py +0 -0
  139. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/query_extraction/__init__.py +0 -0
  140. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/activities/query_extraction/sql.py +0 -0
  141. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/application/__init__.py +0 -0
  142. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/application/metadata_extraction/sql.py +0 -0
  143. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/.cursor/BUGBOT.md +0 -0
  144. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/__init__.py +0 -0
  145. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/atlan.py +0 -0
  146. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/atlan_auth.py +0 -0
  147. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/base.py +0 -0
  148. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/models.py +0 -0
  149. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/redis.py +0 -0
  150. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/sql.py +0 -0
  151. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/temporal.py +0 -0
  152. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/utils.py +0 -0
  153. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/clients/workflow.py +0 -0
  154. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/.cursor/BUGBOT.md +0 -0
  155. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/__init__.py +0 -0
  156. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/aws_utils.py +0 -0
  157. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/dapr_utils.py +0 -0
  158. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/dataframe_utils.py +0 -0
  159. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/error_codes.py +0 -0
  160. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/common/utils.py +0 -0
  161. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/constants.py +0 -0
  162. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/decorators/.cursor/BUGBOT.md +0 -0
  163. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/decorators/__init__.py +0 -0
  164. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/decorators/locks.py +0 -0
  165. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/__init__.py +0 -0
  166. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/exporters/__init__.py +0 -0
  167. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/exporters/mkdocs.py +0 -0
  168. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/__init__.py +0 -0
  169. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/export/__init__.py +0 -0
  170. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/export/page.py +0 -0
  171. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/__init__.py +0 -0
  172. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/customer.py +0 -0
  173. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/internal.py +0 -0
  174. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/metadata.py +0 -0
  175. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/page.py +0 -0
  176. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/models/manifest/section.py +0 -0
  177. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/parsers/__init__.py +0 -0
  178. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/parsers/directory.py +0 -0
  179. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/docgen/parsers/manifest.py +0 -0
  180. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/events/__init__.py +0 -0
  181. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/events/models.py +0 -0
  182. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/handlers/__init__.py +0 -0
  183. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/handlers/base.py +0 -0
  184. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/handlers/sql.py +0 -0
  185. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/inputs/.cursor/BUGBOT.md +0 -0
  186. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/inputs/iceberg.py +0 -0
  187. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/inputs/sql_query.py +0 -0
  188. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/interceptors/.cursor/BUGBOT.md +0 -0
  189. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/interceptors/__init__.py +0 -0
  190. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/interceptors/cleanup.py +0 -0
  191. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/interceptors/events.py +0 -0
  192. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/interceptors/lock.py +0 -0
  193. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/__init__.py +0 -0
  194. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/decorators/observability_decorator.py +0 -0
  195. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/logger_adaptor.py +0 -0
  196. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/metrics_adaptor.py +0 -0
  197. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/observability.py +0 -0
  198. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/traces_adaptor.py +0 -0
  199. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/observability/utils.py +0 -0
  200. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/outputs/.cursor/BUGBOT.md +0 -0
  201. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/outputs/__init__.py +0 -0
  202. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/outputs/iceberg.py +0 -0
  203. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/outputs/json.py +0 -0
  204. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/outputs/parquet.py +0 -0
  205. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/.cursor/BUGBOT.md +0 -0
  206. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/__init__.py +0 -0
  207. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/__init__.py +0 -0
  208. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/middleware/logmiddleware.py +0 -0
  209. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/middleware/metrics.py +0 -0
  210. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/models.py +0 -0
  211. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/routers/__init__.py +0 -0
  212. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/routers/server.py +0 -0
  213. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/server/fastapi/utils.py +0 -0
  214. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/__init__.py +0 -0
  215. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/atlan_storage.py +0 -0
  216. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/eventstore.py +0 -0
  217. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/objectstore.py +0 -0
  218. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/secretstore.py +0 -0
  219. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/services/statestore.py +0 -0
  220. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/__init__.py +0 -0
  221. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/e2e/__init__.py +0 -0
  222. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/e2e/base.py +0 -0
  223. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/e2e/client.py +0 -0
  224. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/e2e/conftest.py +0 -0
  225. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/e2e/utils.py +0 -0
  226. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/__init__.py +0 -0
  227. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/__init__.py +0 -0
  228. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/clients/__init__.py +0 -0
  229. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/clients/sql.py +0 -0
  230. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/common/__init__.py +0 -0
  231. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/common/logger.py +0 -0
  232. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/handlers/__init__.py +0 -0
  233. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/__init__.py +0 -0
  234. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_metadata.py +0 -0
  235. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_preflight.py +0 -0
  236. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/inputs/__init__.py +0 -0
  237. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/outputs/__init__.py +0 -0
  238. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/outputs/json_output.py +0 -0
  239. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/outputs/statestore.py +0 -0
  240. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/server/__init__.py +0 -0
  241. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/server/fastapi/__init__.py +0 -0
  242. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/sql_client.py +0 -0
  243. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/hypothesis/strategies/temporal.py +0 -0
  244. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/README.md +0 -0
  245. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/__init__.py +0 -0
  246. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/config_loader.py +0 -0
  247. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/data_generator.py +0 -0
  248. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/driver.py +0 -0
  249. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/examples/config.yaml +0 -0
  250. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/output_handler/__init__.py +0 -0
  251. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/output_handler/base.py +0 -0
  252. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/output_handler/csv_handler.py +0 -0
  253. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/output_handler/json_handler.py +0 -0
  254. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/scale_data_generator/output_handler/parquet_handler.py +0 -0
  255. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/test_utils/workflow_monitoring.py +0 -0
  256. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/__init__.py +0 -0
  257. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/atlas/__init__.py +0 -0
  258. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/atlas/sql.py +0 -0
  259. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/common/__init__.py +0 -0
  260. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/common/utils.py +0 -0
  261. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/__init__.py +0 -0
  262. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/column.yaml +0 -0
  263. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/database.yaml +0 -0
  264. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/extras-procedure.yaml +0 -0
  265. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/function.yaml +0 -0
  266. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/schema.yaml +0 -0
  267. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/table.yaml +0 -0
  268. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/transformers/query/templates/tag_attachment.yaml +0 -0
  269. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/worker.py +0 -0
  270. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/.cursor/BUGBOT.md +0 -0
  271. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/__init__.py +0 -0
  272. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/metadata_extraction/__init__.py +0 -0
  273. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/metadata_extraction/sql.py +0 -0
  274. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/query_extraction/__init__.py +0 -0
  275. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/application_sdk/workflows/query_extraction/sql.py +0 -0
  276. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/README.md +0 -0
  277. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/atlan-storage.yaml +0 -0
  278. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/aws-secrets.yaml +0 -0
  279. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/deployment-secrets.yaml +0 -0
  280. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/eventstore.yaml +0 -0
  281. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/objectstore.yaml +0 -0
  282. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/secretstore.yaml +0 -0
  283. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/components/statestore.yaml +0 -0
  284. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/activities.md +0 -0
  285. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/application.md +0 -0
  286. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/application_sql.md +0 -0
  287. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/atlanupload.md +0 -0
  288. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/clients.md +0 -0
  289. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/common.md +0 -0
  290. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/handlers.md +0 -0
  291. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/inputs.md +0 -0
  292. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/output_paths.md +0 -0
  293. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/outputs.md +0 -0
  294. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/server.md +0 -0
  295. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/services.md +0 -0
  296. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/temporal_auth.md +0 -0
  297. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/worker.md +0 -0
  298. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/concepts/workflows.md +0 -0
  299. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/configuration.md +0 -0
  300. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/architecture.md +0 -0
  301. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/atlantis.md +0 -0
  302. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/best-practices.md +0 -0
  303. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/getting-started.md +0 -0
  304. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/index.md +0 -0
  305. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/partners.md +0 -0
  306. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/secretstores.md +0 -0
  307. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/sql-application-guide.md +0 -0
  308. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/guides/test-framework.md +0 -0
  309. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/index.md +0 -0
  310. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/setup/LINUX.md +0 -0
  311. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/setup/MAC.md +0 -0
  312. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/setup/WINDOWS.md +0 -0
  313. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/setup/troubleshooting.md +0 -0
  314. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/static/assets/logo.svg +0 -0
  315. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/static/images/phoenix-sdk-featureset.png +0 -0
  316. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/static/javascripts/mathjax.js +0 -0
  317. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/docs/static/stylesheets/extra.css +0 -0
  318. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/docs/mkdocs.yml +0 -0
  319. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/README.md +0 -0
  320. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_custom_fastapi.py +0 -0
  321. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_fastapi.py +0 -0
  322. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_hello_world.py +0 -0
  323. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_sql.py +0 -0
  324. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_sql_miner.py +0 -0
  325. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_sql_with_custom_pyatlan_transformer.py +0 -0
  326. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/application_sql_with_custom_transformer.py +0 -0
  327. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/run_examples.py +0 -0
  328. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/examples/sql_query_templates/database.yaml +0 -0
  329. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/.cursor/BUGBOT.md +0 -0
  330. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/__init__.py +0 -0
  331. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/conftest.py +0 -0
  332. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/__init__.py +0 -0
  333. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/__init__.py +0 -0
  334. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/common/__init__.py +0 -0
  335. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/metadata_extraction/__init__.py +0 -0
  336. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/query_extraction/__init__.py +0 -0
  337. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/test_activities.py +0 -0
  338. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/activities/test_lock_management.py +0 -0
  339. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/application/__init__.py +0 -0
  340. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/application/metadata_extraction/test_sql.py +0 -0
  341. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/application/test_application.py +0 -0
  342. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/__init__.py +0 -0
  343. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_async_sql_client.py +0 -0
  344. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_atlan_auth.py +0 -0
  345. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_atlan_client.py +0 -0
  346. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_atlanauth.py +0 -0
  347. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_base_client.py +0 -0
  348. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_redis_client.py +0 -0
  349. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_sql_client.py +0 -0
  350. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/clients/test_temporal_client.py +0 -0
  351. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/common/test_aws_utils.py +0 -0
  352. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/common/test_credential_utils.py +0 -0
  353. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/common/test_utils.py +0 -0
  354. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/docgen/parsers/test_directory_parser.py +0 -0
  355. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/docgen/parsers/test_manifest_parser.py +0 -0
  356. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/__init__.py +0 -0
  357. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_auth.py +0 -0
  358. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_check_schemas_and_databases.py +0 -0
  359. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_extract_allowed_schemas.py +0 -0
  360. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_metadata.py +0 -0
  361. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_preflight_check.py +0 -0
  362. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_prepare_metadata.py +0 -0
  363. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_tables_check.py +0 -0
  364. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/sql/test_validate_filters.py +0 -0
  365. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/handlers/test_base_handler.py +0 -0
  366. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/observability/__init__.py +0 -0
  367. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/observability/test_logger_adaptor.py +0 -0
  368. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/observability/test_metrics_adaptor.py +0 -0
  369. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/observability/test_traces_adaptor.py +0 -0
  370. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/outputs/test_iceberg.py +0 -0
  371. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/outputs/test_json_output.py +0 -0
  372. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/outputs/test_output.py +0 -0
  373. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/outputs/test_parquet_output.py +0 -0
  374. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/server/__init__.py +0 -0
  375. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/server/fastapi/routers/__init__.py +0 -0
  376. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/server/fastapi/routers/server.py +0 -0
  377. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/server/fastapi/test_fastapi.py +0 -0
  378. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/services/test_atlan_storage.py +0 -0
  379. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/services/test_eventstore.py +0 -0
  380. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/services/test_objectstore.py +0 -0
  381. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/services/test_statestore.py +0 -0
  382. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/test_worker.py +0 -0
  383. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/__init__.py +0 -0
  384. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/__init__.py +0 -0
  385. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_columns.json +0 -0
  386. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_databases.json +0 -0
  387. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_functions.json +0 -0
  388. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_procedures.json +0 -0
  389. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_schemas.json +0 -0
  390. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/raw_tables.json +0 -0
  391. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_columns.json +0 -0
  392. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_databases.json +0 -0
  393. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_functions.json +0 -0
  394. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_procedures.json +0 -0
  395. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_schemas.json +0 -0
  396. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/resources/transformed_tables.json +0 -0
  397. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_column.py +0 -0
  398. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_database.py +0 -0
  399. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_function.py +0 -0
  400. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_procedure.py +0 -0
  401. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_schema.py +0 -0
  402. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/atlas/test_table.py +0 -0
  403. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/column.json +0 -0
  404. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/database.json +0 -0
  405. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/extras-procedure.json +0 -0
  406. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/function.json +0 -0
  407. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/schema.json +0 -0
  408. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/raw/table.json +0 -0
  409. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/column.json +0 -0
  410. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/database.json +0 -0
  411. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/extras-procedure.json +0 -0
  412. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/function.json +0 -0
  413. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/schema.json +0 -0
  414. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/resources/transformed/table.json +0 -0
  415. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/test_sql_transformer.py +0 -0
  416. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/transformers/query/test_sql_transformer_output_validation.py +0 -0
  417. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/workflows/metadata_extraction/test_sql_workflow.py +0 -0
  418. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/workflows/query_extraction/__init__.py +0 -0
  419. {atlan_application_sdk-0.1.1rc41 → atlan_application_sdk-0.1.1rc42}/tests/unit/workflows/query_extraction/test_sql.py +0 -0
@@ -1,13 +1,13 @@
1
- name: "🐛 Bug Report"
1
+ name: "Bug Report"
2
2
  description: File a bug report for the Application SDK.
3
- title: "🐛 [BUG] - <title>"
3
+ title: "<title>"
4
4
  labels: ["bug"]
5
5
 
6
6
  body:
7
7
  - type: textarea
8
8
  id: description
9
9
  attributes:
10
- label: "🐞 Description"
10
+ label: "Description"
11
11
  description: Clear and concise description of the issue.
12
12
  placeholder: What went wrong?
13
13
  validations:
@@ -16,7 +16,7 @@ body:
16
16
  - type: input
17
17
  id: reprod-url
18
18
  attributes:
19
- label: "🔗 Reproduction Repo/Script (if any)"
19
+ label: "Reproduction Repo/Script (if any)"
20
20
  description: Link to a minimal repo or script that reproduces the issue.
21
21
  placeholder: https://github.com/your/repo
22
22
  validations:
@@ -25,7 +25,7 @@ body:
25
25
  - type: textarea
26
26
  id: reprod
27
27
  attributes:
28
- label: "📋 Reproduction Steps"
28
+ label: "Reproduction Steps"
29
29
  description: Steps to reproduce the bug.
30
30
  value: |
31
31
  1. Import SDK
@@ -38,7 +38,7 @@ body:
38
38
  - type: textarea
39
39
  id: logs
40
40
  attributes:
41
- label: "🪵 Logs / Tracebacks"
41
+ label: "Logs / Tracebacks"
42
42
  description: Paste any relevant logs or error messages here (no need for backticks).
43
43
  render: bash
44
44
  validations:
@@ -47,7 +47,7 @@ body:
47
47
  - type: textarea
48
48
  id: expected
49
49
  attributes:
50
- label: "Expected vs 🧨 Actual"
50
+ label: "Expected vs Actual"
51
51
  description: What was the expected behavior and what actually happened?
52
52
  validations:
53
53
  required: true
@@ -55,7 +55,7 @@ body:
55
55
  - type: dropdown
56
56
  id: environment
57
57
  attributes:
58
- label: "💻 Environment"
58
+ label: "Environment"
59
59
  description: What environment are you running this in?
60
60
  options:
61
61
  - MacOS
@@ -68,7 +68,7 @@ body:
68
68
  - type: input
69
69
  id: sdk-version
70
70
  attributes:
71
- label: "📦 SDK Version"
71
+ label: "SDK Version"
72
72
  description: What version of the SDK are you using?
73
73
  placeholder: e.g. 0.1.0
74
74
  validations:
@@ -1,13 +1,13 @@
1
- name: "💡 Feature Request"
1
+ name: "Feature Request"
2
2
  description: Suggest a new feature or enhancement for the Application SDK.
3
- title: "💡 [REQUEST] - <title>"
3
+ title: "<title>"
4
4
  labels: ["enhancement"]
5
5
 
6
6
  body:
7
7
  - type: textarea
8
8
  id: summary
9
9
  attributes:
10
- label: "📝 Summary"
10
+ label: "Summary"
11
11
  description: Briefly describe the proposed feature.
12
12
  placeholder: What would you like to see added or improved?
13
13
  validations:
@@ -16,7 +16,7 @@ body:
16
16
  - type: textarea
17
17
  id: example
18
18
  attributes:
19
- label: "💡 Basic Example"
19
+ label: "Basic Example"
20
20
  description: Provide a simple code snippet or example of how this feature would work.
21
21
  placeholder: Share a code example or expected usage.
22
22
  validations:
@@ -25,7 +25,7 @@ body:
25
25
  - type: textarea
26
26
  id: motivation
27
27
  attributes:
28
- label: "🎯 Motivation"
28
+ label: "Motivation"
29
29
  description: What problem does this feature solve or what use case does it support?
30
30
  placeholder: Why is this feature needed?
31
31
  validations:
@@ -34,7 +34,7 @@ body:
34
34
  - type: textarea
35
35
  id: drawbacks
36
36
  attributes:
37
- label: "⚠️ Drawbacks"
37
+ label: "Drawbacks"
38
38
  description: Any potential downsides, risks, or performance impacts?
39
39
  placeholder: Be honest and neutral about what this might affect.
40
40
  validations:
@@ -43,7 +43,7 @@ body:
43
43
  - type: textarea
44
44
  id: unresolved
45
45
  attributes:
46
- label: "Unresolved Questions"
46
+ label: "Unresolved Questions"
47
47
  description: Are there any open questions or decisions to be made?
48
48
  placeholder: Anything unclear about how to approach this?
49
49
  validations:
@@ -52,7 +52,7 @@ body:
52
52
  - type: textarea
53
53
  id: references
54
54
  attributes:
55
- label: "🔗 Reference Issues / PRs"
55
+ label: "Reference Issues / PRs"
56
56
  description: Link to any related issues or pull requests.
57
57
  placeholder: e.g. #123, #456
58
58
  validations:
@@ -0,0 +1,7 @@
1
+ ## v0.1.1rc42 (September 15, 2025)
2
+
3
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc41...v0.1.1rc42
4
+
5
+ ### Features
6
+
7
+ - enhance file handling in Input classes (#697) (by @Mustafa in [a792fa6](https://github.com/atlanhq/application-sdk/commit/a792fa6))
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+
4
+ ## v0.1.1rc42 (September 15, 2025)
5
+
6
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc41...v0.1.1rc42
7
+
8
+ ### Features
9
+
10
+ - enhance file handling in Input classes (#697) (by @Mustafa in [a792fa6](https://github.com/atlanhq/application-sdk/commit/a792fa6))
11
+
3
12
  ## v0.1.1rc41 (September 11, 2025)
4
13
 
5
14
  Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc40...v0.1.1rc41
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atlan-application-sdk
3
- Version: 0.1.1rc41
3
+ Version: 0.1.1rc42
4
4
  Summary: Atlan Application SDK is a Python library for developing applications on the Atlan Platform
5
5
  Project-URL: Repository, https://github.com/atlanhq/application-sdk
6
6
  Project-URL: Documentation, https://github.com/atlanhq/application-sdk/README.md
@@ -5,10 +5,11 @@ including workflow ID retrieval, automatic heartbeating, and periodic heartbeat
5
5
  """
6
6
 
7
7
  import asyncio
8
+ import glob
8
9
  import os
9
10
  from datetime import timedelta
10
11
  from functools import wraps
11
- from typing import Any, Awaitable, Callable, Optional, TypeVar, cast
12
+ from typing import Any, Awaitable, Callable, List, Optional, TypeVar, cast
12
13
 
13
14
  from temporalio import activity
14
15
 
@@ -79,17 +80,47 @@ def build_output_path() -> str:
79
80
 
80
81
  def get_object_store_prefix(path: str) -> str:
81
82
  """Get the object store prefix for the path.
83
+
84
+ This function handles two types of paths:
85
+ 1. Paths under TEMPORARY_PATH - converts them to relative object store paths
86
+ 2. User-provided paths - returns them as-is (already relative object store paths)
87
+
82
88
  Args:
83
- path: The path to the output directory.
89
+ path: The path to convert to object store prefix.
84
90
 
85
91
  Returns:
86
92
  The object store prefix for the path.
87
93
 
88
- Example:
94
+ Examples:
95
+ >>> # Temporary path case
89
96
  >>> get_object_store_prefix("./local/tmp/artifacts/apps/appName/workflows/wf-123/run-456")
90
97
  "artifacts/apps/appName/workflows/wf-123/run-456"
98
+
99
+ >>> # User-provided path case
100
+ >>> get_object_store_prefix("datasets/sales/2024/")
101
+ "datasets/sales/2024"
91
102
  """
92
- return os.path.relpath(path, TEMPORARY_PATH)
103
+ # Normalize paths for comparison
104
+ abs_path = os.path.abspath(path)
105
+ abs_temp_path = os.path.abspath(TEMPORARY_PATH)
106
+
107
+ # Check if path is under TEMPORARY_PATH
108
+ try:
109
+ # Use os.path.commonpath to properly check if path is under temp directory
110
+ # This prevents false positives like '/tmp/local123' matching '/tmp/local'
111
+ common_path = os.path.commonpath([abs_path, abs_temp_path])
112
+ if common_path == abs_temp_path:
113
+ # Path is under temp directory, convert to relative object store path
114
+ relative_path = os.path.relpath(abs_path, abs_temp_path)
115
+ # Normalize path separators to forward slashes for object store
116
+ return relative_path.replace(os.path.sep, "/")
117
+ else:
118
+ # Path is already a relative object store path, return as-is
119
+ return path.strip("/")
120
+ except ValueError:
121
+ # os.path.commonpath or os.path.relpath can raise ValueError on Windows with different drives
122
+ # In this case, treat as user-provided path, return as-is
123
+ return path.strip("/")
93
124
 
94
125
 
95
126
  def auto_heartbeater(fn: F) -> F:
@@ -199,3 +230,46 @@ async def send_periodic_heartbeat(delay: float, *details: Any) -> None:
199
230
  while True:
200
231
  await asyncio.sleep(delay)
201
232
  activity.heartbeat(*details)
233
+
234
+
235
+ def find_local_files_by_extension(
236
+ path: str,
237
+ extension: str,
238
+ file_names: Optional[List[str]] = None,
239
+ ) -> List[str]:
240
+ """Find local files at the specified local path, optionally filtering by file names.
241
+
242
+ Args:
243
+ path (str): Local path to search in (file or directory)
244
+ extension (str): File extension to filter by (e.g., '.parquet', '.json')
245
+ file_names (Optional[List[str]]): List of file names (basenames) to filter by, paths are not supported
246
+
247
+ Returns:
248
+ List[str]: List of matching file paths
249
+
250
+ Example:
251
+ >>> find_local_files_by_extension("/data", ".parquet", ["file1.parquet", "file2.parquet"])
252
+ ['file1.parquet', 'file2.parquet']
253
+
254
+ >>> find_local_files_by_extension("/data/single.json", ".json")
255
+ ['single.json']
256
+ """
257
+ if os.path.isfile(path) and path.endswith(extension):
258
+ # Single file - return it directly
259
+ return [path]
260
+
261
+ elif os.path.isdir(path):
262
+ # Directory - find all files in directory
263
+ all_files = glob.glob(
264
+ os.path.join(path, "**", f"*{extension}"),
265
+ recursive=True,
266
+ )
267
+
268
+ # Filter by file names if specified
269
+ if file_names:
270
+ file_names_set = set(file_names) # Convert to set for O(1) lookup
271
+ return [f for f in all_files if os.path.basename(f) in file_names_set]
272
+ else:
273
+ return all_files
274
+
275
+ return []
@@ -860,9 +860,7 @@ class BaseSQLMetadataExtractionActivities(ActivitiesInterface):
860
860
 
861
861
  raw_input = ParquetInput(
862
862
  path=os.path.join(output_path, "raw"),
863
- input_prefix=output_prefix,
864
863
  file_names=workflow_args.get("file_names"),
865
- chunk_size=None,
866
864
  )
867
865
  raw_input = raw_input.get_batched_daft_dataframe()
868
866
  transformed_output = JsonOutput(
@@ -0,0 +1,168 @@
1
+ import os
2
+ from abc import ABC, abstractmethod
3
+ from typing import TYPE_CHECKING, AsyncIterator, Iterator, List, Union
4
+
5
+ from application_sdk.activities.common.utils import (
6
+ find_local_files_by_extension,
7
+ get_object_store_prefix,
8
+ )
9
+ from application_sdk.common.error_codes import IOError
10
+ from application_sdk.constants import TEMPORARY_PATH
11
+ from application_sdk.observability.logger_adaptor import get_logger
12
+ from application_sdk.services.objectstore import ObjectStore
13
+
14
+ logger = get_logger(__name__)
15
+
16
+ if TYPE_CHECKING:
17
+ import daft
18
+ import pandas as pd
19
+
20
+
21
+ class Input(ABC):
22
+ """
23
+ Abstract base class for input data sources.
24
+ """
25
+
26
+ async def download_files(self) -> List[str]:
27
+ """Download files from object store if not available locally.
28
+
29
+ Flow:
30
+ 1. Check if files exist locally at self.path
31
+ 2. If not, try to download from object store
32
+ 3. Filter by self.file_names if provided
33
+ 4. Return list of file paths for logging purposes
34
+
35
+ Returns:
36
+ List[str]: List of file paths
37
+
38
+ Raises:
39
+ AttributeError: When the input class doesn't support file operations or _extension
40
+ IOError: When no files found locally or in object store
41
+ """
42
+ # Step 1: Check if files exist locally
43
+ local_files = find_local_files_by_extension(
44
+ self.path, self._EXTENSION, self.file_names
45
+ )
46
+ if local_files:
47
+ logger.info(
48
+ f"Found {len(local_files)} {self._EXTENSION} files locally at: {self.path}"
49
+ )
50
+ return local_files
51
+
52
+ # Step 2: Try to download from object store
53
+ logger.info(
54
+ f"No local {self._EXTENSION} files found at {self.path}, checking object store..."
55
+ )
56
+
57
+ try:
58
+ # Determine what to download based on path type and filters
59
+ downloaded_paths = []
60
+
61
+ if self.path.endswith(self._EXTENSION):
62
+ # Single file case (file_names validation already ensures this is valid)
63
+ source_path = get_object_store_prefix(self.path)
64
+ destination_path = os.path.join(TEMPORARY_PATH, source_path)
65
+ await ObjectStore.download_file(
66
+ source=source_path,
67
+ destination=destination_path,
68
+ )
69
+ downloaded_paths.append(destination_path)
70
+
71
+ elif self.file_names:
72
+ # Directory with specific files - download each file individually
73
+ for file_name in self.file_names:
74
+ file_path = os.path.join(self.path, file_name)
75
+ source_path = get_object_store_prefix(file_path)
76
+ destination_path = os.path.join(TEMPORARY_PATH, source_path)
77
+ await ObjectStore.download_file(
78
+ source=source_path,
79
+ destination=destination_path,
80
+ )
81
+ downloaded_paths.append(destination_path)
82
+ else:
83
+ # Download entire directory
84
+ source_path = get_object_store_prefix(self.path)
85
+ destination_path = os.path.join(TEMPORARY_PATH, source_path)
86
+ await ObjectStore.download_prefix(
87
+ source=source_path,
88
+ destination=destination_path,
89
+ )
90
+ # Find the actual files in the downloaded directory
91
+ found_files = find_local_files_by_extension(
92
+ destination_path, self._EXTENSION, getattr(self, "file_names", None)
93
+ )
94
+ downloaded_paths.extend(found_files)
95
+
96
+ # Check results
97
+ if downloaded_paths:
98
+ logger.info(
99
+ f"Successfully downloaded {len(downloaded_paths)} {self._EXTENSION} files from object store"
100
+ )
101
+ return downloaded_paths
102
+ else:
103
+ raise IOError(
104
+ f"{IOError.OBJECT_STORE_READ_ERROR}: Downloaded from object store but no {self._EXTENSION} files found"
105
+ )
106
+
107
+ except Exception as e:
108
+ logger.error(f"Failed to download from object store: {str(e)}")
109
+ raise IOError(
110
+ f"{IOError.OBJECT_STORE_DOWNLOAD_ERROR}: No {self._EXTENSION} files found locally at '{self.path}' and failed to download from object store. "
111
+ f"Error: {str(e)}"
112
+ )
113
+
114
+ @abstractmethod
115
+ async def get_batched_dataframe(
116
+ self,
117
+ ) -> Union[Iterator["pd.DataFrame"], AsyncIterator["pd.DataFrame"]]:
118
+ """
119
+ Get an iterator of batched pandas DataFrames.
120
+
121
+ Returns:
122
+ Iterator["pd.DataFrame"]: An iterator of batched pandas DataFrames.
123
+
124
+ Raises:
125
+ NotImplementedError: If the method is not implemented.
126
+ """
127
+ raise NotImplementedError
128
+
129
+ @abstractmethod
130
+ async def get_dataframe(self) -> "pd.DataFrame":
131
+ """
132
+ Get a single pandas DataFrame.
133
+
134
+ Returns:
135
+ "pd.DataFrame": A pandas DataFrame.
136
+
137
+ Raises:
138
+ NotImplementedError: If the method is not implemented.
139
+ """
140
+ raise NotImplementedError
141
+
142
+ @abstractmethod
143
+ async def get_batched_daft_dataframe(
144
+ self,
145
+ ) -> Union[Iterator["daft.DataFrame"], AsyncIterator["daft.DataFrame"]]: # noqa: F821
146
+ """
147
+ Get an iterator of batched daft DataFrames.
148
+
149
+ Returns:
150
+ Iterator[daft.DataFrame]: An iterator of batched daft DataFrames.
151
+
152
+ Raises:
153
+ NotImplementedError: If the method is not implemented.
154
+ """
155
+ raise NotImplementedError
156
+
157
+ @abstractmethod
158
+ async def get_daft_dataframe(self) -> "daft.DataFrame": # noqa: F821
159
+ """
160
+ Get a single daft DataFrame.
161
+
162
+ Returns:
163
+ daft.DataFrame: A daft DataFrame.
164
+
165
+ Raises:
166
+ NotImplementedError: If the method is not implemented.
167
+ """
168
+ raise NotImplementedError
@@ -0,0 +1,136 @@
1
+ from typing import TYPE_CHECKING, AsyncIterator, Iterator, List, Optional, Union
2
+
3
+ from application_sdk.inputs import Input
4
+ from application_sdk.observability.logger_adaptor import get_logger
5
+
6
+ if TYPE_CHECKING:
7
+ import daft
8
+ import pandas as pd
9
+
10
+ logger = get_logger(__name__)
11
+
12
+
13
+ class JsonInput(Input):
14
+ """
15
+ JSON Input class to read data from JSON files using daft and pandas.
16
+ Supports reading both single files and directories containing multiple JSON files.
17
+ """
18
+
19
+ _EXTENSION = ".json"
20
+
21
+ def __init__(
22
+ self,
23
+ path: str,
24
+ file_names: Optional[List[str]] = None,
25
+ chunk_size: int = 100000,
26
+ ):
27
+ """Initialize the JsonInput class.
28
+
29
+ Args:
30
+ path (str): Path to JSON file or directory containing JSON files.
31
+ It accepts both types of paths:
32
+ local path or object store path
33
+ Wildcards are not supported.
34
+ file_names (Optional[List[str]]): List of specific file names to read. Defaults to None.
35
+ chunk_size (int): Number of rows per batch. Defaults to 100000.
36
+
37
+ Raises:
38
+ ValueError: When path is not provided or when single file path is combined with file_names
39
+ """
40
+
41
+ # Validate that single file path and file_names are not both specified
42
+ if path.endswith(self._EXTENSION) and file_names:
43
+ raise ValueError(
44
+ f"Cannot specify both a single file path ('{path}') and file_names filter. "
45
+ f"Either provide a directory path with file_names, or specify the exact file path without file_names."
46
+ )
47
+
48
+ self.path = path
49
+ self.chunk_size = chunk_size
50
+ self.file_names = file_names
51
+
52
+ async def get_batched_dataframe(
53
+ self,
54
+ ) -> Union[AsyncIterator["pd.DataFrame"], Iterator["pd.DataFrame"]]:
55
+ """
56
+ Method to read the data from the json files in the path
57
+ and return as a batched pandas dataframe
58
+ """
59
+ try:
60
+ import pandas as pd
61
+
62
+ # Ensure files are available (local or downloaded)
63
+ json_files = await self.download_files()
64
+ logger.info(f"Reading {len(json_files)} JSON files in batches")
65
+
66
+ for json_file in json_files:
67
+ json_reader_obj = pd.read_json(
68
+ json_file,
69
+ chunksize=self.chunk_size,
70
+ lines=True,
71
+ )
72
+ for chunk in json_reader_obj:
73
+ yield chunk
74
+ except Exception as e:
75
+ logger.error(f"Error reading batched data from JSON: {str(e)}")
76
+ raise
77
+
78
+ async def get_dataframe(self) -> "pd.DataFrame":
79
+ """
80
+ Method to read the data from the json files in the path
81
+ and return as a single combined pandas dataframe
82
+ """
83
+ try:
84
+ import pandas as pd
85
+
86
+ # Ensure files are available (local or downloaded)
87
+ json_files = await self.download_files()
88
+ logger.info(f"Reading {len(json_files)} JSON files as pandas dataframe")
89
+
90
+ return pd.concat(
91
+ (pd.read_json(json_file, lines=True) for json_file in json_files),
92
+ ignore_index=True,
93
+ )
94
+
95
+ except Exception as e:
96
+ logger.error(f"Error reading data from JSON: {str(e)}")
97
+ raise
98
+
99
+ async def get_batched_daft_dataframe(
100
+ self,
101
+ ) -> Union[AsyncIterator["daft.DataFrame"], Iterator["daft.DataFrame"]]: # noqa: F821
102
+ """
103
+ Method to read the data from the json files in the path
104
+ and return as a batched daft dataframe
105
+ """
106
+ try:
107
+ import daft
108
+
109
+ # Ensure files are available (local or downloaded)
110
+ json_files = await self.download_files()
111
+ logger.info(f"Reading {len(json_files)} JSON files as daft batches")
112
+
113
+ # Yield each discovered file as separate batch with chunking
114
+ for json_file in json_files:
115
+ yield daft.read_json(json_file, _chunk_size=self.chunk_size)
116
+ except Exception as e:
117
+ logger.error(f"Error reading batched data from JSON using daft: {str(e)}")
118
+ raise
119
+
120
+ async def get_daft_dataframe(self) -> "daft.DataFrame": # noqa: F821
121
+ """
122
+ Method to read the data from the json files in the path
123
+ and return as a single combined daft dataframe
124
+ """
125
+ try:
126
+ import daft
127
+
128
+ # Ensure files are available (local or downloaded)
129
+ json_files = await self.download_files()
130
+ logger.info(f"Reading {len(json_files)} JSON files with daft")
131
+
132
+ # Use the discovered/downloaded files directly
133
+ return daft.read_json(json_files)
134
+ except Exception as e:
135
+ logger.error(f"Error reading data from JSON using daft: {str(e)}")
136
+ raise