atlan-application-sdk 0.1.1rc30__tar.gz → 0.1.1rc32__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 (390) hide show
  1. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/BUGBOT.md +4 -4
  2. atlan_application_sdk-0.1.1rc32/.github/release_notes.md +9 -0
  3. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/CHANGELOG.md +24 -0
  4. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/PKG-INFO +1 -1
  5. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/application/__init__.py +1 -1
  6. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/temporal.py +82 -51
  7. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/constants.py +7 -1
  8. atlan_application_sdk-0.1.1rc32/application_sdk/events/__init__.py +5 -0
  9. atlan_application_sdk-0.1.1rc32/application_sdk/events/models.py +176 -0
  10. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/parquet.py +9 -5
  11. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/secretstore.py +16 -1
  12. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/observability.py +2 -1
  13. atlan_application_sdk-0.1.1rc32/application_sdk/outputs/eventstore.py +109 -0
  14. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/__init__.py +1 -1
  15. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/models.py +1 -1
  16. atlan_application_sdk-0.1.1rc32/application_sdk/test_utils/hypothesis/strategies/inputs/parquet_input.py +28 -0
  17. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/server/fastapi/__init__.py +1 -1
  18. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/version.py +1 -1
  19. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/worker.py +32 -0
  20. atlan_application_sdk-0.1.1rc32/components/eventstore.yaml +23 -0
  21. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/pyproject.toml +1 -1
  22. atlan_application_sdk-0.1.1rc32/tests/conftest.py +34 -0
  23. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/application/metadata_extraction/test_sql.py +35 -0
  24. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/application/test_application.py +14 -0
  25. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_atlan_client.py +22 -22
  26. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_temporal_client.py +4 -2
  27. atlan_application_sdk-0.1.1rc32/tests/unit/inputs/test_parquet.py +684 -0
  28. atlan_application_sdk-0.1.1rc32/tests/unit/outputs/test_eventstore.py +253 -0
  29. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/test_worker.py +5 -0
  30. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/uv.lock +1 -1
  31. atlan_application_sdk-0.1.1rc30/.github/release_notes.md +0 -7
  32. atlan_application_sdk-0.1.1rc30/application_sdk/outputs/eventstore.py +0 -177
  33. atlan_application_sdk-0.1.1rc30/components/eventstore.yaml +0 -8
  34. atlan_application_sdk-0.1.1rc30/tests/conftest.py +0 -15
  35. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/documentation.mdc +0 -0
  36. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/exception-handling.mdc +0 -0
  37. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/guidelines.mdc +0 -0
  38. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/logging.mdc +0 -0
  39. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/performance.mdc +0 -0
  40. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/setup.mdc +0 -0
  41. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/standards.mdc +0 -0
  42. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.cursor/rules/testing.mdc +0 -0
  43. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.env.example +0 -0
  44. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/CODEOWNERS +0 -0
  45. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/ISSUE_TEMPLATE/bug_report.yaml +0 -0
  46. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/ISSUE_TEMPLATE/config.yaml +0 -0
  47. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/ISSUE_TEMPLATE/feature_request.yaml +0 -0
  48. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/docgen/action.yaml +0 -0
  49. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/doclint/action.yaml +0 -0
  50. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/docstring-coverage/action.yaml +0 -0
  51. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/e2e-apps/action.yaml +0 -0
  52. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/e2e-examples/action.yaml +0 -0
  53. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/setup-deps/action.yaml +0 -0
  54. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/sync-branches/action.yaml +0 -0
  55. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/trivy/action.yaml +0 -0
  56. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/trivy-container/action.yaml +0 -0
  57. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/actions/unit-tests/action.yaml +0 -0
  58. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/dependabot.yaml +0 -0
  59. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/pull_request_template.md +0 -0
  60. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/scripts/extract_release_notes.py +0 -0
  61. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/scripts/pre_release.py +0 -0
  62. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/scripts/release.py +0 -0
  63. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/scripts/trivy-to-markdown.py +0 -0
  64. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/scripts/update_changelog.py +0 -0
  65. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/AMPM.yml +0 -0
  66. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Accessibility.yml +0 -0
  67. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Acronyms.yml +0 -0
  68. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Adverbs.yml +0 -0
  69. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Auto.yml +0 -0
  70. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Avoid.yml +0 -0
  71. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Contractions.yml +0 -0
  72. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Dashes.yml +0 -0
  73. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/DateFormat.yml +0 -0
  74. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/DateNumbers.yml +0 -0
  75. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/DateOrder.yml +0 -0
  76. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Ellipses.yml +0 -0
  77. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/FirstPerson.yml +0 -0
  78. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Foreign.yml +0 -0
  79. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Gender.yml +0 -0
  80. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/GenderBias.yml +0 -0
  81. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/GeneralURL.yml +0 -0
  82. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/HeadingAcronyms.yml +0 -0
  83. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/HeadingColons.yml +0 -0
  84. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/HeadingPunctuation.yml +0 -0
  85. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Headings.yml +0 -0
  86. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Hyphens.yml +0 -0
  87. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Negative.yml +0 -0
  88. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Ordinal.yml +0 -0
  89. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/OxfordComma.yml +0 -0
  90. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Passive.yml +0 -0
  91. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Percentages.yml +0 -0
  92. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Plurals.yml +0 -0
  93. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Quotes.yml +0 -0
  94. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/RangeTime.yml +0 -0
  95. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Semicolon.yml +0 -0
  96. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/SentenceLength.yml +0 -0
  97. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Spacing.yml +0 -0
  98. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Suspended.yml +0 -0
  99. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Terms.yml +0 -0
  100. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/URLFormat.yml +0 -0
  101. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Units.yml +0 -0
  102. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Vocab.yml +0 -0
  103. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/We.yml +0 -0
  104. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/Wordiness.yml +0 -0
  105. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/Microsoft/meta.json +0 -0
  106. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/config/vocabularies/deviations/accept.txt +0 -0
  107. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/styles/config/vocabularies/deviations/reject.txt +0 -0
  108. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/checks.properties.json +0 -0
  109. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/checks.yaml +0 -0
  110. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/codeql.properties.json +0 -0
  111. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/codeql.yaml +0 -0
  112. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/dependency-review.properties.json +0 -0
  113. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/dependency-review.yml +0 -0
  114. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/stale.properties.json +0 -0
  115. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/stale.yml +0 -0
  116. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/trivy-container.properties.json +0 -0
  117. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/trivy-container.yaml +0 -0
  118. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/trivy.properties.json +0 -0
  119. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflow-templates/trivy.yaml +0 -0
  120. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/codeql.yaml +0 -0
  121. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/pre-release.yaml +0 -0
  122. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/pull_request.yaml +0 -0
  123. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/push.yaml +0 -0
  124. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/release.yaml.disabled +0 -0
  125. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/scale-tests.yaml +0 -0
  126. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/schedule.yaml +0 -0
  127. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/tag-and-publish.yaml +0 -0
  128. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.github/workflows/trivy-container.yaml +0 -0
  129. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.gitignore +0 -0
  130. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.pre-commit-config.yaml +0 -0
  131. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/.vscode/launch.json +0 -0
  132. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/CODE_OF_CONDUCT.md +0 -0
  133. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/CONTRIBUTING.md +0 -0
  134. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/LICENSE +0 -0
  135. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/NOTICE +0 -0
  136. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/README.md +0 -0
  137. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/SECURITY.md +0 -0
  138. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/__init__.py +0 -0
  139. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/__init__.py +0 -0
  140. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/common/__init__.py +0 -0
  141. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/common/models.py +0 -0
  142. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/common/utils.py +0 -0
  143. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/metadata_extraction/__init__.py +0 -0
  144. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/metadata_extraction/rest.py +0 -0
  145. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/metadata_extraction/sql.py +0 -0
  146. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/query_extraction/__init__.py +0 -0
  147. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/activities/query_extraction/sql.py +0 -0
  148. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/application/metadata_extraction/sql.py +0 -0
  149. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/__init__.py +0 -0
  150. /atlan_application_sdk-0.1.1rc30/application_sdk/clients/atlan_client.py → /atlan_application_sdk-0.1.1rc32/application_sdk/clients/atlan.py +0 -0
  151. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/atlan_auth.py +0 -0
  152. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/sql.py +0 -0
  153. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/utils.py +0 -0
  154. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/clients/workflow.py +0 -0
  155. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/__init__.py +0 -0
  156. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/aws_utils.py +0 -0
  157. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/credential_utils.py +0 -0
  158. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/dapr_utils.py +0 -0
  159. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/dataframe_utils.py +0 -0
  160. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/error_codes.py +0 -0
  161. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/common/utils.py +0 -0
  162. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/__init__.py +0 -0
  163. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/exporters/__init__.py +0 -0
  164. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/exporters/mkdocs.py +0 -0
  165. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/__init__.py +0 -0
  166. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/export/__init__.py +0 -0
  167. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/export/page.py +0 -0
  168. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/__init__.py +0 -0
  169. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/customer.py +0 -0
  170. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/internal.py +0 -0
  171. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/metadata.py +0 -0
  172. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/page.py +0 -0
  173. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/models/manifest/section.py +0 -0
  174. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/parsers/__init__.py +0 -0
  175. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/parsers/directory.py +0 -0
  176. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/docgen/parsers/manifest.py +0 -0
  177. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/handlers/__init__.py +0 -0
  178. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/handlers/sql.py +0 -0
  179. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/__init__.py +0 -0
  180. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/iceberg.py +0 -0
  181. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/json.py +0 -0
  182. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/objectstore.py +0 -0
  183. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/sql_query.py +0 -0
  184. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/inputs/statestore.py +0 -0
  185. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/__init__.py +0 -0
  186. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/decorators/observability_decorator.py +0 -0
  187. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/logger_adaptor.py +0 -0
  188. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/metrics_adaptor.py +0 -0
  189. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/traces_adaptor.py +0 -0
  190. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/observability/utils.py +0 -0
  191. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/__init__.py +0 -0
  192. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/atlan_storage.py +0 -0
  193. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/iceberg.py +0 -0
  194. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/json.py +0 -0
  195. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/objectstore.py +0 -0
  196. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/parquet.py +0 -0
  197. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/secretstore.py +0 -0
  198. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/outputs/statestore.py +0 -0
  199. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/__init__.py +0 -0
  200. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/middleware/logmiddleware.py +0 -0
  201. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/middleware/metrics.py +0 -0
  202. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/routers/__init__.py +0 -0
  203. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/routers/server.py +0 -0
  204. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/server/fastapi/utils.py +0 -0
  205. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/__init__.py +0 -0
  206. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/e2e/__init__.py +0 -0
  207. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/e2e/base.py +0 -0
  208. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/e2e/client.py +0 -0
  209. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/e2e/conftest.py +0 -0
  210. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/e2e/utils.py +0 -0
  211. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/__init__.py +0 -0
  212. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/__init__.py +0 -0
  213. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/clients/__init__.py +0 -0
  214. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/clients/sql.py +0 -0
  215. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/common/__init__.py +0 -0
  216. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/common/logger.py +0 -0
  217. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/handlers/__init__.py +0 -0
  218. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/__init__.py +0 -0
  219. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_metadata.py +0 -0
  220. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_preflight.py +0 -0
  221. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/inputs/__init__.py +0 -0
  222. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/inputs/json_input.py +0 -0
  223. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/outputs/__init__.py +0 -0
  224. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/outputs/json_output.py +0 -0
  225. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/outputs/statestore.py +0 -0
  226. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/server/__init__.py +0 -0
  227. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/sql_client.py +0 -0
  228. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/hypothesis/strategies/temporal.py +0 -0
  229. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/README.md +0 -0
  230. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/__init__.py +0 -0
  231. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/config_loader.py +0 -0
  232. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/data_generator.py +0 -0
  233. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/driver.py +0 -0
  234. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/examples/config.yaml +0 -0
  235. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/output_handler/__init__.py +0 -0
  236. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/output_handler/base.py +0 -0
  237. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/output_handler/csv_handler.py +0 -0
  238. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/output_handler/json_handler.py +0 -0
  239. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/scale_data_generator/output_handler/parquet_handler.py +0 -0
  240. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/test_utils/workflow_monitoring.py +0 -0
  241. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/__init__.py +0 -0
  242. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/atlas/__init__.py +0 -0
  243. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/atlas/sql.py +0 -0
  244. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/common/__init__.py +0 -0
  245. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/common/utils.py +0 -0
  246. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/__init__.py +0 -0
  247. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/column.yaml +0 -0
  248. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/database.yaml +0 -0
  249. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/extras-procedure.yaml +0 -0
  250. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/function.yaml +0 -0
  251. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/schema.yaml +0 -0
  252. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/table.yaml +0 -0
  253. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/transformers/query/templates/tag_attachment.yaml +0 -0
  254. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/workflows/__init__.py +0 -0
  255. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/workflows/metadata_extraction/__init__.py +0 -0
  256. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/workflows/metadata_extraction/sql.py +0 -0
  257. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/workflows/query_extraction/__init__.py +0 -0
  258. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/application_sdk/workflows/query_extraction/sql.py +0 -0
  259. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/README.md +0 -0
  260. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/atlan-storage.yaml +0 -0
  261. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/aws-secrets.yaml +0 -0
  262. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/deployment-secrets.yaml +0 -0
  263. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/objectstore.yaml +0 -0
  264. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/secretstore.yaml +0 -0
  265. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/components/statestore.yaml +0 -0
  266. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/activities.md +0 -0
  267. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/application.md +0 -0
  268. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/application_sql.md +0 -0
  269. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/atlanupload.md +0 -0
  270. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/clients.md +0 -0
  271. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/common.md +0 -0
  272. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/handlers.md +0 -0
  273. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/inputs.md +0 -0
  274. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/output_paths.md +0 -0
  275. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/outputs.md +0 -0
  276. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/server.md +0 -0
  277. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/temporal_auth.md +0 -0
  278. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/worker.md +0 -0
  279. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/concepts/workflows.md +0 -0
  280. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/configuration.md +0 -0
  281. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/architecture.md +0 -0
  282. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/atlantis.md +0 -0
  283. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/best-practices.md +0 -0
  284. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/getting-started.md +0 -0
  285. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/index.md +0 -0
  286. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/partners.md +0 -0
  287. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/secretstores.md +0 -0
  288. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/sql-application-guide.md +0 -0
  289. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/guides/test-framework.md +0 -0
  290. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/index.md +0 -0
  291. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/setup/LINUX.md +0 -0
  292. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/setup/MAC.md +0 -0
  293. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/setup/WINDOWS.md +0 -0
  294. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/setup/troubleshooting.md +0 -0
  295. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/static/assets/logo.svg +0 -0
  296. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/static/images/phoenix-sdk-featureset.png +0 -0
  297. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/static/javascripts/mathjax.js +0 -0
  298. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/docs/static/stylesheets/extra.css +0 -0
  299. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/docs/mkdocs.yml +0 -0
  300. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/README.md +0 -0
  301. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_custom_fastapi.py +0 -0
  302. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_fastapi.py +0 -0
  303. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_hello_world.py +0 -0
  304. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_sql.py +0 -0
  305. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_sql_miner.py +0 -0
  306. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_sql_with_custom_pyatlan_transformer.py +0 -0
  307. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/application_sql_with_custom_transformer.py +0 -0
  308. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/run_examples.py +0 -0
  309. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/examples/sql_query_templates/database.yaml +0 -0
  310. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/__init__.py +0 -0
  311. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/__init__.py +0 -0
  312. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/__init__.py +0 -0
  313. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/common/__init__.py +0 -0
  314. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/common/test_utils.py +0 -0
  315. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/metadata_extraction/__init__.py +0 -0
  316. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/metadata_extraction/test_sql.py +0 -0
  317. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/query_extraction/__init__.py +0 -0
  318. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/activities/test_activities.py +0 -0
  319. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/application/__init__.py +0 -0
  320. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/__init__.py +0 -0
  321. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_async_sql_client.py +0 -0
  322. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_atlan_auth.py +0 -0
  323. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_atlanauth.py +0 -0
  324. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/clients/test_sql_client.py +0 -0
  325. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/common/test_aws_utils.py +0 -0
  326. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/common/test_credential_utils.py +0 -0
  327. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/common/test_utils.py +0 -0
  328. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/docgen/parsers/test_directory_parser.py +0 -0
  329. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/docgen/parsers/test_manifest_parser.py +0 -0
  330. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/__init__.py +0 -0
  331. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_auth.py +0 -0
  332. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_check_schemas_and_databases.py +0 -0
  333. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_extract_allowed_schemas.py +0 -0
  334. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_metadata.py +0 -0
  335. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_preflight_check.py +0 -0
  336. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_prepare_metadata.py +0 -0
  337. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_tables_check.py +0 -0
  338. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/handlers/sql/test_validate_filters.py +0 -0
  339. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/inputs/test_json.py +0 -0
  340. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/observability/__init__.py +0 -0
  341. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/observability/test_logger_adaptor.py +0 -0
  342. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/observability/test_metrics_adaptor.py +0 -0
  343. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/observability/test_traces_adaptor.py +0 -0
  344. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_atlanstorage.py +0 -0
  345. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_iceberg.py +0 -0
  346. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_json_output.py +0 -0
  347. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_objectstore.py +0 -0
  348. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_output.py +0 -0
  349. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/outputs/test_statestore.py +0 -0
  350. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/server/__init__.py +0 -0
  351. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/server/fastapi/routers/__init__.py +0 -0
  352. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/server/fastapi/routers/server.py +0 -0
  353. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/server/fastapi/test_fastapi.py +0 -0
  354. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/__init__.py +0 -0
  355. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/__init__.py +0 -0
  356. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_columns.json +0 -0
  357. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_databases.json +0 -0
  358. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_functions.json +0 -0
  359. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_procedures.json +0 -0
  360. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_schemas.json +0 -0
  361. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/raw_tables.json +0 -0
  362. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_columns.json +0 -0
  363. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_databases.json +0 -0
  364. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_functions.json +0 -0
  365. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_procedures.json +0 -0
  366. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_schemas.json +0 -0
  367. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/resources/transformed_tables.json +0 -0
  368. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_column.py +0 -0
  369. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_database.py +0 -0
  370. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_function.py +0 -0
  371. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_procedure.py +0 -0
  372. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_schema.py +0 -0
  373. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/atlas/test_table.py +0 -0
  374. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/column.json +0 -0
  375. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/database.json +0 -0
  376. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/extras-procedure.json +0 -0
  377. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/function.json +0 -0
  378. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/schema.json +0 -0
  379. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/raw/table.json +0 -0
  380. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/column.json +0 -0
  381. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/database.json +0 -0
  382. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/extras-procedure.json +0 -0
  383. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/function.json +0 -0
  384. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/schema.json +0 -0
  385. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/resources/transformed/table.json +0 -0
  386. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/test_sql_transformer.py +0 -0
  387. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/transformers/query/test_sql_transformer_output_validation.py +0 -0
  388. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/workflows/metadata_extraction/test_sql.py +0 -0
  389. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/workflows/query_extraction/__init__.py +0 -0
  390. {atlan_application_sdk-0.1.1rc30 → atlan_application_sdk-0.1.1rc32}/tests/unit/workflows/query_extraction/test_sql.py +0 -0
