mage-ai 0.9.8__tar.gz → 0.9.9__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.

Potentially problematic release.


This version of mage-ai might be problematic. Click here for more details.

Files changed (1136) hide show
  1. {mage-ai-0.9.8/mage_ai.egg-info → mage-ai-0.9.9}/PKG-INFO +1 -1
  2. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/ai/constants.py +1 -0
  3. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/ai/generator.py +6 -0
  4. mage-ai-0.9.8/mage_ai/ai/gen_doc_for_pipeline.py → mage-ai-0.9.9/mage_ai/ai/generator_cmds.py +5 -0
  5. mage-ai-0.9.9/mage_ai/ai/llm_pipeline_wizard.py +229 -0
  6. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BlockPolicy.py +1 -0
  7. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BlockTemplatePolicy.py +9 -0
  8. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/LlmPolicy.py +3 -2
  9. mage-ai-0.9.9/mage_ai/api/policies/OauthAccessTokenPolicy.py +31 -0
  10. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/PipelinePolicy.py +1 -0
  11. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/ProjectPolicy.py +9 -0
  12. mage-ai-0.9.9/mage_ai/api/policies/SearchResultPolicy.py +32 -0
  13. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/VariablePolicy.py +8 -0
  14. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BlockTemplatePresenter.py +1 -0
  15. mage-ai-0.9.9/mage_ai/api/presenters/OauthAccessTokenPresenter.py +9 -0
  16. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/ProjectPresenter.py +2 -0
  17. mage-ai-0.9.9/mage_ai/api/presenters/SearchResultPresenter.py +73 -0
  18. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BlockResource.py +43 -4
  19. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BlockTemplateResource.py +15 -2
  20. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/CustomTemplateResource.py +15 -3
  21. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/FileContentResource.py +8 -1
  22. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/FileResource.py +22 -2
  23. mage-ai-0.9.9/mage_ai/api/resources/OauthAccessTokenResource.py +24 -0
  24. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/PipelineResource.py +70 -2
  25. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/ProjectResource.py +15 -1
  26. mage-ai-0.9.9/mage_ai/api/resources/SearchResultResource.py +68 -0
  27. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/VariableResource.py +25 -14
  28. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/base.py +3 -0
  29. mage-ai-0.9.9/mage_ai/cache/block_action_object/__init__.py +282 -0
  30. mage-ai-0.9.9/mage_ai/cache/block_action_object/constants.py +4 -0
  31. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/constants.py +1 -0
  32. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/destinations/constants.py +2 -0
  33. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/k8s_pipeline_executor.py +1 -1
  34. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/__init__.py +20 -1
  35. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/dbt/utils/__init__.py +1 -0
  36. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/custom_templates/custom_block_template.py +8 -3
  37. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/custom_templates/utils.py +6 -3
  38. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/file.py +3 -0
  39. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/pipeline.py +10 -1
  40. mage-ai-0.9.8/mage_ai/data_preparation/models/project.py → mage-ai-0.9.9/mage_ai/data_preparation/models/project/__init__.py +17 -0
  41. mage-ai-0.9.9/mage_ai/data_preparation/models/project/constants.py +5 -0
  42. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/repo_manager.py +9 -6
  43. mage-ai-0.9.9/mage_ai/data_preparation/templates/constants.py +587 -0
  44. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/template.py +9 -1
  45. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/__init__.py +25 -0
  46. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/pipeline_scheduler.py +23 -0
  47. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/constants.py +1 -1
  48. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/404.html +2 -2
  49. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/404.html.html +2 -2
  50. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/OwvTROmputQCA1Z9HEGDv/_buildManifest.js +1 -0
  51. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/1005-ce36fe7ed460d006.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/1005-16c1a6678de5311e.js +1 -1
  52. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/1424-e22139f33196c5c1.js +1 -0
  53. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/1484-a76b2c31e4808379.js +1 -0
  54. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/2485-b569baad92049d6b.js +1 -0
  55. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/2786-d8b593e5d7c42665.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/2786-acce6ea0d9b4898e.js +1 -1
  56. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/3654-573457b62efff6e2.js +1 -0
  57. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/3881-0eb04f7f7a244347.js +1 -0
  58. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/4317-b112fe7bb532b998.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/4317-3fe63fc9401685d6.js +1 -1
  59. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/4822-52d9d661b6bd1ae9.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/4822-045cc7cdd7c95163.js +1 -1
  60. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/547-14029bdacc0ed267.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/547-4ad2cdae967055b6.js +1 -1
  61. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/6299-cf188c1b7a1bc33c.js +1 -0
  62. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/7815-6dc55b5fd5d1f48a.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/7815-fbd99c8f259d9e8b.js +1 -1
  63. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/8312-cdc4d6c3b9f53099.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/8312-c88a3b1012e5448b.js +1 -1
  64. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/8952-492bf0e29d215ddd.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/8952-e94a7334fcd5c68b.js +1 -1
  65. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/9055-d0d25298cb5f4e45.js +1 -0
  66. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/_app-c7557dc9e725825e.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/_app-fa38a24707c76411.js +1 -1
  67. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/files-b9dac983c75798f2.js +1 -0
  68. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/settings-17bb362b9683079c.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/settings-453aaa7bf78f8101.js +1 -1
  69. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/[user]-bfa53c0ee79920a0.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/[user]-3b502aa6d1a04cad.js +1 -1
  70. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/new-2f7e6bf8e2a37380.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/new-dd41d718cbb5990c.js +1 -1
  71. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users-ec748f838b7b8fad.js +1 -0
  72. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage-bcc24120f5911f76.js +1 -0
  73. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/overview-8ffbc4b0e8a43266.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/overview-6f20b9e9cbec91d6.js +1 -1
  74. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-373f6b8c9161e819.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-55212dfc15881ef2.js +1 -1
  75. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills-226bf0c5c1bfe004.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills-6b4a82cd0516e121.js +1 -1
  76. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-0705c99df236ec8a.js +1 -0
  77. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/logs-4ade07836fd577c9.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/logs-c294f5d74bd2d50f.js +1 -1
  78. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors-fd9eb711e89425e9.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors-1b9e4abc54842cdf.js +1 -1
  79. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs-027666ed18d3151e.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs-17ebe87e94242ae5.js +1 -1
  80. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/settings-48b60ca236a26818.js +1 -0
  81. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/syncs-de58e6b91e5e4552.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/syncs-5153f4665aaf8b17.js +1 -1
  82. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-432843576e1ed09e.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-1306e85191f6b47c.js +1 -1
  83. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers-ae31b1d0d8a4634d.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers-2e731d343a26d46a.js +1 -1
  84. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines-0fab737dbc9074fc.js +1 -0
  85. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/preferences-b2354688508b0755.js +1 -0
  86. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/users-a4f01b5c429757cc.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/users-6522c963087f18e8.js +1 -1
  87. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/sign-in-1140f8ee7e89381a.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/sign-in-7dcd1257ca9660bb.js +1 -1
  88. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/templates/[...slug]-f59b3f04c5a49351.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/templates/[...slug]-78a07e7fe8973811.js +1 -1
  89. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/templates-dbb209ce131390a9.js → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/templates-19df643f52679d5a.js +1 -1
  90. mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/chunks/pages/version-control-a1cf445565b68809.js +1 -0
  91. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/files.html +2 -2
  92. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/index.html +2 -2
  93. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/manage/settings.html +2 -2
  94. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/manage/users/[user].html +2 -2
  95. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/manage/users/new.html +2 -2
  96. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/manage/users.html +2 -2
  97. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/manage.html +2 -2
  98. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/overview.html +2 -2
  99. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipeline-runs.html +2 -2
  100. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills/[...slug].html +2 -2
  101. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills.html +2 -2
  102. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/edit.html +2 -2
  103. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/logs.html +2 -2
  104. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runs.html +2 -2
  105. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runtime.html +2 -2
  106. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors.html +2 -2
  107. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs/[run].html +2 -2
  108. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs.html +2 -2
  109. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/settings.html +2 -2
  110. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/syncs.html +2 -2
  111. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers/[...slug].html +2 -2
  112. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers.html +2 -2
  113. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines/[pipeline].html +2 -2
  114. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/pipelines.html +2 -2
  115. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/settings/account/profile.html +2 -2
  116. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/settings/workspace/preferences.html +2 -2
  117. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/settings/workspace/sync-data.html +2 -2
  118. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/settings/workspace/users.html +2 -2
  119. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/settings.html +2 -2
  120. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/sign-in.html +16 -16
  121. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/templates/[...slug].html +2 -2
  122. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/templates.html +2 -2
  123. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/terminal.html +2 -2
  124. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/test.html +2 -2
  125. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/triggers.html +2 -2
  126. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/version-control.html +2 -2
  127. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/server.py +5 -0
  128. mage-ai-0.9.9/mage_ai/services/search/block_action_objects.py +33 -0
  129. mage-ai-0.9.9/mage_ai/services/search/constants.py +1 -0
  130. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/array.py +7 -0
  131. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/parsers.py +11 -2
  132. mage-ai-0.9.9/mage_ai/tests/shared/test_parsers.py +73 -0
  133. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/usage_statistics/constants.py +1 -0
  134. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/usage_statistics/logger.py +19 -1
  135. mage-ai-0.9.9/mage_ai/utils/__init__.py +0 -0
  136. {mage-ai-0.9.8 → mage-ai-0.9.9/mage_ai.egg-info}/PKG-INFO +1 -1
  137. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai.egg-info/SOURCES.txt +58 -45
  138. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai.egg-info/requires.txt +8 -6
  139. {mage-ai-0.9.8 → mage-ai-0.9.9}/requirements.txt +4 -3
  140. {mage-ai-0.9.8 → mage-ai-0.9.9}/setup.py +8 -7
  141. mage-ai-0.9.8/mage_ai/ai/llm_pipeline_wizard.py +0 -124
  142. mage-ai-0.9.8/mage_ai/data_preparation/templates/constants.py +0 -110
  143. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/RcIgkp9pBXE1Rb4tOGR1L/_buildManifest.js +0 -1
  144. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/1424-de97c5aa0477894b.js +0 -1
  145. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/1484-c9d6bc33227070dd.js +0 -1
  146. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/2485-86c97f516c1abb9f.js +0 -1
  147. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/3215-c2f5f19b650f9a50.js +0 -1
  148. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/3654-bff4740b63cf280c.js +0 -1
  149. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/3881-7f121dbbe6e273cd.js +0 -1
  150. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/6299-97f283be01adf6a8.js +0 -1
  151. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/files-0df5a20d6f1aa606.js +0 -1
  152. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users-1f6cb7656299cbd1.js +0 -1
  153. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage-4894eabb442a039c.js +0 -1
  154. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-a9bd86bee73b5762.js +0 -1
  155. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/settings-cf51793c2112915c.js +0 -1
  156. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines-f1131ffe0d2a4a06.js +0 -1
  157. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/preferences-170943ca00445486.js +0 -1
  158. mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/chunks/pages/version-control-2ecda1f1437013f2.js +0 -1
  159. {mage-ai-0.9.8 → mage-ai-0.9.9}/LICENSE +0 -0
  160. {mage-ai-0.9.8 → mage-ai-0.9.9}/MANIFEST.in +0 -0
  161. {mage-ai-0.9.8 → mage-ai-0.9.9}/README.md +0 -0
  162. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/__init__.py +0 -0
  163. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/ai/__init__.py +0 -0
  164. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/__init__.py +0 -0
  165. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/api_context.py +0 -0
  166. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/constants.py +0 -0
  167. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/errors.py +0 -0
  168. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/logging.py +0 -0
  169. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/middleware.py +0 -0
  170. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/monitors/BaseMonitor.py +0 -0
  171. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/monitors/__init__.py +0 -0
  172. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/oauth_scope.py +0 -0
  173. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/operations/__init__.py +0 -0
  174. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/operations/base.py +0 -0
  175. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/operations/constants.py +0 -0
  176. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/AutocompleteItemPolicy.py +0 -0
  177. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BackfillPolicy.py +0 -0
  178. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BasePolicy.py +0 -0
  179. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BlockOutputPolicy.py +0 -0
  180. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/BlockRunPolicy.py +0 -0
  181. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/ClusterPolicy.py +0 -0
  182. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/CustomTemplatePolicy.py +0 -0
  183. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/DataProviderPolicy.py +0 -0
  184. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/EventRulePolicy.py +0 -0
  185. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/ExtensionOptionPolicy.py +0 -0
  186. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/FileContentPolicy.py +0 -0
  187. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/FilePolicy.py +0 -0
  188. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/FileVersionPolicy.py +0 -0
  189. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/FolderPolicy.py +0 -0
  190. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/GitBranchPolicy.py +0 -0
  191. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/GitCustomBranchPolicy.py +0 -0
  192. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/GitFilePolicy.py +0 -0
  193. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/IntegrationDestinationPolicy.py +0 -0
  194. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/IntegrationSourcePolicy.py +0 -0
  195. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/IntegrationSourceStreamPolicy.py +0 -0
  196. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/KernelPolicy.py +0 -0
  197. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/LogPolicy.py +0 -0
  198. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/MonitorStatPolicy.py +0 -0
  199. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/OauthPolicy.py +0 -0
  200. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/OutputPolicy.py +0 -0
  201. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/PipelineRunPolicy.py +0 -0
  202. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/PipelineSchedulePolicy.py +0 -0
  203. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/PipelineTriggerPolicy.py +0 -0
  204. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/PullRequestPolicy.py +0 -0
  205. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/RolePolicy.py +0 -0
  206. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/SchedulerPolicy.py +0 -0
  207. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/SecretPolicy.py +0 -0
  208. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/SessionPolicy.py +0 -0
  209. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/StatusPolicy.py +0 -0
  210. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/SyncPolicy.py +0 -0
  211. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/TagPolicy.py +0 -0
  212. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/UserPolicy.py +0 -0
  213. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/WidgetPolicy.py +0 -0
  214. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/WorkspacePolicy.py +0 -0
  215. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/policies/__init__.py +0 -0
  216. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/AutocompleteItemPresenter.py +0 -0
  217. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BackfillPresenter.py +0 -0
  218. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BasePresenter.py +0 -0
  219. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BlockOutputPresenter.py +0 -0
  220. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BlockPresenter.py +0 -0
  221. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/BlockRunPresenter.py +0 -0
  222. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/ClusterPresenter.py +0 -0
  223. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/CustomTemplatePresenter.py +0 -0
  224. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/DataProviderPresenter.py +0 -0
  225. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/EventRulePresenter.py +0 -0
  226. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/ExtensionOptionPresenter.py +0 -0
  227. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/FileContentPresenter.py +0 -0
  228. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/FilePresenter.py +0 -0
  229. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/FileVersionPresenter.py +0 -0
  230. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/FolderPresenter.py +0 -0
  231. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/GitBranchPresenter.py +0 -0
  232. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/GitCustomBranchPresenter.py +0 -0
  233. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/GitFilePresenter.py +0 -0
  234. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/IntegrationDestinationPresenter.py +0 -0
  235. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/IntegrationSourcePresenter.py +0 -0
  236. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/IntegrationSourceStreamPresenter.py +0 -0
  237. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/KernelPresenter.py +0 -0
  238. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/LlmPresenter.py +0 -0
  239. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/LogPresenter.py +0 -0
  240. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/MonitorStatPresenter.py +0 -0
  241. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/OauthPresenter.py +0 -0
  242. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/OutputPresenter.py +0 -0
  243. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/PipelinePresenter.py +0 -0
  244. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/PipelineRunPresenter.py +0 -0
  245. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/PipelineSchedulePresenter.py +0 -0
  246. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/PipelineTriggerPresenter.py +0 -0
  247. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/PullRequestPresenter.py +0 -0
  248. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/RolePresenter.py +0 -0
  249. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/SchedulerPresenter.py +0 -0
  250. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/SecretPresenter.py +0 -0
  251. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/SessionPresenter.py +0 -0
  252. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/StatusPresenter.py +0 -0
  253. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/SyncPresenter.py +0 -0
  254. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/TagPresenter.py +0 -0
  255. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/UserPresenter.py +0 -0
  256. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/VariablePresenter.py +0 -0
  257. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/WidgetPresenter.py +0 -0
  258. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/WorkspacePresenter.py +0 -0
  259. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/__init__.py +0 -0
  260. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/mixins/__init__.py +0 -0
  261. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/presenters/mixins/users.py +0 -0
  262. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/AutocompleteItemResource.py +0 -0
  263. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BackfillResource.py +0 -0
  264. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BaseResource.py +0 -0
  265. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BlockOutputResource.py +0 -0
  266. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/BlockRunResource.py +0 -0
  267. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/ClusterResource.py +0 -0
  268. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/DataProviderResource.py +0 -0
  269. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/DatabaseResource.py +0 -0
  270. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/EventRuleResource.py +0 -0
  271. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/ExtensionOptionResource.py +0 -0
  272. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/FileVersionResource.py +0 -0
  273. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/FolderResource.py +0 -0
  274. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/GenericResource.py +0 -0
  275. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/GitBranchResource.py +0 -0
  276. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/GitCustomBranchResource.py +0 -0
  277. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/GitFileResource.py +0 -0
  278. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/IntegrationDestinationResource.py +0 -0
  279. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/IntegrationSourceResource.py +0 -0
  280. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/IntegrationSourceStreamResource.py +0 -0
  281. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/KernelResource.py +0 -0
  282. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/LlmResource.py +0 -0
  283. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/LogResource.py +0 -0
  284. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/MonitorStatResource.py +0 -0
  285. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/OauthResource.py +0 -0
  286. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/OutputResource.py +0 -0
  287. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/PipelineRunResource.py +0 -0
  288. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/PipelineScheduleResource.py +0 -0
  289. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/PipelineTriggerResource.py +0 -0
  290. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/PullRequestResource.py +0 -0
  291. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/Resource.py +0 -0
  292. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/RoleResource.py +0 -0
  293. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/SchedulerResource.py +0 -0
  294. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/SecretResource.py +0 -0
  295. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/SessionResource.py +0 -0
  296. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/StatusResource.py +0 -0
  297. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/SyncResource.py +0 -0
  298. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/TagResource.py +0 -0
  299. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/UserResource.py +0 -0
  300. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/WidgetResource.py +0 -0
  301. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/WorkspaceResource.py +0 -0
  302. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/__init__.py +0 -0
  303. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/mixins/__init__.py +0 -0
  304. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/shared/__init__.py +0 -0
  305. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/shared/collections.py +0 -0
  306. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/resources/shared/collective_loaders.py +0 -0
  307. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/result_set.py +0 -0
  308. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/utils.py +0 -0
  309. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/api/views.py +0 -0
  310. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/__init__.py +0 -0
  311. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/ldap.py +0 -0
  312. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/oauth/__init__.py +0 -0
  313. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/oauth/active_directory.py +0 -0
  314. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/oauth/constants.py +0 -0
  315. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/oauth/utils.py +0 -0
  316. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/oauth2.py +0 -0
  317. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/authentication/passwords.py +0 -0
  318. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/autocomplete/__init__.py +0 -0
  319. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/autocomplete/utils.py +0 -0
  320. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/__init__.py +0 -0
  321. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/block.py +0 -0
  322. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/tag.py +0 -0
  323. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cache/utils.py +0 -0
  324. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cli/__init__.py +0 -0
  325. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cli/main.py +0 -0
  326. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cli/utils.py +0 -0
  327. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/__init__.py +0 -0
  328. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/aws/__init__.py +0 -0
  329. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/aws/ecs_task_manager.py +0 -0
  330. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/aws/emr_cluster_manager.py +0 -0
  331. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/cluster_manager.py +0 -0
  332. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/constants.py +0 -0
  333. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/gcp/__init__.py +0 -0
  334. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/gcp/cloud_run_service_manager.py +0 -0
  335. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/kubernetes/__init__.py +0 -0
  336. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/cluster_manager/kubernetes/workload_manager.py +0 -0
  337. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/__init__.py +0 -0
  338. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/analysis/__init__.py +0 -0
  339. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/analysis/calculator.py +0 -0
  340. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/analysis/charts.py +0 -0
  341. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/analysis/constants.py +0 -0
  342. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/__init__.py +0 -0
  343. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/base.py +0 -0
  344. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/clean_column_names.py +0 -0
  345. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/fix_syntax_errors.py +0 -0
  346. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/impute_values.py +0 -0
  347. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/reformat_values.py +0 -0
  348. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/remove_collinear_columns.py +0 -0
  349. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_high_empty_rate.py +0 -0
  350. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_single_value.py +0 -0
  351. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/remove_duplicate_rows.py +0 -0
  352. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/cleaning_rules/remove_outliers.py +0 -0
  353. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/column_types/__init__.py +0 -0
  354. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/column_types/column_type_detector.py +0 -0
  355. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/column_types/constants.py +0 -0
  356. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/data_cleaner.py +0 -0
  357. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/estimators/__init__.py +0 -0
  358. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/estimators/base.py +0 -0
  359. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/estimators/encoders.py +0 -0
  360. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/estimators/outlier_removal.py +0 -0
  361. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/pipelines/__init__.py +0 -0
  362. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/pipelines/base.py +0 -0
  363. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/shared/__init__.py +0 -0
  364. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/shared/utils.py +0 -0
  365. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/statistics/__init__.py +0 -0
  366. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/statistics/calculator.py +0 -0
  367. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/__init__.py +0 -0
  368. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/action_code.py +0 -0
  369. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/base.py +0 -0
  370. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/column.py +0 -0
  371. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/constants.py +0 -0
  372. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/custom_action.py +0 -0
  373. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/dependency_resolution.py +0 -0
  374. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/helpers.py +0 -0
  375. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/row.py +0 -0
  376. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/shared.py +0 -0
  377. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/spark/__init__.py +0 -0
  378. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/spark/constants.py +0 -0
  379. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/spark/transformers.py +0 -0
  380. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/__init__.py +0 -0
  381. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/addition.py +0 -0
  382. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/base.py +0 -0
  383. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/constant.py +0 -0
  384. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/date_trunc.py +0 -0
  385. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/difference.py +0 -0
  386. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/distance_between.py +0 -0
  387. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/divide.py +0 -0
  388. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/formatted_date.py +0 -0
  389. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/if_else.py +0 -0
  390. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/multiply.py +0 -0
  391. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/string_replace.py +0 -0
  392. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/string_split.py +0 -0
  393. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/udf/substring.py +0 -0
  394. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/utils.py +0 -0
  395. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_cleaner/transformer_actions/variable_replacer.py +0 -0
  396. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/__init__.py +0 -0
  397. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/destinations/__init__.py +0 -0
  398. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/logger/__init__.py +0 -0
  399. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/logger/utils.py +0 -0
  400. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/sources/__init__.py +0 -0
  401. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/sources/constants.py +0 -0
  402. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/utils/__init__.py +0 -0
  403. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/utils/config.py +0 -0
  404. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/utils/parsers.py +0 -0
  405. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_integrations/utils/scheduler.py +0 -0
  406. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/__init__.py +0 -0
  407. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/decorators.py +0 -0
  408. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/__init__.py +0 -0
  409. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/azure_container_instance_executor.py +0 -0
  410. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/block_executor.py +0 -0
  411. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/ecs_block_executor.py +0 -0
  412. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/executor_factory.py +0 -0
  413. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/gcp_cloud_run_block_executor.py +0 -0
  414. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/k8s_block_executor.py +0 -0
  415. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/pipeline_executor.py +0 -0
  416. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/pyspark_block_executor.py +0 -0
  417. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/pyspark_pipeline_executor.py +0 -0
  418. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/executors/streaming_pipeline_executor.py +0 -0
  419. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/git/__init__.py +0 -0
  420. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/git/api.py +0 -0
  421. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/__init__.py +0 -0
  422. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/gcs_logger_manager.py +0 -0
  423. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/logger.py +0 -0
  424. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/logger_manager.py +0 -0
  425. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/logger_manager_factory.py +0 -0
  426. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/logging/s3_logger_manager.py +0 -0
  427. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/__init__.py +0 -0
  428. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/constants.py +0 -0
  429. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/dbt/__init__.py +0 -0
  430. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/errors.py +0 -0
  431. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/extension/__init__.py +0 -0
  432. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/extension/block.py +0 -0
  433. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/extension/great_expectations.py +0 -0
  434. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/extension/utils.py +0 -0
  435. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/integration/__init__.py +0 -0
  436. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/r/__init__.py +0 -0
  437. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/r/templates/data_exporter.jinja +0 -0
  438. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/r/templates/data_loader.jinja +0 -0
  439. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/r/templates/transformer.jinja +0 -0
  440. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/__init__.py +0 -0
  441. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/bigquery.py +0 -0
  442. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/clickhouse.py +0 -0
  443. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/constants.py +0 -0
  444. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/druid.py +0 -0
  445. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/mssql.py +0 -0
  446. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/mysql.py +0 -0
  447. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/postgres.py +0 -0
  448. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/redshift.py +0 -0
  449. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/snowflake.py +0 -0
  450. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/spark.py +0 -0
  451. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/trino.py +0 -0
  452. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/utils/__init__.py +0 -0
  453. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/sql/utils/shared.py +0 -0
  454. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/block/utils.py +0 -0
  455. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/constants.py +0 -0
  456. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/custom_templates/__init__.py +0 -0
  457. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/custom_templates/constants.py +0 -0
  458. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/custom_templates/custom_pipeline_template.py +0 -0
  459. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/errors.py +0 -0
  460. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/pipelines/__init__.py +0 -0
  461. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/pipelines/integration_pipeline.py +0 -0
  462. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/pipelines/utils.py +0 -0
  463. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/triggers/__init__.py +0 -0
  464. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/utils.py +0 -0
  465. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/variable.py +0 -0
  466. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/widget/__init__.py +0 -0
  467. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/widget/charts.py +0 -0
  468. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/widget/constants.py +0 -0
  469. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/models/widget/utils.py +0 -0
  470. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/preferences.py +0 -0
  471. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/__init__.py +0 -0
  472. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/constants.py +0 -0
  473. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/retry.py +0 -0
  474. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/secrets.py +0 -0
  475. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/stream.py +0 -0
  476. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/shared/utils.py +0 -0
  477. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/storage/__init__.py +0 -0
  478. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/storage/base_storage.py +0 -0
  479. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/storage/local_storage.py +0 -0
  480. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/storage/s3_storage.py +0 -0
  481. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/storage/utils.py +0 -0
  482. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/sync/__init__.py +0 -0
  483. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/sync/base_sync.py +0 -0
  484. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/sync/git_sync.py +0 -0
  485. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/__init__.py +0 -0
  486. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/callbacks/base.jinja +0 -0
  487. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/callbacks/default.py +0 -0
  488. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/callbacks/orchestration/triggers/default.jinja +0 -0
  489. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/conditionals/base.jinja +0 -0
  490. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/custom/python/default.jinja +0 -0
  491. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/azure_blob_storage.py +0 -0
  492. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/bigquery.py +0 -0
  493. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/default.jinja +0 -0
  494. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/deltalake/__init__.py +0 -0
  495. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/deltalake/azure_blob_storage.py +0 -0
  496. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/deltalake/default.jinja +0 -0
  497. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/deltalake/gcs.py +0 -0
  498. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/deltalake/s3.py +0 -0
  499. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/file.py +0 -0
  500. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/google_cloud_storage.py +0 -0
  501. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/mongodb.py +0 -0
  502. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/mysql.py +0 -0
  503. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/orchestration/triggers/default.jinja +0 -0
  504. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/postgres.py +0 -0
  505. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/pyspark/default.jinja +0 -0
  506. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/pyspark/s3.py +0 -0
  507. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/r/default.jinja +0 -0
  508. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/redshift.py +0 -0
  509. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/s3.py +0 -0
  510. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/snowflake.py +0 -0
  511. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/azure_data_lake.yaml +0 -0
  512. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/dummy.yaml +0 -0
  513. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/kafka.yaml +0 -0
  514. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/kinesis.yaml +0 -0
  515. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/mongodb.yaml +0 -0
  516. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/opensearch.yaml +0 -0
  517. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_exporters/streaming/s3.yaml +0 -0
  518. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/api.py +0 -0
  519. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/azure_blob_storage.py +0 -0
  520. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/bigquery.py +0 -0
  521. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/default.jinja +0 -0
  522. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/deltalake/__init__.py +0 -0
  523. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/deltalake/azure_blob_storage.py +0 -0
  524. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/deltalake/default.jinja +0 -0
  525. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/deltalake/gcs.py +0 -0
  526. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/deltalake/s3.py +0 -0
  527. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/druid.py +0 -0
  528. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/file.py +0 -0
  529. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/google_cloud_storage.py +0 -0
  530. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/mongodb.py +0 -0
  531. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/mysql.py +0 -0
  532. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/oracledb.py +0 -0
  533. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/orchestration/triggers/default.jinja +0 -0
  534. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/postgres.py +0 -0
  535. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/pyspark/default.jinja +0 -0
  536. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/pyspark/s3.py +0 -0
  537. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/r/default.jinja +0 -0
  538. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/redshift.py +0 -0
  539. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/s3.py +0 -0
  540. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/snowflake.py +0 -0
  541. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/amazon_sqs.yaml +0 -0
  542. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/azure_event_hub.yaml +0 -0
  543. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/google_cloud_pubsub.yaml +0 -0
  544. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/kafka.yaml +0 -0
  545. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/kinesis.yaml +0 -0
  546. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/data_loaders/streaming/rabbitmq.yaml +0 -0
  547. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/extensions/great_expectations/default.jinja +0 -0
  548. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/main/__init__.py +0 -0
  549. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/main/metadata.yaml +0 -0
  550. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/pipeline/__init__.py +0 -0
  551. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/pipeline/metadata.yaml +0 -0
  552. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/pipeline_execution/emr_bootstrap.sh +0 -0
  553. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/pipeline_execution/spark_script.jinja +0 -0
  554. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/.gitignore +0 -0
  555. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/__init__.py +0 -0
  556. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/charts/__init__.py +0 -0
  557. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/custom/__init__.py +0 -0
  558. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/data_exporters/__init__.py +0 -0
  559. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/data_exporters/export_titanic_clean.py +0 -0
  560. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/data_loaders/__init__.py +0 -0
  561. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/data_loaders/load_titanic.py +0 -0
  562. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/dbt/profiles.yml +0 -0
  563. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/extensions/__init__.py +0 -0
  564. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/io_config.yaml +0 -0
  565. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/metadata.yaml +0 -0
  566. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/pipelines/__init__.py +0 -0
  567. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline/__init__.py +0 -0
  568. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline/metadata.yaml +0 -0
  569. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/requirements.txt +0 -0
  570. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/scratchpads/__init__.py +0 -0
  571. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/transformers/__init__.py +0 -0
  572. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/transformers/fill_in_missing_values.py +0 -0
  573. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/repo/utils/__init__.py +0 -0
  574. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/bigquery.py +0 -0
  575. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/default.py +0 -0
  576. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/mysql.py +0 -0
  577. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/postgres.py +0 -0
  578. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/redshift.py +0 -0
  579. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/s3.py +0 -0
  580. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/sensors/snowflake.py +0 -0
  581. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/testable.jinja +0 -0
  582. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/data_warehouse_transformer.jinja +0 -0
  583. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/default.jinja +0 -0
  584. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/default_pyspark.jinja +0 -0
  585. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/default_streaming.jinja +0 -0
  586. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/r/default.r +0 -0
  587. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/suggestion_fmt.jinja +0 -0
  588. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/action.jinja +0 -0
  589. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/average.py +0 -0
  590. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/clean_column_name.py +0 -0
  591. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count.py +0 -0
  592. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count_distinct.py +0 -0
  593. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/diff.py +0 -0
  594. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/first.py +0 -0
  595. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/fix_syntax_errors.py +0 -0
  596. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/impute.py +0 -0
  597. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/last.py +0 -0
  598. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/max.py +0 -0
  599. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/median.py +0 -0
  600. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/min.py +0 -0
  601. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/normalize.py +0 -0
  602. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/reformat.py +0 -0
  603. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove.py +0 -0
  604. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove_outliers.py +0 -0
  605. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/select.py +0 -0
  606. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_down.py +0 -0
  607. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_up.py +0 -0
  608. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/standardize.py +0 -0
  609. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/sum.py +0 -0
  610. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/drop_duplicate.py +0 -0
  611. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/filter.py +0 -0
  612. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/remove.py +0 -0
  613. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/sort.py +0 -0
  614. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/templates/utils.py +0 -0
  615. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/utils/__init__.py +0 -0
  616. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/utils/block/__init__.py +0 -0
  617. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/utils/block/convert_content.py +0 -0
  618. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/data_preparation/variable_manager.py +0 -0
  619. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/errors/__init__.py +0 -0
  620. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/errors/base.py +0 -0
  621. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/__init__.py +0 -0
  622. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/constants.py +0 -0
  623. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/dbt/__init__.py +0 -0
  624. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/dbt/constants.py +0 -0
  625. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/great_expectations/__init__.py +0 -0
  626. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/extensions/great_expectations/constants.py +0 -0
  627. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/__init__.py +0 -0
  628. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/azure_blob_storage.py +0 -0
  629. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/base.py +0 -0
  630. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/bigquery.py +0 -0
  631. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/clickhouse.py +0 -0
  632. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/config.py +0 -0
  633. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/constants.py +0 -0
  634. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/druid.py +0 -0
  635. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/export_utils.py +0 -0
  636. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/file.py +0 -0
  637. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/google_cloud_storage.py +0 -0
  638. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/io_config.py +0 -0
  639. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/mongodb.py +0 -0
  640. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/mssql.py +0 -0
  641. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/mysql.py +0 -0
  642. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/oracledb.py +0 -0
  643. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/postgres.py +0 -0
  644. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/redshift.py +0 -0
  645. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/s3.py +0 -0
  646. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/snowflake.py +0 -0
  647. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/spark.py +0 -0
  648. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/sql.py +0 -0
  649. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/trino.py +0 -0
  650. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/io/utils.py +0 -0
  651. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/__init__.py +0 -0
  652. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/airflow.py +0 -0
  653. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/backfills/__init__.py +0 -0
  654. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/backfills/service.py +0 -0
  655. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/constants.py +0 -0
  656. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/alembic.ini +0 -0
  657. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/database_manager.py +0 -0
  658. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/errors.py +0 -0
  659. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/README.md +0 -0
  660. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/env.py +0 -0
  661. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/script.py.mako +0 -0
  662. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/053ee2c10d85_add_completed_at.py +0 -0
  663. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/067326f43bc3_add_variables_to_pipelinerun.py +0 -0
  664. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/1a737bdee53b_add_preferences_to_user.py +0 -0
  665. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/1bfc6d904929_add_indices_to_schedule_models.py +0 -0
  666. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/1d8e65aeefdd_add_settings_to_pipeline_schedule.py +0 -0
  667. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/1f9353eddbc6_add_secrets_table.py +0 -0
  668. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/21e31d66ccea_add_pipeline_uuid_index_to_pipeline_.py +0 -0
  669. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/2266370f589b_add_indexes_to_pipeline_run.py +0 -0
  670. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/26305e46df52_create_backfills_table.py +0 -0
  671. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/3fafd217efa7_add_event_matcher_model.py +0 -0
  672. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/52ab80005742_add_variables_to_pipeline_schedule.py +0 -0
  673. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/5cd59ec4cf1d_add_passed_sla_to_pipeline_run.py +0 -0
  674. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/643b6e65e814_add_unique_indexes_on_authentication_.py +0 -0
  675. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/66e67039b8a2_add_executor_type_to_pipeline_run.py +0 -0
  676. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/6aecc9bc451c_update_schedule_type_enum.py +0 -0
  677. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/7ac6fed06918_add_token_column_to_pipeline_schedule_.py +0 -0
  678. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/83a74eca6ea1_create_user_roles_roles_and_permissions.py +0 -0
  679. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/847ea6602d6f_add_upstream_failed_to_block_run_status.py +0 -0
  680. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/84de4cdd6126_add_sla_to_pipeline_schedule.py +0 -0
  681. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/8971d4cd5b39_add_event_variables_and_metadata_to_.py +0 -0
  682. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/90d978a8aef8_update_unique_constraint_for_secret.py +0 -0
  683. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/97ff9f55a3c0_create_users_oauth2_applications_and_.py +0 -0
  684. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/b01be687e537_add_started_at_to_block_run.py +0 -0
  685. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/c07a23ff782b_add_initial_tables.py +0 -0
  686. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/dfe49d040487_add_condition_failed_status_to_block_.py +0 -0
  687. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/e3593cc2191e_add_key_uuid_to_secrets.py +0 -0
  688. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/e7beb59b44f9_add_repo_path_to_pipeline_schedule.py +0 -0
  689. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/migrations/versions/ec5df57a1c60_add_metrics_to_block_runs.py +0 -0
  690. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/models/__init__.py +0 -0
  691. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/models/base.py +0 -0
  692. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/models/oauth.py +0 -0
  693. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/models/schedules.py +0 -0
  694. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/models/secrets.py +0 -0
  695. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/db/process.py +0 -0
  696. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/execution_process_manager.py +0 -0
  697. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/job_manager.py +0 -0
  698. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/metrics/__init__.py +0 -0
  699. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/metrics/pipeline_run.py +0 -0
  700. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/monitor/__init__.py +0 -0
  701. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/monitor/monitor_stats.py +0 -0
  702. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/notification/__init__.py +0 -0
  703. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/notification/config.py +0 -0
  704. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/notification/sender.py +0 -0
  705. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/__init__.py +0 -0
  706. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/celery_queue.py +0 -0
  707. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/config.py +0 -0
  708. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/process_queue.py +0 -0
  709. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/queue.py +0 -0
  710. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/queue/queue_factory.py +0 -0
  711. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/run_status_checker.py +0 -0
  712. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/__init__.py +0 -0
  713. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/api.py +0 -0
  714. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/constants.py +0 -0
  715. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/event_trigger.py +0 -0
  716. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/loop_time_trigger.py +0 -0
  717. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/triggers/time_trigger.py +0 -0
  718. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/utils/__init__.py +0 -0
  719. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/utils/distributed_lock.py +0 -0
  720. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/orchestration/utils/resources.py +0 -0
  721. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/sample_datasets/__init__.py +0 -0
  722. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/sample_datasets/product_purchases.csv +0 -0
  723. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/sample_datasets/salary_survey.csv +0 -0
  724. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/sample_datasets/titanic_survival.csv +0 -0
  725. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/sample_datasets/user_emails.csv +0 -0
  726. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/__init__.py +0 -0
  727. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/active_kernel.py +0 -0
  728. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/__init__.py +0 -0
  729. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/base.py +0 -0
  730. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/blocks.py +0 -0
  731. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/clusters.py +0 -0
  732. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/constants.py +0 -0
  733. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/downloads.py +0 -0
  734. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/errors.py +0 -0
  735. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/events.py +0 -0
  736. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/integration_sources.py +0 -0
  737. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/projects.py +0 -0
  738. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/triggers.py +0 -0
  739. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/api/v1.py +0 -0
  740. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/app.py +0 -0
  741. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/client/__init__.py +0 -0
  742. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/client/mage.py +0 -0
  743. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/data/__init__.py +0 -0
  744. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/data/base.py +0 -0
  745. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/data/models.py +0 -0
  746. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/docs_server.py +0 -0
  747. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/execution_manager.py +0 -0
  748. {mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/RcIgkp9pBXE1Rb4tOGR1L → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/OwvTROmputQCA1Z9HEGDv}/_middlewareManifest.js +0 -0
  749. {mage-ai-0.9.8/mage_ai/server/frontend_dist/_next/static/RcIgkp9pBXE1Rb4tOGR1L → mage-ai-0.9.9/mage_ai/server/frontend_dist/_next/static/OwvTROmputQCA1Z9HEGDv}/_ssgManifest.js +0 -0
  750. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/1150.1378afaa474df64a.js +0 -0
  751. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/1240.0819f45820d22263.js +0 -0
  752. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/1450.d383f64c169d4278.js +0 -0
  753. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/1774-aa51ef1da7217ff9.js +0 -0
  754. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2481.0454a0e25dc7e027.js +0 -0
  755. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2508.724531e7f9cf5f36.js +0 -0
  756. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2545.8371b39c898ae92b.js +0 -0
  757. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/261.0a24b4ece1d29aa1.js +0 -0
  758. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/266.e301071d22592682.js +0 -0
  759. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2714-1e79e9f2e998b544.js +0 -0
  760. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2834-d2a1c03968995e8e.js +0 -0
  761. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/29107295-989a0767a635d9d5.js +0 -0
  762. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2920.fb0b924e801abbd0.js +0 -0
  763. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/2991-d0b13a172f9c1dcd.js +0 -0
  764. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/3453.992f4b1667e9882c.js +0 -0
  765. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/3467.38cd0654ba6f788f.js +0 -0
  766. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/3835.df296b4e4078e985.js +0 -0
  767. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/3898.880191695bb05845.js +0 -0
  768. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4042.5e16d36209052351.js +0 -0
  769. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4092.536ee541241f4538.js +0 -0
  770. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4259-b71c17f69499f7bd.js +0 -0
  771. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/426-df62b0bd693bbb87.js +0 -0
  772. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/437-89b2e8ea46a3cec4.js +0 -0
  773. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4388.04098706f32e69e7.js +0 -0
  774. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4398-5d5c07021ccd37b8.js +0 -0
  775. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/440.3ab77942f659ea0c.js +0 -0
  776. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4450.79f14f763d55c63e.js +0 -0
  777. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4454.13a2404adecaa39e.js +0 -0
  778. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4495-4f0340aa82e0c623.js +0 -0
  779. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4776.753ad29fa0a29a4a.js +0 -0
  780. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/4883.a5bb0edbf8f3cc8f.js +0 -0
  781. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5008.29c2662ecc2b04c7.js +0 -0
  782. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5104.1edcf4437c471dd4.js +0 -0
  783. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5164.857023e800905b6f.js +0 -0
  784. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5643-1f8a6d8a392fe96b.js +0 -0
  785. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5729.0f2748e9e6dab951.js +0 -0
  786. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5824.628653557e904674.js +0 -0
  787. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5872-1767c45ee6690ae5.js +0 -0
  788. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/5896-42c94d54cd2c5706.js +0 -0
  789. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6042.c59010de9e699437.js +0 -0
  790. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6115.0c85e507543394ea.js +0 -0
  791. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6116.871a682ddf535aca.js +0 -0
  792. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6434.10380ee0968636ba.js +0 -0
  793. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6443.7b6d2b4e51018184.js +0 -0
  794. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6507.d3a17777d2c294e6.js +0 -0
  795. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6786-4209f6577f9d4c91.js +0 -0
  796. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/6958.8f39c585d36737a7.js +0 -0
  797. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7011-81dd8269c4806d26.js +0 -0
  798. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/72fdc299.2d5ec188af5d0049.js +0 -0
  799. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/739.3d24945544b37e52.js +0 -0
  800. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7722-a74e6f977993e75e.js +0 -0
  801. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7768-2325216ed654ad05.js +0 -0
  802. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7849-dc70fad5f838d909.js +0 -0
  803. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/792.010ca00d79b2112f.js +0 -0
  804. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7947.77be4bec4d47774e.js +0 -0
  805. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/7951.fee8b6c27c9ef777.js +0 -0
  806. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8018.968bf87c390e3312.js +0 -0
  807. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8097.b0345f30a7390c1d.js +0 -0
  808. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8256.290ceb269b1ffe26.js +0 -0
  809. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/826.75268ee34f93393a.js +0 -0
  810. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8277.5003e1d94bb85156.js +0 -0
  811. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/844-1e171f361e63b36d.js +0 -0
  812. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8762.dff300f86bef8573.js +0 -0
  813. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8789-4f858e520d46973b.js +0 -0
  814. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8792-10e45963e2486454.js +0 -0
  815. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8807.a68c69c8fe0a8c01.js +0 -0
  816. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8849.db0d50b4d84b09a6.js +0 -0
  817. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8901.21d26d5a1ee473fe.js +0 -0
  818. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/8920.5700e380a2999098.js +0 -0
  819. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9258.6c6ef544c701a011.js +0 -0
  820. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9307.d4baf7aebbcef1f0.js +0 -0
  821. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9361.a0820e3069f5ef74.js +0 -0
  822. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9363.6b811b4c86277e07.js +0 -0
  823. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9404-1fb0792716d46efc.js +0 -0
  824. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9437.a3c32f45cf9ef69b.js +0 -0
  825. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9464-84f4879568c00a93.js +0 -0
  826. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9566.f8bd24768ed14ecb.js +0 -0
  827. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9633.40e5056ca1e2b22a.js +0 -0
  828. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9785.5ff26cb26d84d6a1.js +0 -0
  829. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9855.c4394a68322be9f8.js +0 -0
  830. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9902-b7981346a40ecdc3.js +0 -0
  831. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/9927.e82a3e1e21990d77.js +0 -0
  832. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/bd1a647f.fe5d87096be24a62.js +0 -0
  833. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/framework-7c365855dab1bf41.js +0 -0
  834. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/main-bb0dd5375146d7fd.js +0 -0
  835. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/_error-235304e5badb19eb.js +0 -0
  836. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/index-32917acd76697307.js +0 -0
  837. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipeline-runs-14d37c2c2ea9e9a2.js +0 -0
  838. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runs-489d02937d5f4695.js +0 -0
  839. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runtime-6bec539394ac7514.js +0 -0
  840. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs/[run]-f1ef481c7beb8aef.js +0 -0
  841. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]-ca9457e1a6bced4b.js +0 -0
  842. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/account/profile-d2224a447987fa69.js +0 -0
  843. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/sync-data-dd827816bf4a7908.js +0 -0
  844. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings-d594a66a568306da.js +0 -0
  845. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/terminal-d483cf913167fd8d.js +0 -0
  846. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/test-b24d77dc84843924.js +0 -0
  847. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/pages/triggers-ecf780af6044e77e.js +0 -0
  848. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/polyfills-5cd94c89d3acac5f.js +0 -0
  849. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/chunks/webpack-8f51011a10b384a1.js +0 -0
  850. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/_next/static/css/d1e8e64d0b07af2f.css +0 -0
  851. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/favicon.ico +0 -0
  852. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Bold.ttf +0 -0
  853. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Light.ttf +0 -0
  854. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Medium.ttf +0 -0
  855. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Regular.ttf +0 -0
  856. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Retina.ttf +0 -0
  857. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-SemiBold.ttf +0 -0
  858. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/LICENSE.txt +0 -0
  859. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Black.ttf +0 -0
  860. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
  861. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Bold.ttf +0 -0
  862. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
  863. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Italic.ttf +0 -0
  864. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Light.ttf +0 -0
  865. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
  866. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Medium.ttf +0 -0
  867. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
  868. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Regular.ttf +0 -0
  869. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Thin.ttf +0 -0
  870. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
  871. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/LICENSE.txt +0 -0
  872. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/README.txt +0 -0
  873. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-Italic-VariableFont_wght.ttf +0 -0
  874. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-VariableFont_wght.ttf +0 -0
  875. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Bold.ttf +0 -0
  876. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-BoldItalic.ttf +0 -0
  877. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLight.ttf +0 -0
  878. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLightItalic.ttf +0 -0
  879. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Italic.ttf +0 -0
  880. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Light.ttf +0 -0
  881. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-LightItalic.ttf +0 -0
  882. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Medium.ttf +0 -0
  883. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-MediumItalic.ttf +0 -0
  884. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf +0 -0
  885. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBold.ttf +0 -0
  886. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBoldItalic.ttf +0 -0
  887. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Thin.ttf +0 -0
  888. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ThinItalic.ttf +0 -0
  889. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/backfill.jpg +0 -0
  890. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/banner-shape-purple-peach.jpg +0 -0
  891. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/blocks/grey_block.webp +0 -0
  892. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/dashboard-api-key.webp +0 -0
  893. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/extensions/dbt/logo.png +0 -0
  894. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/extensions/great_expectations/logo.png +0 -0
  895. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/extra.jpg +0 -0
  896. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/monitor.jpg +0 -0
  897. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/run B.jpg +0 -0
  898. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/images/sessions/abstract.png +0 -0
  899. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/frontend_dist/vercel.svg +0 -0
  900. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/kernel_output_parser.py +0 -0
  901. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/kernels.py +0 -0
  902. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/logger.py +0 -0
  903. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/scheduler_manager.py +0 -0
  904. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/subscriber.py +0 -0
  905. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/terminal_server.py +0 -0
  906. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/utils/__init__.py +0 -0
  907. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/utils/frontend_renderer.py +0 -0
  908. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/utils/output_display.py +0 -0
  909. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/server/websocket_server.py +0 -0
  910. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/__init__.py +0 -0
  911. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/__init__.py +0 -0
  912. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/client.py +0 -0
  913. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/config.py +0 -0
  914. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/constants.py +0 -0
  915. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/exceptions.py +0 -0
  916. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/airbyte/server.py +0 -0
  917. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/__init__.py +0 -0
  918. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/ecs/__init__.py +0 -0
  919. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/ecs/config.py +0 -0
  920. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/ecs/ecs.py +0 -0
  921. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/__init__.py +0 -0
  922. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/config.py +0 -0
  923. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/emr.py +0 -0
  924. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/emr_basics.py +0 -0
  925. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/launcher.py +0 -0
  926. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/emr/resource_manager.py +0 -0
  927. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/events/__init__.py +0 -0
  928. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/events/events.py +0 -0
  929. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/s3/__init__.py +0 -0
  930. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/s3/s3.py +0 -0
  931. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/secrets_manager/__init__.py +0 -0
  932. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/aws/secrets_manager/secrets_manager.py +0 -0
  933. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/__init__.py +0 -0
  934. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/constants.py +0 -0
  935. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/container_instance/__init__.py +0 -0
  936. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/container_instance/config.py +0 -0
  937. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/container_instance/container_instance.py +0 -0
  938. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/key_vault/__init__.py +0 -0
  939. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/azure/key_vault/key_vault.py +0 -0
  940. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/datadog/__init__.py +0 -0
  941. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/dbt/__init__.py +0 -0
  942. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/dbt/config.py +0 -0
  943. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/dbt/constants.py +0 -0
  944. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/dbt/dbt.py +0 -0
  945. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/email/__init__.py +0 -0
  946. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/email/config.py +0 -0
  947. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/email/email.py +0 -0
  948. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/gcp/__init__.py +0 -0
  949. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/gcp/cloud_run/__init__.py +0 -0
  950. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/gcp/cloud_run/cloud_run.py +0 -0
  951. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/gcp/cloud_run/config.py +0 -0
  952. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/google_chat/__init__.py +0 -0
  953. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/google_chat/config.py +0 -0
  954. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/google_chat/google_chat.py +0 -0
  955. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/hightouch/__init__.py +0 -0
  956. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/hightouch/config.py +0 -0
  957. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/hightouch/constants.py +0 -0
  958. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/hightouch/hightouch.py +0 -0
  959. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/k8s/__init__.py +0 -0
  960. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/k8s/config.py +0 -0
  961. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/k8s/constants.py +0 -0
  962. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/k8s/job_manager.py +0 -0
  963. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/metaplane/__init__.py +0 -0
  964. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/metaplane/config.py +0 -0
  965. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/metaplane/metaplane.py +0 -0
  966. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/newrelic/__init__.py +0 -0
  967. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/opsgenie/__init__.py +0 -0
  968. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/opsgenie/config.py +0 -0
  969. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/opsgenie/opsgenie.py +0 -0
  970. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/redis/__init__.py +0 -0
  971. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/redis/redis.py +0 -0
  972. {mage-ai-0.9.8/mage_ai/services/slack → mage-ai-0.9.9/mage_ai/services/search}/__init__.py +0 -0
  973. {mage-ai-0.9.8/mage_ai/services/spark → mage-ai-0.9.9/mage_ai/services/slack}/__init__.py +0 -0
  974. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/slack/config.py +0 -0
  975. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/slack/slack.py +0 -0
  976. {mage-ai-0.9.8/mage_ai/services/stitch → mage-ai-0.9.9/mage_ai/services/spark}/__init__.py +0 -0
  977. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/spark/config.py +0 -0
  978. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/spark/spark.py +0 -0
  979. {mage-ai-0.9.8/mage_ai/services/teams → mage-ai-0.9.9/mage_ai/services/stitch}/__init__.py +0 -0
  980. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/stitch/config.py +0 -0
  981. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/stitch/constants.py +0 -0
  982. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/stitch/stitch.py +0 -0
  983. {mage-ai-0.9.8/mage_ai/services/tracking → mage-ai-0.9.9/mage_ai/services/teams}/__init__.py +0 -0
  984. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/teams/config.py +0 -0
  985. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/teams/teams.py +0 -0
  986. {mage-ai-0.9.8/mage_ai/shared → mage-ai-0.9.9/mage_ai/services/tracking}/__init__.py +0 -0
  987. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/services/tracking/metrics.py +0 -0
  988. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/settings/__init__.py +0 -0
  989. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/settings/repo.py +0 -0
  990. {mage-ai-0.9.8/mage_ai/streaming → mage-ai-0.9.9/mage_ai/shared}/__init__.py +0 -0
  991. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/code.py +0 -0
  992. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/config.py +0 -0
  993. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/constants.py +0 -0
  994. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/conversions.py +0 -0
  995. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/custom_types.py +0 -0
  996. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/dates.py +0 -0
  997. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/environments.py +0 -0
  998. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/hash.py +0 -0
  999. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/http_client.py +0 -0
  1000. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/io.py +0 -0
  1001. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/logger.py +0 -0
  1002. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/multi.py +0 -0
  1003. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/retry.py +0 -0
  1004. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/security.py +0 -0
  1005. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/strings.py +0 -0
  1006. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/urls.py +0 -0
  1007. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/shared/utils.py +0 -0
  1008. {mage-ai-0.9.8/mage_ai/streaming/sinks → mage-ai-0.9.9/mage_ai/streaming}/__init__.py +0 -0
  1009. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/constants.py +0 -0
  1010. {mage-ai-0.9.8/mage_ai/streaming/sources → mage-ai-0.9.9/mage_ai/streaming/sinks}/__init__.py +0 -0
  1011. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/amazon_s3.py +0 -0
  1012. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/azure_data_lake.py +0 -0
  1013. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/base.py +0 -0
  1014. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/dummy.py +0 -0
  1015. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/kafka.py +0 -0
  1016. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/kinesis.py +0 -0
  1017. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/mongodb.py +0 -0
  1018. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/opensearch.py +0 -0
  1019. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sinks/sink_factory.py +0 -0
  1020. {mage-ai-0.9.8/mage_ai/tests → mage-ai-0.9.9/mage_ai/streaming/sources}/__init__.py +0 -0
  1021. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/amazon_sqs.py +0 -0
  1022. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/azure_event_hub.py +0 -0
  1023. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/base.py +0 -0
  1024. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/google_cloud_pubsub.py +0 -0
  1025. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/kafka.py +0 -0
  1026. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/kinesis.py +0 -0
  1027. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/rabbitmq.py +0 -0
  1028. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/shared.py +0 -0
  1029. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/streaming/sources/source_factory.py +0 -0
  1030. {mage-ai-0.9.8/mage_ai/tests/api → mage-ai-0.9.9/mage_ai/tests}/__init__.py +0 -0
  1031. {mage-ai-0.9.8/mage_ai/tests/api/operations → mage-ai-0.9.9/mage_ai/tests/api}/__init__.py +0 -0
  1032. {mage-ai-0.9.8/mage_ai/tests/data_cleaner → mage-ai-0.9.9/mage_ai/tests/api/operations}/__init__.py +0 -0
  1033. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_base.py +0 -0
  1034. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_operations.py +0 -0
  1035. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_pipeline_schedules.py +0 -0
  1036. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_sessions.py +0 -0
  1037. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_syncs.py +0 -0
  1038. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/operations/test_users.py +0 -0
  1039. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/api/test_utils.py +0 -0
  1040. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/base_test.py +0 -0
  1041. {mage-ai-0.9.8/mage_ai/tests/data_cleaner/cleaning_rules → mage-ai-0.9.9/mage_ai/tests/data_cleaner}/__init__.py +0 -0
  1042. {mage-ai-0.9.8/mage_ai/tests/data_cleaner/statistics → mage-ai-0.9.9/mage_ai/tests/data_cleaner/cleaning_rules}/__init__.py +0 -0
  1043. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_clean_column_names.py +0 -0
  1044. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_fix_syntax_error.py +0 -0
  1045. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_impute_values.py +0 -0
  1046. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_reformat_values.py +0 -0
  1047. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_collinear_columns.py +0 -0
  1048. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_high_empty_rate.py +0 -0
  1049. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_single_value.py +0 -0
  1050. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_duplicate_rows.py +0 -0
  1051. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_outliers.py +0 -0
  1052. {mage-ai-0.9.8/mage_ai/tests/data_cleaner/transformer_actions → mage-ai-0.9.9/mage_ai/tests/data_cleaner/statistics}/__init__.py +0 -0
  1053. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/statistics/test_calculator.py +0 -0
  1054. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/test_column_type_detector.py +0 -0
  1055. {mage-ai-0.9.8/mage_ai/tests/data_preparation → mage-ai-0.9.9/mage_ai/tests/data_cleaner/transformer_actions}/__init__.py +0 -0
  1056. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/shared.py +0 -0
  1057. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_base.py +0 -0
  1058. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_column.py +0 -0
  1059. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_custom_actions.py +0 -0
  1060. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_helpers.py +0 -0
  1061. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_row.py +0 -0
  1062. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_utils.py +0 -0
  1063. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_cleaner/transformer_actions/test_variable_replacer.py +0 -0
  1064. {mage-ai-0.9.8/mage_ai/tests/data_preparation/executors → mage-ai-0.9.9/mage_ai/tests/data_preparation}/__init__.py +0 -0
  1065. {mage-ai-0.9.8/mage_ai/tests/data_preparation/git → mage-ai-0.9.9/mage_ai/tests/data_preparation/executors}/__init__.py +0 -0
  1066. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/executors/test_block_executor.py +0 -0
  1067. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/executors/test_k8s_block_executor.py +0 -0
  1068. {mage-ai-0.9.8/mage_ai/tests/data_preparation/models → mage-ai-0.9.9/mage_ai/tests/data_preparation/git}/__init__.py +0 -0
  1069. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/git/test_git.py +0 -0
  1070. {mage-ai-0.9.8/mage_ai/tests/data_preparation/models/block → mage-ai-0.9.9/mage_ai/tests/data_preparation/models}/__init__.py +0 -0
  1071. {mage-ai-0.9.8/mage_ai/tests/io → mage-ai-0.9.9/mage_ai/tests/data_preparation/models/block}/__init__.py +0 -0
  1072. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/models/block/test_sql.py +0 -0
  1073. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/models/test_block.py +0 -0
  1074. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/models/test_pipeline.py +0 -0
  1075. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/models/test_variable.py +0 -0
  1076. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/test_templates.py +0 -0
  1077. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/data_preparation/test_variable_manager.py +0 -0
  1078. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/factory.py +0 -0
  1079. {mage-ai-0.9.8/mage_ai/tests/orchestration → mage-ai-0.9.9/mage_ai/tests/io}/__init__.py +0 -0
  1080. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/io/test_config.py +0 -0
  1081. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/io/test_export_utils.py +0 -0
  1082. {mage-ai-0.9.8/mage_ai/tests/orchestration/db → mage-ai-0.9.9/mage_ai/tests/orchestration}/__init__.py +0 -0
  1083. {mage-ai-0.9.8/mage_ai/tests/orchestration/notification → mage-ai-0.9.9/mage_ai/tests/orchestration/db}/__init__.py +0 -0
  1084. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/db/test_models.py +0 -0
  1085. {mage-ai-0.9.8/mage_ai/tests/orchestration/queue → mage-ai-0.9.9/mage_ai/tests/orchestration/notification}/__init__.py +0 -0
  1086. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/notification/constants.py +0 -0
  1087. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/notification/test_config.py +0 -0
  1088. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/notification/test_sender.py +0 -0
  1089. {mage-ai-0.9.8/mage_ai/tests/orchestration/triggers → mage-ai-0.9.9/mage_ai/tests/orchestration/queue}/__init__.py +0 -0
  1090. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/queue/test_process_queue.py +0 -0
  1091. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/test_execution_process_manager.py +0 -0
  1092. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/test_job_manager.py +0 -0
  1093. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/test_pipeline_scheduler.py +0 -0
  1094. {mage-ai-0.9.8/mage_ai/tests/services → mage-ai-0.9.9/mage_ai/tests/orchestration/triggers}/__init__.py +0 -0
  1095. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/triggers/test_event_trigger.py +0 -0
  1096. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/orchestration/triggers/test_loop_time_trigger.py +0 -0
  1097. {mage-ai-0.9.8/mage_ai/tests/services/aws → mage-ai-0.9.9/mage_ai/tests/services}/__init__.py +0 -0
  1098. {mage-ai-0.9.8/mage_ai/tests/services/aws/s3 → mage-ai-0.9.9/mage_ai/tests/services/aws}/__init__.py +0 -0
  1099. {mage-ai-0.9.8/mage_ai/tests/services/datadog → mage-ai-0.9.9/mage_ai/tests/services/aws/s3}/__init__.py +0 -0
  1100. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/services/aws/s3/test_s3.py +0 -0
  1101. {mage-ai-0.9.8/mage_ai/tests/services/k8s → mage-ai-0.9.9/mage_ai/tests/services/datadog}/__init__.py +0 -0
  1102. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/services/datadog/test_datadog.py +0 -0
  1103. {mage-ai-0.9.8/mage_ai/tests/shared → mage-ai-0.9.9/mage_ai/tests/services/k8s}/__init__.py +0 -0
  1104. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/services/k8s/test_job_manager.py +0 -0
  1105. {mage-ai-0.9.8/mage_ai/tests/streaming → mage-ai-0.9.9/mage_ai/tests/shared}/__init__.py +0 -0
  1106. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/shared/test_hash.py +0 -0
  1107. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/shared/test_io.py +0 -0
  1108. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/shared/test_retry.py +0 -0
  1109. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/shared/test_security.py +0 -0
  1110. {mage-ai-0.9.8/mage_ai/tests/streaming/sinks → mage-ai-0.9.9/mage_ai/tests/streaming}/__init__.py +0 -0
  1111. {mage-ai-0.9.8/mage_ai/tests/streaming/sources → mage-ai-0.9.9/mage_ai/tests/streaming/sinks}/__init__.py +0 -0
  1112. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_amazon_s3.py +0 -0
  1113. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_azure_data_lake.py +0 -0
  1114. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_dummy.py +0 -0
  1115. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_kinesis.py +0 -0
  1116. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_mongodb.py +0 -0
  1117. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_opensearch.py +0 -0
  1118. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sinks/test_sink_factory.py +0 -0
  1119. {mage-ai-0.9.8/mage_ai/usage_statistics → mage-ai-0.9.9/mage_ai/tests/streaming/sources}/__init__.py +0 -0
  1120. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_amazon_sqs.py +0 -0
  1121. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_azure_event_hub.py +0 -0
  1122. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_google_cloud_pubsub.py +0 -0
  1123. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_kafka.py +0 -0
  1124. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_kinesis.py +0 -0
  1125. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_rabbitmq.py +0 -0
  1126. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/streaming/sources/test_source_factory.py +0 -0
  1127. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/tests/test_shared.py +0 -0
  1128. {mage-ai-0.9.8/mage_ai/utils → mage-ai-0.9.9/mage_ai/usage_statistics}/__init__.py +0 -0
  1129. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/utils/code.py +0 -0
  1130. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/utils/logger/__init__.py +0 -0
  1131. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai/utils/logger/constants.py +0 -0
  1132. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai.egg-info/dependency_links.txt +0 -0
  1133. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai.egg-info/entry_points.txt +0 -0
  1134. {mage-ai-0.9.8 → mage-ai-0.9.9}/mage_ai.egg-info/top_level.txt +0 -0
  1135. {mage-ai-0.9.8 → mage-ai-0.9.9}/pyproject.toml +0 -0
  1136. {mage-ai-0.9.8 → mage-ai-0.9.9}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mage-ai
