sqlmesh 0.188.2.dev30__tar.gz → 0.188.2.dev31__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.
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/PKG-INFO +1 -1
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/_version.py +2 -2
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cli/main.py +7 -1
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/context.py +19 -1
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/environment.py +13 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/plan/__init__.py +1 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/plan/builder.py +4 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/plan/definition.py +1 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/plan/evaluator.py +52 -44
- sqlmesh-0.188.2.dev31/sqlmesh/core/plan/explainer.py +281 -0
- sqlmesh-0.188.2.dev31/sqlmesh/core/plan/stages.py +303 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/scheduler.py +51 -9
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/facade.py +1 -8
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/PKG-INFO +1 -1
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/SOURCES.txt +3 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_plan.py +1 -0
- sqlmesh-0.188.2.dev31/tests/core/test_plan_stages.py +814 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/config.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/continue_config.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/get_scm_version.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/install-prerequisites.sh +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/manage-test-db.sh +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/test_migration.sh +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/update-pypirc.sh +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.circleci/wait-for-db.sh +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.github/dependabot.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.pre-commit-config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.prettierignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.prettierrc.cjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/.readthedocs.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/LICENSE +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/MANIFEST.in +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/Makefile +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/README.md +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/benchmarks/lsp_render_model_bench.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/custom_materializations/custom_materializations/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/custom_materializations/custom_materializations/custom_kind.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/custom_materializations/custom_materializations/full.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/custom_materializations/pyproject.toml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/audits/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/audits/assert_positive_order_ids.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/constants.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/data/.keep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/macros/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/full_model.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/ibis_full_model_python.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/ibis_full_model_sql.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/incremental_model.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/models/seed_model.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/seeds/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/seeds/seed_data.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/ibis/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/audits/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/linter/user.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/macros/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/models/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/models/a.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/models/b.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_1/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/audits/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/macros/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/models/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/models/c.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/models/d.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/models/e.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi/repo_2/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/bronze/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/bronze/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/bronze/models/a.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/bronze/models/b.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/bronze/profiles.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/macros/store_schemas.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/models/c.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/models/d.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_dbt/silver/profiles.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/macros/round_dollars.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/models/c.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/models/d.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/models/e.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/dbt_repo/profiles.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/sqlmesh_repo/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/sqlmesh_repo/models/a.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/multi_hybrid/sqlmesh_repo/models/b.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/audits/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/audits/items.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/audits/order_items.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/audits/raw_demographics.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/data/.keep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/external_models/model1/model1.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/external_models/model2/model2.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/external_models/prod.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/external_models.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/helper.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/linter/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/linter/user.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/macros/macros.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/macros/macros.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/macros/utils.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/metrics/metrics.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/active_customers.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/blueprint.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/customer_revenue_lifetime.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/customers.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/disabled.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/disabled.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/items.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/latest_order.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/marketing.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/order_items.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/orders.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/raw_marketing.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/top_waiters.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/waiter_names.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/models/waiters.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/signals/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/sqlmesh-requirements.lock +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/tests/test_customer_revenue_by_day.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/tests/test_customer_revenue_lifetime.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi/tests/test_order_items.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/.user.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/analyses/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/macros/incremental.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/macros/log_value.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/customers.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/top_waiters.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/models/waiters.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/profiles.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/seeds/items.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/seeds/order_items.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/seeds/orders.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/seeds/properties.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/snapshots/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/tests/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dbt/tests/generic/less_than_amount.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/sushi_dlt/sushi_pipeline.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/audits/db/order_f.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/macros/macros.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/db/customer_d.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/db/item_d.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/db/order_f.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/db/order_item_f.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/src/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/src/customer_details.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/src/menu_item_details.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/src/order_item_details.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/models/src/shared.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/seeds/src/menu_item_details.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/tests/test_customer_d.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/examples/wursthall/tests/test_order_item_f.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/mkdocs.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/package.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/pdoc/cli.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/pdoc/templates/module.html.jinja2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/pnpm-lock.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/pnpm-workspace.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/pyproject.toml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/setup.cfg +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/.airflowignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cicd/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cicd/bot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cicd/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cli/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cli/example_project.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/cli/options.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/_typing.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/analytics/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/analytics/collector.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/analytics/dispatcher.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/audit/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/audit/builtin.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/audit/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/base.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/categorizer.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/common.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/connection.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/feature_flag.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/format.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/gateway.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/janitor.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/linter.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/migration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/naming.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/plan.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/root.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/run.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/scheduler.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/config/ui.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/console.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/constants.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/context_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/dialect.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/_typing.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/athena.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/base.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/base_postgres.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/bigquery.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/clickhouse.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/databricks.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/duckdb.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/mixins.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/mssql.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/mysql.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/postgres.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/redshift.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/risingwave.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/shared.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/snowflake.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/spark.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/engine_adapter/trino.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/lineage.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/linter/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/linter/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/linter/rule.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/linter/rules/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/linter/rules/builtin.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/macros.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/metric/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/metric/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/metric/rewriter.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/cache.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/common.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/decorator.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/kind.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/meta.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/schema.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/model/seed.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/node.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/notification_target.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/reference.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/renderer.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/schema_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/schema_loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/selector.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/signal.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/snapshot/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/snapshot/cache.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/snapshot/categorizer.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/snapshot/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/snapshot/evaluator.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/base.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/cache.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/common.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/environment.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/interval.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/migrator.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/snapshot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/utils.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/db/version.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/state_sync/export_import.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/table_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/context.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/definition.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/discovery.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/result.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/test/runner.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/core/user.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/adapter.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/basemodel.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/builtin.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/column.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/common.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/context.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/manifest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/package.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/profile.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/project.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/relation.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/seed.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/source.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/target.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/test.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/dbt/util.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/commands.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/spark/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/spark/app.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/spark/db_api/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/spark/db_api/errors.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/engines/spark/db_api/spark_session.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/dlt.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/github/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/github/cicd/command.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/github/cicd/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/github/cicd/controller.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/llm.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/integrations/slack.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/api.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/completions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/context.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/custom.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/description.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/main.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/reference.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/lsp/uri.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/magics.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0001_init.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0002_remove_identify.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0003_move_batch_size.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0004_environmnent_add_finalized_at.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0005_create_seed_table.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0006_change_seed_hash.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0007_env_table_info_to_kind.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0008_create_intervals_table.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0009_remove_pre_post_hooks.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0010_seed_hash_batch_size.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0011_add_model_kind_name.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0012_update_jinja_expressions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0013_serde_using_model_dialects.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0014_fix_dev_intervals.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0015_environment_add_promoted_snapshot_ids.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0016_fix_windows_path.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0017_fix_windows_seed_path.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0018_rename_snapshot_model_to_node.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0019_add_env_suffix_target.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0020_remove_redundant_attributes_from_dbt_models.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0021_fix_table_properties.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0022_move_project_to_model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0023_fix_added_models_with_forward_only_parents.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0024_replace_model_kind_name_enum_with_value.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0025_fix_intervals_and_missing_change_category.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0026_remove_dialect_from_seed.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0027_minute_interval_to_five.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0028_add_plan_dags_table.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0029_generate_schema_types_using_dialect.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0030_update_unrestorable_snapshots.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0031_remove_dbt_target_fields.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0032_add_sqlmesh_version.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0033_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0034_add_default_catalog.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0035_add_catalog_name_override.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0036_delete_plan_dags_bug_fix.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0037_remove_dbt_is_incremental_macro.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0038_add_expiration_ts_to_snapshot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0039_include_environment_in_plan_dag_spec.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0040_add_previous_finalized_snapshots.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0041_remove_hash_raw_query_attribute.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0042_trim_indirect_versions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0043_fix_remove_obsolete_attributes_in_plan_dags.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0044_quote_identifiers_in_model_attributes.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0045_move_gateway_variable.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0046_add_batch_concurrency.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0047_change_scd_string_to_column.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0048_drop_indirect_versions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0049_replace_identifier_with_version_in_seeds_table.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0050_drop_seeds_table.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0051_rename_column_descriptions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0052_add_normalize_name_in_environment_naming_info.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0053_custom_model_kind_extra_attributes.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0054_fix_trailing_comments.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0055_add_updated_ts_unpaused_ts_ttl_ms_unrestorable_to_snapshot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0056_restore_table_indexes.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0057_add_table_format.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0058_add_requirements.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0059_add_physical_version.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0060_move_audits_to_model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0061_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0062_add_model_gateway.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0063_change_signals.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0064_join_when_matched_strings.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0065_add_model_optimize.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0066_add_auto_restatements.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0067_add_tsql_date_full_precision.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0068_include_unrendered_query_in_metadata_hash.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0069_update_dev_table_suffix.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0070_include_grains_in_metadata_hash.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0071_add_dev_version_to_intervals.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0072_add_environment_statements.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0073_remove_symbolic_disable_restatement.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0074_add_partition_by_time_column_property.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0075_remove_validate_query.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0076_add_cron_tz.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0077_fix_column_type_hash_calculation.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0078_warn_if_non_migratable_python_env.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0079_add_gateway_managed_property.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0080_add_batch_size_to_scd_type_2_models.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0081_update_partitioned_by.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0082_warn_if_incorrectly_duplicated_statements.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/migrations/v0083_use_sql_for_scd_time_data_type_data_hash.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/py.typed +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/schedulers/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/aws.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/cache.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/concurrency.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/connection_pool.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/conversions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/cron.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/dag.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/date.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/errors.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/git.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/hashing.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/jinja.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/metaprogramming.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/migration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/pandas.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/process.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/pydantic.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/rich.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/windows.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh/utils/yaml.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/dependency_links.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/entry_points.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/requires.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/sqlmesh.egg-info/top_level.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/cli/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/cli/test_cli.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/cli/test_integration_cli.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/analytics/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/analytics/test_collector.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/analytics/test_dispatcher.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/config.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/_common-hive.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/clickhouse/config.xml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/clickhouse/keeper.xml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.clickhouse.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.mssql.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.mysql.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.postgres.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.risingwave.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.spark.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/compose.trino.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/init-metastore-db.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/spark/Dockerfile +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/spark/conf/hive-site.xml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/spark/conf/spark-defaults.conf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake.properties +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_delta.properties +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_iceberg.properties +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_nessie.properties +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/docker/trino/catalog/testing.properties +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_athena.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_bigquery.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_clickhouse.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_duckdb.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_postgres.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_redshift.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_snowflake.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/integration/test_integration_trino.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_athena.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_base.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_base_postgres.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_bigquery.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_clickhouse.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_databricks.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_duckdb.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_mixins.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_mssql.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_mysql.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_postgres.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_redshift.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_risingwave.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_snowflake.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_spark.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/engine_adapter/test_trino.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/metric/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/metric/test_metric.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/metric/test_rewriter.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/state_sync/test_export_import.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/state_sync/test_state_sync.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_audit.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_connection_config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_context.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_dialect.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_environment.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_format.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_integration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_lineage.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_macros.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_notification_target.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_plan_evaluator.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_reference.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_rule.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_scheduler.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_schema_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_schema_loader.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_seed.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_selector.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_snapshot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_snapshot_evaluator.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_table_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/core/test_test.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_adapter.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_integration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_manifest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_model.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_test.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_transformation.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/dbt/test_util.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/engines/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/engines/spark/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/engines/spark/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/engines/spark/test_db_api.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/analyses/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/logs/dbt.log.legacy +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/macros/create_tables.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/macros/incremental.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/macros/log_value.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/macros/test_dependencies.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/disabled_model.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/simple_model_a.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/simple_model_b.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/top_waiters.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/models/waiters.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/macros/packaged_tables.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/models/customers.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/packages.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/profiles.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/schema.yaml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/seed_sources.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/seeds/properties.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/snapshots/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/snapshots/items_check_snapshot.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/snapshots/items_no_hard_delete_snapshot.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/snapshots/items_snapshot.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/source_data/items.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/source_data/order_items.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/source_data/orders.csv +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/dbt/sushi_test/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_closed.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_command_deploy.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_comment.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_review_submit.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_synchronized.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/github/pull_request_synchronized_enterprise.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/migrations/environments.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/migrations/snapshots.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/audits/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/macros/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/macros/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/models/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/models/first_schema/model_one.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/models/first_schema/model_two.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/models/second_schema/model_one.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/models/second_schema/model_two.sql +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/multi_virtual_layer/tests/.gitkeep +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/snowflake/rsa_key_no_pass.p8 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/fixtures/snowflake/rsa_key_pass.p8 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/test_config.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/test_github_commands.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/test_github_controller.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/test_github_event.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/github/cicd/test_integration.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/jupyter/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/jupyter/example_outputs.ipynb +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/integrations/jupyter/test_magics.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_completions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_context.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_reference.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_reference_cte.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_reference_macro.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/lsp/test_reference_macro_multi.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/pyproject.toml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/schedulers/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/setup.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/test_forking.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/pandas.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_aws.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_cache.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_concurrency.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_connection_pool.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_dag.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_date.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_filesystem.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_filters.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_helpers.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_jinja.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_metaprogramming.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_pydantic.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/utils/test_yaml.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/web/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/web/conftest.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/web/test_lineage.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tests/web/test_main.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tooling/README.md +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tooling/vscode/extensions.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tooling/vscode/launch.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tooling/vscode/settings.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/tooling/vscode/tasks.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/bus/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/bus/package.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/bus/src/callbacks.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/bus/src/result.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/bus/tsconfig.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/.vscodeignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/CHANGELOG.md +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/E2E_TESTING.md +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/README.md +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/assets/logo.png +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/assets/logo.svg +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/esbuild.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/eslint.config.mjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/package.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/playwright.config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/scripts/fetch-vscode.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/auth/auth.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/commands/format.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/commands/renderModel.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/commands/signin.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/commands/signinSpecifyFlow.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/commands/signout.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/completion/completion.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/extension.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/lsp/custom.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/lsp/lsp.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/providers/renderedModelProvider.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/constants.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/log.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/python.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/settings.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/utilities.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/common/vscodeapi.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/errors.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/exec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/isCodespaces.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/isWindows.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/python.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/sleep.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/utilities/sqlmesh/sqlmesh.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/src/webviews/lineagePanel.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/completions.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/diagnostics.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/go_to_definition.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/lineage.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/render.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tests/utils.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/extension/tsconfig.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/openapi.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/.cta.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/index.html +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/orval.config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/package.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/App.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/api/client.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/api/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/api/instance.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/button/Button.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/Graph.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/context.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/graph/types.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/input/Input.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/input/Selector.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components/title/Title.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components-additional/additional-components.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/components-additional/tbk-components.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/domain/initial.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/domain/lineage.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/domain/sqlmesh-model.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/hooks/eventBus.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/hooks/vscode.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/main.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/pages/lineage.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/reportWebVitals.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/routeTree.gen.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/routes/__root.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/routes/index.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/routes/lineage.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/style/variants.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/styles.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/utils/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/utils/receiveEvents.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/utils/rpc.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/utils/vscodeapi.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/workers/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/src/workers/lineage.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/tailwind.config.cjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/tsconfig.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/vscode/react/vite.config.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/.dockerignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/Dockerfile.api +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/Dockerfile.app +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/.gitignore +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Audits-DB1HcP9M.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Banner-DNY__4sG.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/ChevronDownIcon-lHn9zjvd.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/ChevronRightIcon-oQ5f5ZGP.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Content-Da0wstVW.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Content-QpBh5BIf.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Data-C7p96ruh.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/DataCatalog-C7cUGv8x.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Editor-B6PRl__L.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Editor-S5kDO3v1.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Errors-CxCutNFm.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/FileExplorer-kP-IjmYP.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Footer-rRlYYZGX.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Header-DWsJQ7Zd.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Input-DdPN19Px.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Lineage-BQJPyHVL.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/ListboxShow-BmQk-sC6.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/ModelLineage-Cb-ryU8k.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Models-Bv0YKo6C.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Page-C-F04Qw-.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Plan-DfF6_rdE.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/PlusCircleIcon-D8BJTuwF.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/ReportErrors-BR3yV5Ru.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Root-gCyYAZOq.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/SearchList-Mw4DP7x1.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/SelectEnvironment-C-I8dl8g.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/SourceList-nJbKxW-u.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/SourceListItem-Cpx6p_wh.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/SplitPane-CwtTNpO8.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Tests-BKeeabY_.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/Welcome-D191sGJC.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/context-5PbIKqqT.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/context-CVkhr9QB.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/editor-DWINdd81.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/file-e9qyDfWg.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/floating-ui.react-dom-B-NNWGkz.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/help-6Q7f7fjd.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/help-CjbSQwWi.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/index-BZGZqBUO.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/index-BkNpRAHt.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/plan-C2UHjG7p.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/popover-C8e3ENo3.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/assets/project-BDZ1fnja.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/css/base.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/css/design.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/favicons/favicon.svg +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/dist/index.html +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/eslint.config.mjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/index.html +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/openapi.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/orval.config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/package.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/playwright.config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/postcss.config.cjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/css/base.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/css/design.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/favicons/favicon.svg +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/public/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/App.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/api/channels.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/api/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/api/instance.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/context/context.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/context/editor.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/context/plan.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/context/project.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/context/theme.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/hooks/useActiveFocus.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/hooks/useLocalStorage.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/banner/Banner.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/banner/Welcome.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/button/Button.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/button/tests/Button.spec.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/container/Container.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/divider/tests/Divider.spec.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/documentation/Documentation.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/Editor.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/Editor.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorCode.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorFooter.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorIndicator.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorInspector.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorPreview.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorTab.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/EditorTabs.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/extensions/SQLMeshDialect.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/extensions/SQLMeshModel.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/extensions/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/extensions/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/editor/hooks.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/environmentDetails/AddEnvironment.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/environmentDetails/EnvironmentChanges.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/environmentDetails/EnvironmentChangesPreview.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/environmentDetails/EnvironmentDetails.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/environmentDetails/SelectEnvironment.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/fileExplorer/Directory.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/fileExplorer/DragLayer.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/fileExplorer/File.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/fileExplorer/FileExplorer.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/fileExplorer/context.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/Graph.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelLineageSearch.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/context.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/graph/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/historyNavigation/historyNavigation.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/input/Input.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/input/Selector.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/modal/Modal.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/modal/ModalConfirmation.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/moduleNavigation/ModuleLink.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/moduleNavigation/ModuleNavigation.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/Plan.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanActions.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanApplyStageTracker.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanBackfillDates.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanChangePreview.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanHeader.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/PlanOptions.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/context.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/help.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/plan/hooks.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/progress/Progress.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/report/ReportErrors.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/report/ReportTestsErrors.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/search/SearchList.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/search/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/splitPane/SplitPane.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/splitPane/SplitPane.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/tab/Tab.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/table/Table.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/table/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/tableDiff/TableDiff.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/tableDiff/help.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/tasksOverview/TasksOverview.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/title/Title.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/components/toggle/Toggle.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/audits/Audits.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/data/Data.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/data-catalog/DataCatalog.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/editor/Editor.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/errors/Content.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/errors/Errors.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/lineage/Lineage.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/models/Models.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/plan/Content.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/plan/Plan.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/Footer.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/Header.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/Navigation.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/NotFound.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/Page.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/Root.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/root/context/notificationCenter.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/library/pages/tests/Tests.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/main.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/artifact.posix.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/artifact.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/artifact.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/artifact.win.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/directory.posix.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/directory.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/directory.win.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/environment.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/file.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/file.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/initial.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/module-controller.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/plan-action.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/sqlmesh-change-display.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/sqlmesh-model.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/tracker-plan-apply.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/tracker-plan-cancel.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/tracker-plan-overview.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/models/tracker-plan.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/routes.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/styles/index.css +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/tests/setup.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/tests/utils.tsx +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/types/enum.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/types/index.d.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/utils/additional-components.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/utils/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/utils/tbk-components.js +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/workers/index.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/workers/lineage.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/workers/sqlglot/sqlglot.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/src/workers/sqlglot/sqlglot.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/tailwind.config.cjs +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/tests/initial.spec.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/tsconfig.json +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/client/vite.config.ts +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/docker-compose.build.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/docker-compose.yml +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/__init__.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/commands.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/directories.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/environments.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/events.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/files.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/lineage.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/meta.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/models.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/modules.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/plan.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/api/endpoints/table_diff.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/app.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/console.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/exceptions.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/main.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/models.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/openapi.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/settings.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/utils.py +0 -0
- {sqlmesh-0.188.2.dev30 → sqlmesh-0.188.2.dev31}/web/server/watcher.py +0 -0
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.188.2.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 188, 2, '
|
|
20
|
+
__version__ = version = '0.188.2.dev31'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 188, 2, 'dev31')
|
|
@@ -457,7 +457,13 @@ def diff(ctx: click.Context, environment: t.Optional[str] = None) -> None:
|
|
|
457
457
|
@click.option(
|
|
458
458
|
"--diff-rendered",
|
|
459
459
|
is_flag=True,
|
|
460
|
-
help="Output text differences for the rendered versions of the models and standalone audits",
|
|
460
|
+
help="Output text differences for the rendered versions of the models and standalone audits.",
|
|
461
|
+
default=None,
|
|
462
|
+
)
|
|
463
|
+
@click.option(
|
|
464
|
+
"--explain",
|
|
465
|
+
is_flag=True,
|
|
466
|
+
help="Explain the plan instead of applying it.",
|
|
461
467
|
default=None,
|
|
462
468
|
)
|
|
463
469
|
@opt.verbose
|
|
@@ -88,7 +88,7 @@ from sqlmesh.core.notification_target import (
|
|
|
88
88
|
NotificationTarget,
|
|
89
89
|
NotificationTargetManager,
|
|
90
90
|
)
|
|
91
|
-
from sqlmesh.core.plan import Plan, PlanBuilder, SnapshotIntervals
|
|
91
|
+
from sqlmesh.core.plan import Plan, PlanBuilder, SnapshotIntervals, PlanExplainer
|
|
92
92
|
from sqlmesh.core.plan.definition import UserProvidedFlags
|
|
93
93
|
from sqlmesh.core.reference import ReferenceGraph
|
|
94
94
|
from sqlmesh.core.scheduler import Scheduler, CompletionStatus
|
|
@@ -1211,6 +1211,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1211
1211
|
run: t.Optional[bool] = None,
|
|
1212
1212
|
diff_rendered: t.Optional[bool] = None,
|
|
1213
1213
|
skip_linter: t.Optional[bool] = None,
|
|
1214
|
+
explain: t.Optional[bool] = None,
|
|
1214
1215
|
) -> Plan:
|
|
1215
1216
|
"""Interactively creates a plan.
|
|
1216
1217
|
|
|
@@ -1256,6 +1257,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1256
1257
|
run: Whether to run latest intervals as part of the plan application.
|
|
1257
1258
|
diff_rendered: Whether the diff should compare raw vs rendered models
|
|
1258
1259
|
skip_linter: Linter runs by default so this will skip it if enabled
|
|
1260
|
+
explain: Whether to explain the plan instead of applying it.
|
|
1259
1261
|
|
|
1260
1262
|
Returns:
|
|
1261
1263
|
The populated Plan object.
|
|
@@ -1283,6 +1285,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1283
1285
|
run=run,
|
|
1284
1286
|
diff_rendered=diff_rendered,
|
|
1285
1287
|
skip_linter=skip_linter,
|
|
1288
|
+
explain=explain,
|
|
1286
1289
|
)
|
|
1287
1290
|
|
|
1288
1291
|
plan = plan_builder.build()
|
|
@@ -1292,6 +1295,9 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1292
1295
|
# or if there are any uncategorized snapshots in the plan
|
|
1293
1296
|
no_prompts = False
|
|
1294
1297
|
|
|
1298
|
+
if explain:
|
|
1299
|
+
auto_apply = True
|
|
1300
|
+
|
|
1295
1301
|
self.console.plan(
|
|
1296
1302
|
plan_builder,
|
|
1297
1303
|
auto_apply if auto_apply is not None else self.config.plan.auto_apply,
|
|
@@ -1328,6 +1334,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1328
1334
|
run: t.Optional[bool] = None,
|
|
1329
1335
|
diff_rendered: t.Optional[bool] = None,
|
|
1330
1336
|
skip_linter: t.Optional[bool] = None,
|
|
1337
|
+
explain: t.Optional[bool] = None,
|
|
1331
1338
|
) -> PlanBuilder:
|
|
1332
1339
|
"""Creates a plan builder.
|
|
1333
1340
|
|
|
@@ -1544,6 +1551,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1544
1551
|
interval_end_per_model=max_interval_end_per_model,
|
|
1545
1552
|
console=self.console,
|
|
1546
1553
|
user_provided_flags=user_provided_flags,
|
|
1554
|
+
explain=explain or False,
|
|
1547
1555
|
)
|
|
1548
1556
|
|
|
1549
1557
|
def apply(
|
|
@@ -1568,6 +1576,16 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1568
1576
|
return
|
|
1569
1577
|
if plan.uncategorized:
|
|
1570
1578
|
raise UncategorizedPlanError("Can't apply a plan with uncategorized changes.")
|
|
1579
|
+
|
|
1580
|
+
if plan.explain:
|
|
1581
|
+
explainer = PlanExplainer(
|
|
1582
|
+
state_reader=self.state_reader,
|
|
1583
|
+
default_catalog=self.default_catalog,
|
|
1584
|
+
console=self.console,
|
|
1585
|
+
)
|
|
1586
|
+
explainer.evaluate(plan.to_evaluatable())
|
|
1587
|
+
return
|
|
1588
|
+
|
|
1571
1589
|
self.notification_target_manager.notify(
|
|
1572
1590
|
NotificationEvent.APPLY_START,
|
|
1573
1591
|
environment=plan.environment_naming_info.name,
|
|
@@ -229,6 +229,19 @@ class Environment(EnvironmentNamingInfo, EnvironmentSummary):
|
|
|
229
229
|
finalized_ts=self.finalized_ts,
|
|
230
230
|
)
|
|
231
231
|
|
|
232
|
+
def can_partially_promote(self, existing_environment: Environment) -> bool:
|
|
233
|
+
"""Returns True if the existing environment can be partially promoted to the current environment.
|
|
234
|
+
|
|
235
|
+
Partial promotion means that we don't need to re-create views for snapshots that are already promoted in the
|
|
236
|
+
target environment.
|
|
237
|
+
"""
|
|
238
|
+
return (
|
|
239
|
+
bool(existing_environment.finalized_ts)
|
|
240
|
+
and not existing_environment.expired
|
|
241
|
+
and existing_environment.gateway_managed == self.gateway_managed
|
|
242
|
+
and existing_environment.name == c.PROD
|
|
243
|
+
)
|
|
244
|
+
|
|
232
245
|
def _convert_list_to_models_and_store(
|
|
233
246
|
self, field: str, type_: t.Type[PydanticType]
|
|
234
247
|
) -> t.Optional[t.List[PydanticType]]:
|
|
@@ -83,6 +83,7 @@ class PlanBuilder:
|
|
|
83
83
|
environment state, or to use whatever snapshots are in the current environment state even if
|
|
84
84
|
the environment is not finalized.
|
|
85
85
|
interval_end_per_model: The mapping from model FQNs to target end dates.
|
|
86
|
+
explain: Whether to explain the plan instead of applying it.
|
|
86
87
|
"""
|
|
87
88
|
|
|
88
89
|
def __init__(
|
|
@@ -112,6 +113,7 @@ class PlanBuilder:
|
|
|
112
113
|
enable_preview: bool = False,
|
|
113
114
|
end_bounded: bool = False,
|
|
114
115
|
ensure_finalized_snapshots: bool = False,
|
|
116
|
+
explain: bool = False,
|
|
115
117
|
interval_end_per_model: t.Optional[t.Dict[str, int]] = None,
|
|
116
118
|
console: t.Optional[PlanBuilderConsole] = None,
|
|
117
119
|
user_provided_flags: t.Optional[t.Dict[str, UserProvidedFlags]] = None,
|
|
@@ -142,6 +144,7 @@ class PlanBuilder:
|
|
|
142
144
|
self._console = console or get_console()
|
|
143
145
|
self._choices: t.Dict[SnapshotId, SnapshotChangeCategory] = {}
|
|
144
146
|
self._user_provided_flags = user_provided_flags
|
|
147
|
+
self._explain = explain
|
|
145
148
|
|
|
146
149
|
self._start = start
|
|
147
150
|
if not self._start and (
|
|
@@ -273,6 +276,7 @@ class PlanBuilder:
|
|
|
273
276
|
empty_backfill=self._empty_backfill,
|
|
274
277
|
no_gaps=self._no_gaps,
|
|
275
278
|
forward_only=self._forward_only,
|
|
279
|
+
explain=self._explain,
|
|
276
280
|
allow_destructive_models=t.cast(t.Set, self._allow_destructive_models),
|
|
277
281
|
include_unmodified=self._include_unmodified,
|
|
278
282
|
environment_ttl=self._environment_ttl,
|
|
@@ -36,7 +36,7 @@ from sqlmesh.core.snapshot import (
|
|
|
36
36
|
SnapshotCreationFailedError,
|
|
37
37
|
)
|
|
38
38
|
from sqlmesh.utils import CompletionStatus
|
|
39
|
-
from sqlmesh.core.state_sync import StateSync
|
|
39
|
+
from sqlmesh.core.state_sync import StateSync, StateReader
|
|
40
40
|
from sqlmesh.core.state_sync.base import PromotionResult
|
|
41
41
|
from sqlmesh.utils.concurrency import NodeExecutionFailedError
|
|
42
42
|
from sqlmesh.utils.errors import PlanError
|
|
@@ -284,23 +284,7 @@ class BuiltInPlanEvaluator(PlanEvaluator):
|
|
|
284
284
|
new_snapshots=plan.new_snapshots, plan_id=plan.plan_id
|
|
285
285
|
)
|
|
286
286
|
|
|
287
|
-
|
|
288
|
-
set(plan.environment.promoted_snapshot_ids)
|
|
289
|
-
if plan.environment.promoted_snapshot_ids is not None
|
|
290
|
-
else None
|
|
291
|
-
)
|
|
292
|
-
|
|
293
|
-
def _should_create(s: Snapshot) -> bool:
|
|
294
|
-
if not s.is_model or s.is_symbolic:
|
|
295
|
-
return False
|
|
296
|
-
# Only create tables for snapshots that we're planning to promote or that were selected for backfill
|
|
297
|
-
return (
|
|
298
|
-
plan.is_selected_for_backfill(s.name)
|
|
299
|
-
or promoted_snapshot_ids is None
|
|
300
|
-
or s.snapshot_id in promoted_snapshot_ids
|
|
301
|
-
)
|
|
302
|
-
|
|
303
|
-
snapshots_to_create = [s for s in snapshots.values() if _should_create(s)]
|
|
287
|
+
snapshots_to_create = get_snapshots_to_create(plan, snapshots)
|
|
304
288
|
|
|
305
289
|
completion_status = None
|
|
306
290
|
progress_stopped = False
|
|
@@ -573,32 +557,7 @@ class BuiltInPlanEvaluator(PlanEvaluator):
|
|
|
573
557
|
plan: EvaluatablePlan,
|
|
574
558
|
new_snapshots: t.Dict[SnapshotId, Snapshot],
|
|
575
559
|
) -> None:
|
|
576
|
-
|
|
577
|
-
metadata_snapshots = []
|
|
578
|
-
for snapshot in new_snapshots.values():
|
|
579
|
-
if not snapshot.is_metadata or not snapshot.is_model or not snapshot.evaluatable:
|
|
580
|
-
continue
|
|
581
|
-
|
|
582
|
-
metadata_snapshots.append(snapshot)
|
|
583
|
-
|
|
584
|
-
# Bulk load all the previous snapshots
|
|
585
|
-
previous_snapshots = self.state_sync.get_snapshots(
|
|
586
|
-
[
|
|
587
|
-
s.previous_version.snapshot_id(s.name)
|
|
588
|
-
for s in metadata_snapshots
|
|
589
|
-
if s.previous_version
|
|
590
|
-
]
|
|
591
|
-
).values()
|
|
592
|
-
|
|
593
|
-
# Check if any of the snapshots have modifications to the audits field by comparing the hashes
|
|
594
|
-
audit_snapshots = {}
|
|
595
|
-
for snapshot, previous_snapshot in zip(metadata_snapshots, previous_snapshots):
|
|
596
|
-
new_audits_hash = snapshot.model.audit_metadata_hash()
|
|
597
|
-
previous_audit_hash = previous_snapshot.model.audit_metadata_hash()
|
|
598
|
-
|
|
599
|
-
if snapshot.model.audits and previous_audit_hash != new_audits_hash:
|
|
600
|
-
audit_snapshots[snapshot.snapshot_id] = snapshot
|
|
601
|
-
|
|
560
|
+
audit_snapshots = get_audit_only_snapshots(new_snapshots, self.state_sync)
|
|
602
561
|
if not audit_snapshots:
|
|
603
562
|
return
|
|
604
563
|
|
|
@@ -636,3 +595,52 @@ def update_intervals_for_new_snapshots(
|
|
|
636
595
|
|
|
637
596
|
if snapshots_intervals:
|
|
638
597
|
state_sync.add_snapshots_intervals(snapshots_intervals)
|
|
598
|
+
|
|
599
|
+
|
|
600
|
+
def get_audit_only_snapshots(
|
|
601
|
+
new_snapshots: t.Dict[SnapshotId, Snapshot], state_reader: StateReader
|
|
602
|
+
) -> t.Dict[SnapshotId, Snapshot]:
|
|
603
|
+
metadata_snapshots = []
|
|
604
|
+
for snapshot in new_snapshots.values():
|
|
605
|
+
if not snapshot.is_metadata or not snapshot.is_model or not snapshot.evaluatable:
|
|
606
|
+
continue
|
|
607
|
+
|
|
608
|
+
metadata_snapshots.append(snapshot)
|
|
609
|
+
|
|
610
|
+
# Bulk load all the previous snapshots
|
|
611
|
+
previous_snapshots = state_reader.get_snapshots(
|
|
612
|
+
[s.previous_version.snapshot_id(s.name) for s in metadata_snapshots if s.previous_version]
|
|
613
|
+
).values()
|
|
614
|
+
|
|
615
|
+
# Check if any of the snapshots have modifications to the audits field by comparing the hashes
|
|
616
|
+
audit_snapshots = {}
|
|
617
|
+
for snapshot, previous_snapshot in zip(metadata_snapshots, previous_snapshots):
|
|
618
|
+
new_audits_hash = snapshot.model.audit_metadata_hash()
|
|
619
|
+
previous_audit_hash = previous_snapshot.model.audit_metadata_hash()
|
|
620
|
+
|
|
621
|
+
if snapshot.model.audits and previous_audit_hash != new_audits_hash:
|
|
622
|
+
audit_snapshots[snapshot.snapshot_id] = snapshot
|
|
623
|
+
|
|
624
|
+
return audit_snapshots
|
|
625
|
+
|
|
626
|
+
|
|
627
|
+
def get_snapshots_to_create(
|
|
628
|
+
plan: EvaluatablePlan, snapshots: t.Dict[SnapshotId, Snapshot]
|
|
629
|
+
) -> t.List[Snapshot]:
|
|
630
|
+
promoted_snapshot_ids = (
|
|
631
|
+
set(plan.environment.promoted_snapshot_ids)
|
|
632
|
+
if plan.environment.promoted_snapshot_ids is not None
|
|
633
|
+
else None
|
|
634
|
+
)
|
|
635
|
+
|
|
636
|
+
def _should_create(s: Snapshot) -> bool:
|
|
637
|
+
if not s.is_model or s.is_symbolic:
|
|
638
|
+
return False
|
|
639
|
+
# Only create tables for snapshots that we're planning to promote or that were selected for backfill
|
|
640
|
+
return (
|
|
641
|
+
plan.is_selected_for_backfill(s.name)
|
|
642
|
+
or promoted_snapshot_ids is None
|
|
643
|
+
or s.snapshot_id in promoted_snapshot_ids
|
|
644
|
+
)
|
|
645
|
+
|
|
646
|
+
return [s for s in snapshots.values() if _should_create(s)]
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import abc
|
|
2
|
+
import typing as t
|
|
3
|
+
import logging
|
|
4
|
+
|
|
5
|
+
from rich.console import Console as RichConsole
|
|
6
|
+
from rich.tree import Tree
|
|
7
|
+
from sqlglot.dialects.dialect import DialectType
|
|
8
|
+
from sqlmesh.core import constants as c
|
|
9
|
+
from sqlmesh.core.console import Console, TerminalConsole, get_console
|
|
10
|
+
from sqlmesh.core.environment import EnvironmentNamingInfo
|
|
11
|
+
from sqlmesh.core.plan.definition import EvaluatablePlan, SnapshotIntervals
|
|
12
|
+
from sqlmesh.core.plan import stages
|
|
13
|
+
from sqlmesh.core.plan.evaluator import (
|
|
14
|
+
PlanEvaluator,
|
|
15
|
+
)
|
|
16
|
+
from sqlmesh.core.state_sync import StateReader
|
|
17
|
+
from sqlmesh.core.snapshot.definition import (
|
|
18
|
+
SnapshotInfoMixin,
|
|
19
|
+
)
|
|
20
|
+
from sqlmesh.utils import Verbosity, rich as srich
|
|
21
|
+
from sqlmesh.utils.date import to_ts
|
|
22
|
+
from sqlmesh.utils.errors import SQLMeshError
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
logger = logging.getLogger(__name__)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class PlanExplainer(PlanEvaluator):
|
|
29
|
+
def __init__(
|
|
30
|
+
self,
|
|
31
|
+
state_reader: StateReader,
|
|
32
|
+
default_catalog: t.Optional[str],
|
|
33
|
+
console: t.Optional[Console] = None,
|
|
34
|
+
):
|
|
35
|
+
self.state_reader = state_reader
|
|
36
|
+
self.default_catalog = default_catalog
|
|
37
|
+
self.console = console or get_console()
|
|
38
|
+
|
|
39
|
+
def evaluate(
|
|
40
|
+
self, plan: EvaluatablePlan, circuit_breaker: t.Optional[t.Callable[[], bool]] = None
|
|
41
|
+
) -> None:
|
|
42
|
+
plan_stages = stages.build_plan_stages(plan, self.state_reader, self.default_catalog)
|
|
43
|
+
explainer_console = _get_explainer_console(
|
|
44
|
+
self.console, plan.environment, self.default_catalog
|
|
45
|
+
)
|
|
46
|
+
explainer_console.explain(plan_stages)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class ExplainerConsole(abc.ABC):
|
|
50
|
+
@abc.abstractmethod
|
|
51
|
+
def explain(self, stages: t.List[stages.PlanStage]) -> None:
|
|
52
|
+
pass
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
MAX_TREE_LENGTH = 10
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
class RichExplainerConsole(ExplainerConsole):
|
|
59
|
+
def __init__(
|
|
60
|
+
self,
|
|
61
|
+
environment_naming_info: EnvironmentNamingInfo,
|
|
62
|
+
dialect: DialectType,
|
|
63
|
+
default_catalog: t.Optional[str],
|
|
64
|
+
verbosity: Verbosity = Verbosity.DEFAULT,
|
|
65
|
+
console: t.Optional[RichConsole] = None,
|
|
66
|
+
):
|
|
67
|
+
self.environment_naming_info = environment_naming_info
|
|
68
|
+
self.dialect = dialect
|
|
69
|
+
self.default_catalog = default_catalog
|
|
70
|
+
self.verbosity = verbosity
|
|
71
|
+
self.console: RichConsole = console or srich.console
|
|
72
|
+
|
|
73
|
+
def explain(self, stages: t.List[stages.PlanStage]) -> None:
|
|
74
|
+
tree = Tree("[bold]Explained plan[/bold]")
|
|
75
|
+
for stage in stages:
|
|
76
|
+
handler_name = f"visit_{_to_snake_case(stage.__class__.__name__)}"
|
|
77
|
+
if not hasattr(self, handler_name):
|
|
78
|
+
logger.error("Unexpected stage: %s", stage.__class__.__name__)
|
|
79
|
+
continue
|
|
80
|
+
handler = getattr(self, handler_name)
|
|
81
|
+
result = handler(stage)
|
|
82
|
+
if result:
|
|
83
|
+
tree.add(self._limit_tree(result))
|
|
84
|
+
self.console.print(tree)
|
|
85
|
+
|
|
86
|
+
def visit_before_all_stage(self, stage: stages.BeforeAllStage) -> Tree:
|
|
87
|
+
return Tree("[bold]Execute before all statements[/bold]")
|
|
88
|
+
|
|
89
|
+
def visit_after_all_stage(self, stage: stages.AfterAllStage) -> Tree:
|
|
90
|
+
return Tree("[bold]Execute after all statements[/bold]")
|
|
91
|
+
|
|
92
|
+
def visit_physical_layer_update_stage(self, stage: stages.PhysicalLayerUpdateStage) -> Tree:
|
|
93
|
+
if not stage.snapshots:
|
|
94
|
+
return Tree("[bold]SKIP: No physical layer updates to perform[/bold]")
|
|
95
|
+
|
|
96
|
+
tree = Tree(
|
|
97
|
+
"[bold]Validate SQL and create physical layer tables and views if they do not exist[/bold]"
|
|
98
|
+
)
|
|
99
|
+
for snapshot in stage.snapshots:
|
|
100
|
+
is_deployable = (
|
|
101
|
+
stage.deployability_index.is_deployable(snapshot)
|
|
102
|
+
if self.environment_naming_info.name != c.PROD
|
|
103
|
+
else True
|
|
104
|
+
)
|
|
105
|
+
display_name = self._display_name(snapshot)
|
|
106
|
+
table_name = snapshot.table_name(is_deployable)
|
|
107
|
+
model_tree = Tree(f"{display_name} -> {table_name}")
|
|
108
|
+
|
|
109
|
+
if snapshot.is_model:
|
|
110
|
+
if snapshot.model.pre_statements:
|
|
111
|
+
model_tree.add("Run pre-statements")
|
|
112
|
+
if snapshot.model.annotated:
|
|
113
|
+
model_tree.add("Dry run model query without inserting results")
|
|
114
|
+
|
|
115
|
+
if snapshot.is_view:
|
|
116
|
+
create_tree = Tree("Create view if it doesn't exist")
|
|
117
|
+
elif snapshot.is_forward_only and snapshot.previous_versions:
|
|
118
|
+
prod_table = snapshot.table_name(True)
|
|
119
|
+
create_tree = Tree(
|
|
120
|
+
f"Clone {prod_table} into {table_name} and then update its schema if it doesn't exist"
|
|
121
|
+
)
|
|
122
|
+
else:
|
|
123
|
+
create_tree = Tree("Create table if it doesn't exist")
|
|
124
|
+
|
|
125
|
+
if not is_deployable:
|
|
126
|
+
create_tree.add("[orange1]preview[/orange1]: data will NOT be reused in production")
|
|
127
|
+
model_tree.add(create_tree)
|
|
128
|
+
|
|
129
|
+
if snapshot.is_model and snapshot.model.post_statements:
|
|
130
|
+
model_tree.add("Run post-statements")
|
|
131
|
+
|
|
132
|
+
tree.add(model_tree)
|
|
133
|
+
return tree
|
|
134
|
+
|
|
135
|
+
def visit_audit_only_run_stage(self, stage: stages.AuditOnlyRunStage) -> Tree:
|
|
136
|
+
tree = Tree("[bold]Audit-only execution[/bold]")
|
|
137
|
+
for snapshot in stage.snapshots:
|
|
138
|
+
display_name = self._display_name(snapshot)
|
|
139
|
+
tree.add(display_name)
|
|
140
|
+
return tree
|
|
141
|
+
|
|
142
|
+
def visit_restatement_stage(self, stage: stages.RestatementStage) -> Tree:
|
|
143
|
+
tree = Tree("[bold]Invalidate data intervals as part of restatement[/bold]")
|
|
144
|
+
for snapshot_table_info, interval in stage.snapshot_intervals.items():
|
|
145
|
+
display_name = self._display_name(snapshot_table_info)
|
|
146
|
+
tree.add(f"{display_name} [{to_ts(interval[0])} - {to_ts(interval[1])}]")
|
|
147
|
+
return tree
|
|
148
|
+
|
|
149
|
+
def visit_backfill_stage(self, stage: stages.BackfillStage) -> Tree:
|
|
150
|
+
if not stage.snapshot_to_intervals:
|
|
151
|
+
return Tree("[bold]SKIP: No model batches to execute[/bold]")
|
|
152
|
+
|
|
153
|
+
tree = Tree(
|
|
154
|
+
"[bold]Backfill models by running their queries and run standalone audits[/bold]"
|
|
155
|
+
)
|
|
156
|
+
for snapshot, intervals in stage.snapshot_to_intervals.items():
|
|
157
|
+
display_name = self._display_name(snapshot)
|
|
158
|
+
if snapshot.is_model:
|
|
159
|
+
table_name = snapshot.table_name(stage.deployability_index.is_deployable(snapshot))
|
|
160
|
+
model_tree = Tree(f"{display_name} -> {table_name}")
|
|
161
|
+
|
|
162
|
+
for signal_name, _ in snapshot.model.signals:
|
|
163
|
+
model_tree.add(f"Check '{signal_name}' signal")
|
|
164
|
+
|
|
165
|
+
if snapshot.model.pre_statements:
|
|
166
|
+
model_tree.add("Run pre-statements")
|
|
167
|
+
|
|
168
|
+
if snapshot.is_incremental:
|
|
169
|
+
current_intervals = (
|
|
170
|
+
snapshot.intervals
|
|
171
|
+
if stage.deployability_index.is_deployable(snapshot)
|
|
172
|
+
else snapshot.dev_intervals
|
|
173
|
+
)
|
|
174
|
+
if current_intervals:
|
|
175
|
+
formatted_range = SnapshotIntervals(
|
|
176
|
+
snapshot_id=snapshot.snapshot_id, intervals=intervals
|
|
177
|
+
).format_intervals(snapshot.node.interval_unit)
|
|
178
|
+
model_tree.add(
|
|
179
|
+
f"Incrementally insert records within the range [{formatted_range}]"
|
|
180
|
+
)
|
|
181
|
+
else:
|
|
182
|
+
# If there are no intervals, the table will be fully refreshed
|
|
183
|
+
model_tree.add("Fully refresh table")
|
|
184
|
+
elif snapshot.is_view:
|
|
185
|
+
model_tree.add("Recreate view")
|
|
186
|
+
else:
|
|
187
|
+
model_tree.add("Fully refresh table")
|
|
188
|
+
|
|
189
|
+
if snapshot.model.post_statements:
|
|
190
|
+
model_tree.add("Run post-statements")
|
|
191
|
+
|
|
192
|
+
if snapshot.model.audits:
|
|
193
|
+
for audit_name, _ in snapshot.model.audits:
|
|
194
|
+
model_tree.add(f"Run '{audit_name}' audit")
|
|
195
|
+
|
|
196
|
+
tree.add(model_tree)
|
|
197
|
+
else:
|
|
198
|
+
tree.add(f"{display_name} \[standalone audit]")
|
|
199
|
+
return tree
|
|
200
|
+
|
|
201
|
+
def visit_migrate_schemas_stage(self, stage: stages.MigrateSchemasStage) -> Tree:
|
|
202
|
+
tree = Tree(
|
|
203
|
+
"[bold]Update schemas (add, drop, alter columns) of production physical tables to reflect forward-only changes[/bold]"
|
|
204
|
+
)
|
|
205
|
+
for snapshot in stage.snapshots:
|
|
206
|
+
display_name = self._display_name(snapshot)
|
|
207
|
+
table_name = snapshot.table_name(True)
|
|
208
|
+
tree.add(f"{display_name} -> {table_name}")
|
|
209
|
+
return tree
|
|
210
|
+
|
|
211
|
+
def visit_virtual_layer_update_stage(self, stage: stages.VirtualLayerUpdateStage) -> Tree:
|
|
212
|
+
tree = Tree(
|
|
213
|
+
f"[bold]Update the virtual layer for environment '{self.environment_naming_info.name}'[/bold]"
|
|
214
|
+
)
|
|
215
|
+
promote_tree = Tree(
|
|
216
|
+
"[bold]Create or update views in the virtual layer to point at new physical tables and views[/bold]"
|
|
217
|
+
)
|
|
218
|
+
for snapshot in stage.promoted_snapshots:
|
|
219
|
+
display_name = self._display_name(snapshot)
|
|
220
|
+
table_name = snapshot.table_name(stage.deployability_index.is_representative(snapshot))
|
|
221
|
+
promote_tree.add(f"{display_name} -> {table_name}")
|
|
222
|
+
|
|
223
|
+
demote_tree = Tree(
|
|
224
|
+
"[bold]Delete views in the virtual layer for models that were removed[/bold]"
|
|
225
|
+
)
|
|
226
|
+
for snapshot in stage.demoted_snapshots:
|
|
227
|
+
display_name = self._display_name(snapshot)
|
|
228
|
+
demote_tree.add(display_name)
|
|
229
|
+
|
|
230
|
+
if stage.promoted_snapshots:
|
|
231
|
+
tree.add(self._limit_tree(promote_tree))
|
|
232
|
+
if stage.demoted_snapshots:
|
|
233
|
+
tree.add(self._limit_tree(demote_tree))
|
|
234
|
+
return tree
|
|
235
|
+
|
|
236
|
+
def visit_environment_record_update_stage(
|
|
237
|
+
self, stage: stages.EnvironmentRecordUpdateStage
|
|
238
|
+
) -> t.Optional[Tree]:
|
|
239
|
+
return None
|
|
240
|
+
|
|
241
|
+
def _display_name(self, snapshot: SnapshotInfoMixin) -> str:
|
|
242
|
+
return snapshot.display_name(
|
|
243
|
+
self.environment_naming_info,
|
|
244
|
+
self.default_catalog if self.verbosity < Verbosity.VERY_VERBOSE else None,
|
|
245
|
+
dialect=self.dialect,
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
def _limit_tree(self, tree: Tree) -> Tree:
|
|
249
|
+
tree_length = len(tree.children)
|
|
250
|
+
if tree_length <= MAX_TREE_LENGTH:
|
|
251
|
+
return tree
|
|
252
|
+
if self.verbosity < Verbosity.VERY_VERBOSE:
|
|
253
|
+
tree.children = [
|
|
254
|
+
tree.children[0],
|
|
255
|
+
Tree(f".... {tree_length - 2} more ...."),
|
|
256
|
+
tree.children[-1],
|
|
257
|
+
]
|
|
258
|
+
return tree
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
def _get_explainer_console(
|
|
262
|
+
console: t.Optional[Console],
|
|
263
|
+
environment_naming_info: EnvironmentNamingInfo,
|
|
264
|
+
default_catalog: t.Optional[str],
|
|
265
|
+
) -> ExplainerConsole:
|
|
266
|
+
console = console or get_console()
|
|
267
|
+
if not isinstance(console, TerminalConsole):
|
|
268
|
+
raise SQLMeshError("Plain explaination is only supported in the terminal.")
|
|
269
|
+
return RichExplainerConsole(
|
|
270
|
+
environment_naming_info=environment_naming_info,
|
|
271
|
+
dialect=console.dialect,
|
|
272
|
+
default_catalog=default_catalog,
|
|
273
|
+
verbosity=console.verbosity,
|
|
274
|
+
console=console.console,
|
|
275
|
+
)
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
def _to_snake_case(name: str) -> str:
|
|
279
|
+
return "".join(
|
|
280
|
+
f"_{c.lower()}" if c.isupper() and idx != 0 else c.lower() for idx, c in enumerate(name)
|
|
281
|
+
)
|