@@ -14,7 +14,7 @@
14
14
  - **Cognitive Load**: Can a new developer understand this change with less cognitive load?
15
15
  - **Magic Numbers/Strings**: All constants properly defined and named in @application_sdk/constants.py
16
16
  - **Spell Check**: No typos in code, comments, docstrings, or documentation
17
- - **Exception Handling Standards**: All exception handling must follow these principles. See detailed guidelines in [exception-handling.mdc](mdc:.cursor/rules/exception-handling.mdc).
17
+ - **Exception Handling Standards**: All exception handling must follow these principles. See detailed guidelines in [exception-handling.mdc](@.cursor/rules/exception-handling.mdc).
18
18
 
19
19
  ### 🏗️ Architecture & Design
20
20
 
@@ -32,7 +32,7 @@
32
32
 
33
33
  ### 🧪 Testing
34
34
 
35
- - **Testing Standards**: Testing standards are defined in [testing.mdc](mdc:.cursor/rules/testing.mdc)
35
+ - **Testing Standards**: Testing standards are defined in [testing.mdc](@.cursor/rules/testing.mdc)
36
36
  - **Test Coverage**: New code has corresponding tests (unit/integration/e2e as appropriate)
37
37
  - **Edge Cases**: Error conditions and boundary cases are tested