3
- Version: 0.9.8
3
+ Version: 0.9.9
4
4
  Summary: Mage is a tool for building and deploying data pipelines.
5
5
  Home-page: https://github.com/mage-ai/mage-ai
6
6
  Author: Mage
@@ -5,3 +5,4 @@ class LLMUseCase(str, Enum):
5
5
  GENERATE_COMMENT_FOR_BLOCK = 'generate_comment_for_block'
6
6
  GENERATE_DOC_FOR_BLOCK = 'generate_doc_for_block'
7
7
  GENERATE_DOC_FOR_PIPELINE = 'generate_doc_for_pipeline'
8
+ GENERATE_BLOCK_WITH_DESCRIPTION = 'generate_block_with_description'
@@ -24,5 +24,11 @@ class Generator:
24
24
  return await LLMPipelineWizard().async_generate_pipeline_documentation(
25
25
  pipeline_uuid,
26
26
  )
27
+ elif use_case == LLMUseCase.GENERATE_BLOCK_WITH_DESCRIPTION:
28
+ from mage_ai.ai.llm_pipeline_wizard import LLMPipelineWizard
29
+
30
+ return await LLMPipelineWizard().async_generate_block_with_description(
31
+ request.get('block_description'),
32
+ )
27
33
 
28
34
  raise Exception(f'Use case {use_case} is not supported yet.')
