sqlmesh 0.226.1.dev3__tar.gz → 0.226.1.dev4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of sqlmesh might be problematic. Click here for more details.
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/PKG-INFO +1 -1
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/_version.py +3 -3
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/context.py +8 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/scheduler.py +10 -1
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/signal.py +35 -14
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/PKG-INFO +1 -1
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/SOURCES.txt +1 -0
- sqlmesh-0.226.1.dev4/tests/core/engine_adapter/integration/test_freshness.py +478 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration.py +0 -153
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/config.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/continue_config.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/install-prerequisites.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/manage-test-db.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/test_migration.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/update-pypirc.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.circleci/wait-for-db.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.claude/agents/code-reviewer.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.claude/agents/developer.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.claude/agents/qa-reviewer.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.claude/agents/technical-writer.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/dependabot.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/scripts/get_scm_version.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/workflows/pr.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/workflows/private-repo-test.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/workflows/release_extension.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.github/workflows/release_shared_js.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.nvmrc +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.pre-commit-config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.prettierignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.prettierrc.cjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/.readthedocs.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/CLAUDE.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/LICENSE +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/MANIFEST.in +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/Makefile +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/README.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/benchmarks/lsp_render_model_bench.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/custom_materializations/custom_materializations/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/custom_materializations/custom_materializations/custom_kind.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/custom_materializations/custom_materializations/full.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/custom_materializations/pyproject.toml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/audits/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/audits/assert_positive_order_ids.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/constants.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/data/.keep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/macros/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/full_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/ibis_full_model_python.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/ibis_full_model_sql.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/incremental_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/models/seed_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/seeds/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/seeds/seed_data.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/ibis/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/.vscode/settings.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/audits/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/linter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/linter/user.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/macros/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/models/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/models/a.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/models/b.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_1/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/audits/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/macros/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/models/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/models/c.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/models/d.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/models/e.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi/repo_2/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/bronze/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/bronze/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/bronze/models/a.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/bronze/models/b.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/bronze/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/macros/store_schemas.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/models/c.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/models/d.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_dbt/silver/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/macros/round_dollars.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/models/c.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/models/d.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/models/e.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/dbt_repo/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/sqlmesh_repo/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/sqlmesh_repo/models/a.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/multi_hybrid/sqlmesh_repo/models/b.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/audits/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/audits/items.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/audits/order_items.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/audits/raw_demographics.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/data/.keep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/external_models/model1/model1.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/external_models/model2/model2.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/external_models/prod.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/external_models.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/helper.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/linter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/linter/user.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/macros/macros.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/macros/macros.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/macros/utils.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/metrics/metrics.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/active_customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/blueprint.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/customer_revenue_lifetime.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/disabled.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/disabled.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/items.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/latest_order.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/marketing.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/order_items.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/orders.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/raw_marketing.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/top_waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/waiter_names.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/models/waiters.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/signals/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/sqlmesh-requirements.lock +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/tests/test_customer_revenue_by_day.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/tests/test_customer_revenue_lifetime.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi/tests/test_order_items.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/.user.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/analyses/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/macros/incremental.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/macros/log_value.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/top_waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/models/waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/seeds/items.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/seeds/order_items.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/seeds/orders.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/seeds/properties.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/snapshots/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/tests/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/tests/generic/greater_than_amount.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dbt/tests/generic/less_than_amount.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/sushi_dlt/sushi_pipeline.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/audits/db/order_f.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/macros/macros.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/db/customer_d.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/db/item_d.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/db/order_f.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/db/order_item_f.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/src/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/src/customer_details.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/src/menu_item_details.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/src/order_item_details.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/models/src/shared.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/seeds/src/menu_item_details.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/tests/test_customer_d.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/examples/wursthall/tests/test_order_item_f.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/mkdocs.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/pdoc/cli.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/pdoc/templates/module.html.jinja2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/pnpm-lock.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/pnpm-workspace.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/pyproject.toml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/setup.cfg +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/.airflowignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cicd/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cicd/bot.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cicd/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cli/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cli/main.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cli/options.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/cli/project_init.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/_typing.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/analytics/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/analytics/collector.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/analytics/dispatcher.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/audit/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/audit/builtin.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/audit/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/base.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/categorizer.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/common.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/connection.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/dbt.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/format.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/gateway.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/janitor.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/linter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/migration.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/model.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/naming.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/plan.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/root.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/run.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/scheduler.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/config/ui.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/console.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/constants.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/context_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/dialect.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/_typing.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/athena.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/base.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/base_postgres.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/bigquery.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/clickhouse.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/databricks.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/duckdb.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/fabric.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/mixins.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/mssql.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/mysql.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/postgres.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/redshift.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/risingwave.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/shared.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/snowflake.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/spark.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/engine_adapter/trino.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/environment.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/janitor.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/lineage.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/helpers.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/rule.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/rules/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/linter/rules/builtin.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/macros.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/metric/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/metric/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/metric/rewriter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/cache.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/common.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/decorator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/kind.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/meta.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/schema.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/model/seed.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/node.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/notification_target.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/builder.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/common.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/evaluator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/explainer.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/plan/stages.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/reference.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/renderer.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/schema_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/schema_loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/selector.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/cache.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/categorizer.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/evaluator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/snapshot/execution_tracker.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/base.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/cache.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/common.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/environment.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/facade.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/interval.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/migrator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/snapshot.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/utils.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/db/version.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/state_sync/export_import.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/table_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/context.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/definition.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/discovery.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/result.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/test/runner.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/core/user.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/adapter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/basemodel.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/builtin.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/column.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/common.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/context.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/manifest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/model.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/package.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/profile.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/project.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/relation.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/seed.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/source.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/target.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/test.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/dbt/util.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/engines/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/engines/spark/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/engines/spark/db_api/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/engines/spark/db_api/errors.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/engines/spark/db_api/spark_session.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/dlt.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/github/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/github/cicd/command.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/github/cicd/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/github/cicd/controller.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/integrations/slack.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/api.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/commands.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/completions.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/context.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/custom.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/errors.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/helpers.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/hints.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/main.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/reference.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/rename.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/tests_ranges.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/lsp/uri.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/magics.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0000_baseline.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0061_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0062_add_model_gateway.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0063_change_signals.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0064_join_when_matched_strings.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0065_add_model_optimize.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0066_add_auto_restatements.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0067_add_tsql_date_full_precision.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0068_include_unrendered_query_in_metadata_hash.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0069_update_dev_table_suffix.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0070_include_grains_in_metadata_hash.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0071_add_dev_version_to_intervals.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0072_add_environment_statements.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0073_remove_symbolic_disable_restatement.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0074_add_partition_by_time_column_property.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0075_remove_validate_query.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0076_add_cron_tz.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0077_fix_column_type_hash_calculation.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0078_warn_if_non_migratable_python_env.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0079_add_gateway_managed_property.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0080_add_batch_size_to_scd_type_2_models.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0081_update_partitioned_by.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0082_warn_if_incorrectly_duplicated_statements.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0083_use_sql_for_scd_time_data_type_data_hash.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0084_normalize_quote_when_matched_and_merge_filter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0085_deterministic_repr.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0086_check_deterministic_bug.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0087_normalize_blueprint_variables.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0088_warn_about_variable_python_env_diffs.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0089_add_virtual_environment_mode.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0090_add_forward_only_column.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0091_on_additive_change.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0092_warn_about_dbt_data_type_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0093_use_raw_sql_in_fingerprint.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0094_add_dev_version_and_fingerprint_columns.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0095_warn_about_dbt_raw_sql_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0096_remove_plan_dags_table.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0097_add_dbt_name_in_node.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0098_add_dbt_node_info_in_node.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0099_add_last_altered_to_intervals.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/migrations/v0100_add_grants_and_grants_target_layer.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/py.typed +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/schedulers/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/aws.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/cache.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/concurrency.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/connection_pool.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/conversions.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/cron.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/dag.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/date.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/errors.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/git.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/hashing.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/jinja.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/lineage.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/metaprogramming.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/migration.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/pandas.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/process.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/pydantic.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/rich.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/windows.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh/utils/yaml.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/dependency_links.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/entry_points.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/requires.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh.egg-info/top_level.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/cli.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/console.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/error.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/operations.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/options.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/sqlmesh_dbt/selectors.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/cli/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/cli/test_cli.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/cli/test_integration_cli.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/cli/test_project_init.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/analytics/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/analytics/test_collector.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/analytics/test_dispatcher.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/config.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/_common-hive.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/clickhouse/config.xml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/clickhouse/keeper.xml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.clickhouse.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.mssql.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.mysql.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.postgres.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.risingwave.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.spark.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/compose.trino.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/init-metastore-db.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/spark/Dockerfile +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/spark/conf/hive-site.xml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/spark/conf/spark-defaults.conf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake.properties +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_delta.properties +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_iceberg.properties +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_nessie.properties +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/docker/trino/catalog/testing.properties +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_athena.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_bigquery.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_clickhouse.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_duckdb.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_fabric.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_postgres.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_redshift.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_risingwave.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_snowflake.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/integration/test_integration_trino.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_athena.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_base.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_base_postgres.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_bigquery.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_clickhouse.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_databricks.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_duckdb.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_fabric.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_mixins.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_mssql.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_mysql.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_postgres.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_redshift.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_risingwave.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_snowflake.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_spark.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/engine_adapter/test_trino.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_audits.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_auto_restatement.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_aux_commands.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_change_scenarios.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_cron.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_dbt.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_dev_only_vde.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_forward_only.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_model_kinds.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_multi_repo.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_plan_options.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_restatement.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/test_run.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/integration/utils.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/linter/test_builtin.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/linter/test_helpers.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/metric/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/metric/test_metric.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/metric/test_rewriter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/state_sync/test_export_import.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/state_sync/test_state_sync.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_audit.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_connection_config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_console.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_context.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_dialect.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_environment.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_execution_tracker.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_format.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_janitor.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_lineage.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_macros.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_model.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_notification_target.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_plan.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_plan_evaluator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_plan_stages.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_reference.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_rule.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_scheduler.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_schema_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_schema_loader.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_seed.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_selector_dbt.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_selector_native.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_snapshot.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_snapshot_evaluator.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_table_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/core/test_test.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_global_flags.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_list.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_operations.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_options.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_run.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/cli/test_selectors.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_adapter.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_custom_materializations.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_docs.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_integration.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_manifest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_model.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_test.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_transformation.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/dbt/test_util.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/engines/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/engines/spark/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/engines/spark/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/engines/spark/test_db_api.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/empty_project/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/empty_project/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/docs.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/orders.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/overview.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/staging/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/staging/stg_customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/staging/stg_orders.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/models/staging/stg_payments.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/seeds/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/seeds/raw_customers.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/seeds/raw_orders.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/jaffle_shop_duckdb/seeds/raw_payments.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/analyses/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/analyses/waiter_performance_analysis.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/dbt_packages/my_macros/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/dbt_packages/my_macros/macros/log_value_alt.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/dbt_packages/my_package/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/dbt_packages/my_package/models/dummy_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/logs/dbt.log.legacy +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/check_model_is_table.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/create_tables.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/distinct.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/graph_usage.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/incremental.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/insert_hook.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/log_value.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/materializations/custom_incremental.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/test_dependencies.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/macros/top_waiters_limit.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/custom_incremental_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/custom_incremental_with_filter.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/disabled_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/dynamic_graph_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/empty_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/model_with_raw_code.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/model_with_transaction_hooks.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/non_validated_model.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/simple_model_a.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/simple_model_b.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/top_waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/models/waiters_doc_block.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/macros/packaged_tables.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/models/customers.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/packages.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/profiles.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/schema.yaml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/seed_sources.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/seeds/properties.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/seeds/waiter_revenue_semicolon.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/snapshots/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/snapshots/items_no_hard_delete_snapshot.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/snapshots/items_snapshots.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/source_data/items.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/source_data/order_items.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/source_data/orders.csv +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/dbt/sushi_test/tests/test_top_waiters.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_closed.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_command_deploy.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_comment.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_review_submit.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_synchronized.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/github/pull_request_synchronized_enterprise.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/migrations/environments.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/migrations/intervals.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/migrations/snapshots.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/migrations/versions.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/audits/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/macros/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/macros/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/models/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/models/first_schema/model_one.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/models/first_schema/model_two.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/models/second_schema/model_one.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/models/second_schema/model_two.sql +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/multi_virtual_layer/tests/.gitkeep +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/snowflake/rsa_key_no_pass.p8 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/fixtures/snowflake/rsa_key_pass.p8 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/test_config.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/test_github_commands.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/test_github_controller.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/test_github_event.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/github/cicd/test_integration.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/jupyter/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/jupyter/example_outputs.ipynb +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/integrations/jupyter/test_magics.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_code_actions.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_completions.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_context.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_diagnostics.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_document_highlight.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_hints.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_cte.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_cte_find_all.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_external_model.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_macro.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_macro_find_all.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_macro_multi.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_model_column_prefix.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_reference_model_find_all.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/lsp/test_rename_cte.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/pyproject.toml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/schedulers/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/setup.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/test_forking.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/pandas.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_aws.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_cache.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_concurrency.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_connection_pool.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_dag.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_date.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_filesystem.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_filters.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_helpers.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_jinja.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_lineage_description.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_metaprogramming.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_pydantic.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_windows.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/utils/test_yaml.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/web/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/web/conftest.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/web/test_lineage.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tests/web/test_main.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/README.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/validating_migration_numbers.sh +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/vscode/extensions.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/vscode/launch.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/vscode/settings.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/tooling/vscode/tasks.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/src/brand.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/src/callbacks.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/src/result.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/bus/tsconfig.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/.vscodeignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/CHANGELOG.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/README.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/assets/images/diff.svg +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/assets/logo.png +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/assets/logo.svg +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/esbuild.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/eslint.config.mjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/playwright.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/auth/auth.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/commands.test.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/format.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/printEnvironment.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/renderModel.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/signin.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/signinSpecifyFlow.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/signout.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/stop.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/commands/tableDiff.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/completion/completion.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/extension.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/lsp/custom.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/lsp/lsp.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/providers/renderedModelProvider.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/tests/tests.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/constants.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/log.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/python.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/settings.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/utilities.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/common/vscodeapi.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/errors.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/exec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/isCodespaces.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/isWindows.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/python.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/semver.test.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/semver.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/sleep.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/utilities/sqlmesh/sqlmesh.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/src/webviews/lineagePanel.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/bad_setup.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/broken_project.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/commands.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/completions.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/configuration.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/diagnostics.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/extension.setup.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/extension.teardown.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/external_models.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/find_references.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/fixtures.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/format.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/go_to_definition.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/hints.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/lineage.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/lineage_settings.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/multi_project.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/python_env.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/quickfix.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/rename_cte.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/render.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/stop.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud/README.md +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud/mock_tcloud/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud/mock_tcloud/cli.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud/pyproject.toml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tcloud_utils.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/tests.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/utils.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/utils_code_server.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tests/venv_naming.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tsconfig.build.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tsconfig.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/tsconfig.test.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/extension/vitest.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/openapi.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.cta.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.storybook/main.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.storybook/preview.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.storybook/storybook.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/.storybook/vitest.setup.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/index.html +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/orval.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/App.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/api/client.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/api/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/api/instance.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/button/Button.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/CogIcon.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/Graph.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/SettingsControl.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/constants.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/context.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/types.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/workers/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/graph/workers/lineage.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/input/Input.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/input/Selector.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/Card.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/ColumnStatsSection.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/ContentSections.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/HeaderCard.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/Legend.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/RerunController.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/RowStatsSection.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/SampleDataSection.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/SchemaDiffSection.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/SectionCard.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/SectionToggle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/TableDiff.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/TableDiffResults.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/hooks.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/tailwind-utils.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/tablediff/types.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/components/title/Title.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/domain/column.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/domain/initial.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/domain/lineage.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/domain/models.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/domain/sqlmesh-model.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/hooks/eventBus.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/hooks/vscode.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/main.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/pages/lineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/pages/tablediff.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/reportWebVitals.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/routeTree.gen.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/routes/__root.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/routes/index.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/routes/lineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/routes/tablediff.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/style/variants.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/styles.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/utils/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/utils/receiveEvents.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/utils/rpc.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/src/utils/vscodeapi.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/tailwind.config.cjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/tsconfig.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/vite.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/vscode/react/vitest.shims.d.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/.dockerignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/Dockerfile.api +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/Dockerfile.app +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Audits-CBiYyyx-.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Banner-DSRbUlO5.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/ChevronDownIcon-MK_nrjD_.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/ChevronRightIcon-CLWtT22Q.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Content-BNuGZN5l.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Content-CSHJyW0n.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Data-C1oRDbLx.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/DataCatalog-HXyX2-_j.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Editor-BDyfpUuw.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Editor-D0jNItwC.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Errors-BfuFLcPi.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/FileExplorer-BR9IE3he.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Footer-CgBEtiAh.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Header-DSqR6nSO.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Input-B-oZ6fGO.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Lineage-DYQVwDbD.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/ListboxShow-BE5-xevs.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/ModelLineage-DkIFAYo4.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Models-D5dWr8RB.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Page-C-XfU5BR.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Plan-ZEuTINBq.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/PlusCircleIcon-DVXAHG8_.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/ReportErrors-B7FEPzMB.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Root-8aZyhPxF.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/SearchList-W_iT2G82.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/SelectEnvironment-C65jALmO.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/SourceList-DSLO6nVJ.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/SourceListItem-BHt8d9-I.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/SplitPane-CViaZmw6.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Tests-DhaVt5t1.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/Welcome-DvpjH-_4.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/context-BctCsyGb.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/context-DFNeGsFF.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/editor-CcO28cqd.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/file-CvJN3aZO.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/floating-ui.react-dom-CjE-JNW1.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/help-B59vE3aE.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/help-DuPhjipa.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/index-C-dJH7yZ.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/index-Dj0i1-CA.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/plan-BTRSbjKn.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/popover-_Sf0yvOI.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/assets/project-BvSOI8MY.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/css/base.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/css/design.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/favicons/favicon.svg +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/dist/index.html +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/eslint.config.mjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/index.html +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/openapi.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/orval.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/playwright.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/postcss.config.cjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/css/base.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/css/design.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/favicons/favicon.svg +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/public/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/App.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/api/channels.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/api/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/api/instance.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/context/context.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/context/editor.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/context/plan.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/context/project.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/context/theme.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/hooks/useActiveFocus.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/hooks/useLocalStorage.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/banner/Banner.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/banner/Welcome.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/button/Button.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/button/tests/Button.spec.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/container/Container.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/divider/tests/Divider.spec.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/documentation/Documentation.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/Editor.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/Editor.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorCode.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorFooter.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorIndicator.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorInspector.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorPreview.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorTab.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/EditorTabs.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/extensions/SQLMeshDialect.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/extensions/SQLMeshModel.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/extensions/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/extensions/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/editor/hooks.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/environmentDetails/AddEnvironment.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/environmentDetails/EnvironmentChanges.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/environmentDetails/EnvironmentChangesPreview.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/environmentDetails/EnvironmentDetails.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/environmentDetails/SelectEnvironment.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/fileExplorer/Directory.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/fileExplorer/DragLayer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/fileExplorer/File.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/fileExplorer/FileExplorer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/fileExplorer/context.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/Graph.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelLineageSearch.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/context.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/graph/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/historyNavigation/historyNavigation.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/input/Input.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/input/Selector.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/modal/Modal.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/modal/ModalConfirmation.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/moduleNavigation/ModuleLink.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/moduleNavigation/ModuleNavigation.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/Plan.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanActions.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanApplyStageTracker.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanBackfillDates.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanChangePreview.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanHeader.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/PlanOptions.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/context.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/help.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/plan/hooks.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/progress/Progress.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/report/ReportErrors.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/report/ReportTestsErrors.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/search/SearchList.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/search/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/splitPane/SplitPane.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/splitPane/SplitPane.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/tab/Tab.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/table/Table.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/table/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/tableDiff/TableDiff.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/tableDiff/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/tasksOverview/TasksOverview.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/title/Title.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/components/toggle/Toggle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/audits/Audits.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/data/Data.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/data-catalog/DataCatalog.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/editor/Editor.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/errors/Content.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/errors/Errors.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/lineage/Lineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/models/Models.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/plan/Content.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/plan/Plan.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/Footer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/Header.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/Navigation.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/NotFound.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/Page.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/Root.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/root/context/notificationCenter.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/library/pages/tests/Tests.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/main.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/artifact.posix.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/artifact.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/artifact.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/artifact.win.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/directory.posix.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/directory.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/directory.win.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/environment.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/file.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/file.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/initial.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/module-controller.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/plan-action.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/sqlmesh-change-display.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/sqlmesh-model.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/tracker-plan-apply.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/tracker-plan-cancel.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/tracker-plan-overview.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/models/tracker-plan.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/routes.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/styles/index.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/tests/setup.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/tests/utils.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/types/enum.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/types/index.d.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/utils/additional-components.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/utils/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/utils/tbk-components.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/workers/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/workers/lineage.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/workers/sqlglot/sqlglot.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/src/workers/sqlglot/sqlglot.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/tailwind.config.cjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/tests/initial.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/tsconfig.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/client/vite.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/.gitignore +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/.storybook/main.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/.storybook/preview.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/.syncpackrc +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/eslint.config.mjs +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/package.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/postcss.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Badge/Badge.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Badge/Badge.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Badge/Badge.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Button/Button.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Button/Button.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Button/Button.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/CopyButton/CopyButton.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/CopyButton/CopyButton.test.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/CopyButton/CopyButton.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/HorizontalContainer/HorizontalContainer.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/HorizontalContainer/HorizontalContainer.test.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/HorizontalContainer/HorizontalContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Input/Input.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Input/Input.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Input/Input.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/Lineage.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/ColumnLevelLineageContext.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/FactoryColumn.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/FactoryColumn.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/useColumnLevelLineage.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageColumnLevel/useColumns.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageContext.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageControlButton.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageControlIcon.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageLayout.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageLayoutBase.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/LineageLayoutContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/edge/EdgeWithGradient.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/edge/FactoryEdgeWithGradient.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/help.test.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/layout/dagreLayout.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/layout/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeAppendix.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeBadge.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeBase.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeDetail.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeDivider.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeHandle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeHandleIcon.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeHandles.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodeHeader.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodePort.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/NodePorts.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/base-handle.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/base-node.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/node/useNodeMetadata.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/Lineage.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/ModelLineage.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/ModelLineageContext.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/ModelNode.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/ModelNodeColumn.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/dagreLayout.worker.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/stories/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Lineage/utils.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/LoadingContainer/LoadingContainer.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/LoadingContainer/LoadingContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/LoadingContainer/LoadingIcon.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/MessageContainer/MessageContainer.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/MessageContainer/MessageContainer.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/MessageContainer/MessageContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Metadata/Metadata.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Metadata/Metadata.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Metadata/Metadata.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ModelName/ModelName.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ModelName/ModelName.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ModelName/ModelName.test.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ModelName/ModelName.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ScrollContainer/ScrollContainer.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ScrollContainer/ScrollContainer.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ScrollContainer/ScrollContainer.test.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/ScrollContainer/ScrollContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Tooltip/Tooltip.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Tooltip/Tooltip.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Tooltip/Tooltip.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Description.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Headline.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Information.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Tagline.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Text.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/Typography.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/help.spec.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/Typography/help.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VerticalContainer/VerticalContainer.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VerticalContainer/VerticalContainer.test.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VerticalContainer/VerticalContainer.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VirtualList/FilterableList.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VirtualList/FilterableList.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VirtualList/VirtualList.stories.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/components/VirtualList/VirtualList.tsx +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/hooks/useCopyClipboard.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/index.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/fonts.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/index.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/palette.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/semantic-colors.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/space.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/design/typography.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/styles/index.css +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/types.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/src/utils.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tailwind.base.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tailwind.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tailwind.lineage.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tests/setup.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tsconfig.base.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tsconfig.build.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/tsconfig.json +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/vite.config.js +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/common/vitest.config.ts +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/docker-compose.build.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/docker-compose.yml +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/__init__.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/commands.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/directories.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/environments.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/events.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/files.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/lineage.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/meta.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/models.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/modules.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/plan.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/api/endpoints/table_diff.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/app.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/console.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/exceptions.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/main.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/models.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/openapi.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/settings.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/utils.py +0 -0
- {sqlmesh-0.226.1.dev3 → sqlmesh-0.226.1.dev4}/web/server/watcher.py +0 -0
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.226.1.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 226, 1, '
|
|
31
|
+
__version__ = version = '0.226.1.dev4'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 226, 1, 'dev4')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'ga98b5c4e1'
|
|
@@ -154,6 +154,8 @@ if t.TYPE_CHECKING:
|
|
|
154
154
|
)
|
|
155
155
|
from sqlmesh.core.snapshot import Node
|
|
156
156
|
|
|
157
|
+
from sqlmesh.core.snapshot.definition import Intervals
|
|
158
|
+
|
|
157
159
|
ModelOrSnapshot = t.Union[str, Model, Snapshot]
|
|
158
160
|
NodeOrSnapshot = t.Union[str, Model, StandaloneAudit, Snapshot]
|
|
159
161
|
|
|
@@ -276,6 +278,7 @@ class ExecutionContext(BaseContext):
|
|
|
276
278
|
default_dialect: t.Optional[str] = None,
|
|
277
279
|
default_catalog: t.Optional[str] = None,
|
|
278
280
|
is_restatement: t.Optional[bool] = None,
|
|
281
|
+
parent_intervals: t.Optional[Intervals] = None,
|
|
279
282
|
variables: t.Optional[t.Dict[str, t.Any]] = None,
|
|
280
283
|
blueprint_variables: t.Optional[t.Dict[str, t.Any]] = None,
|
|
281
284
|
):
|
|
@@ -287,6 +290,7 @@ class ExecutionContext(BaseContext):
|
|
|
287
290
|
self._variables = variables or {}
|
|
288
291
|
self._blueprint_variables = blueprint_variables or {}
|
|
289
292
|
self._is_restatement = is_restatement
|
|
293
|
+
self._parent_intervals = parent_intervals
|
|
290
294
|
|
|
291
295
|
@property
|
|
292
296
|
def default_dialect(self) -> t.Optional[str]:
|
|
@@ -315,6 +319,10 @@ class ExecutionContext(BaseContext):
|
|
|
315
319
|
def is_restatement(self) -> t.Optional[bool]:
|
|
316
320
|
return self._is_restatement
|
|
317
321
|
|
|
322
|
+
@property
|
|
323
|
+
def parent_intervals(self) -> t.Optional[Intervals]:
|
|
324
|
+
return self._parent_intervals
|
|
325
|
+
|
|
318
326
|
def var(self, var_name: str, default: t.Optional[t.Any] = None) -> t.Optional[t.Any]:
|
|
319
327
|
"""Returns a variable value."""
|
|
320
328
|
return self._variables.get(var_name.lower(), default)
|
|
@@ -352,7 +352,7 @@ class Scheduler:
|
|
|
352
352
|
)
|
|
353
353
|
for snapshot, intervals in merged_intervals.items()
|
|
354
354
|
}
|
|
355
|
-
snapshot_batches = {}
|
|
355
|
+
snapshot_batches: t.Dict[Snapshot, Intervals] = {}
|
|
356
356
|
all_unready_intervals: t.Dict[str, set[Interval]] = {}
|
|
357
357
|
for snapshot_id in dag:
|
|
358
358
|
if snapshot_id not in snapshot_intervals:
|
|
@@ -364,6 +364,14 @@ class Scheduler:
|
|
|
364
364
|
|
|
365
365
|
adapter = self.snapshot_evaluator.get_adapter(snapshot.model_gateway)
|
|
366
366
|
|
|
367
|
+
parent_intervals: Intervals = []
|
|
368
|
+
for parent_id in snapshot.parents:
|
|
369
|
+
parent_snapshot, _ = snapshot_intervals.get(parent_id, (None, []))
|
|
370
|
+
if not parent_snapshot or parent_snapshot.is_external:
|
|
371
|
+
continue
|
|
372
|
+
|
|
373
|
+
parent_intervals.extend(snapshot_batches[parent_snapshot])
|
|
374
|
+
|
|
367
375
|
context = ExecutionContext(
|
|
368
376
|
adapter,
|
|
369
377
|
self.snapshots_by_name,
|
|
@@ -371,6 +379,7 @@ class Scheduler:
|
|
|
371
379
|
default_dialect=adapter.dialect,
|
|
372
380
|
default_catalog=self.default_catalog,
|
|
373
381
|
is_restatement=is_restatement,
|
|
382
|
+
parent_intervals=parent_intervals,
|
|
374
383
|
)
|
|
375
384
|
|
|
376
385
|
intervals = self._check_ready_intervals(
|
|
@@ -2,6 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import typing as t
|
|
4
4
|
from sqlmesh.utils import UniqueKeyDict, registry_decorator
|
|
5
|
+
from sqlmesh.utils.errors import MissingSourceError
|
|
5
6
|
|
|
6
7
|
if t.TYPE_CHECKING:
|
|
7
8
|
from sqlmesh.core.context import ExecutionContext
|
|
@@ -42,7 +43,16 @@ SignalRegistry = UniqueKeyDict[str, signal]
|
|
|
42
43
|
|
|
43
44
|
|
|
44
45
|
@signal()
|
|
45
|
-
def freshness(
|
|
46
|
+
def freshness(
|
|
47
|
+
batch: DatetimeRanges,
|
|
48
|
+
snapshot: Snapshot,
|
|
49
|
+
context: ExecutionContext,
|
|
50
|
+
) -> bool:
|
|
51
|
+
"""
|
|
52
|
+
Implements model freshness as a signal, i.e it considers this model to be fresh if:
|
|
53
|
+
- Any upstream SQLMesh model has available intervals to compute i.e is fresh
|
|
54
|
+
- Any upstream external model has been altered since the last time the model was evaluated
|
|
55
|
+
"""
|
|
46
56
|
adapter = context.engine_adapter
|
|
47
57
|
if context.is_restatement or not adapter.SUPPORTS_METADATA_TABLE_LAST_MODIFIED_TS:
|
|
48
58
|
return True
|
|
@@ -54,24 +64,35 @@ def freshness(batch: DatetimeRanges, snapshot: Snapshot, context: ExecutionConte
|
|
|
54
64
|
if deployability_index.is_deployable(snapshot)
|
|
55
65
|
else snapshot.dev_last_altered_ts
|
|
56
66
|
)
|
|
67
|
+
|
|
57
68
|
if not last_altered_ts:
|
|
58
69
|
return True
|
|
59
70
|
|
|
60
71
|
parent_snapshots = {context.snapshots[p.name] for p in snapshot.parents}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
72
|
+
|
|
73
|
+
upstream_parent_snapshots = {p for p in parent_snapshots if not p.is_external}
|
|
74
|
+
external_parents = snapshot.node.depends_on - {p.name for p in upstream_parent_snapshots}
|
|
75
|
+
|
|
76
|
+
if context.parent_intervals:
|
|
77
|
+
# At least one upstream sqlmesh model has intervals to compute (i.e is fresh),
|
|
78
|
+
# so the current model is considered fresh too
|
|
65
79
|
return True
|
|
66
80
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
81
|
+
if external_parents:
|
|
82
|
+
external_last_altered_timestamps = adapter.get_table_last_modified_ts(
|
|
83
|
+
list(external_parents)
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
if len(external_last_altered_timestamps) != len(external_parents):
|
|
87
|
+
raise MissingSourceError(
|
|
88
|
+
f"Expected {len(external_parents)} sources to be present, but got {len(external_last_altered_timestamps)}."
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
# Finding new data means that the upstream depedencies have been altered
|
|
92
|
+
# since the last time the model was evaluated
|
|
93
|
+
return any(
|
|
94
|
+
external_last_altered_ts > last_altered_ts
|
|
95
|
+
for external_last_altered_ts in external_last_altered_timestamps
|
|
73
96
|
)
|
|
74
|
-
)
|
|
75
97
|
|
|
76
|
-
|
|
77
|
-
return upstream_dep_has_new_data
|
|
98
|
+
return False
|
|
@@ -514,6 +514,7 @@ tests/core/engine_adapter/test_trino.py
|
|
|
514
514
|
tests/core/engine_adapter/integration/__init__.py
|
|
515
515
|
tests/core/engine_adapter/integration/config.yaml
|
|
516
516
|
tests/core/engine_adapter/integration/conftest.py
|
|
517
|
+
tests/core/engine_adapter/integration/test_freshness.py
|
|
517
518
|
tests/core/engine_adapter/integration/test_integration.py
|
|
518
519
|
tests/core/engine_adapter/integration/test_integration_athena.py
|
|
519
520
|
tests/core/engine_adapter/integration/test_integration_bigquery.py
|
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
# type: ignore
|
|
2
|
+
from __future__ import annotations
|
|
3
|
+
|
|
4
|
+
import pathlib
|
|
5
|
+
import typing as t
|
|
6
|
+
from datetime import datetime, timedelta
|
|
7
|
+
from IPython.utils.capture import capture_output
|
|
8
|
+
|
|
9
|
+
import time_machine
|
|
10
|
+
from pytest_mock.plugin import MockerFixture
|
|
11
|
+
|
|
12
|
+
import pytest
|
|
13
|
+
import time_machine
|
|
14
|
+
|
|
15
|
+
import sqlmesh
|
|
16
|
+
from sqlmesh import Config, Context
|
|
17
|
+
from sqlmesh.utils.date import now, to_datetime
|
|
18
|
+
from sqlmesh.utils.errors import SignalEvalError
|
|
19
|
+
from tests.core.engine_adapter.integration import (
|
|
20
|
+
TestContext,
|
|
21
|
+
TEST_SCHEMA,
|
|
22
|
+
)
|
|
23
|
+
from tests.utils.test_helpers import use_terminal_console
|
|
24
|
+
|
|
25
|
+
EVALUATION_SPY = None
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# Mock the snapshot evaluator's evaluate function to count the number of times it is called
|
|
29
|
+
@pytest.fixture(autouse=True, scope="function")
|
|
30
|
+
def _install_evaluation_spy(mocker: MockerFixture):
|
|
31
|
+
global EVALUATION_SPY
|
|
32
|
+
EVALUATION_SPY = mocker.spy(sqlmesh.core.snapshot.evaluator.SnapshotEvaluator, "evaluate")
|
|
33
|
+
yield
|
|
34
|
+
EVALUATION_SPY = None
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def assert_snapshot_last_altered_ts(
|
|
38
|
+
context: Context,
|
|
39
|
+
snapshot_id: str,
|
|
40
|
+
last_altered_ts: datetime,
|
|
41
|
+
dev_last_altered_ts: t.Optional[datetime] = None,
|
|
42
|
+
):
|
|
43
|
+
"""
|
|
44
|
+
Ensure that prod and dev last altered timestamps of a snapshot are as expected.
|
|
45
|
+
"""
|
|
46
|
+
snapshot = context.state_sync.get_snapshots([snapshot_id])[snapshot_id]
|
|
47
|
+
|
|
48
|
+
if snapshot.is_external:
|
|
49
|
+
return
|
|
50
|
+
|
|
51
|
+
assert to_datetime(snapshot.last_altered_ts).replace(microsecond=0) == last_altered_ts.replace(
|
|
52
|
+
microsecond=0
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
if dev_last_altered_ts:
|
|
56
|
+
assert to_datetime(snapshot.dev_last_altered_ts).replace(
|
|
57
|
+
microsecond=0
|
|
58
|
+
) == dev_last_altered_ts.replace(microsecond=0)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def assert_model_evaluation(
|
|
62
|
+
lambda_func, was_evaluated: bool = True, day_delta: int = 0, model_evaluations: int = 1
|
|
63
|
+
):
|
|
64
|
+
"""
|
|
65
|
+
Ensure that a model was evaluated by checking the freshness signal and that
|
|
66
|
+
the evaluation function was called the expected number of times.
|
|
67
|
+
"""
|
|
68
|
+
EVALUATION_SPY.reset_mock()
|
|
69
|
+
timestamp = now(minute_floor=False) + timedelta(days=day_delta)
|
|
70
|
+
with time_machine.travel(timestamp, tick=False):
|
|
71
|
+
with capture_output() as output:
|
|
72
|
+
plan_or_run_result = lambda_func()
|
|
73
|
+
|
|
74
|
+
evaluate_function_called = EVALUATION_SPY.call_count == model_evaluations
|
|
75
|
+
signal_was_checked = "Checking signals for" in output.stdout
|
|
76
|
+
|
|
77
|
+
assert signal_was_checked
|
|
78
|
+
if was_evaluated:
|
|
79
|
+
assert "All ready" in output.stdout
|
|
80
|
+
assert evaluate_function_called
|
|
81
|
+
else:
|
|
82
|
+
assert "None ready" in output.stdout
|
|
83
|
+
assert not evaluate_function_called
|
|
84
|
+
|
|
85
|
+
return timestamp, plan_or_run_result
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def create_model(
|
|
89
|
+
name: str, schema: str, query: str, path: pathlib.Path, signals: str = "freshness()"
|
|
90
|
+
):
|
|
91
|
+
"""
|
|
92
|
+
Create a freshness model with the given name, path, and query.
|
|
93
|
+
"""
|
|
94
|
+
model_name = f"{schema}.{name}"
|
|
95
|
+
model_path = path / "models" / f"{name}.sql"
|
|
96
|
+
(path / "models").mkdir(parents=True, exist_ok=True)
|
|
97
|
+
model_path.write_text(
|
|
98
|
+
f"""
|
|
99
|
+
MODEL (
|
|
100
|
+
name {model_name},
|
|
101
|
+
start '2024-01-01',
|
|
102
|
+
kind FULL,
|
|
103
|
+
signals (
|
|
104
|
+
{signals},
|
|
105
|
+
)
|
|
106
|
+
);
|
|
107
|
+
|
|
108
|
+
{query}
|
|
109
|
+
"""
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
return model_name, model_path
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def initialize_context(
|
|
116
|
+
ctx: TestContext, tmp_path: pathlib.Path, num_external_models: int = 1
|
|
117
|
+
) -> t.Tuple[Context, str, t.List[str]]:
|
|
118
|
+
"""
|
|
119
|
+
Initialize a context by creating a schema and external models.
|
|
120
|
+
"""
|
|
121
|
+
adapter = ctx.engine_adapter
|
|
122
|
+
if not adapter.SUPPORTS_METADATA_TABLE_LAST_MODIFIED_TS:
|
|
123
|
+
pytest.skip("This test only runs for engines that support metadata-based freshness")
|
|
124
|
+
|
|
125
|
+
# Create & initialize schema
|
|
126
|
+
schema = ctx.add_test_suffix(TEST_SCHEMA)
|
|
127
|
+
ctx._schemas.append(schema)
|
|
128
|
+
adapter.create_schema(schema)
|
|
129
|
+
|
|
130
|
+
# Create & initialize external models
|
|
131
|
+
external_tables = []
|
|
132
|
+
|
|
133
|
+
yaml_content = ""
|
|
134
|
+
for i in range(1, num_external_models + 1):
|
|
135
|
+
external_table = f"{schema}.external_table{i}"
|
|
136
|
+
external_tables.append(f"{schema}.external_table{i}")
|
|
137
|
+
adapter.execute(
|
|
138
|
+
f"CREATE TABLE {external_table} AS (SELECT {i} AS col{i})",
|
|
139
|
+
quote_identifiers=False,
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
yaml_content = (
|
|
143
|
+
yaml_content
|
|
144
|
+
+ f"""
|
|
145
|
+
- name: {external_table}
|
|
146
|
+
columns:
|
|
147
|
+
col{i}: int
|
|
148
|
+
|
|
149
|
+
"""
|
|
150
|
+
)
|
|
151
|
+
|
|
152
|
+
external_models_yaml = tmp_path / "external_models.yaml"
|
|
153
|
+
external_models_yaml.write_text(yaml_content)
|
|
154
|
+
|
|
155
|
+
# Initialize context
|
|
156
|
+
def _set_config(gateway: str, config: Config) -> None:
|
|
157
|
+
config.model_defaults.dialect = ctx.dialect
|
|
158
|
+
|
|
159
|
+
context = ctx.create_context(path=tmp_path, config_mutator=_set_config)
|
|
160
|
+
|
|
161
|
+
return context, schema, external_tables
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
@use_terminal_console
|
|
165
|
+
def test_external_model_freshness(ctx: TestContext, tmp_path: pathlib.Path, mocker: MockerFixture):
|
|
166
|
+
adapter = ctx.engine_adapter
|
|
167
|
+
context, schema, (external_table1, external_table2) = initialize_context(
|
|
168
|
+
ctx, tmp_path, num_external_models=2
|
|
169
|
+
)
|
|
170
|
+
|
|
171
|
+
# Create model that depends on external models
|
|
172
|
+
model_name, model_path = create_model(
|
|
173
|
+
"new_model",
|
|
174
|
+
schema,
|
|
175
|
+
f"SELECT col1 * col2 AS col FROM {external_table1}, {external_table2}",
|
|
176
|
+
tmp_path,
|
|
177
|
+
)
|
|
178
|
+
|
|
179
|
+
context.load()
|
|
180
|
+
|
|
181
|
+
# Case 1: Model is evaluated for the first plan
|
|
182
|
+
prod_plan_ts_1, prod_plan_1 = assert_model_evaluation(
|
|
183
|
+
lambda: context.plan(auto_apply=True, no_prompts=True)
|
|
184
|
+
)
|
|
185
|
+
|
|
186
|
+
prod_snapshot_id = next(iter(prod_plan_1.context_diff.new_snapshots))
|
|
187
|
+
assert_snapshot_last_altered_ts(context, prod_snapshot_id, last_altered_ts=prod_plan_ts_1)
|
|
188
|
+
|
|
189
|
+
# Case 2: Model is NOT evaluated on run if external models are not fresh
|
|
190
|
+
assert_model_evaluation(lambda: context.run(), was_evaluated=False, day_delta=1)
|
|
191
|
+
|
|
192
|
+
# Case 3: Differentiate last_altered_ts between snapshots with shared version
|
|
193
|
+
# For instance, creating a FORWARD_ONLY change in dev (reusing the version but creating a dev preview) should not cause
|
|
194
|
+
# any side effects to the prod snapshot's last_altered_ts hydration
|
|
195
|
+
model_path.write_text(model_path.read_text().replace("col1 * col2", "col1 + col2"))
|
|
196
|
+
context.load()
|
|
197
|
+
dev_plan_ts = now(minute_floor=False) + timedelta(days=2)
|
|
198
|
+
with time_machine.travel(dev_plan_ts, tick=False):
|
|
199
|
+
dev_plan = context.plan(
|
|
200
|
+
environment="dev", forward_only=True, auto_apply=True, no_prompts=True
|
|
201
|
+
)
|
|
202
|
+
|
|
203
|
+
context.state_sync.clear_cache()
|
|
204
|
+
dev_snapshot_id = next(iter(dev_plan.context_diff.new_snapshots))
|
|
205
|
+
assert_snapshot_last_altered_ts(
|
|
206
|
+
context,
|
|
207
|
+
dev_snapshot_id,
|
|
208
|
+
last_altered_ts=prod_plan_ts_1,
|
|
209
|
+
dev_last_altered_ts=dev_plan_ts,
|
|
210
|
+
)
|
|
211
|
+
assert_snapshot_last_altered_ts(context, prod_snapshot_id, last_altered_ts=prod_plan_ts_1)
|
|
212
|
+
|
|
213
|
+
# Case 4: Model is evaluated on run if any external model is fresh
|
|
214
|
+
adapter.execute(f"INSERT INTO {external_table2} (col2) VALUES (3)", quote_identifiers=False)
|
|
215
|
+
assert_model_evaluation(lambda: context.run(), day_delta=2)
|
|
216
|
+
|
|
217
|
+
# Case 5: Model is evaluated if changed (case 3) even if the external model is not fresh
|
|
218
|
+
model_path.write_text(model_path.read_text().replace("col1 + col2", "col1 * col2 * 5"))
|
|
219
|
+
context.load()
|
|
220
|
+
assert_model_evaluation(
|
|
221
|
+
lambda: context.plan(auto_apply=True, no_prompts=True),
|
|
222
|
+
day_delta=3,
|
|
223
|
+
)
|
|
224
|
+
|
|
225
|
+
# Case 6: Model is evaluated on a restatement plan even if the external model is not fresh
|
|
226
|
+
assert_model_evaluation(
|
|
227
|
+
lambda: context.plan(restate_models=[model_name], auto_apply=True, no_prompts=True),
|
|
228
|
+
day_delta=4,
|
|
229
|
+
)
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
@use_terminal_console
|
|
233
|
+
def test_mixed_model_freshness(ctx: TestContext, tmp_path: pathlib.Path):
|
|
234
|
+
"""
|
|
235
|
+
Scenario: Freshness for a model that depends on both external and SQLMesh models
|
|
236
|
+
"""
|
|
237
|
+
|
|
238
|
+
adapter = ctx.engine_adapter
|
|
239
|
+
context, schema, (external_table,) = initialize_context(ctx, tmp_path, num_external_models=1)
|
|
240
|
+
|
|
241
|
+
# Create parent model that depends on the external model
|
|
242
|
+
parent_model_name, _ = create_model(
|
|
243
|
+
"parent_model",
|
|
244
|
+
schema,
|
|
245
|
+
f"SELECT col1 AS new_col FROM {external_table}",
|
|
246
|
+
tmp_path,
|
|
247
|
+
)
|
|
248
|
+
|
|
249
|
+
# First child model depends only on the parent model
|
|
250
|
+
create_model(
|
|
251
|
+
"child_model1",
|
|
252
|
+
schema,
|
|
253
|
+
f"SELECT new_col FROM {parent_model_name}",
|
|
254
|
+
tmp_path,
|
|
255
|
+
)
|
|
256
|
+
|
|
257
|
+
# Second child model depends on the parent model and the external table
|
|
258
|
+
create_model(
|
|
259
|
+
"child_model2",
|
|
260
|
+
schema,
|
|
261
|
+
f"SELECT col1 + new_col FROM {parent_model_name}, {external_table}",
|
|
262
|
+
tmp_path,
|
|
263
|
+
)
|
|
264
|
+
|
|
265
|
+
# Third model does not depend on any models, so it should only be evaluated once
|
|
266
|
+
create_model(
|
|
267
|
+
"child_model3",
|
|
268
|
+
schema,
|
|
269
|
+
f"SELECT 1 AS col",
|
|
270
|
+
tmp_path,
|
|
271
|
+
)
|
|
272
|
+
|
|
273
|
+
context.load()
|
|
274
|
+
|
|
275
|
+
# Case 1: New models are evaluated when introduced in a plan
|
|
276
|
+
prod_plan_ts_1, prod_plan_1 = assert_model_evaluation(
|
|
277
|
+
lambda: context.plan(auto_apply=True, no_prompts=True),
|
|
278
|
+
model_evaluations=4,
|
|
279
|
+
)
|
|
280
|
+
|
|
281
|
+
for new_snapshot in prod_plan_1.context_diff.new_snapshots:
|
|
282
|
+
assert_snapshot_last_altered_ts(context, new_snapshot, last_altered_ts=prod_plan_ts_1)
|
|
283
|
+
|
|
284
|
+
# Case 2: Mixed models are evaluated if the upstream models (sqlmesh or external) become fresh
|
|
285
|
+
adapter.execute(f"INSERT INTO {external_table} (col1) VALUES (2)", quote_identifiers=False)
|
|
286
|
+
|
|
287
|
+
assert_model_evaluation(
|
|
288
|
+
lambda: context.run(), was_evaluated=True, day_delta=1, model_evaluations=3
|
|
289
|
+
)
|
|
290
|
+
|
|
291
|
+
# Case 3: Mixed models are still evaluated if breaking changes are introduced
|
|
292
|
+
create_model(
|
|
293
|
+
"child_model2",
|
|
294
|
+
schema,
|
|
295
|
+
f"SELECT col1 * new_col FROM {parent_model_name}, {external_table}",
|
|
296
|
+
tmp_path,
|
|
297
|
+
)
|
|
298
|
+
|
|
299
|
+
context.load()
|
|
300
|
+
|
|
301
|
+
prod_plan_ts_2, prod_plan_2 = assert_model_evaluation(
|
|
302
|
+
lambda: context.plan(auto_apply=True, no_prompts=True),
|
|
303
|
+
day_delta=1,
|
|
304
|
+
model_evaluations=1,
|
|
305
|
+
)
|
|
306
|
+
|
|
307
|
+
assert prod_plan_2.context_diff.modified_snapshots
|
|
308
|
+
|
|
309
|
+
assert_snapshot_last_altered_ts(
|
|
310
|
+
context, next(iter(prod_plan_2.context_diff.new_snapshots)), last_altered_ts=prod_plan_ts_2
|
|
311
|
+
)
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
def test_missing_external_model_freshness(ctx: TestContext, tmp_path: pathlib.Path):
|
|
315
|
+
"""
|
|
316
|
+
Scenario: Freshness for a model that depends on an external model that is missing
|
|
317
|
+
"""
|
|
318
|
+
adapter = ctx.engine_adapter
|
|
319
|
+
context, schema, (external_table,) = initialize_context(ctx, tmp_path)
|
|
320
|
+
|
|
321
|
+
# Create model that depends on the external model
|
|
322
|
+
create_model(
|
|
323
|
+
"new_model",
|
|
324
|
+
schema,
|
|
325
|
+
f"SELECT * FROM {external_table}",
|
|
326
|
+
tmp_path,
|
|
327
|
+
)
|
|
328
|
+
|
|
329
|
+
context.load()
|
|
330
|
+
context.plan(auto_apply=True, no_prompts=True)
|
|
331
|
+
|
|
332
|
+
# Case: By dropping the external table, the freshness signal should raise an error
|
|
333
|
+
# instead of silently succeeding/failing
|
|
334
|
+
adapter.execute(f"DROP TABLE {external_table}", quote_identifiers=False)
|
|
335
|
+
|
|
336
|
+
with time_machine.travel(now() + timedelta(days=1)):
|
|
337
|
+
with pytest.raises(SignalEvalError):
|
|
338
|
+
context.run()
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
@use_terminal_console
|
|
342
|
+
def test_check_ready_intervals(ctx: TestContext, tmp_path: pathlib.Path):
|
|
343
|
+
"""
|
|
344
|
+
Scenario: Ensure that freshness evaluates the "ready" intervals of the parent snapshots i.e their
|
|
345
|
+
missing intervals plus their signals applied.
|
|
346
|
+
|
|
347
|
+
"""
|
|
348
|
+
|
|
349
|
+
def _write_user_signal(signal: str, tmp_path: pathlib.Path):
|
|
350
|
+
signal_code = f"""
|
|
351
|
+
import typing as t
|
|
352
|
+
from sqlmesh import signal
|
|
353
|
+
|
|
354
|
+
@signal()
|
|
355
|
+
{signal}
|
|
356
|
+
"""
|
|
357
|
+
|
|
358
|
+
test_signals = tmp_path / "signals/test_signals.py"
|
|
359
|
+
test_signals.parent.mkdir(parents=True, exist_ok=True)
|
|
360
|
+
test_signals.write_text(signal_code)
|
|
361
|
+
|
|
362
|
+
context, schema, _ = initialize_context(ctx, tmp_path, num_external_models=0)
|
|
363
|
+
|
|
364
|
+
_write_user_signal(
|
|
365
|
+
"""
|
|
366
|
+
def my_signal(batch):
|
|
367
|
+
return True
|
|
368
|
+
""",
|
|
369
|
+
tmp_path,
|
|
370
|
+
)
|
|
371
|
+
|
|
372
|
+
# Parent model depends on a custom signal
|
|
373
|
+
parent_model, _ = create_model(
|
|
374
|
+
"parent_model",
|
|
375
|
+
schema,
|
|
376
|
+
f"SELECT 1 AS col",
|
|
377
|
+
tmp_path,
|
|
378
|
+
signals="my_signal()",
|
|
379
|
+
)
|
|
380
|
+
|
|
381
|
+
# Create a new model that depends on the parent model
|
|
382
|
+
create_model(
|
|
383
|
+
"child_model",
|
|
384
|
+
schema,
|
|
385
|
+
f"SELECT * FROM {parent_model}",
|
|
386
|
+
tmp_path,
|
|
387
|
+
)
|
|
388
|
+
|
|
389
|
+
# Case 1: Both models are evaluated when introduced in a plan and subsequent runs,
|
|
390
|
+
# given that `my_signal()` always returns True.
|
|
391
|
+
context.load()
|
|
392
|
+
context.plan(auto_apply=True, no_prompts=True)
|
|
393
|
+
|
|
394
|
+
assert_model_evaluation(
|
|
395
|
+
lambda: context.run(),
|
|
396
|
+
day_delta=2,
|
|
397
|
+
model_evaluations=2,
|
|
398
|
+
)
|
|
399
|
+
|
|
400
|
+
# Case 2: By changing the signal to return False, both models should not be evaluated.
|
|
401
|
+
_write_user_signal(
|
|
402
|
+
"""
|
|
403
|
+
def my_signal(batch):
|
|
404
|
+
return False
|
|
405
|
+
""",
|
|
406
|
+
tmp_path,
|
|
407
|
+
)
|
|
408
|
+
|
|
409
|
+
context.load()
|
|
410
|
+
context.plan(auto_apply=True, no_prompts=True)
|
|
411
|
+
|
|
412
|
+
assert_model_evaluation(
|
|
413
|
+
lambda: context.run(),
|
|
414
|
+
day_delta=3,
|
|
415
|
+
was_evaluated=False,
|
|
416
|
+
)
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
@use_terminal_console
|
|
420
|
+
def test_registered_and_unregistered_external_models(
|
|
421
|
+
ctx: TestContext, tmp_path: pathlib.Path, mocker: MockerFixture
|
|
422
|
+
):
|
|
423
|
+
"""
|
|
424
|
+
Scenario: Ensure that external models are queried for their last modified timestamp
|
|
425
|
+
regardless of whether they are present in the "external_models.yaml" file (registered) or not (unregistered)
|
|
426
|
+
"""
|
|
427
|
+
|
|
428
|
+
adapter = ctx.engine_adapter
|
|
429
|
+
context, schema, (registered_external_table,) = initialize_context(
|
|
430
|
+
ctx, tmp_path, num_external_models=1
|
|
431
|
+
)
|
|
432
|
+
|
|
433
|
+
current_catalog = ctx.engine_adapter.get_current_catalog()
|
|
434
|
+
|
|
435
|
+
def normalize_external_table_name(external_table_name) -> str:
|
|
436
|
+
from sqlglot import exp
|
|
437
|
+
|
|
438
|
+
normalized = exp.normalize_table_name(
|
|
439
|
+
f"{current_catalog}.{external_table_name}", dialect=ctx.dialect
|
|
440
|
+
)
|
|
441
|
+
return exp.table_name(normalized, dialect=ctx.dialect, identify=True)
|
|
442
|
+
|
|
443
|
+
unregistered_external_table = f"{schema}.unregistered_external_table"
|
|
444
|
+
|
|
445
|
+
adapter.execute(
|
|
446
|
+
f"CREATE TABLE {unregistered_external_table} AS (SELECT 1 AS col)",
|
|
447
|
+
quote_identifiers=False,
|
|
448
|
+
)
|
|
449
|
+
|
|
450
|
+
create_model(
|
|
451
|
+
"new_model",
|
|
452
|
+
schema,
|
|
453
|
+
f"SELECT * FROM {unregistered_external_table}, {registered_external_table}",
|
|
454
|
+
tmp_path,
|
|
455
|
+
)
|
|
456
|
+
|
|
457
|
+
context.load()
|
|
458
|
+
context.plan(auto_apply=True, no_prompts=True)
|
|
459
|
+
|
|
460
|
+
spy = mocker.spy(
|
|
461
|
+
sqlmesh.core.engine_adapter.SnowflakeEngineAdapter, "get_table_last_modified_ts"
|
|
462
|
+
)
|
|
463
|
+
assert_model_evaluation(
|
|
464
|
+
lambda: context.run(),
|
|
465
|
+
day_delta=1,
|
|
466
|
+
was_evaluated=False,
|
|
467
|
+
)
|
|
468
|
+
|
|
469
|
+
assert spy.call_args_list
|
|
470
|
+
|
|
471
|
+
# The first argument of "get_table_last_modified_ts" is a list of external table names in normalized form
|
|
472
|
+
# Ensure that this contains both external tables (registered and unregistered)
|
|
473
|
+
assert sorted(spy.call_args[0][1]) == sorted(
|
|
474
|
+
[
|
|
475
|
+
normalize_external_table_name(registered_external_table),
|
|
476
|
+
normalize_external_table_name(unregistered_external_table),
|
|
477
|
+
]
|
|
478
|
+
)
|