38
38
  - **Mock Strategy**: External dependencies properly mocked/isolated
@@ -43,7 +43,7 @@
43
43
  - **Input Validation**: All external inputs validated and sanitized
44
44
  - **Secrets Management**: No secrets in code; proper credential handling
45
45
  - **SQL Injection**: Parameterized queries used for all SQL operations
46
- - **Performance Standards**: All performance considerations must follow these principles. See detailed guidelines in [performance.mdc](mdc:.cursor/rules/performance.mdc).
46
+ - **Performance Standards**: All performance considerations must follow these principles. See detailed guidelines in [performance.mdc](@.cursor/rules/performance.mdc).
47
47
  - **Memory Management**: Resources properly closed, large datasets processed in chunks
48
48
  - **DataFrame Optimization**: Appropriate dtypes, avoid unnecessary copies, use chunked processing
49
49
  - **SQL Query Efficiency**: Use LIMIT, specific columns, proper WHERE clauses, connection pooling
@@ -54,7 +54,7 @@
54
54
 
55
55
  ### 📊 Observability & Logging
56
56
 
57
- - **Logging Standards**: logging standards are defined in [logging.mdc](mdc:.cursor/rules/logging.mdc)
57
+ - **Logging Standards**: logging standards are defined in [logging.mdc](@.cursor/rules/logging.mdc)
58
58
  - **Metrics**: Key operations include appropriate metrics