@@ -42,5 +42,10 @@ def generate_pipeline_documentation(project_path: str = PROJECT_NAME_DEFAULT,
42
42
  ))['pipeline_doc'])
43
43
 
44
44
 
45
+ @app.command()
46
+ def generate_block_with_description(block_description: str):
47
+ print(asyncio.run(LLMPipelineWizard().async_generate_block_with_description(block_description)))
48
+
49
+
45
50
  if __name__ == '__main__':
46
51
  app()
@@ -0,0 +1,229 @@
1
+ import asyncio
2
+ import json
3
+ import os
4
+
5
+ import openai
6
+ from langchain.chains import LLMChain
7
+ from langchain.llms import OpenAI
8
+ from langchain.prompts import PromptTemplate
9
+
10
+ from mage_ai.data_cleaner.transformer_actions.constants import ActionType, Axis
11
+ from mage_ai.data_preparation.models.block import Block
12
+ from mage_ai.data_preparation.models.constants import (
13
+ NON_PIPELINE_EXECUTABLE_BLOCK_TYPES,
14
+ BlockLanguage,
15
+ BlockType,
16
+ PipelineType,
17
+ )
18
+ from mage_ai.data_preparation.models.pipeline import Pipeline
19
+ from mage_ai.data_preparation.repo_manager import get_repo_config, get_repo_path
20
+ from mage_ai.data_preparation.templates.template import fetch_template_source
21
+ from mage_ai.io.base import DataSource
22
+ from mage_ai.server.logger import Logger
23
+
24
+ logger = Logger().new_server_logger(__name__)
25
+
26
+ BLOCK_LANGUAGE_TO_FILE_TYPE_VARIABLE = {
27
+ BlockLanguage.MARKDOWN: 'markdown script',
28
+ BlockLanguage.PYTHON: 'python script',
29
+ BlockLanguage.R: 'R script',
30
+ BlockLanguage.SQL: 'sql script',
31
+ BlockLanguage.YAML: 'yaml configuration',
32
+ }
33
+ BLOCK_TYPE_TO_PURPOSE_VARIABLE = {
34
+ BlockType.DATA_LOADER: "load data from a specific data source.",
35
+ BlockType.DATA_EXPORTER: "export data to a specific data source.",
36
+ BlockType.TRANSFORMER: "transform data from one format into different format.",
37
+ }
38
+ DATA_LOADERS_FOLDER = 'data_loaders'
39
+ DATA_EXPORTERS_FOLDER = 'data_exporters'
40
+ PROMPT_FOR_BLOCK = """
41
+ The {file_type} delimited by triple backticks is used to {purpose}.
42
+ Write a documentation based on the {file_type}. {add_on_prompt}
43
+ Ignore the imported libraries and the @test decorator.
44
+ ```{block_content}```"""
45
+ PROMPT_FOR_SUMMARIZE_BLOCK_DOC = """
46
+ A data pipeline reads data from source, transform the data and export data into another source.
47
+ The content delimited by triple backticks contains explains of all components in one data pipeline.
48
+ Write a detailed summarization of the data pipeline based on the content provided.
49
+ ```{block_content}```
50
+ """
51
+ TRANSFORMERS_FOLDER = 'transformers'
52
+ CLASSIFICATION_FUNCTION_NAME = "classify_description"
53
+ TEMPLATE_CLASSIFICATION_FUNCTION = [
54
+ {
55
+ "name": CLASSIFICATION_FUNCTION_NAME,
56
+ "description": "Classify the code description provided into following properties.",
57
+ "parameters": {
58
+ "type": "object",
59
+ "properties": {
60
+ BlockType.__name__: {
61
+ "type": "string",
62
+ "description": "Type of the code block. It either "
63
+ "loads data from a source, export data to a source "
64
+ "or transform data from one format to another.",
65
+ "enum": ["data_exporter", "data_loader", "transformer"]
66
+ },
67
+ BlockLanguage.__name__: {
68
+ "type": "string",
69
+ "description": "Programming language of the code block.",
70
+ "enum": [type.name.lower() for type in BlockLanguage]
71
+ },
72
+ PipelineType.__name__: {
73
+ "type": "string",
74
+ "description": "Type of pipeline description to build.",
75
+ "enum": [type.name.lower() for type in PipelineType]
76
+ },
77
+ ActionType.__name__: {
78
+ "type": "string",
79
+ "description": f"If {BlockType.__name__} is transformer, "
80
+ f"{ActionType.__name__} specifies what kind "
81
+ "of action the code performs.",
82
+ "enum": [type.name.lower() for type in ActionType]
83
+ },
84
+ DataSource.__name__: {
85
+ "type": "string",
86
+ "description": f"If {BlockType.__name__} is data_loader or "
87
+ f"data_exporter, {DataSource.__name__} field specify "
88
+ "where the data loads from or exports to.",
89
+ "enum": [type.name.lower() for type in DataSource]
90
+ },
91
+ },
92
+ "required": [BlockType.__name__, BlockLanguage.__name__, PipelineType.__name__],
93
+ },
94
+ }
95
+ ]
96
+
97
+
98
+ class LLMPipelineWizard:
99
+ def __init__(self):
100
+ repo_config = get_repo_config()
101
+ openai_api_key = repo_config.openai_api_key or os.getenv('OPENAI_API_KEY')
102
+ openai.api_key = openai_api_key
103
+ self.llm = OpenAI(openai_api_key=openai_api_key, temperature=0)
104
+
105
+ async def __async_llm_generate_documentation(
106
+ self,
107
+ block_content: str,
108
+ file_type: str,
109
+ purpose: str,
110
+ template: str,
111
+ add_on_prompt: str = '',
112
+ ):
113
+ prompt_template = PromptTemplate(
114
+ input_variables=[
115
+ 'block_content',
116
+ 'file_type',
117
+ 'purpose',
118
+ 'add_on_prompt'
119
+ ],
120
+ template=template,
121
+ )
122
+ chain = LLMChain(llm=self.llm, prompt=prompt_template)
123
+ return await chain.arun(block_content=block_content,
124
+ file_type=file_type,
125
+ purpose=purpose,
126
+ add_on_prompt=add_on_prompt)
127
+
128
+ def __load_template_params(self, function_args: json):
129
+ block_type = BlockType(function_args[BlockType.__name__].lower())
130
+ block_language = BlockLanguage(
131
+ function_args.get(BlockLanguage.__name__, "python").lower())
132
+ pipeline_type = PipelineType(function_args.get(PipelineType.__name__, "python").lower())
133
+ config = {}
134
+ config['action_type'] = function_args.get(ActionType.__name__, None)
135
+ if config['action_type']:
136
+ if config['action_type'] in [
137
+ ActionType.FILTER,
138
+ ActionType.DROP_DUPLICATE,
139
+ ActionType.REMOVE,
140
+ ActionType.SORT
141
+ ]:
142
+ config['axis'] = Axis.ROW
143
+ else:
144
+ config['axis'] = Axis.COLUMN
145
+ config['data_source'] = function_args.get(DataSource.__name__, None)
146
+ return block_type, block_language, pipeline_type, config
147
+
148
+ async def async_generate_block_with_description(self, block_description: str) -> dict:
149
+ messages = [{"role": "user", "content": block_description}]
150
+ response = await openai.ChatCompletion.acreate(
151
+ model="gpt-3.5-turbo-0613",
152
+ messages=messages,
153
+ functions=TEMPLATE_CLASSIFICATION_FUNCTION,
154
+ function_call={"name": CLASSIFICATION_FUNCTION_NAME}, # explicitly set function call
155
+ )
156
+ response_message = response["choices"][0]["message"]
157
+ if response_message.get("function_call"):
158
+ function_args = json.loads(response_message["function_call"]["arguments"])
159
+ block_type, block_language, pipeline_type, config = self.__load_template_params(
160
+ function_args)
161
+ return dict(
162
+ block_type=block_type,
163
+ configuration=config,
164
+ content=fetch_template_source(
165
+ block_type=block_type,
166
+ config=config,
167
+ language=block_language,
168
+ pipeline_type=pipeline_type,
169
+ ),
170
+ language=block_language,
171
+ )
172
+ else:
173
+ logger.error("Failed to interpret the description as a block template.")
174
+ return None
175
+
176
+ async def async_generate_pipeline_documentation(
177
+ self,
178
+ pipeline_uuid: str,
179
+ project_path: str = None,
180
+ print_block_doc: bool = False,
181
+ ) -> dict:
182
+ pipeline = Pipeline.get(
183
+ uuid=pipeline_uuid,
184
+ repo_path=project_path or get_repo_path(),
185
+ )
186
+ async_block_docs = []
187
+ for block in pipeline.blocks_by_uuid.values():
188
+ if block.type in NON_PIPELINE_EXECUTABLE_BLOCK_TYPES:
189
+ continue
190
+ async_block_docs.append(self.__async_generate_block_documentation(block))
191
+ block_docs = await asyncio.gather(*async_block_docs)
192
+ block_docs_content = '\n'.join(block_docs)
193
+ if print_block_doc:
194
+ print(block_docs_content)
195
+ prompt_template = PromptTemplate(input_variables=['block_content'],
196
+ template=PROMPT_FOR_SUMMARIZE_BLOCK_DOC)
197
+ chain = LLMChain(llm=self.llm, prompt=prompt_template)
198
+ pipeline_doc = chain.run(block_content=block_docs_content)
199
+ return dict(
200
+ block_docs=block_docs,
201
+ pipeline_doc=pipeline_doc,
202
+ )
203
+
204
+ async def async_generate_block_documentation_with_name(
205
+ self,
206
+ pipeline_uuid: str,
207
+ block_uuid: str,
208
+ project_path: str = None,
209
+ ) -> str:
210
+ pipeline = Pipeline.get(uuid=pipeline_uuid,
211
+ repo_path=project_path or get_repo_path())
212
+ return asyncio.run(
213
+ self.__async_generate_block_documentation(pipeline.get_block(block_uuid)))
214
+
215
+ async def __async_generate_block_documentation(
216
+ self,
217
+ block: Block,
218
+ ) -> str:
219
+ add_on_prompt = ""
220
+ if block.type == BlockType.TRANSFORMER:
221
+ add_on_prompt = "Focus on the customized business logic in execute_transformer_action \
222
+ function."
223
+ return await self.__async_llm_generate_documentation(
224
+ block.content,
225
+ BLOCK_LANGUAGE_TO_FILE_TYPE_VARIABLE[block.language],
226
+ BLOCK_TYPE_TO_PURPOSE_VARIABLE.get(block.type, ""),
227
+ PROMPT_FOR_BLOCK,
228
+ add_on_prompt
229
+ )
@@ -56,6 +56,7 @@ BlockPolicy.allow_read([
56
56
  ], condition=lambda policy: policy.has_at_least_viewer_role())
