mage-ai 0.8.97__tar.gz → 0.8.99__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.
- {mage-ai-0.8.97/mage_ai.egg-info → mage-ai-0.8.99}/PKG-INFO +1 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/AutocompleteItemPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BasePolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BlockTemplatePolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/ClusterPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/DataProviderPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/EventRulePolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/ExtensionOptionPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/FileVersionPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/GitBranchPolicy.py +9 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/KernelPolicy.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/LogPolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/OauthPolicy.py +15 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/OutputPolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/PipelinePolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/PipelineRunPolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/PipelineSchedulePolicy.py +2 -2
- mage-ai-0.8.99/mage_ai/api/policies/PullRequestPolicy.py +64 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/SessionPolicy.py +4 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/VariablePolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/WidgetPolicy.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/WorkspacePolicy.py +3 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/PipelinePresenter.py +1 -0
- mage-ai-0.8.99/mage_ai/api/presenters/PullRequestPresenter.py +16 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/StatusPresenter.py +2 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/SyncPresenter.py +1 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/WorkspacePresenter.py +2 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/GitBranchResource.py +81 -26
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/OauthResource.py +31 -4
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/PipelineResource.py +8 -1
- mage-ai-0.8.99/mage_ai/api/resources/PullRequestResource.py +87 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/RoleResource.py +6 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/SecretResource.py +2 -5
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/SessionResource.py +18 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/StatusResource.py +7 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/UserResource.py +11 -16
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/WorkspaceResource.py +83 -53
- mage-ai-0.8.99/mage_ai/authentication/oauth/active_directory.py +17 -0
- mage-ai-0.8.99/mage_ai/authentication/oauth/constants.py +12 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/oauth/utils.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/oauth2.py +9 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cli/main.py +94 -51
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/kubernetes/workload_manager.py +141 -45
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/git/__init__.py +86 -16
- mage-ai-0.8.99/mage_ai/data_preparation/git/api.py +175 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/dbt/utils/__init__.py +49 -14
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/__init__.py +3 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/pipeline.py +4 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/pipelines/integration_pipeline.py +7 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/preferences.py +4 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/repo_manager.py +41 -10
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/secrets.py +5 -6
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/sync/__init__.py +2 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/sync/git_sync.py +2 -5
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/utils.py +2 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/models/oauth.py +22 -4
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/pipeline_scheduler.py +19 -8
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/queue/process_queue.py +15 -12
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/clusters.py +21 -11
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/constants.py +1 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/404.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/404.html.html +2 -2
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/WRxCTOtmZhTqQws_7OJZD/_buildManifest.js +1 -0
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/1286-993725c925c56a98.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/1286-b90bd4b7f8abfc3a.js +1 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/1424-f475cae42f8a7fca.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/1424-90c0f66ba2f86b88.js +1 -1
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/3883-c95563b9f60ae526.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/6694-c8f2a68074420906.js +1 -0
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/9350-1ff50f1d7b9ee754.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/9350-5191c83a8d0cf454.js +1 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/_app-3527178abd99bc87.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/_app-171846e16d26855a.js +1 -1
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/files-e4e778f8f5e1bf2e.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/settings-c788c1b127999825.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/[user]-b4650224a19e8fe6.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/new-931eb719e3fae29c.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users-d3724bde0b186dd9.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage-af11f9cf94024ac0.js +1 -0
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-3ec5eb9562e4bff4.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-34326db259f922d1.js +1 -1
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-503ecb7a72257b79.js +1 -0
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs/[run]-7667080098731e30.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs/[run]-2994b8ab7862c07b.js +1 -1
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs-7b31b851e2544b42.js +1 -0
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-e18058e13882b20d.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-4445619d4eabe065.js +1 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers-6854c10d5589d394.js → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers-b7db0b682fadb840.js +1 -1
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/account/profile-ee0931af3abb55b3.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/preferences-f8a59d718751be9a.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/sync-data-90f8830890036eb2.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/users-9f82673fc438ea83.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/sign-in-a1871b8a537d823c.js +1 -0
- mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/chunks/pages/version-control-48859b4e9c846212.js +1 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/files.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/index.html +2 -2
- mage-ai-0.8.99/mage_ai/server/frontend_dist/manage/settings.html +24 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/manage/users/[user].html +2 -2
- mage-ai-0.8.99/mage_ai/server/frontend_dist/manage/users/new.html +24 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/manage/users.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/manage.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipeline-runs.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills/[...slug].html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/edit.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/logs.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runs.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runtime.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs/[run].html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/settings.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/syncs.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers/[...slug].html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines/[pipeline].html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/pipelines.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/settings/account/profile.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/settings/workspace/preferences.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/settings/workspace/sync-data.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/settings/workspace/users.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/settings.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/sign-in.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/terminal.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/test.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/triggers.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/version-control.html +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/scheduler_manager.py +7 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/server.py +37 -3
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/terminal_server.py +2 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/websocket_server.py +6 -2
- mage-ai-0.8.99/mage_ai/services/newrelic/__init__.py +21 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/settings/__init__.py +32 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/hash.py +2 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/test_utils.py +29 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/models/test_pipeline.py +5 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99/mage_ai.egg-info}/PKG-INFO +1 -1
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai.egg-info/SOURCES.txt +35 -26
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai.egg-info/requires.txt +7 -2
- {mage-ai-0.8.97 → mage-ai-0.8.99}/requirements.txt +3 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/setup.py +6 -3
- mage-ai-0.8.97/mage_ai/authentication/oauth/constants.py +0 -3
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/YLZRSrQ0aqtl-GGePfsMB/_buildManifest.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/3077-d58f18ed770e5137.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/3714-b676173cd4d8d86c.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/files-82b5409dac9564f4.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users/[user]-bb6aaa23e92a5add.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage/users-c91ee702a4cd7a6f.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage-7961010cb0fb9abd.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-7b8ce89f0d717465.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs-5bd17a8f3f3d57ef.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/account/profile-7d75e42d5f4936bb.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/preferences-8220c1200472bf70.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/sync-data-b602fa9b6ffabd12.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/users-3f9d5800f268a263.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/sign-in-2925c2c1b0c5559a.js +0 -1
- mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/chunks/pages/version-control-5ffc663cfb0ec81e.js +0 -1
- mage-ai-0.8.97/mage_ai/utils/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/LICENSE +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/MANIFEST.in +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/README.md +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/api_context.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/logging.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/middleware.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/monitors/BaseMonitor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/monitors/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/oauth_scope.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/operations/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/operations/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/operations/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BackfillPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BlockOutputPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BlockPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/BlockRunPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/FileContentPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/FilePolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/FolderPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/GitFilePolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/IntegrationDestinationPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/IntegrationSourcePolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/IntegrationSourceStreamPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/MonitorStatPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/ProjectPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/RolePolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/SchedulerPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/SecretPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/StatusPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/SyncPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/UserPolicy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/policies/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/AutocompleteItemPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BackfillPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BasePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BlockOutputPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BlockPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BlockRunPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/BlockTemplatePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/ClusterPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/DataProviderPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/EventRulePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/ExtensionOptionPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/FileContentPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/FilePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/FileVersionPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/FolderPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/GitBranchPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/GitFilePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/IntegrationDestinationPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/IntegrationSourcePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/IntegrationSourceStreamPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/KernelPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/LogPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/MonitorStatPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/OauthPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/OutputPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/PipelineRunPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/PipelineSchedulePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/ProjectPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/RolePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/SchedulerPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/SecretPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/SessionPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/UserPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/VariablePresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/WidgetPresenter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/mixins/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/presenters/mixins/users.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/AutocompleteItemResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BackfillResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BaseResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BlockOutputResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BlockResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BlockRunResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/BlockTemplateResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/ClusterResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/DataProviderResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/DatabaseResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/EventRuleResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/ExtensionOptionResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/FileContentResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/FileResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/FileVersionResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/FolderResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/GenericResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/GitFileResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/IntegrationDestinationResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/IntegrationSourceResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/IntegrationSourceStreamResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/KernelResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/LogResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/MonitorStatResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/OutputResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/PipelineRunResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/PipelineScheduleResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/ProjectResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/Resource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/SchedulerResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/SyncResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/VariableResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/WidgetResource.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/mixins/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/shared/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/shared/collections.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/resources/shared/collective_loaders.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/result_set.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/api/views.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/ldap.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/oauth/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/authentication/passwords.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/autocomplete/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/autocomplete/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cli/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cli/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/aws/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/aws/ecs_task_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/aws/emr_cluster_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/cluster_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/gcp/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/gcp/cloud_run_service_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/cluster_manager/kubernetes/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/analysis/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/analysis/calculator.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/analysis/charts.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/analysis/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/clean_column_names.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/fix_syntax_errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/impute_values.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/reformat_values.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/remove_collinear_columns.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_high_empty_rate.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_single_value.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/remove_duplicate_rows.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/cleaning_rules/remove_outliers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/column_types/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/column_types/column_type_detector.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/column_types/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/data_cleaner.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/estimators/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/estimators/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/estimators/encoders.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/estimators/outlier_removal.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/pipelines/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/pipelines/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/shared/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/shared/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/statistics/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/statistics/calculator.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/action_code.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/column.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/custom_action.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/dependency_resolution.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/helpers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/row.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/shared.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/spark/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/spark/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/spark/transformers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/addition.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/constant.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/date_trunc.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/difference.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/distance_between.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/divide.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/formatted_date.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/if_else.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/multiply.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/string_replace.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/string_split.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/udf/substring.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_cleaner/transformer_actions/variable_replacer.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/destinations/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/destinations/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/logger/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/logger/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/sources/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/sources/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/utils/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/utils/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/utils/parsers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_integrations/utils/scheduler.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/decorators.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/azure_container_instance_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/block_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/ecs_block_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/executor_factory.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/gcp_cloud_run_block_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/k8s_block_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/k8s_pipeline_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/pipeline_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/pyspark_block_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/pyspark_pipeline_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/executors/streaming_pipeline_executor.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/gcs_logger_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/logger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/logger_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/logger_manager_factory.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/logging/s3_logger_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/dbt/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/extension/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/extension/block.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/extension/great_expectations.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/extension/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/integration/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/r/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/r/templates/data_exporter.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/r/templates/data_loader.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/r/templates/transformer.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/bigquery.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/clickhouse.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/druid.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/mssql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/mysql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/postgres.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/redshift.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/snowflake.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/spark.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/trino.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/utils/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/sql/utils/shared.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/block/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/file.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/pipelines/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/pipelines/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/project.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/triggers/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/variable.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/widget/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/widget/charts.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/widget/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/models/widget/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/retry.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/stream.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/shared/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/storage/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/storage/base_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/storage/local_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/storage/s3_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/storage/utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/sync/base_sync.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/callbacks/base.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/callbacks/default.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/callbacks/orchestration/triggers/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/conditionals/base.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/custom/python/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/azure_blob_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/bigquery.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/deltalake/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/deltalake/azure_blob_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/deltalake/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/deltalake/gcs.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/deltalake/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/file.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/google_cloud_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/mongodb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/mysql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/orchestration/triggers/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/postgres.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/pyspark/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/pyspark/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/r/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/redshift.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/snowflake.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/dummy.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/kafka.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/kinesis.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/mongodb.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/opensearch.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_exporters/streaming/s3.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/api.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/azure_blob_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/bigquery.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/deltalake/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/deltalake/azure_blob_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/deltalake/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/deltalake/gcs.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/deltalake/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/druid.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/file.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/google_cloud_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/mongodb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/mysql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/oracledb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/orchestration/triggers/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/postgres.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/pyspark/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/pyspark/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/r/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/redshift.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/snowflake.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/amazon_sqs.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/azure_event_hub.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/google_cloud_pubsub.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/kafka.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/kinesis.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/data_loaders/streaming/rabbitmq.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/extensions/great_expectations/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/main/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/main/metadata.yaml +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/main/projects → mage-ai-0.8.99/mage_ai/data_preparation/templates/pipeline}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/pipeline/metadata.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/pipeline_execution/emr_bootstrap.sh +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/pipeline_execution/spark_script.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/.gitignore +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/pipeline → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/charts}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/charts → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/custom}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/custom → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/data_exporters}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/data_exporters/export_titanic_clean.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/data_exporters → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/data_loaders}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/data_loaders/load_titanic.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/dbt/profiles.yml +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/data_loaders → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/extensions}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/io_config.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/metadata.yaml +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/extensions → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/pipelines}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/pipelines → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline/metadata.yaml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/requirements.txt +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/scratchpads}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/scratchpads → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/transformers}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/repo/transformers/fill_in_missing_values.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo/transformers → mage-ai-0.8.99/mage_ai/data_preparation/templates/repo/utils}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/bigquery.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/default.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/mysql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/postgres.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/redshift.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/sensors/snowflake.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/template.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/testable.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/data_warehouse_transformer.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/default.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/default_pyspark.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/default_streaming.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/r/default.r +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/suggestion_fmt.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/action.jinja +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/average.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/clean_column_name.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count_distinct.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/diff.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/first.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/fix_syntax_errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/impute.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/last.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/max.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/median.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/min.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/normalize.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/reformat.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove_outliers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/select.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_down.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_up.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/standardize.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/sum.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/drop_duplicate.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/filter.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/remove.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/sort.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/templates/repo → mage-ai-0.8.99/mage_ai/data_preparation}/utils/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/utils → mage-ai-0.8.99/mage_ai/data_preparation/utils/block}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/utils/block/convert_content.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/data_preparation/variable_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/data_preparation/utils/block → mage-ai-0.8.99/mage_ai/errors}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/errors/base.py +0 -0
- {mage-ai-0.8.97/mage_ai/errors → mage-ai-0.8.99/mage_ai/extensions}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/extensions/constants.py +0 -0
- {mage-ai-0.8.97/mage_ai/extensions → mage-ai-0.8.99/mage_ai/extensions/dbt}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/extensions/dbt/constants.py +0 -0
- {mage-ai-0.8.97/mage_ai/extensions/dbt → mage-ai-0.8.99/mage_ai/extensions/great_expectations}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/extensions/great_expectations/constants.py +0 -0
- {mage-ai-0.8.97/mage_ai/extensions/great_expectations → mage-ai-0.8.99/mage_ai/io}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/azure_blob_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/bigquery.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/clickhouse.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/druid.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/export_utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/file.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/google_cloud_storage.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/io_config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/mongodb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/mssql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/mysql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/oracledb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/postgres.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/redshift.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/snowflake.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/spark.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/sql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/trino.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/io/utils.py +0 -0
- {mage-ai-0.8.97/mage_ai/io → mage-ai-0.8.99/mage_ai/orchestration}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/airflow.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration → mage-ai-0.8.99/mage_ai/orchestration/backfills}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/backfills/service.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/alembic.ini +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/database_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/README.md +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/env.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/script.py.mako +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/053ee2c10d85_add_completed_at.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/067326f43bc3_add_variables_to_pipelinerun.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/1a737bdee53b_add_preferences_to_user.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/1bfc6d904929_add_indices_to_schedule_models.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/1d8e65aeefdd_add_settings_to_pipeline_schedule.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/1f9353eddbc6_add_secrets_table.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/21e31d66ccea_add_pipeline_uuid_index_to_pipeline_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/2266370f589b_add_indexes_to_pipeline_run.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/26305e46df52_create_backfills_table.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/3fafd217efa7_add_event_matcher_model.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/52ab80005742_add_variables_to_pipeline_schedule.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/5cd59ec4cf1d_add_passed_sla_to_pipeline_run.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/643b6e65e814_add_unique_indexes_on_authentication_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/66e67039b8a2_add_executor_type_to_pipeline_run.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/6aecc9bc451c_update_schedule_type_enum.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/7ac6fed06918_add_token_column_to_pipeline_schedule_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/83a74eca6ea1_create_user_roles_roles_and_permissions.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/847ea6602d6f_add_upstream_failed_to_block_run_status.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/84de4cdd6126_add_sla_to_pipeline_schedule.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/8971d4cd5b39_add_event_variables_and_metadata_to_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/97ff9f55a3c0_create_users_oauth2_applications_and_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/b01be687e537_add_started_at_to_block_run.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/c07a23ff782b_add_initial_tables.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/dfe49d040487_add_condition_failed_status_to_block_.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/e7beb59b44f9_add_repo_path_to_pipeline_schedule.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/migrations/versions/ec5df57a1c60_add_metrics_to_block_runs.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/backfills → mage-ai-0.8.99/mage_ai/orchestration/db/models}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/models/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/models/schedules.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/models/secrets.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/db/process.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/execution_process_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/job_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/db/models → mage-ai-0.8.99/mage_ai/orchestration/metrics}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/metrics/pipeline_run.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/metrics → mage-ai-0.8.99/mage_ai/orchestration/monitor}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/monitor/monitor_stats.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/monitor → mage-ai-0.8.99/mage_ai/orchestration/notification}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/notification/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/notification/sender.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/notification → mage-ai-0.8.99/mage_ai/orchestration/queue}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/queue/celery_queue.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/queue/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/queue/queue.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/queue/queue_factory.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/run_status_checker.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/queue → mage-ai-0.8.99/mage_ai/orchestration/triggers}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/triggers/api.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/triggers/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/triggers/event_trigger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/triggers/loop_time_trigger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/triggers/time_trigger.py +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/triggers → mage-ai-0.8.99/mage_ai/orchestration/utils}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/orchestration/utils/resources.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/sample_datasets/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/sample_datasets/product_purchases.csv +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/sample_datasets/salary_survey.csv +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/sample_datasets/titanic_survival.csv +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/sample_datasets/user_emails.csv +0 -0
- {mage-ai-0.8.97/mage_ai/orchestration/utils → mage-ai-0.8.99/mage_ai/server}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/active_kernel.py +0 -0
- {mage-ai-0.8.97/mage_ai/server → mage-ai-0.8.99/mage_ai/server/api}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/blocks.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/downloads.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/errors.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/events.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/integration_sources.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/projects.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/triggers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/api/v1.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/app.py +0 -0
- {mage-ai-0.8.97/mage_ai/server/api → mage-ai-0.8.99/mage_ai/server/client}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/client/mage.py +0 -0
- {mage-ai-0.8.97/mage_ai/server/client → mage-ai-0.8.99/mage_ai/server/data}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/data/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/data/models.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/docs_server.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/execution_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/YLZRSrQ0aqtl-GGePfsMB → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/WRxCTOtmZhTqQws_7OJZD}/_middlewareManifest.js +0 -0
- {mage-ai-0.8.97/mage_ai/server/frontend_dist/_next/static/YLZRSrQ0aqtl-GGePfsMB → mage-ai-0.8.99/mage_ai/server/frontend_dist/_next/static/WRxCTOtmZhTqQws_7OJZD}/_ssgManifest.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/1005-d364db1eba919edd.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/1150.1378afaa474df64a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/1240.0819f45820d22263.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/1450.d383f64c169d4278.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/1774-aa51ef1da7217ff9.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2481.0454a0e25dc7e027.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2508.724531e7f9cf5f36.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2545.8371b39c898ae92b.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/261.0a24b4ece1d29aa1.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/266.e301071d22592682.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2714-1e79e9f2e998b544.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2786-7af4c9bf2a4cc59f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/29107295-989a0767a635d9d5.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/2920.fb0b924e801abbd0.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/3453.992f4b1667e9882c.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/3467.38cd0654ba6f788f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/3752-5fd670b1a1c2dd6e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/3835.df296b4e4078e985.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/3898.880191695bb05845.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4042.5e16d36209052351.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4092.536ee541241f4538.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4127-3b7aa3d094304e35.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4259-b71c17f69499f7bd.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4388.04098706f32e69e7.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/440.3ab77942f659ea0c.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4407-5d6ce62e21d9364e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4450.79f14f763d55c63e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4454.13a2404adecaa39e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4495-4f0340aa82e0c623.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4776.753ad29fa0a29a4a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4804-01a10103ebe26ca8.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4822-aea254026405c098.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/4883.a5bb0edbf8f3cc8f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5008.29c2662ecc2b04c7.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5104.1edcf4437c471dd4.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5164.857023e800905b6f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/547-7c60d654aca692e2.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/551-506f3e09bb4033e2.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5729.0f2748e9e6dab951.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5824.628653557e904674.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5872-1767c45ee6690ae5.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/5896-10a676bcc86978cc.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6042.c59010de9e699437.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6115.0c85e507543394ea.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6116.871a682ddf535aca.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6434.10380ee0968636ba.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6443.7b6d2b4e51018184.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6507.d3a17777d2c294e6.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/6958.8f39c585d36737a7.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7011-81dd8269c4806d26.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7107-b89772bb2a2669df.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/72fdc299.2d5ec188af5d0049.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/739.3d24945544b37e52.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7400-9031de945bce2a47.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7607-324c3a1e4e7d0628.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7722-a74e6f977993e75e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7815-6eb7d2c7b62e0b18.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/792.010ca00d79b2112f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7947.77be4bec4d47774e.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/7951.fee8b6c27c9ef777.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8018.968bf87c390e3312.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8097.b0345f30a7390c1d.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8256.290ceb269b1ffe26.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/826.75268ee34f93393a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8277.5003e1d94bb85156.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8312-e3c26b4fc7afd6df.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/844-1e171f361e63b36d.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8735-ade9aa7568d373ef.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8762.dff300f86bef8573.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8789-4f858e520d46973b.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8807.a68c69c8fe0a8c01.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8849.db0d50b4d84b09a6.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8901.21d26d5a1ee473fe.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/8920.5700e380a2999098.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9258.6c6ef544c701a011.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9307.d4baf7aebbcef1f0.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9361.a0820e3069f5ef74.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9363.6b811b4c86277e07.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9437.a3c32f45cf9ef69b.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9566.f8bd24768ed14ecb.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9633.40e5056ca1e2b22a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9785.5ff26cb26d84d6a1.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9832-f97919376d52e3bf.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9855.c4394a68322be9f8.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/9927.e82a3e1e21990d77.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/bd1a647f.fe5d87096be24a62.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/framework-7c365855dab1bf41.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/main-bb0dd5375146d7fd.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/_error-235304e5badb19eb.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/index-b6cd94a079629572.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipeline-runs-5c96190c27f65d97.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills-c46015c4f25b5234.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/logs-a959e5a6c11d93fe.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runs-d94ca17a9fcbd017.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runtime-972502b4d77b7407.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors-092f364100995ba6.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/settings-55748e7fcf738d91.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/syncs-22ce754d4343025a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]-ca9457e1a6bced4b.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines-b7934a8ee5b45736.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings-d594a66a568306da.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/terminal-0d2260ad08dfe44a.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/test-b24d77dc84843924.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/pages/triggers-d9d92753838d5c60.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/polyfills-5cd94c89d3acac5f.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/chunks/webpack-8f51011a10b384a1.js +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/_next/static/css/d1e8e64d0b07af2f.css +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/favicon.ico +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Bold.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Light.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Medium.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Regular.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Retina.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-SemiBold.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/LICENSE.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Black.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Bold.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Italic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Light.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Medium.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Regular.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Thin.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/LICENSE.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/README.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-Italic-VariableFont_wght.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-VariableFont_wght.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Bold.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-BoldItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLight.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLightItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Italic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Light.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-LightItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Medium.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-MediumItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBold.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBoldItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Thin.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ThinItalic.ttf +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/backfill.jpg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/banner-shape-purple-peach.jpg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/dashboard-api-key.webp +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/extensions/dbt/logo.png +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/extensions/great_expectations/logo.png +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/extra.jpg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/monitor.jpg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/run B.jpg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/images/sessions/abstract.png +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/frontend_dist/vercel.svg +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/kernel_output_parser.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/kernels.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/logger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/subscriber.py +0 -0
- {mage-ai-0.8.97/mage_ai/server/data → mage-ai-0.8.99/mage_ai/server/utils}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/utils/frontend_renderer.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/server/utils/output_display.py +0 -0
- {mage-ai-0.8.97/mage_ai/server/utils → mage-ai-0.8.99/mage_ai/services}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/client.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/exceptions.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/airbyte/server.py +0 -0
- {mage-ai-0.8.97/mage_ai/services → mage-ai-0.8.99/mage_ai/services/aws}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws → mage-ai-0.8.99/mage_ai/services/aws/ecs}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/ecs/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/ecs/ecs.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws/ecs → mage-ai-0.8.99/mage_ai/services/aws/emr}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/emr/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/emr/emr.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/emr/emr_basics.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/emr/launcher.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/emr/resource_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws/emr → mage-ai-0.8.99/mage_ai/services/aws/events}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/events/events.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws/events → mage-ai-0.8.99/mage_ai/services/aws/s3}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/s3/s3.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws/s3 → mage-ai-0.8.99/mage_ai/services/aws/secrets_manager}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/aws/secrets_manager/secrets_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/aws/secrets_manager → mage-ai-0.8.99/mage_ai/services/azure}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/azure/constants.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/azure → mage-ai-0.8.99/mage_ai/services/azure/container_instance}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/azure/container_instance/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/azure/container_instance/container_instance.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/datadog/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/azure/container_instance → mage-ai-0.8.99/mage_ai/services/dbt}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/dbt/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/dbt/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/dbt/dbt.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/dbt → mage-ai-0.8.99/mage_ai/services/email}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/email/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/email/email.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/email → mage-ai-0.8.99/mage_ai/services/gcp}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/gcp → mage-ai-0.8.99/mage_ai/services/gcp/cloud_run}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/gcp/cloud_run/cloud_run.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/gcp/cloud_run/config.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/gcp/cloud_run → mage-ai-0.8.99/mage_ai/services/google_chat}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/google_chat/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/google_chat/google_chat.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/google_chat → mage-ai-0.8.99/mage_ai/services/hightouch}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/hightouch/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/hightouch/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/hightouch/hightouch.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/hightouch → mage-ai-0.8.99/mage_ai/services/k8s}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/k8s/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/k8s/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/k8s/job_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/k8s → mage-ai-0.8.99/mage_ai/services/metaplane}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/metaplane/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/metaplane/metaplane.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/metaplane → mage-ai-0.8.99/mage_ai/services/opsgenie}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/opsgenie/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/opsgenie/opsgenie.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/opsgenie → mage-ai-0.8.99/mage_ai/services/slack}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/slack/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/slack/slack.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/slack → mage-ai-0.8.99/mage_ai/services/spark}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/spark/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/spark/spark.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/spark → mage-ai-0.8.99/mage_ai/services/stitch}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/stitch/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/stitch/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/stitch/stitch.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/stitch → mage-ai-0.8.99/mage_ai/services/teams}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/teams/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/teams/teams.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/teams → mage-ai-0.8.99/mage_ai/services/tracking}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/services/tracking/metrics.py +0 -0
- {mage-ai-0.8.97/mage_ai/services/tracking → mage-ai-0.8.99/mage_ai/shared}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/array.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/code.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/conversions.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/custom_types.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/dates.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/environments.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/http_client.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/io.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/logger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/multi.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/parsers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/retry.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/security.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/strings.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/urls.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/shared/utils.py +0 -0
- {mage-ai-0.8.97/mage_ai/shared → mage-ai-0.8.99/mage_ai/streaming}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/constants.py +0 -0
- {mage-ai-0.8.97/mage_ai/streaming → mage-ai-0.8.99/mage_ai/streaming/sinks}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/amazon_s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/dummy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/kafka.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/kinesis.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/mongodb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/opensearch.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sinks/sink_factory.py +0 -0
- {mage-ai-0.8.97/mage_ai/streaming/sinks → mage-ai-0.8.99/mage_ai/streaming/sources}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/amazon_sqs.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/azure_event_hub.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/google_cloud_pubsub.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/kafka.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/kinesis.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/rabbitmq.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/shared.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/streaming/sources/source_factory.py +0 -0
- {mage-ai-0.8.97/mage_ai/streaming/sources → mage-ai-0.8.99/mage_ai/tests}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests → mage-ai-0.8.99/mage_ai/tests/api}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/api → mage-ai-0.8.99/mage_ai/tests/api/operations}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_operations.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_pipeline_schedules.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_sessions.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_syncs.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/api/operations/test_users.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/base_test.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/api/operations → mage-ai-0.8.99/mage_ai/tests/data_cleaner}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_cleaner → mage-ai-0.8.99/mage_ai/tests/data_cleaner/cleaning_rules}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_clean_column_names.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_fix_syntax_error.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_impute_values.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_reformat_values.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_collinear_columns.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_high_empty_rate.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_single_value.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_duplicate_rows.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_outliers.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_cleaner/cleaning_rules → mage-ai-0.8.99/mage_ai/tests/data_cleaner/statistics}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/statistics/test_calculator.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/test_column_type_detector.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_cleaner/statistics → mage-ai-0.8.99/mage_ai/tests/data_cleaner/transformer_actions}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/shared.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_base.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_column.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_custom_actions.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_helpers.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_row.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_utils.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_cleaner/transformer_actions/test_variable_replacer.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_cleaner/transformer_actions → mage-ai-0.8.99/mage_ai/tests/data_preparation}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_preparation → mage-ai-0.8.99/mage_ai/tests/data_preparation/git}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/git/test_git.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_preparation/git → mage-ai-0.8.99/mage_ai/tests/data_preparation/models}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_preparation/models → mage-ai-0.8.99/mage_ai/tests/data_preparation/models/block}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/models/block/test_sql.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/models/test_block.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/models/test_variable.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/test_templates.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/data_preparation/test_variable_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/factory.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/data_preparation/models/block → mage-ai-0.8.99/mage_ai/tests/io}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/io/test_config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/io/test_export_utils.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/io → mage-ai-0.8.99/mage_ai/tests/orchestration}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/orchestration → mage-ai-0.8.99/mage_ai/tests/orchestration/db}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/db/test_models.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/orchestration/db → mage-ai-0.8.99/mage_ai/tests/orchestration/notification}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/notification/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/notification/test_config.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/notification/test_sender.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/orchestration/notification → mage-ai-0.8.99/mage_ai/tests/orchestration/queue}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/queue/test_process_queue.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/test_execution_process_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/test_job_manager.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/test_pipeline_scheduler.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/orchestration/queue → mage-ai-0.8.99/mage_ai/tests/orchestration/triggers}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/triggers/test_event_trigger.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/orchestration/triggers/test_loop_time_trigger.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/orchestration/triggers → mage-ai-0.8.99/mage_ai/tests/services}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/services → mage-ai-0.8.99/mage_ai/tests/services/aws}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/services/aws → mage-ai-0.8.99/mage_ai/tests/services/aws/s3}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/services/aws/s3/test_s3.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/services/aws/s3 → mage-ai-0.8.99/mage_ai/tests/services/datadog}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/services/datadog/test_datadog.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/services/datadog → mage-ai-0.8.99/mage_ai/tests/services/k8s}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/services/k8s/test_job_manager.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/services/k8s → mage-ai-0.8.99/mage_ai/tests/shared}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/shared/test_hash.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/shared/test_io.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/shared/test_retry.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/shared/test_security.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/shared → mage-ai-0.8.99/mage_ai/tests/streaming}/__init__.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/streaming → mage-ai-0.8.99/mage_ai/tests/streaming/sinks}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_amazon_s3.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_dummy.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_kinesis.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_mongodb.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_opensearch.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sinks/test_sink_factory.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/streaming/sinks → mage-ai-0.8.99/mage_ai/tests/streaming/sources}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_amazon_sqs.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_azure_event_hub.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_google_cloud_pubsub.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_kafka.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_kinesis.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_rabbitmq.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/streaming/sources/test_source_factory.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/tests/test_shared.py +0 -0
- {mage-ai-0.8.97/mage_ai/tests/streaming/sources → mage-ai-0.8.99/mage_ai/usage_statistics}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/usage_statistics/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/usage_statistics/logger.py +0 -0
- {mage-ai-0.8.97/mage_ai/usage_statistics → mage-ai-0.8.99/mage_ai/utils}/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/utils/code.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/utils/logger/__init__.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai/utils/logger/constants.py +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai.egg-info/dependency_links.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai.egg-info/entry_points.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/mage_ai.egg-info/top_level.txt +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/pyproject.toml +0 -0
- {mage-ai-0.8.97 → mage-ai-0.8.99}/setup.cfg +0 -0
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.AutocompleteItemPresenter import AutocompleteItemPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class AutocompleteItemPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
AutocompleteItemPolicy.allow_actions([
|
|
@@ -15,7 +15,7 @@ from mage_ai.api.utils import (
|
|
|
15
15
|
has_at_least_viewer_role,
|
|
16
16
|
is_owner,
|
|
17
17
|
)
|
|
18
|
-
from mage_ai.data_preparation.repo_manager import
|
|
18
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
19
19
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
20
20
|
from mage_ai.services.tracking.metrics import increment
|
|
21
21
|
from mage_ai.settings import DISABLE_NOTEBOOK_EDIT_ACCESS, REQUIRE_USER_AUTHENTICATION
|
|
@@ -43,7 +43,7 @@ class BasePolicy():
|
|
|
43
43
|
|
|
44
44
|
@property
|
|
45
45
|
def entity(self) -> Tuple[Union[Permission.Entity, None], Union[str, None]]:
|
|
46
|
-
return Permission.Entity.PROJECT,
|
|
46
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
47
47
|
|
|
48
48
|
@classmethod
|
|
49
49
|
def action_rule(self, action):
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.BlockTemplatePresenter import BlockTemplatePresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class BlockTemplatePolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
BlockTemplatePolicy.allow_actions([
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.ClusterPresenter import ClusterPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class ClusterPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
ClusterPolicy.allow_actions([
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.DataProviderPresenter import DataProviderPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class DataProviderPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
DataProviderPolicy.allow_actions([
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.EventRulePresenter import EventRulePresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class EventRulePolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
EventRulePolicy.allow_actions([
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.ExtensionOptionPresenter import ExtensionOptionPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class ExtensionOptionPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
ExtensionOptionPolicy.allow_actions([
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.FileVersionPresenter import FileVersionPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class FileVersionPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
FileVersionPolicy.allow_actions([
|
|
@@ -53,3 +53,12 @@ GitBranchPolicy.allow_write(GitBranchPresenter.default_attributes + [
|
|
|
53
53
|
], on_action=[
|
|
54
54
|
constants.UPDATE,
|
|
55
55
|
], condition=lambda policy: policy.has_at_least_editor_role())
|
|
56
|
+
|
|
57
|
+
GitBranchPolicy.allow_query([
|
|
58
|
+
'include_remote_branches',
|
|
59
|
+
'repository',
|
|
60
|
+
], scopes=[
|
|
61
|
+
OauthScope.CLIENT_PRIVATE,
|
|
62
|
+
], on_action=[
|
|
63
|
+
constants.LIST,
|
|
64
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
@@ -2,12 +2,13 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.KernelPresenter import KernelPresenter
|
|
5
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
class KernelPolicy(BasePolicy):
|
|
8
9
|
@property
|
|
9
10
|
def entity(self):
|
|
10
|
-
return
|
|
11
|
+
return Permission.Entity.ANY, None
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
KernelPolicy.allow_actions([
|
|
@@ -3,7 +3,7 @@ from mage_ai.api.operations import constants
|
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.LogPresenter import LogPresenter
|
|
5
5
|
from mage_ai.data_preparation.models.pipeline import Pipeline
|
|
6
|
-
from mage_ai.data_preparation.repo_manager import
|
|
6
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
7
7
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
8
8
|
from mage_ai.orchestration.db.models.schedules import BlockRun
|
|
9
9
|
|
|
@@ -18,7 +18,7 @@ class LogPolicy(BasePolicy):
|
|
|
18
18
|
elif issubclass(parent_model.__class__, Pipeline):
|
|
19
19
|
return Permission.Entity.PIPELINE, parent_model.uuid
|
|
20
20
|
|
|
21
|
-
return Permission.Entity.PROJECT,
|
|
21
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
LogPolicy.allow_actions([
|
|
@@ -10,9 +10,16 @@ class OauthPolicy(BasePolicy):
|
|
|
10
10
|
|
|
11
11
|
OauthPolicy.allow_actions([
|
|
12
12
|
constants.CREATE,
|
|
13
|
+
], scopes=[
|
|
14
|
+
OauthScope.CLIENT_PRIVATE,
|
|
15
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
OauthPolicy.allow_actions([
|
|
13
19
|
constants.DETAIL,
|
|
14
20
|
], scopes=[
|
|
15
21
|
OauthScope.CLIENT_PRIVATE,
|
|
22
|
+
OauthScope.CLIENT_PUBLIC,
|
|
16
23
|
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
17
24
|
|
|
18
25
|
|
|
@@ -20,6 +27,13 @@ OauthPolicy.allow_read(OauthPresenter.default_attributes, scopes=[
|
|
|
20
27
|
OauthScope.CLIENT_PRIVATE,
|
|
21
28
|
], on_action=[
|
|
22
29
|
constants.CREATE,
|
|
30
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
OauthPolicy.allow_read(OauthPresenter.default_attributes, scopes=[
|
|
34
|
+
OauthScope.CLIENT_PRIVATE,
|
|
35
|
+
OauthScope.CLIENT_PUBLIC,
|
|
36
|
+
], on_action=[
|
|
23
37
|
constants.DETAIL,
|
|
24
38
|
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
25
39
|
|
|
@@ -40,4 +54,5 @@ OauthPolicy.allow_query([
|
|
|
40
54
|
constants.DETAIL,
|
|
41
55
|
], scopes=[
|
|
42
56
|
OauthScope.CLIENT_PRIVATE,
|
|
57
|
+
OauthScope.CLIENT_PUBLIC,
|
|
43
58
|
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.OutputPresenter import OutputPresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
from mage_ai.orchestration.db.models.schedules import BlockRun
|
|
8
8
|
|
|
@@ -15,7 +15,7 @@ class OutputPolicy(BasePolicy):
|
|
|
15
15
|
if type(parent_model) is BlockRun:
|
|
16
16
|
return Permission.Entity.PIPELINE, parent_model.pipeline_run.pipeline_uuid
|
|
17
17
|
|
|
18
|
-
return Permission.Entity.PROJECT,
|
|
18
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
OutputPolicy.allow_actions([
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.PipelinePresenter import PipelinePresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ class PipelinePolicy(BasePolicy):
|
|
|
12
12
|
if self.resource and self.resource.model:
|
|
13
13
|
return Permission.Entity.PIPELINE, self.resource.model.uuid
|
|
14
14
|
|
|
15
|
-
return Permission.Entity.PROJECT,
|
|
15
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
PipelinePolicy.allow_actions([
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.PipelineRunPresenter import PipelineRunPresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
|
|
8
8
|
|
|
@@ -19,7 +19,7 @@ class PipelineRunPolicy(BasePolicy):
|
|
|
19
19
|
if self.resource and self.resource.model:
|
|
20
20
|
return Permission.Entity.PIPELINE, self.resource.model.pipeline_uuid
|
|
21
21
|
|
|
22
|
-
return Permission.Entity.PROJECT,
|
|
22
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
PipelineRunPolicy.allow_actions([
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.PipelineSchedulePresenter import PipelineSchedulePresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ class PipelineSchedulePolicy(BasePolicy):
|
|
|
12
12
|
if self.resource and self.resource.model:
|
|
13
13
|
return Permission.Entity.PIPELINE, self.resource.model.pipeline_uuid
|
|
14
14
|
|
|
15
|
-
return Permission.Entity.PROJECT,
|
|
15
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
PipelineSchedulePolicy.allow_actions([
|
|
@@ -0,0 +1,64 @@
|
|
|
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.PullRequestPresenter import PullRequestPresenter
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class PullRequestPolicy(BasePolicy):
|
|
8
|
+
pass
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
PullRequestPolicy.allow_actions([
|
|
12
|
+
constants.DETAIL,
|
|
13
|
+
constants.LIST,
|
|
14
|
+
], scopes=[
|
|
15
|
+
OauthScope.CLIENT_PRIVATE,
|
|
16
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
PullRequestPolicy.allow_actions([
|
|
20
|
+
constants.DETAIL,
|
|
21
|
+
constants.LIST,
|
|
22
|
+
constants.CREATE,
|
|
23
|
+
], scopes=[
|
|
24
|
+
OauthScope.CLIENT_PRIVATE,
|
|
25
|
+
], condition=lambda policy: policy.has_at_least_editor_role())
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
PullRequestPolicy.allow_read(PullRequestPresenter.default_attributes + [
|
|
29
|
+
], scopes=[
|
|
30
|
+
OauthScope.CLIENT_PRIVATE
|
|
31
|
+
], on_action=[
|
|
32
|
+
constants.DETAIL,
|
|
33
|
+
constants.LIST,
|
|
34
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
PullRequestPolicy.allow_read(PullRequestPresenter.default_attributes + [
|
|
38
|
+
], scopes=[
|
|
39
|
+
OauthScope.CLIENT_PRIVATE
|
|
40
|
+
], on_action=[
|
|
41
|
+
constants.CREATE,
|
|
42
|
+
], condition=lambda policy: policy.has_at_least_editor_role())
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
PullRequestPolicy.allow_write([
|
|
46
|
+
'base_branch',
|
|
47
|
+
'body',
|
|
48
|
+
'compare_branch',
|
|
49
|
+
'repository',
|
|
50
|
+
'title',
|
|
51
|
+
], scopes=[
|
|
52
|
+
OauthScope.CLIENT_PRIVATE
|
|
53
|
+
], on_action=[
|
|
54
|
+
constants.CREATE,
|
|
55
|
+
], condition=lambda policy: policy.has_at_least_editor_role())
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
PullRequestPolicy.allow_query([
|
|
59
|
+
'repository',
|
|
60
|
+
], scopes=[
|
|
61
|
+
OauthScope.CLIENT_PRIVATE,
|
|
62
|
+
], on_action=[
|
|
63
|
+
constants.LIST,
|
|
64
|
+
], condition=lambda policy: policy.has_at_least_viewer_role())
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
from mage_ai.api.oauth_scope import OauthScope
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
|
+
from mage_ai.orchestration.db.models.oauth import Permission
|
|
4
5
|
|
|
5
6
|
|
|
6
7
|
class SessionPolicy(BasePolicy):
|
|
7
8
|
@property
|
|
8
9
|
def entity(self):
|
|
9
|
-
return
|
|
10
|
+
return Permission.Entity.ANY, None
|
|
10
11
|
|
|
11
12
|
|
|
12
13
|
SessionPolicy.allow_actions([
|
|
@@ -45,6 +46,8 @@ SessionPolicy.allow_write([
|
|
|
45
46
|
'email',
|
|
46
47
|
'password',
|
|
47
48
|
'username',
|
|
49
|
+
'token',
|
|
50
|
+
'provider',
|
|
48
51
|
], scopes=[
|
|
49
52
|
OauthScope.CLIENT_PUBLIC,
|
|
50
53
|
], on_action=[
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.VariablePresenter import VariablePresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
|
|
8
8
|
|
|
@@ -13,7 +13,7 @@ class VariablePolicy(BasePolicy):
|
|
|
13
13
|
if parent_model:
|
|
14
14
|
return Permission.Entity.PIPELINE, parent_model.uuid
|
|
15
15
|
|
|
16
|
-
return Permission.Entity.PROJECT,
|
|
16
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
VariablePolicy.allow_actions([
|
|
@@ -2,7 +2,7 @@ from mage_ai.api.oauth_scope import OauthScope
|
|
|
2
2
|
from mage_ai.api.operations import constants
|
|
3
3
|
from mage_ai.api.policies.BasePolicy import BasePolicy
|
|
4
4
|
from mage_ai.api.presenters.WidgetPresenter import WidgetPresenter
|
|
5
|
-
from mage_ai.data_preparation.repo_manager import
|
|
5
|
+
from mage_ai.data_preparation.repo_manager import get_project_uuid
|
|
6
6
|
from mage_ai.orchestration.db.models.oauth import Permission
|
|
7
7
|
|
|
8
8
|
|
|
@@ -13,7 +13,7 @@ class WidgetPolicy(BasePolicy):
|
|
|
13
13
|
if parent_model:
|
|
14
14
|
return Permission.Entity.PIPELINE, parent_model.uuid
|
|
15
15
|
|
|
16
|
-
return Permission.Entity.PROJECT,
|
|
16
|
+
return Permission.Entity.PROJECT, get_project_uuid()
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
WidgetPolicy.allow_actions([
|
|
@@ -33,9 +33,7 @@ WorkspacePolicy.allow_read(WorkspacePresenter.default_attributes, scopes=[
|
|
|
33
33
|
constants.LIST,
|
|
34
34
|
], condition=lambda policy: policy.has_at_least_admin_role())
|
|
35
35
|
|
|
36
|
-
WorkspacePolicy.allow_read(WorkspacePresenter.default_attributes
|
|
37
|
-
'success',
|
|
38
|
-
], scopes=[
|
|
36
|
+
WorkspacePolicy.allow_read(WorkspacePresenter.default_attributes, scopes=[
|
|
39
37
|
OauthScope.CLIENT_PRIVATE,
|
|
40
38
|
], on_action=[
|
|
41
39
|
constants.CREATE,
|
|
@@ -50,6 +48,8 @@ WorkspacePolicy.allow_write([
|
|
|
50
48
|
'storage_class_name',
|
|
51
49
|
'service_account_name',
|
|
52
50
|
'container_config',
|
|
51
|
+
'storage_access_mode',
|
|
52
|
+
'storage_request_size',
|
|
53
53
|
'cluster_name',
|
|
54
54
|
'task_definition',
|
|
55
55
|
'container_name',
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from mage_ai.api.presenters.BasePresenter import BasePresenter
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class PullRequestPresenter(BasePresenter):
|
|
5
|
+
default_attributes = [
|
|
6
|
+
'body',
|
|
7
|
+
'created_at',
|
|
8
|
+
'id',
|
|
9
|
+
'is_merged',
|
|
10
|
+
'last_modified',
|
|
11
|
+
'merged',
|
|
12
|
+
'state',
|
|
13
|
+
'title',
|
|
14
|
+
'url',
|
|
15
|
+
'user',
|
|
16
|
+
]
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from github import Auth, Github
|
|
1
3
|
from mage_ai.api.errors import ApiError
|
|
2
4
|
from mage_ai.api.resources.GenericResource import GenericResource
|
|
3
5
|
from mage_ai.data_preparation.git import Git
|
|
6
|
+
from mage_ai.data_preparation.git import api
|
|
4
7
|
from mage_ai.data_preparation.preferences import get_preferences
|
|
5
8
|
from typing import Dict, List
|
|
6
|
-
import os
|
|
7
9
|
|
|
8
10
|
|
|
9
11
|
def build_file_object(obj):
|
|
@@ -21,9 +23,34 @@ def build_file_object(obj):
|
|
|
21
23
|
class GitBranchResource(GenericResource):
|
|
22
24
|
@classmethod
|
|
23
25
|
def collection(self, query, meta, user, **kwargs):
|
|
24
|
-
|
|
26
|
+
arr = []
|
|
27
|
+
|
|
28
|
+
include_remote_branches = query.get('include_remote_branches', None)
|
|
29
|
+
if include_remote_branches:
|
|
30
|
+
include_remote_branches = include_remote_branches[0]
|
|
31
|
+
|
|
32
|
+
repository = query.get('repository', None)
|
|
33
|
+
if repository:
|
|
34
|
+
repository = repository[0]
|
|
35
|
+
|
|
36
|
+
access_token = api.get_access_token_for_user(user)
|
|
37
|
+
if access_token:
|
|
38
|
+
auth = Auth.Token(access_token.token)
|
|
39
|
+
g = Github(auth=auth)
|
|
40
|
+
repo = g.get_repo(repository)
|
|
41
|
+
branches = repo.get_branches()
|
|
42
|
+
|
|
43
|
+
for branch in branches:
|
|
44
|
+
arr.append(dict(name=branch.name))
|
|
45
|
+
else:
|
|
46
|
+
git_manager = Git.get_manager(user=user)
|
|
47
|
+
arr += [dict(name=branch) for branch in git_manager.branches]
|
|
48
|
+
|
|
49
|
+
if include_remote_branches:
|
|
50
|
+
pass
|
|
51
|
+
|
|
25
52
|
return self.build_result_set(
|
|
26
|
-
|
|
53
|
+
arr,
|
|
27
54
|
user,
|
|
28
55
|
**kwargs,
|
|
29
56
|
)
|
|
@@ -112,38 +139,66 @@ class GitBranchResource(GenericResource):
|
|
|
112
139
|
push = payload.get('push', None)
|
|
113
140
|
|
|
114
141
|
if push and 'remote' in push and 'branch' in push:
|
|
115
|
-
import
|
|
142
|
+
from git.exc import GitCommandError
|
|
116
143
|
|
|
117
144
|
try:
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
push['
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
145
|
+
access_token = api.get_access_token_for_user(self.current_user)
|
|
146
|
+
if access_token:
|
|
147
|
+
remote = git_manager.repo.remotes[push['remote']]
|
|
148
|
+
custom_progress = api.push(
|
|
149
|
+
remote.name,
|
|
150
|
+
[url for url in remote.urls][0],
|
|
151
|
+
push['branch'],
|
|
152
|
+
access_token.token,
|
|
153
|
+
)
|
|
154
|
+
if custom_progress.other_lines:
|
|
155
|
+
lines = custom_progress.other_lines
|
|
156
|
+
if type(lines) is list:
|
|
157
|
+
lines = '\n'.join(lines)
|
|
158
|
+
self.model['progress'] = lines
|
|
159
|
+
else:
|
|
160
|
+
self.model['error'] = \
|
|
161
|
+
'Please authenticate with GitHub before trying to push.'
|
|
162
|
+
except GitCommandError as err:
|
|
128
163
|
self.model['error'] = str(err)
|
|
129
164
|
else:
|
|
130
165
|
git_manager.push()
|
|
131
166
|
elif action_type == 'pull':
|
|
132
167
|
pull = payload.get('pull', None)
|
|
133
168
|
if pull and 'remote' in pull:
|
|
134
|
-
import
|
|
169
|
+
from git.exc import GitCommandError
|
|
135
170
|
|
|
136
171
|
try:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
172
|
+
access_token = api.get_access_token_for_user(self.current_user)
|
|
173
|
+
if access_token:
|
|
174
|
+
branch_name = payload.get('branch')
|
|
175
|
+
remote = git_manager.repo.remotes[pull['remote']]
|
|
176
|
+
url = list(remote.urls)[0]
|
|
177
|
+
|
|
178
|
+
custom_progress = None
|
|
179
|
+
if branch_name:
|
|
180
|
+
custom_progress = api.pull(
|
|
181
|
+
remote.name,
|
|
182
|
+
url,
|
|
183
|
+
pull.get('branch'),
|
|
184
|
+
access_token.token,
|
|
185
|
+
)
|
|
186
|
+
else:
|
|
187
|
+
custom_progress = api.fetch(
|
|
188
|
+
remote.name,
|
|
189
|
+
url,
|
|
190
|
+
access_token.token,
|
|
191
|
+
)
|
|
192
|
+
|
|
193
|
+
if custom_progress and custom_progress.other_lines:
|
|
194
|
+
lines = custom_progress.other_lines
|
|
195
|
+
if type(lines) is list:
|
|
196
|
+
lines = '\n'.join(lines)
|
|
197
|
+
self.model['progress'] = lines
|
|
198
|
+
else:
|
|
199
|
+
self.model['error'] = \
|
|
200
|
+
'Please authenticate with GitHub before trying to pull.'
|
|
201
|
+
except GitCommandError as err:
|
|
147
202
|
self.model['error'] = str(err)
|
|
148
203
|
else:
|
|
149
204
|
git_manager.pull()
|
|
@@ -223,4 +278,4 @@ class GitBranchResource(GenericResource):
|
|
|
223
278
|
|
|
224
279
|
def remotes(self, limit: int = None) -> List[Dict]:
|
|
225
280
|
git_manager = Git.get_manager(user=self.current_user)
|
|
226
|
-
return git_manager.remotes(limit=limit)
|
|
281
|
+
return git_manager.remotes(limit=limit, user=self.current_user)
|