59
59
  - **Error Context**: Error logs include sufficient context for debugging
60
60
  - **Trace Information**: Critical paths include trace information
@@ -0,0 +1,9 @@
1
+ ## v0.1.1rc32 (August 20, 2025)
2
+
3
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc31...v0.1.1rc32
4
+
5
+ ### Bug Fixes
6
+
7
+ - update app host (#664) (by @Onkar Ravgan in [24d23cb](https://github.com/atlanhq/application-sdk/commit/24d23cb))
8
+ - file references in cursor rules (#662) (by @Nishchith Shetty in [2395ce3](https://github.com/atlanhq/application-sdk/commit/2395ce3))
9
+ - Parquet file output path with None file names (#659) (by @Onkar Ravgan in [8841660](https://github.com/atlanhq/application-sdk/commit/8841660))
@@ -1,6 +1,30 @@
1
1
  # Changelog
2
2
 
3
3
 
4
+ ## v0.1.1rc32 (August 20, 2025)
5
+
6
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc31...v0.1.1rc32
7
+
8
+ ### Bug Fixes
9
+
10
+ - update app host (#664) (by @Onkar Ravgan in [24d23cb](https://github.com/atlanhq/application-sdk/commit/24d23cb))
11
+ - file references in cursor rules (#662) (by @Nishchith Shetty in [2395ce3](https://github.com/atlanhq/application-sdk/commit/2395ce3))
12
+ - Parquet file output path with None file names (#659) (by @Onkar Ravgan in [8841660](https://github.com/atlanhq/application-sdk/commit/8841660))
13
+
14
+ ## v0.1.1rc31 (August 14, 2025)
15
+
16
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc30...v0.1.1rc31
17
+
18
+ ### Features
19
+
20
+ - support for app registration via events (#635) (by @Nishant Munjal in [330b585](https://github.com/atlanhq/application-sdk/commit/330b585))
21
+
22
+ ### Bug Fixes
23
+
24
+ - error logs related to deployment secrets (#651) (by @Nishchith Shetty in [09f6e5c](https://github.com/atlanhq/application-sdk/commit/09f6e5c))
25
+
26
+
27
+
4
28
  ## v0.1.1rc30 (August 13, 2025)
5
29
 
6
30
  Full Changelog: https://github.com/atlanhq/application-sdk/compare/v0.1.1rc29...v0.1.1rc30
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atlan-application-sdk
3
- Version: 0.1.1rc30
3
+ Version: 0.1.1rc32
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
@@ -3,8 +3,8 @@ from typing import Any, Dict, List, Optional, Tuple, Type
3
3
 
4
4
  from application_sdk.activities import ActivitiesInterface
5
5
  from application_sdk.clients.utils import get_workflow_client
6
+ from application_sdk.events.models import EventRegistration
6
7
  from application_sdk.observability.logger_adaptor import get_logger
7
- from application_sdk.outputs.eventstore import EventRegistration
8
8
  from application_sdk.server import ServerInterface
9
9
  from application_sdk.server.fastapi import APIServer, HttpWorkflowTrigger
10
10
  from application_sdk.server.fastapi.models import EventWorkflowTrigger
@@ -1,10 +1,12 @@
1
1
  import asyncio
2
2
  import uuid
3
3
  from concurrent.futures import ThreadPoolExecutor
4
+ from datetime import timedelta
4
5
  from typing import Any, Dict, Optional, Sequence, Type
5
6
 
6
7
  from temporalio import activity, workflow
7
8
  from temporalio.client import Client, WorkflowExecutionStatus, WorkflowFailureError
9
+ from temporalio.common import RetryPolicy
8
10
  from temporalio.types import CallableType, ClassType
9
11
  from temporalio.worker import (
10
12
  ActivityInboundInterceptor,
@@ -33,17 +35,17 @@ from application_sdk.constants import (
33
35
  WORKFLOW_PORT,
34
36
  WORKFLOW_TLS_ENABLED_KEY,
35
37
  )
36
- from application_sdk.inputs.secretstore import SecretStoreInput
37
- from application_sdk.inputs.statestore import StateType
38
- from application_sdk.observability.logger_adaptor import get_logger
39
- from application_sdk.outputs.eventstore import (
38
+ from application_sdk.events.models import (
40
39
  ApplicationEventNames,
41
40
  Event,
42
41
  EventMetadata,
43
- EventStore,
44
42
  EventTypes,
45
43
  WorkflowStates,
46
44
  )
45
+ from application_sdk.inputs.secretstore import SecretStoreInput
46
+ from application_sdk.inputs.statestore import StateType
47
+ from application_sdk.observability.logger_adaptor import get_logger
48
+ from application_sdk.outputs.eventstore import EventStore
47
49
  from application_sdk.outputs.secretstore import SecretStoreOutput
48
50
  from application_sdk.outputs.statestore import StateStoreOutput
49
51
  from application_sdk.workflows import WorkflowInterface
@@ -55,11 +57,30 @@ TEMPORAL_NOT_FOUND_FAILURE = (
55
57
  )
56
58
 
57
59
 
60
+ # Activity for publishing events (runs outside sandbox)
61
+ @activity.defn
62
+ async def publish_event(event_data: dict) -> None:
63
+ """Activity to publish events outside the workflow sandbox.
64
+
65
+ Args:
66
+ event_data (dict): Event data to publish containing event_type, event_name,
67
+ metadata, and data fields.
68
+ """
69
+ try:
70
+ event = Event(**event_data)
71
+ await EventStore.publish_event(event)
72
+ activity.logger.info(f"Published event: {event_data.get('event_name','')}")
73
+ except Exception as e:
74
+ activity.logger.error(f"Failed to publish event: {e}")
75
+ raise
76
+
77
+
58
78
  class EventActivityInboundInterceptor(ActivityInboundInterceptor):
59
79
  """Interceptor for tracking activity execution events.
60
80
 
61
81
  This interceptor captures the start and end of activity executions,
62
82
  creating events that can be used for monitoring and tracking.
83
+ Activities run outside the sandbox so they can directly call EventStore.
63
84
  """
64
85
 
65
86
  async def execute_activity(self, input: ExecuteActivityInput) -> Any:
@@ -71,31 +92,28 @@ class EventActivityInboundInterceptor(ActivityInboundInterceptor):
71
92
  Returns:
72
93
  Any: The result of the activity execution.
73
94
  """
74
- event = Event(
95
+ # Extract activity information for tracking
96
+
97
+ start_event = Event(
75
98
  event_type=EventTypes.APPLICATION_EVENT.value,
76
99
  event_name=ApplicationEventNames.ACTIVITY_START.value,
77
100
  data={},
78
101
  )
79
- EventStore.publish_event(event)
102
+ await EventStore.publish_event(start_event)
80
103
 
81
104
  output = None
82
105
  try:
83
106
  output = await super().execute_activity(input)
84
- except Exception as e:
107
+ except Exception:
108
+ raise
109
+ finally:
85
110
  end_event = Event(
86
111
  event_type=EventTypes.APPLICATION_EVENT.value,
87
112
  event_name=ApplicationEventNames.ACTIVITY_END.value,
88
113
  data={},
89
114
  )
90
- EventStore.publish_event(end_event)
91
- raise e
115
+ await EventStore.publish_event(end_event)
92
116
 
93
- end_event = Event(
94
- event_type=EventTypes.APPLICATION_EVENT.value,
95
- event_name=ApplicationEventNames.ACTIVITY_END.value,
96
- data={},
97
- )
98
- EventStore.publish_event(end_event)
99
117
  return output
100
118
 
101
119
 
@@ -104,6 +122,7 @@ class EventWorkflowInboundInterceptor(WorkflowInboundInterceptor):
104
122
 
105
123
  This interceptor captures the start and end of workflow executions,
106
124
  creating events that can be used for monitoring and tracking.
125
+ Uses activities to publish events to avoid sandbox restrictions.
107
126
  """
108
127
 
109
128
  async def execute_workflow(self, input: ExecuteWorkflowInput) -> Any:
@@ -115,47 +134,56 @@ class EventWorkflowInboundInterceptor(WorkflowInboundInterceptor):
115
134
  Returns:
116
135
  Any: The result of the workflow execution.
117
136
  """
118
- with workflow.unsafe.sandbox_unrestricted():
119
- EventStore.publish_event(
120
- Event(
121
- metadata=EventMetadata(workflow_state=WorkflowStates.RUNNING.value),
122
- event_type=EventTypes.APPLICATION_EVENT.value,
123
- event_name=ApplicationEventNames.WORKFLOW_START.value,
124
- data={},
125
- )
137
+
138
+ # Publish workflow start event via activity
139
+ try:
140
+ await workflow.execute_activity(
141
+ publish_event,
142
+ {
143
+ "metadata": EventMetadata(
144
+ workflow_state=WorkflowStates.RUNNING.value
145
+ ),
146
+ "event_type": EventTypes.APPLICATION_EVENT.value,
147
+ "event_name": ApplicationEventNames.WORKFLOW_START.value,
148
+ "data": {},
149
+ },
150
+ schedule_to_close_timeout=timedelta(seconds=30),
151
+ retry_policy=RetryPolicy(maximum_attempts=3),
126
152
  )
153
+ except Exception as e:
154
+ workflow.logger.warning(f"Failed to publish workflow start event: {e}")
155
+ # Don't fail the workflow if event publishing fails
127
156
 
128
157
  output = None
158
+ workflow_state = WorkflowStates.FAILED.value # Default to failed
159
+
129
160
  try:
130
161
  output = await super().execute_workflow(input)
131
- except Exception as e:
132
- with workflow.unsafe.sandbox_unrestricted():
133
- EventStore.publish_event(
134
- Event(
135
- metadata=EventMetadata(
136
- workflow_state=WorkflowStates.FAILED.value
137
- ),
138
- event_type=EventTypes.APPLICATION_EVENT.value,
139
- event_name=ApplicationEventNames.WORKFLOW_END.value,
140
- data={},
141
- ),
162
+ workflow_state = (
163
+ WorkflowStates.COMPLETED.value
164
+ ) # Update to completed on success
165
+ except Exception:
166
+ workflow_state = WorkflowStates.FAILED.value # Keep as failed
167
+ raise
168
+ finally:
169
+ # Always publish workflow end event
170
+ try:
171
+ await workflow.execute_activity(
172
+ publish_event,
173
+ {
174
+ "metadata": EventMetadata(workflow_state=workflow_state),
175
+ "event_type": EventTypes.APPLICATION_EVENT.value,
176
+ "event_name": ApplicationEventNames.WORKFLOW_END.value,
177
+ "data": {},
178
+ },
179
+ schedule_to_close_timeout=timedelta(seconds=30),
180
+ retry_policy=RetryPolicy(maximum_attempts=3),
181
+ )
182
+ except Exception as publish_error:
183
+ workflow.logger.warning(
184
+ f"Failed to publish workflow end event: {publish_error}"
142
185
  )
143
- raise e
144
186
 
145
- with workflow.unsafe.sandbox_unrestricted():
146
- EventStore.publish_event(
147
- Event(
148
- metadata=EventMetadata(
149
- workflow_state=WorkflowStates.COMPLETED.value
150
- ),
151
- event_type=EventTypes.APPLICATION_EVENT.value,
152
- event_name=ApplicationEventNames.WORKFLOW_END.value,
153
- data={
154
- "workflow_id": workflow.info().workflow_id,
155
- "workflow_run_id": workflow.info().run_id,
156
- },
157
- ),
158
- )
159
187
  return output
160
188
 
161
189
 
@@ -513,11 +541,14 @@ class TemporalWorkflowClient(WorkflowClient):
513
541
  f"Started token refresh loop with dynamic interval (initial: {self._token_refresh_interval}s)"
514
542
  )
515
543
 
544
+ # Add the publish_event to the activities list
545
+ extended_activities = list(activities) + [publish_event]
546
+
516
547
  return Worker(
517
548
  self.client,
518
549
  task_queue=self.worker_task_queue,
519
550
  workflows=workflow_classes,
520
- activities=activities,
551
+ activities=extended_activities, # Use extended activities list
521
552
  workflow_runner=SandboxedWorkflowRunner(
522
553
  restrictions=SandboxRestrictions.default.with_passthrough_modules(
523
554
  *passthrough_modules
@@ -36,7 +36,7 @@ APPLICATION_NAME = os.getenv("ATLAN_APPLICATION_NAME", "default")
36
36
  #: Name of the deployment, used to distinguish between different deployments of the same application
37
37
  DEPLOYMENT_NAME = os.getenv("ATLAN_DEPLOYMENT_NAME", LOCAL_ENVIRONMENT)
38
38
  #: Host address for the application's HTTP server
39
- APP_HOST = str(os.getenv("ATLAN_APP_HTTP_HOST", "localhost"))
39
+ APP_HOST = str(os.getenv("ATLAN_APP_HTTP_HOST", "0.0.0.0"))
40
40
  #: Port number for the application's HTTP server
41
41
  APP_PORT = int(os.getenv("ATLAN_APP_HTTP_PORT", "8000"))
42
42
  #: Tenant ID for multi-tenant applications
@@ -128,6 +128,11 @@ DEPLOYMENT_OBJECT_STORE_NAME = os.getenv("DEPLOYMENT_OBJECT_STORE_NAME", "object
128
128
  UPSTREAM_OBJECT_STORE_NAME = os.getenv("UPSTREAM_OBJECT_STORE_NAME", "objectstore")
129
129
  #: Name of the pubsub component in DAPR
130
130
  EVENT_STORE_NAME = os.getenv("EVENT_STORE_NAME", "eventstore")
131
+ #: DAPR binding operation for creating resources
132
+ DAPR_BINDING_OPERATION_CREATE = "create"
133
+ #: Version of worker start events used in the application
134
+ WORKER_START_EVENT_VERSION = "v1"
135
+
131
136
  #: Whether to enable Atlan storage upload
132
137
  ENABLE_ATLAN_UPLOAD = os.getenv("ENABLE_ATLAN_UPLOAD", "false").lower() == "true"
133
138
  # Dapr Client Configuration
@@ -135,6 +140,7 @@ ENABLE_ATLAN_UPLOAD = os.getenv("ENABLE_ATLAN_UPLOAD", "false").lower() == "true
135
140
  DAPR_MAX_GRPC_MESSAGE_LENGTH = int(
136
141
  os.getenv("DAPR_MAX_GRPC_MESSAGE_LENGTH", "104857600")
137
142
  )
143
+
138
144
  #: Name of the deployment secret store component in DAPR
139
145
  DEPLOYMENT_SECRET_STORE_NAME = os.getenv(
140
146
  "DEPLOYMENT_SECRET_STORE_NAME", "deployment-secret-store"
@@ -0,0 +1,5 @@
1
+ """Events module for handling application events.
2
+
3
+ This module provides classes and utilities for handling various types of events
4
+ in the application, including workflow, activity, and worker events.
5
+ """
@@ -0,0 +1,176 @@
1
+ """Base event classes and models.
2
+
3
+ This module contains the base classes and models for all events in the application.
4
+ """
5
+
6
+ from abc import ABC
7
+ from enum import Enum
8
+ from typing import Any, Dict, List, Optional
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+ from application_sdk.constants import APPLICATION_NAME, WORKER_START_EVENT_VERSION
13
+
14
+
15
+ class EventTypes(Enum):
16
+ """Enumeration of event types."""
17
+
18
+ APPLICATION_EVENT = "application_events"
19
+
20
+
21
+ class ApplicationEventNames(Enum):
22
+ """Enumeration of application event names."""
23
+
24
+ WORKFLOW_END = "workflow_end"
25
+ WORKFLOW_START = "workflow_start"
26
+ ACTIVITY_START = "activity_start"
27
+ ACTIVITY_END = "activity_end"
28
+ WORKER_START = "worker_start"
29
+ WORKER_END = "worker_end"
30
+ APPLICATION_START = "application_start"
31
+ APPLICATION_END = "application_end"
32
+
33
+
34
+ class WorkflowStates(Enum):
35
+ """Enumeration of workflow states."""
36
+
37
+ UNKNOWN = "unknown"
38
+ RUNNING = "running"
39
+ COMPLETED = "completed"
40
+ FAILED = "failed"
41
+
42
+
43
+ class EventMetadata(BaseModel):
44
+ """Metadata for events.
45
+
46
+ Attributes:
47
+ application_name: Name of the application the event belongs to.
48
+ created_timestamp: Timestamp when the event was created.
49
+ workflow_type: Type of the workflow.
50
+ workflow_id: ID of the workflow.
51
+ workflow_run_id: Run ID of the workflow.
52
+ workflow_state: State of the workflow.
53
+ activity_type: Type of the activity.
54
+ activity_id: ID of the activity.
55
+ attempt: Attempt number for the activity.
56
+ topic_name: Name of the topic for the event.
57
+ """
58
+
59
+ application_name: str = Field(init=True, default=APPLICATION_NAME)
60
+ created_timestamp: int = Field(init=True, default=0)
61
+
62
+ # Workflow information
63
+ workflow_type: str | None = Field(init=True, default=None)
64
+ workflow_id: str | None = Field(init=True, default=None)
65
+ workflow_run_id: str | None = Field(init=True, default=None)
66
+ workflow_state: str | None = Field(init=True, default=WorkflowStates.UNKNOWN.value)
67
+
68
+ # Activity information (Only when in an activity flow)
69
+ activity_type: str | None = Field(init=True, default=None)
70
+ activity_id: str | None = Field(init=True, default=None)
71
+ attempt: int | None = Field(init=True, default=None)
72
+
73
+ topic_name: str | None = Field(init=False, default=None)
74
+
75
+
76
+ class EventFilter(BaseModel):
77
+ """Filter for events.
78
+
79
+ Attributes:
80
+ path: Path to filter on.
81
+ operator: Operator to use for filtering.
82
+ value: Value to filter by.
83
+ """
84
+
85
+ path: str
86
+ operator: str
87
+ value: str
88
+
89
+
90
+ class Consumes(BaseModel):
91
+ """Model for event consumption configuration.
92
+
93
+ Attributes:
94
+ event_id: ID of the event.
95
+ event_type: Type of the event.
96
+ event_name: Name of the event.
97
+ version: Version of the event.
98
+ filters: List of filters to apply.
99
+ """
100
+
101
+ event_id: str = Field(alias="eventId")
102
+ event_type: str = Field(alias="eventType")
103
+ event_name: str = Field(alias="eventName")
104
+ version: str = Field()
105
+ filters: List[EventFilter] = Field(init=True, default=[])
106
+
107
+
108
+ class EventRegistration(BaseModel):
109
+ """Model for event registration.
110
+
111
+ Attributes:
112
+ consumes: List of events to consume.
113
+ produces: List of events to produce.
114
+ """
115
+
116
+ consumes: List[Consumes] = Field(init=True, default=[])
117
+ produces: List[Dict[str, Any]] = Field(init=True, default=[])
118
+
119
+
120
+ class Event(BaseModel, ABC):
121
+ """Base class for all events.
122
+
123
+ Attributes:
124
+ metadata: Metadata for the event.
125
+ event_type: Type of the event.
126
+ event_name: Name of the event.
127
+ data: Data payload of the event.
128
+ """
129
+
130
+ metadata: EventMetadata = Field(init=True, default_factory=EventMetadata)
131
+
132
+ event_type: str
133
+ event_name: str
134
+
135
+ data: Dict[str, Any]
136
+
137
+ def get_topic_name(self):
138
+ """Get the topic name for this event.
139
+
140
+ Returns:
141
+ str: The topic name.
142
+ """
143
+ return self.event_type
144
+
145
+ class Config:
146
+ extra = "allow"
147
+
148
+
149
+ class WorkerStartEventData(BaseModel):
150
+ """Model for worker creation event data.
151
+
152
+ This model represents the data structure used when publishing worker creation events.
153
+ It contains information about the worker configuration and environment.
154
+
155
+ Attributes:
156
+ application_name: Name of the application the worker belongs to.
157
+ task_queue: Task queue name for the worker.
158
+ namespace: Temporal namespace for the worker.
159
+ host: Host address of the Temporal server.
160
+ port: Port number of the Temporal server.
161
+ connection_string: Connection string for the Temporal server.
162
+ max_concurrent_activities: Maximum number of concurrent activities.
163
+ workflow_count: Number of workflow classes registered.
164
+ activity_count: Number of activity functions registered.
165
+ """
166
+
167
+ version: str = WORKER_START_EVENT_VERSION
168
+ application_name: str
169
+ task_queue: str
170
+ namespace: str
171
+ host: str
172
+ port: str
173
+ connection_string: str
174
+ max_concurrent_activities: Optional[int]
175
+ workflow_count: int
176
+ activity_count: int
@@ -51,7 +51,12 @@ class ParquetInput(Input):
51
51
  Returns:
52
52
  Optional[str]: Path to the downloaded local file.
53
53
  """
54
- parquet_files = glob.glob(local_file_path)
54
+ # if the path is a directory, then check if the directory has any parquet files
55
+ parquet_files = []
56
+ if os.path.isdir(local_file_path):
57
+ parquet_files = glob.glob(os.path.join(local_file_path, "*.parquet"))
58
+ else:
59
+ parquet_files = glob.glob(local_file_path)
55
60
  if not parquet_files:
56
61
  if self.input_prefix:
57
62
  logger.info(
@@ -162,10 +167,9 @@ class ParquetInput(Input):
162
167
  await self.download_files(path)
163
168
  yield daft.read_parquet(path)
164
169
  else:
165
- path = f"{self.path}/*.parquet"
166
- if self.input_prefix and path:
167
- await self.download_files(path)
168
- yield daft.read_parquet(path)
170
+ if self.path and self.input_prefix:
171
+ await self.download_files(self.path)
172
+ yield daft.read_parquet(f"{self.path}/*.parquet")
169
173
 
170
174
  except Exception as error:
171
175
  logger.error(
@@ -7,6 +7,7 @@ from typing import Any, Dict
7
7
 
8
8
  from dapr.clients import DaprClient
9
9
 
10
+ from application_sdk.common.dapr_utils import is_component_registered
10
11
  from application_sdk.constants import (
11
12
  DEPLOYMENT_NAME,
12
13
  DEPLOYMENT_SECRET_PATH,
@@ -22,7 +23,21 @@ logger = get_logger(__name__)
22
23
  class SecretStoreInput:
23
24
  @classmethod
24
25
  def get_deployment_secret(cls) -> Dict[str, Any]:
25
- """Get deployment config with caching."""
26
+ """Get deployment config from the deployment secret store.
27
+
28
+ Validates that the deployment secret store component is registered
29
+ before attempting to fetch secrets to prevent errors.
30
+
31
+ Returns:
32
+ Dict[str, Any]: Deployment configuration data, or empty dict if
33
+ component is unavailable or fetch fails.
34
+ """
35
+ if not is_component_registered(DEPLOYMENT_SECRET_STORE_NAME):
36
+ logger.warning(
37
+ f"Deployment secret store component '{DEPLOYMENT_SECRET_STORE_NAME}' is not registered"
38
+ )
39
+ return {}
40
+
26
41
  try:
27
42
  return cls.get_secret(DEPLOYMENT_SECRET_PATH, DEPLOYMENT_SECRET_STORE_NAME)
28
43
  except Exception as e:
@@ -16,6 +16,7 @@ from dapr.clients import DaprClient
16
16
  from pydantic import BaseModel
17
17
 
18
18
  from application_sdk.constants import (
19
+ DAPR_BINDING_OPERATION_CREATE,
19
20
  DEPLOYMENT_OBJECT_STORE_NAME,
20
21
  ENABLE_OBSERVABILITY_DAPR_SINK,
21
22
  LOG_FILE_NAME,
@@ -449,7 +450,7 @@ class AtlanObservability(Generic[T], ABC):
449
450
  with DaprClient() as client:
450
451
  client.invoke_binding(
451
452
  binding_name=DEPLOYMENT_OBJECT_STORE_NAME,
452
- operation="create",
453
+ operation=DAPR_BINDING_OPERATION_CREATE,
453
454
  data=file_content,
454
455
  binding_metadata=metadata,
455
456
  )