57
57
 
58
58
  BlockPolicy.allow_write([
59
+ 'block_action_object',
59
60
  'color',
60
61
  'config',
61
62
  'configuration',
@@ -25,3 +25,12 @@ BlockTemplatePolicy.allow_read(BlockTemplatePresenter.default_attributes + [], s
25
25
  constants.DETAIL,
26
26
  constants.LIST,
27
27
  ], condition=lambda policy: policy.has_at_least_viewer_role())
28
+
29
+
30
+ BlockTemplatePolicy.allow_query([
31
+ 'show_all',
32
+ ], scopes=[
33
+ OauthScope.CLIENT_PRIVATE,
34
+ ], on_action=[
35
+ constants.LIST,
36
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
@@ -23,9 +23,10 @@ LlmPolicy.allow_actions([
23
23
  OauthScope.CLIENT_PRIVATE,
24
24
  ], condition=lambda policy: policy.has_at_least_editor_role())
25
25
 
26
+
26
27
  LlmPolicy.allow_read([
28
+ 'response',
27
29
  'use_case',
28
- 'request',
29
30
  ], scopes=[
30
31
  OauthScope.CLIENT_PRIVATE,
31
32
  ], on_action=[
@@ -34,8 +35,8 @@ LlmPolicy.allow_read([
34
35
 
35
36
 
36
37
  LlmPolicy.allow_write([
38
+ 'request',
37
39
  'use_case',
38
- 'response',
39
40
  ], scopes=[
40
41
  OauthScope.CLIENT_PRIVATE,
41
42
  ], on_action=[
@@ -0,0 +1,31 @@
1
+ from mage_ai.api.oauth_scope import OauthScope
2
+ from mage_ai.api.operations import constants
3
+ from mage_ai.api.policies.BasePolicy import BasePolicy
4
+ from mage_ai.api.presenters.OauthAccessTokenPresenter import OauthAccessTokenPresenter
5
+
6
+
7
+ class OauthAccessTokenPolicy(BasePolicy):
8
+ pass
9
+
10
+
11
+ OauthAccessTokenPolicy.allow_actions([
12
+ constants.LIST,
13
+ ], scopes=[
14
+ OauthScope.CLIENT_PRIVATE,
15
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
16
+
17
+
18
+ OauthAccessTokenPolicy.allow_read(OauthAccessTokenPresenter.default_attributes, scopes=[
19
+ OauthScope.CLIENT_PRIVATE,
20
+ ], on_action=[
21
+ constants.LIST,
22
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
23
+
24
+
25
+ OauthAccessTokenPolicy.allow_query([
26
+ 'show_all',
27
+ ], scopes=[
28
+ OauthScope.CLIENT_PRIVATE,
29
+ ], on_action=[
30
+ constants.LIST,
31
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
@@ -96,6 +96,7 @@ PipelinePolicy.allow_write([
96
96
  'callbacks',
97
97
  'conditionals',
98
98
  'extensions',
99
+ 'llm',
99
100
  'schedules',
100
101
  ] + PipelinePresenter.default_attributes, scopes=[
101
102
  OauthScope.CLIENT_PRIVATE,
@@ -35,3 +35,12 @@ ProjectPolicy.allow_write([
35
35
  ], on_action=[
36
36
  constants.UPDATE,
37
37
  ], condition=lambda policy: policy.has_at_least_viewer_role())
38
+
39
+ ProjectPolicy.allow_write([
40
+ 'features',
41
+ 'openai_api_key',
42
+ ], scopes=[
43
+ OauthScope.CLIENT_PRIVATE,
44
+ ], on_action=[
45
+ constants.UPDATE,
46
+ ], condition=lambda policy: policy.has_at_least_editor_role())
@@ -0,0 +1,32 @@
1
+ from mage_ai.api.oauth_scope import OauthScope
2
+ from mage_ai.api.operations import constants
3
+ from mage_ai.api.policies.BasePolicy import BasePolicy
4
+ from mage_ai.api.presenters.SearchResultPresenter import SearchResultPresenter
5
+
6
+
7
+ class SearchResultPolicy(BasePolicy):
8
+ pass
9
+
10
+
11
+ SearchResultPolicy.allow_actions([
12
+ constants.CREATE,
13
+ ], scopes=[
14
+ OauthScope.CLIENT_PRIVATE,
15
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
16
+
17
+ SearchResultPolicy.allow_read(SearchResultPresenter.default_attributes, scopes=[
18
+ OauthScope.CLIENT_PRIVATE,
19
+ ], on_action=[
20
+ constants.CREATE,
21
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
22
+
23
+ SearchResultPolicy.allow_write([
24
+ 'pipeline_type',
25
+ 'query',
26
+ 'ratio',
27
+ 'type',
28
+ ], scopes=[
29
+ OauthScope.CLIENT_PRIVATE,
30
+ ], on_action=[
31
+ constants.CREATE,
32
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
@@ -55,3 +55,11 @@ VariablePolicy.allow_write([
55
55
  constants.CREATE,
56
56
  constants.UPDATE,
57
57
  ], condition=lambda policy: policy.has_at_least_editor_role_and_notebook_edit_access())
58
+
59
+ VariablePolicy.allow_query([
60
+ 'global_only',
61
+ ], scopes=[
62
+ OauthScope.CLIENT_PRIVATE,
63
+ ], on_action=[
64
+ constants.LIST,
65
+ ], condition=lambda policy: policy.has_at_least_viewer_role())
@@ -9,4 +9,5 @@ class BlockTemplatePresenter(BasePresenter):
9
9
  'language',
10
10
  'name',
11
11
  'path',
12
+ 'template_variables',
12
13
  ]
@@ -0,0 +1,9 @@
1
+ from mage_ai.api.presenters.BasePresenter import BasePresenter
2
+
3
+
4
+ class OauthAccessTokenPresenter(BasePresenter):
5
+ default_attributes = [
6
+ 'expires',
7
+ 'token',
8
+ 'user_id',
9
+ ]
@@ -3,9 +3,11 @@ from mage_ai.api.presenters.BasePresenter import BasePresenter
3
3
 
4
4
  class ProjectPresenter(BasePresenter):
5
5
  default_attributes = [
6
+ 'features',
6
7
  'help_improve_mage',
7
8
  'latest_version',
8
9
  'name',
10
+ 'openai_api_key',
9
11
  'project_uuid',
10
12
  'version',
11
13
  ]
@@ -0,0 +1,73 @@
1
+ from mage_ai.api.operations import constants
2
+ from mage_ai.api.presenters.BasePresenter import BasePresenter
3
+ from mage_ai.cache.block_action_object.constants import (
4
+ OBJECT_TYPE_BLOCK_FILE,
5
+ OBJECT_TYPE_CUSTOM_BLOCK_TEMPLATE,
6
+ OBJECT_TYPE_MAGE_TEMPLATE,
7
+ )
8
+ from mage_ai.services.search.constants import SEARCH_TYPE_BLOCK_ACTION_OBJECTS
9
+ from mage_ai.shared.hash import merge_dict
10
+ from mage_ai.shared.strings import remove_extension_from_filename
11
+
12
+
13
+ class SearchResultPresenter(BasePresenter):
14
+ default_attributes = [
15
+ 'results',
16
+ 'type',
17
+ 'uuid',
18
+ ]
19
+
20
+ def present(self, **kwargs):
21
+ display_format = kwargs['format']
22
+
23
+ if constants.CREATE != display_format:
24
+ return self.model
25
+
26
+ results = self.model.get('results', [])
27
+ search_type = self.model.get('type')
28
+ results_transformed = []
29
+
30
+ if SEARCH_TYPE_BLOCK_ACTION_OBJECTS == search_type:
31
+ for result in results:
32
+ block_action_object = result.get('block_action_object')
33
+ object_type = result.get('object_type')
34
+ uuid = result.get('uuid')
35
+
36
+ block_type = None
37
+ description = block_action_object.get('description')
38
+ language = block_action_object.get('language')
39
+ title = None
40
+
41
+ if OBJECT_TYPE_BLOCK_FILE == object_type:
42
+ block_type = block_action_object.get('type')
43
+ u = block_action_object.get('uuid')
44
+ title = ' '.join(list(filter(lambda x: x, [
45
+ remove_extension_from_filename(u).replace('_', ' ') if u else u,
46
+ ])))
47
+ elif OBJECT_TYPE_CUSTOM_BLOCK_TEMPLATE == object_type:
48
+ block_type = block_action_object.get('block_type')
49
+ template_name = block_action_object.get('name')
50
+ template_uuid = block_action_object.get('template_uuid')
51
+ u = template_name or template_uuid
52
+ title = ' '.join(list(filter(lambda x: x, [
53
+ remove_extension_from_filename(u).replace('_', ' ') if u else u,
54
+ ])))
55
+ elif OBJECT_TYPE_MAGE_TEMPLATE == object_type:
56
+ block_type = block_action_object.get('block_type')
57
+ u = block_action_object.get('name')
58
+ title = ' '.join(list(filter(lambda x: x, [
59
+ remove_extension_from_filename(u).replace('_', ' ') if u else u,
60
+ ])))
61
+
62
+ results_transformed.append(dict(
63
+ block_type=block_type,
64
+ description=description,
65
+ language=language,
66
+ object_type=object_type,
67
+ title=title,
68
+ uuid=uuid,
69
+ ))
70
+
71
+ return merge_dict(self.model, dict(
72
+ results=results_transformed,
73
+ ))
@@ -3,6 +3,12 @@ import urllib.parse
3
3
  from mage_ai.api.errors import ApiError
4
4
  from mage_ai.api.resources.GenericResource import GenericResource
5
5
  from mage_ai.cache.block import BlockCache
6
+ from mage_ai.cache.block_action_object import BlockActionObjectCache
7
+ from mage_ai.cache.block_action_object.constants import (
8
+ OBJECT_TYPE_BLOCK_FILE,
9
+ OBJECT_TYPE_CUSTOM_BLOCK_TEMPLATE,
10
+ OBJECT_TYPE_MAGE_TEMPLATE,
11
+ )
6
12
  from mage_ai.data_preparation.models.block import Block
7
13
  from mage_ai.data_preparation.models.block.dbt import DBTBlock
8
14
  from mage_ai.data_preparation.models.block.utils import clean_name
@@ -29,6 +35,31 @@ class BlockResource(GenericResource):
29
35
  content = payload.get('content')
30
36
  language = payload.get('language')
31
37
  name = payload.get('name')
38
+ block_name = name or payload.get('uuid')
39
+
40
+ payload_config = payload.get('config') or {}
41
+
42
+ block_action_object = payload.get('block_action_object')
43
+ if block_action_object:
44
+ object_type = block_action_object.get('object_type')
45
+
46
+ cache_block_action_object = await BlockActionObjectCache.initialize_cache()
47
+ mapping = cache_block_action_object.load_all_data()
48
+ objects_mapping = mapping.get(object_type)
49
+ object_uuid = block_action_object.get('uuid')
50
+ object_from_cache = objects_mapping.get(object_uuid)
51
+
52
+ if OBJECT_TYPE_BLOCK_FILE == object_type:
53
+ block_name = object_from_cache.get('uuid')
54
+ block_type = object_from_cache.get('type')
55
+ language = object_from_cache.get('language')
56
+ elif OBJECT_TYPE_CUSTOM_BLOCK_TEMPLATE == object_type:
57
+ payload_config['custom_template_uuid'] = object_from_cache.get('template_uuid')
58
+ elif OBJECT_TYPE_MAGE_TEMPLATE == object_type:
59
+ block_type = object_from_cache.get('block_type')
60
+ language = object_from_cache.get('language')
61
+ payload_config['template_path'] = object_from_cache.get('path')
62
+ payload_config['template_variables'] = object_from_cache.get('template_variables')
32
63
 
33
64
  """
34
65
  New DBT models include "content" in its block create payload,
@@ -47,9 +78,6 @@ class BlockResource(GenericResource):
47
78
  Please choose a different model name, or add a DBT model by \
48
79
  selecting single model from file.')
49
80
 
50
- payload_config = payload.get('config')
51
-
52
- block_name = name or payload.get('uuid')
53
81
  block_attributes = dict(
54
82
  color=payload.get('color'),
55
83
  config=payload_config,
@@ -104,6 +132,9 @@ class BlockResource(GenericResource):
104
132
  cache = await BlockCache.initialize_cache()
105
133
  cache.add_pipeline(block, pipeline)
106
134
 
135
+ cache_block_action_object = await BlockActionObjectCache.initialize_cache()
136
+ cache_block_action_object.update_block(block)
137
+
107
138
  return self(block, user, **kwargs)
108
139
 
109
140
  @classmethod
@@ -189,10 +220,16 @@ class BlockResource(GenericResource):
189
220
  if pipeline:
190
221
  cache.remove_pipeline(self.model, pipeline.uuid)
191
222
 
223
+ cache_block_action_object = await BlockActionObjectCache.initialize_cache()
224
+ cache_block_action_object.update_block(self.model, remove=True)
225
+
192
226
  return self.model.delete(force=force)
193
227
 
194
228
  @safe_db_query
195
- def update(self, payload, **kwargs):
229
+ async def update(self, payload, **kwargs):
230
+ cache_block_action_object = await BlockActionObjectCache.initialize_cache()
231
+ cache_block_action_object.update_block(self.model, remove=True)
232
+
196
233
  query = kwargs.get('query', {})
197
234
  update_state = query.get('update_state', [False])
198
235
  if update_state:
@@ -202,6 +239,8 @@ class BlockResource(GenericResource):
202
239
  update_state=update_state,
203
240
  )
204
241
 
242
+ cache_block_action_object.update_block(self.model)
243
+
205
244
  async def get_pipelines_from_cache(self):
206
245
  await BlockCache.initialize_cache()
207
246
 
@@ -1,6 +1,10 @@
1
1
  from mage_ai.api.errors import ApiError
2
2
  from mage_ai.api.resources.GenericResource import GenericResource
3
- from mage_ai.data_preparation.templates.constants import TEMPLATES, TEMPLATES_BY_UUID
3
+ from mage_ai.data_preparation.templates.constants import (
4
+ TEMPLATES,
5
+ TEMPLATES_BY_UUID,
6
+ TEMPLATES_ONLY_FOR_V2,
7
+ )
4
8
  from mage_ai.orchestration.db import safe_db_query
5
9
 
6
10
 
@@ -8,8 +12,17 @@ class BlockTemplateResource(GenericResource):
8
12
  @classmethod
9
13
  @safe_db_query
10
14
  def collection(self, query, meta, user, **kwargs):
15
+ show_all = query.get('show_all', [None])
16
+ if show_all:
17
+ show_all = show_all[0]
18
+
19
+ arr = TEMPLATES.copy()
20
+
21
+ if show_all:
22
+ arr += TEMPLATES_ONLY_FOR_V2.copy()
23
+
11
24
  return self.build_result_set(
12
- TEMPLATES,
25
+ arr,
13
26
  user,
14
27
  **kwargs,
15
28
  )