sqlmesh 0.199.1.dev17__tar.gz → 0.199.1.dev19__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/PKG-INFO +1 -1
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/pnpm-lock.yaml +0 -6
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/_version.py +2 -2
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cli/main.py +5 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/console.py +2 -2
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/context.py +113 -9
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/node.py +3 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/builder.py +17 -8
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/definition.py +8 -4
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/evaluator.py +2 -1
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/stages.py +2 -1
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/scheduler.py +33 -16
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/snapshot/definition.py +16 -11
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/PKG-INFO +1 -1
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/SOURCES.txt +1 -5
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_context.py +324 -1
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_plan.py +7 -8
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_plan_stages.py +0 -13
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_snapshot.py +51 -7
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/ModelColumns.tsx +3 -2
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/ModelLineage.tsx +1 -119
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/ModelNode.tsx +4 -3
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/context.tsx +14 -9
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/help.ts +1 -3
- sqlmesh-0.199.1.dev19/web/server/api/__init__.py +0 -0
- sqlmesh-0.199.1.dev17/vscode/react/src/components/divider/Divider.tsx +0 -34
- sqlmesh-0.199.1.dev17/vscode/react/src/components/graph/ModelLineageDetails.tsx +0 -133
- sqlmesh-0.199.1.dev17/vscode/react/src/components/listbox/ListboxShow.tsx +0 -96
- sqlmesh-0.199.1.dev17/web/client/src/library/components/logo/SqlMesh.tsx +0 -61
- sqlmesh-0.199.1.dev17/web/client/src/library/components/logo/Tobiko.tsx +0 -62
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/config.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/continue_config.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/get_scm_version.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/install-prerequisites.sh +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/manage-test-db.sh +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/test_migration.sh +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/update-pypirc.sh +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.circleci/wait-for-db.sh +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.github/dependabot.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.github/workflows/pr.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.github/workflows/release_extension.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.nvmrc +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.pre-commit-config.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.prettierignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.prettierrc.cjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/.readthedocs.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/CLAUDE.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/LICENSE +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/MANIFEST.in +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/Makefile +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/README.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/benchmarks/lsp_render_model_bench.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/custom_materializations/custom_materializations/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/custom_materializations/custom_materializations/custom_kind.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/custom_materializations/custom_materializations/full.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/custom_materializations/pyproject.toml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/audits/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/audits/assert_positive_order_ids.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/constants.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/data/.keep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/macros/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/macros/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/full_model.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/ibis_full_model_python.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/ibis_full_model_sql.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/incremental_model.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/models/seed_model.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/seeds/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/seeds/seed_data.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/ibis/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/audits/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17/examples/sushi → sqlmesh-0.199.1.dev19/examples/multi/repo_1/linter}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/linter/user.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/macros/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/macros/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/models/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/models/a.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/models/b.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_1/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/audits/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/macros/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/macros/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/models/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/models/c.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/models/d.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/models/e.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi/repo_2/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/bronze/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/bronze/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/bronze/models/a.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/bronze/models/b.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/bronze/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/macros/store_schemas.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/models/c.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/models/d.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_dbt/silver/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/macros/round_dollars.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/models/c.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/models/d.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/models/e.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/dbt_repo/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/sqlmesh_repo/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/sqlmesh_repo/models/a.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/multi_hybrid/sqlmesh_repo/models/b.sql +0 -0
- {sqlmesh-0.199.1.dev17/examples/sushi_dbt → sqlmesh-0.199.1.dev19/examples/sushi}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/audits/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/audits/items.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/audits/order_items.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/audits/raw_demographics.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/data/.keep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/external_models/model1/model1.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/external_models/model2/model2.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/external_models/prod.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/external_models.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/helper.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/linter/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/linter/user.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/macros/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/macros/macros.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/macros/macros.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/macros/utils.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/metrics/metrics.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/active_customers.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/blueprint.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/customer_revenue_lifetime.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/customers.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/disabled.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/disabled.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/items.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/latest_order.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/marketing.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/order_items.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/orders.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/raw_marketing.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/top_waiters.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/waiter_names.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/models/waiters.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/signals/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/sqlmesh-requirements.lock +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/tests/test_customer_revenue_by_day.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/tests/test_customer_revenue_lifetime.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi/tests/test_order_items.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/.user.yml +0 -0
- {sqlmesh-0.199.1.dev17/examples/wursthall → sqlmesh-0.199.1.dev19/examples/sushi_dbt}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/analyses/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/macros/incremental.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/macros/log_value.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/customers.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/top_waiters.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/models/waiters.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/seeds/items.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/seeds/order_items.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/seeds/orders.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/seeds/properties.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/snapshots/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/tests/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dbt/tests/generic/less_than_amount.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/sushi_dlt/sushi_pipeline.py +0 -0
- {sqlmesh-0.199.1.dev17/examples/wursthall/macros → sqlmesh-0.199.1.dev19/examples/wursthall}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/audits/db/order_f.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17/examples/wursthall/models → sqlmesh-0.199.1.dev19/examples/wursthall/macros}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/macros/macros.py +0 -0
- {sqlmesh-0.199.1.dev17/examples/wursthall/models/src → sqlmesh-0.199.1.dev19/examples/wursthall/models}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/db/customer_d.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/db/item_d.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/db/order_f.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/db/order_item_f.sql +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/cicd → sqlmesh-0.199.1.dev19/examples/wursthall/models/src}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/src/customer_details.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/src/menu_item_details.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/src/order_item_details.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/models/src/shared.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/seeds/src/menu_item_details.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/tests/test_customer_d.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/examples/wursthall/tests/test_order_item_f.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/mkdocs.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/package.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/pdoc/cli.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/pdoc/templates/module.html.jinja2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/pnpm-workspace.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/pyproject.toml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/setup.cfg +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/.airflowignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/core → sqlmesh-0.199.1.dev19/sqlmesh/cicd}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cicd/bot.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cicd/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cli/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cli/options.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/cli/project_init.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/core/linter → sqlmesh-0.199.1.dev19/sqlmesh/core}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/_typing.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/analytics/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/analytics/collector.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/analytics/dispatcher.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/audit/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/audit/builtin.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/audit/definition.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/base.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/categorizer.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/common.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/connection.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/feature_flag.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/format.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/gateway.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/janitor.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/linter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/migration.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/naming.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/plan.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/root.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/run.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/scheduler.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/config/ui.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/constants.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/context_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/dialect.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/_typing.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/athena.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/base.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/base_postgres.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/bigquery.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/clickhouse.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/databricks.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/duckdb.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/mixins.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/mssql.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/mysql.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/postgres.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/redshift.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/risingwave.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/shared.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/snowflake.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/spark.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/engine_adapter/trino.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/environment.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/lineage.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/dbt/converter → sqlmesh-0.199.1.dev19/sqlmesh/core/linter}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/linter/definition.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/linter/helpers.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/linter/rule.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/linter/rules/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/linter/rules/builtin.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/macros.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/metric/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/metric/definition.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/metric/rewriter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/cache.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/common.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/decorator.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/definition.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/kind.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/meta.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/schema.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/model/seed.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/notification_target.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/plan/explainer.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/reference.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/renderer.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/schema_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/schema_loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/selector.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/signal.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/snapshot/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/snapshot/cache.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/snapshot/categorizer.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/snapshot/evaluator.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/base.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/cache.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/common.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/environment.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/facade.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/interval.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/migrator.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/snapshot.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/utils.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/db/version.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/state_sync/export_import.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/table_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/context.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/definition.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/discovery.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/result.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/test/runner.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/core/user.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/adapter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/basemodel.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/builtin.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/column.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/common.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/context.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/engines → sqlmesh-0.199.1.dev19/sqlmesh/dbt/converter}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/common.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/console.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/convert.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/jinja.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/jinja_builtins.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/converter/jinja_transforms.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/manifest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/package.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/profile.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/project.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/relation.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/seed.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/source.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/target.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/test.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/dbt/util.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/engines/spark → sqlmesh-0.199.1.dev19/sqlmesh/engines}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/engines/commands.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/engines/spark/db_api → sqlmesh-0.199.1.dev19/sqlmesh/engines/spark}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/engines/spark/app.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/integrations → sqlmesh-0.199.1.dev19/sqlmesh/engines/spark/db_api}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/engines/spark/db_api/errors.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/engines/spark/db_api/spark_session.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/integrations/github → sqlmesh-0.199.1.dev19/sqlmesh/integrations}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/dlt.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/integrations/github/cicd → sqlmesh-0.199.1.dev19/sqlmesh/integrations/github}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/migrations → sqlmesh-0.199.1.dev19/sqlmesh/integrations/github/cicd}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/github/cicd/command.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/github/cicd/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/github/cicd/controller.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/llm.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/integrations/slack.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/api.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/completions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/context.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/custom.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/description.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/helpers.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/hints.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/main.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/reference.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/rename.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/lsp/uri.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/magics.py +0 -0
- {sqlmesh-0.199.1.dev17/sqlmesh/schedulers → sqlmesh-0.199.1.dev19/sqlmesh/migrations}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0001_init.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0002_remove_identify.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0003_move_batch_size.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0004_environmnent_add_finalized_at.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0005_create_seed_table.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0006_change_seed_hash.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0007_env_table_info_to_kind.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0008_create_intervals_table.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0009_remove_pre_post_hooks.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0010_seed_hash_batch_size.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0011_add_model_kind_name.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0012_update_jinja_expressions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0013_serde_using_model_dialects.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0014_fix_dev_intervals.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0015_environment_add_promoted_snapshot_ids.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0016_fix_windows_path.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0017_fix_windows_seed_path.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0018_rename_snapshot_model_to_node.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0019_add_env_suffix_target.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0020_remove_redundant_attributes_from_dbt_models.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0021_fix_table_properties.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0022_move_project_to_model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0023_fix_added_models_with_forward_only_parents.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0024_replace_model_kind_name_enum_with_value.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0025_fix_intervals_and_missing_change_category.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0026_remove_dialect_from_seed.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0027_minute_interval_to_five.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0028_add_plan_dags_table.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0029_generate_schema_types_using_dialect.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0030_update_unrestorable_snapshots.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0031_remove_dbt_target_fields.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0032_add_sqlmesh_version.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0033_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0034_add_default_catalog.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0035_add_catalog_name_override.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0036_delete_plan_dags_bug_fix.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0037_remove_dbt_is_incremental_macro.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0038_add_expiration_ts_to_snapshot.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0039_include_environment_in_plan_dag_spec.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0040_add_previous_finalized_snapshots.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0041_remove_hash_raw_query_attribute.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0042_trim_indirect_versions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0043_fix_remove_obsolete_attributes_in_plan_dags.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0044_quote_identifiers_in_model_attributes.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0045_move_gateway_variable.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0046_add_batch_concurrency.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0047_change_scd_string_to_column.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0048_drop_indirect_versions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0049_replace_identifier_with_version_in_seeds_table.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0050_drop_seeds_table.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0051_rename_column_descriptions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0052_add_normalize_name_in_environment_naming_info.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0053_custom_model_kind_extra_attributes.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0054_fix_trailing_comments.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0055_add_updated_ts_unpaused_ts_ttl_ms_unrestorable_to_snapshot.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0056_restore_table_indexes.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0057_add_table_format.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0058_add_requirements.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0059_add_physical_version.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0060_move_audits_to_model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0061_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0062_add_model_gateway.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0063_change_signals.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0064_join_when_matched_strings.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0065_add_model_optimize.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0066_add_auto_restatements.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0067_add_tsql_date_full_precision.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0068_include_unrendered_query_in_metadata_hash.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0069_update_dev_table_suffix.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0070_include_grains_in_metadata_hash.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0071_add_dev_version_to_intervals.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0072_add_environment_statements.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0073_remove_symbolic_disable_restatement.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0074_add_partition_by_time_column_property.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0075_remove_validate_query.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0076_add_cron_tz.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0077_fix_column_type_hash_calculation.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0078_warn_if_non_migratable_python_env.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0079_add_gateway_managed_property.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0080_add_batch_size_to_scd_type_2_models.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0081_update_partitioned_by.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0082_warn_if_incorrectly_duplicated_statements.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0083_use_sql_for_scd_time_data_type_data_hash.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/migrations/v0084_normalize_quote_when_matched_and_merge_filter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/py.typed +0 -0
- {sqlmesh-0.199.1.dev17/tests/cli → sqlmesh-0.199.1.dev19/sqlmesh/schedulers}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/aws.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/cache.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/concurrency.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/connection_pool.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/conversions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/cron.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/dag.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/date.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/errors.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/git.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/hashing.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/jinja.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/metaprogramming.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/migration.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/pandas.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/process.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/pydantic.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/rich.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/windows.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh/utils/yaml.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/dependency_links.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/entry_points.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/requires.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/sqlmesh.egg-info/top_level.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/core → sqlmesh-0.199.1.dev19/tests/cli}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/cli/test_cli.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/cli/test_integration_cli.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/core/analytics → sqlmesh-0.199.1.dev19/tests/core}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/core/metric → sqlmesh-0.199.1.dev19/tests/core/analytics}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/analytics/test_collector.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/analytics/test_dispatcher.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/config.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/_common-hive.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/clickhouse/config.xml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/clickhouse/keeper.xml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.clickhouse.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.mssql.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.mysql.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.postgres.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.risingwave.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.spark.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/compose.trino.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/init-metastore-db.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/spark/Dockerfile +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/spark/conf/hive-site.xml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/spark/conf/spark-defaults.conf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake.properties +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_delta.properties +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_iceberg.properties +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_nessie.properties +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/docker/trino/catalog/testing.properties +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_athena.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_bigquery.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_clickhouse.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_duckdb.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_postgres.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_redshift.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_snowflake.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/integration/test_integration_trino.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_athena.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_base.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_base_postgres.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_bigquery.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_clickhouse.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_databricks.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_duckdb.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_mixins.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_mssql.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_mysql.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_postgres.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_redshift.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_risingwave.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_snowflake.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_spark.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/engine_adapter/test_trino.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/dbt → sqlmesh-0.199.1.dev19/tests/core/metric}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/metric/test_metric.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/metric/test_rewriter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/state_sync/test_export_import.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/state_sync/test_state_sync.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_audit.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_connection_config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_dialect.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_environment.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_format.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_integration.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_lineage.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_macros.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_notification_target.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_plan_evaluator.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_reference.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_rule.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_scheduler.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_schema_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_schema_loader.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_seed.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_selector.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_snapshot_evaluator.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_table_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/core/test_test.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/engines → sqlmesh-0.199.1.dev19/tests/dbt}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/analyses/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/macros/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/models/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/models/sources.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/packages/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/seeds/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/seeds/items.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/seeds/properties.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/snapshots/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/empty_dbt_project/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/jinja_nested_if.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/macro_dbt_incremental.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/macro_func_with_params.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/fixtures/model_query_incremental.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/test_convert.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/test_jinja.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/converter/test_jinja_transforms.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_adapter.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_integration.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_manifest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_test.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_transformation.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/dbt/test_util.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/engines/spark → sqlmesh-0.199.1.dev19/tests/engines}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/fixtures/dbt/sushi_test → sqlmesh-0.199.1.dev19/tests/engines/spark}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/engines/spark/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/engines/spark/test_db_api.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/integrations → sqlmesh-0.199.1.dev19/tests/fixtures/dbt/sushi_test}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/analyses/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/logs/dbt.log.legacy +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/macros/create_tables.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/macros/incremental.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/macros/log_value.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/macros/test_dependencies.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/disabled_model.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/simple_model_a.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/simple_model_b.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/top_waiters.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/models/waiters.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/macros/packaged_tables.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/models/customers.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/packages.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/profiles.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/schema.yaml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/seed_sources.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/seeds/properties.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/snapshots/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/snapshots/items_check_snapshot.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/snapshots/items_no_hard_delete_snapshot.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/snapshots/items_snapshot.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/source_data/items.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/source_data/order_items.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/source_data/orders.csv +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/dbt/sushi_test/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_closed.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_command_deploy.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_comment.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_review_submit.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_synchronized.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/github/pull_request_synchronized_enterprise.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/migrations/environments.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/migrations/snapshots.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/audits/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/macros/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/macros/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/models/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/models/first_schema/model_one.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/models/first_schema/model_two.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/models/second_schema/model_one.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/models/second_schema/model_two.sql +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/multi_virtual_layer/tests/.gitkeep +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/snowflake/rsa_key_no_pass.p8 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/fixtures/snowflake/rsa_key_pass.p8 +0 -0
- {sqlmesh-0.199.1.dev17/tests/integrations/github → sqlmesh-0.199.1.dev19/tests/integrations}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/integrations/github/cicd → sqlmesh-0.199.1.dev19/tests/integrations/github}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/integrations/jupyter → sqlmesh-0.199.1.dev19/tests/integrations/github/cicd}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/test_config.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/test_github_commands.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/test_github_controller.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/test_github_event.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/github/cicd/test_integration.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/schedulers → sqlmesh-0.199.1.dev19/tests/integrations/jupyter}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/jupyter/example_outputs.ipynb +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/integrations/jupyter/test_magics.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_code_actions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_completions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_context.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_description.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_diagnostics.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_document_highlight.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_hints.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_cte.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_cte_find_all.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_external_model.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_macro.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_macro_find_all.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_macro_multi.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_model_column_prefix.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_reference_model_find_all.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/lsp/test_rename_cte.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/pyproject.toml +0 -0
- {sqlmesh-0.199.1.dev17/tests/utils → sqlmesh-0.199.1.dev19/tests/schedulers}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/setup.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/test_forking.py +0 -0
- {sqlmesh-0.199.1.dev17/tests/web → sqlmesh-0.199.1.dev19/tests/utils}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/pandas.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_aws.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_cache.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_concurrency.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_connection_pool.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_dag.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_date.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_filesystem.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_filters.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_helpers.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_jinja.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_metaprogramming.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_pydantic.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/utils/test_yaml.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19/tests}/web/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/web/conftest.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/web/test_lineage.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tests/web/test_main.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tooling/README.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tooling/vscode/extensions.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tooling/vscode/launch.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tooling/vscode/settings.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/tooling/vscode/tasks.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/package.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/src/brand.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/src/callbacks.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/src/result.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/bus/tsconfig.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/.vscodeignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/CHANGELOG.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/README.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/assets/logo.png +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/assets/logo.svg +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/esbuild.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/eslint.config.mjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/package.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/playwright.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/auth/auth.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/commands.test.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/format.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/printEnvironment.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/renderModel.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/signin.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/signinSpecifyFlow.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/signout.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/commands/stop.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/completion/completion.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/extension.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/lsp/custom.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/lsp/lsp.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/providers/renderedModelProvider.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/constants.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/log.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/python.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/settings.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/utilities.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/common/vscodeapi.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/errors.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/exec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/isCodespaces.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/isWindows.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/python.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/semver.test.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/semver.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/sleep.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/utilities/sqlmesh/sqlmesh.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/src/webviews/lineagePanel.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/bad_setup.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/broken_project.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/completions.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/diagnostics.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/extension.setup.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/extension.teardown.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/find_references.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/format.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/go_to_definition.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/hints.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/lineage.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/lineage_settings.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/python_env.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/rename_cte.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/render.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/stop.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud/README.md +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud/mock_tcloud/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud/mock_tcloud/cli.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud/pyproject.toml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/tcloud_utils.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/utils.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/utils_code_server.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tests/venv_naming.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tsconfig.build.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tsconfig.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/tsconfig.test.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/extension/vitest.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/openapi.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.cta.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.storybook/main.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.storybook/preview.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.storybook/storybook.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/.storybook/vitest.setup.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/index.html +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/orval.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/package.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/App.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/api/client.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/api/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/api/instance.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/button/Button.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/CogIcon.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/Graph.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/SettingsControl.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/graph/types.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/input/Input.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/input/Selector.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/components/title/Title.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/domain/column.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/domain/initial.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/domain/lineage.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/domain/models.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/domain/sqlmesh-model.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/hooks/eventBus.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/hooks/vscode.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/main.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/pages/lineage.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/reportWebVitals.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/routeTree.gen.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/routes/__root.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/routes/index.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/routes/lineage.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/style/variants.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/styles.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/utils/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/utils/receiveEvents.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/utils/rpc.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/utils/vscodeapi.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/workers/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/src/workers/lineage.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/tailwind.config.cjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/tsconfig.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/vite.config.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/vscode/react/vitest.shims.d.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/.dockerignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/Dockerfile.api +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/Dockerfile.app +0 -0
- {sqlmesh-0.199.1.dev17/web/server → sqlmesh-0.199.1.dev19/web}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/.gitignore +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Audits-BuHAmFO8.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Banner-DFFgSp7_.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/ChevronDownIcon-DtTgO9XQ.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/ChevronRightIcon-UI3RytmK.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Content-CpNCWToC.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Content-aUn7pk46.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Data-CZDVrGG4.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/DataCatalog-BTH7PLMa.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Editor-aTj13TCY.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Editor-biLDBbAA.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Errors-CH0KFwsR.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/FileExplorer-DajbVeH5.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Footer-1kutyViJ.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Header-BeNTIlzT.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Input-BGdTmRPV.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Lineage-C7Aqseca.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/ListboxShow-BRUdoaSL.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/ModelLineage-BVQJptIB.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Models-B5TYaoIH.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Page-D_es10yq.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Plan-D4VG3U-s.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/PlusCircleIcon-M3NGeHST.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/ReportErrors-CaaGo6UD.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Root-DcJxWwG4.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/SearchList-vj2s_Pnb.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/SelectEnvironment-GfN4mjDu.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/SourceList-BioJ2XB9.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/SourceListItem-DhUDAM6G.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/SplitPane-CqYEXonR.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Tests-D0MOEJwQ.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/Welcome-ALXxKTT6.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/context-C6O7H5eL.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/context-DUS5wzfN.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/editor-DQqZC36D.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/file-gUDWL5Z6.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/floating-ui.react-dom-9Mo3XjFw.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/help-6Q7f7fjd.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/help-CfEW8yRZ.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/index-DH1v9iOD.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/index-Ditw2lX8.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/plan-BC79Qq7e.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/popover-BS2D7N_A.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/assets/project-YuVl6ae5.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/css/base.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/css/design.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/favicons/favicon.svg +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/dist/index.html +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/eslint.config.mjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/index.html +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/openapi.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/orval.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/package.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/playwright.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/postcss.config.cjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/css/base.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/css/design.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/favicons/favicon.svg +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/public/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/App.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/api/channels.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/api/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/api/instance.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/context/context.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/context/editor.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/context/plan.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/context/project.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/context/theme.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/hooks/useActiveFocus.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/hooks/useLocalStorage.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/banner/Banner.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/banner/Welcome.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/button/Button.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/button/tests/Button.spec.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/container/Container.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/divider/tests/Divider.spec.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/documentation/Documentation.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/Editor.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/Editor.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorCode.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorFooter.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorIndicator.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorInspector.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorPreview.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorTab.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/EditorTabs.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/extensions/SQLMeshDialect.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/extensions/SQLMeshModel.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/extensions/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/extensions/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/editor/hooks.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/environmentDetails/AddEnvironment.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/environmentDetails/EnvironmentChanges.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/environmentDetails/EnvironmentChangesPreview.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/environmentDetails/EnvironmentDetails.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/environmentDetails/SelectEnvironment.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/fileExplorer/Directory.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/fileExplorer/DragLayer.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/fileExplorer/File.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/fileExplorer/FileExplorer.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/fileExplorer/context.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/Graph.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelLineageSearch.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/context.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/graph/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/historyNavigation/historyNavigation.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/input/Input.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/input/Selector.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.199.1.dev17/vscode/react/src → sqlmesh-0.199.1.dev19/web/client/src/library}/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.199.1.dev17/vscode/react/src → sqlmesh-0.199.1.dev19/web/client/src/library}/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/modal/Modal.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/modal/ModalConfirmation.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/moduleNavigation/ModuleLink.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/moduleNavigation/ModuleNavigation.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/Plan.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanActions.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanApplyStageTracker.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanBackfillDates.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanChangePreview.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanHeader.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/PlanOptions.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/context.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/help.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/plan/hooks.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/progress/Progress.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/report/ReportErrors.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/report/ReportTestsErrors.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/search/SearchList.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/search/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/splitPane/SplitPane.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/splitPane/SplitPane.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/tab/Tab.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/table/Table.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/table/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/tableDiff/TableDiff.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/tableDiff/help.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/tasksOverview/TasksOverview.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/title/Title.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/components/toggle/Toggle.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/audits/Audits.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/data/Data.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/data-catalog/DataCatalog.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/editor/Editor.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/errors/Content.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/errors/Errors.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/lineage/Lineage.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/models/Models.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/plan/Content.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/plan/Plan.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/Footer.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/Header.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/Navigation.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/NotFound.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/Page.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/Root.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/root/context/notificationCenter.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/library/pages/tests/Tests.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/main.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/artifact.posix.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/artifact.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/artifact.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/artifact.win.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/directory.posix.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/directory.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/directory.win.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/environment.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/file.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/file.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/initial.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/module-controller.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/plan-action.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/sqlmesh-change-display.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/sqlmesh-model.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/tracker-plan-apply.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/tracker-plan-cancel.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/tracker-plan-overview.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/models/tracker-plan.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/routes.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/styles/index.css +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/tests/setup.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/tests/utils.tsx +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/types/enum.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/types/index.d.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/utils/additional-components.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/utils/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/utils/tbk-components.js +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/workers/index.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/workers/lineage.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/workers/sqlglot/sqlglot.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/src/workers/sqlglot/sqlglot.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/tailwind.config.cjs +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/tests/initial.spec.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/tsconfig.json +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/client/vite.config.ts +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/docker-compose.build.yml +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/docker-compose.yml +0 -0
- {sqlmesh-0.199.1.dev17/web/server/api → sqlmesh-0.199.1.dev19/web/server}/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/__init__.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/commands.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/directories.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/environments.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/events.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/files.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/lineage.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/meta.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/models.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/modules.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/plan.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/api/endpoints/table_diff.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/app.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/console.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/exceptions.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/main.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/models.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/openapi.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/settings.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/utils.py +0 -0
- {sqlmesh-0.199.1.dev17 → sqlmesh-0.199.1.dev19}/web/server/watcher.py +0 -0
|
@@ -75,12 +75,6 @@ importers:
|
|
|
75
75
|
ts-loader:
|
|
76
76
|
specifier: ^9.5.2
|
|
77
77
|
version: 9.5.2(typescript@5.8.3)(webpack@5.99.8(esbuild@0.25.5))
|
|
78
|
-
<<<<<<< HEAD
|
|
79
|
-
=======
|
|
80
|
-
tsx:
|
|
81
|
-
specifier: ^4.20.3
|
|
82
|
-
version: 4.20.3
|
|
83
|
-
>>>>>>> a6ed6cf88 (chore(vscode): update dependencies)
|
|
84
78
|
typescript:
|
|
85
79
|
specifier: ^5.8.3
|
|
86
80
|
version: 5.8.3
|
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.199.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 199, 1, '
|
|
20
|
+
__version__ = version = '0.199.1.dev19'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 199, 1, 'dev19')
|
|
@@ -520,6 +520,11 @@ def diff(ctx: click.Context, environment: t.Optional[str] = None) -> None:
|
|
|
520
520
|
help="Explain the plan instead of applying it.",
|
|
521
521
|
default=None,
|
|
522
522
|
)
|
|
523
|
+
@click.option(
|
|
524
|
+
"--min-intervals",
|
|
525
|
+
default=0,
|
|
526
|
+
help="For every model, ensure at least this many intervals are covered by a missing intervals check regardless of the plan start date",
|
|
527
|
+
)
|
|
523
528
|
@opt.verbose
|
|
524
529
|
@click.pass_context
|
|
525
530
|
@error_handler
|
|
@@ -2073,8 +2073,8 @@ class TerminalConsole(Console):
|
|
|
2073
2073
|
if not plan_builder.override_end:
|
|
2074
2074
|
if plan.provided_end:
|
|
2075
2075
|
blank_meaning = f"'{time_like_to_str(plan.provided_end)}'"
|
|
2076
|
-
elif plan.
|
|
2077
|
-
max_end = max(plan.
|
|
2076
|
+
elif plan.end_override_per_model:
|
|
2077
|
+
max_end = max(plan.end_override_per_model.values())
|
|
2078
2078
|
blank_meaning = f"'{time_like_to_str(max_end)}'"
|
|
2079
2079
|
else:
|
|
2080
2080
|
blank_meaning = "now"
|
|
@@ -46,6 +46,7 @@ from itertools import chain
|
|
|
46
46
|
from pathlib import Path
|
|
47
47
|
from shutil import rmtree
|
|
48
48
|
from types import MappingProxyType
|
|
49
|
+
from datetime import datetime
|
|
49
50
|
|
|
50
51
|
from sqlglot import Dialect, exp
|
|
51
52
|
from sqlglot.helper import first
|
|
@@ -125,6 +126,8 @@ from sqlmesh.utils.date import (
|
|
|
125
126
|
format_tz_datetime,
|
|
126
127
|
now_timestamp,
|
|
127
128
|
now,
|
|
129
|
+
to_datetime,
|
|
130
|
+
make_exclusive,
|
|
128
131
|
)
|
|
129
132
|
from sqlmesh.utils.errors import (
|
|
130
133
|
CircuitBreakerError,
|
|
@@ -1222,6 +1225,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1222
1225
|
diff_rendered: t.Optional[bool] = None,
|
|
1223
1226
|
skip_linter: t.Optional[bool] = None,
|
|
1224
1227
|
explain: t.Optional[bool] = None,
|
|
1228
|
+
min_intervals: t.Optional[int] = None,
|
|
1225
1229
|
) -> Plan:
|
|
1226
1230
|
"""Interactively creates a plan.
|
|
1227
1231
|
|
|
@@ -1268,6 +1272,8 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1268
1272
|
diff_rendered: Whether the diff should compare raw vs rendered models
|
|
1269
1273
|
skip_linter: Linter runs by default so this will skip it if enabled
|
|
1270
1274
|
explain: Whether to explain the plan instead of applying it.
|
|
1275
|
+
min_intervals: Adjust the plan start date on a per-model basis in order to ensure at least this many intervals are covered
|
|
1276
|
+
on every model when checking for missing intervals
|
|
1271
1277
|
|
|
1272
1278
|
Returns:
|
|
1273
1279
|
The populated Plan object.
|
|
@@ -1296,6 +1302,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1296
1302
|
diff_rendered=diff_rendered,
|
|
1297
1303
|
skip_linter=skip_linter,
|
|
1298
1304
|
explain=explain,
|
|
1305
|
+
min_intervals=min_intervals,
|
|
1299
1306
|
)
|
|
1300
1307
|
|
|
1301
1308
|
plan = plan_builder.build()
|
|
@@ -1345,6 +1352,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1345
1352
|
diff_rendered: t.Optional[bool] = None,
|
|
1346
1353
|
skip_linter: t.Optional[bool] = None,
|
|
1347
1354
|
explain: t.Optional[bool] = None,
|
|
1355
|
+
min_intervals: t.Optional[int] = None,
|
|
1348
1356
|
) -> PlanBuilder:
|
|
1349
1357
|
"""Creates a plan builder.
|
|
1350
1358
|
|
|
@@ -1381,6 +1389,8 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1381
1389
|
enable_preview: Indicates whether to enable preview for forward-only models in development environments.
|
|
1382
1390
|
run: Whether to run latest intervals as part of the plan application.
|
|
1383
1391
|
diff_rendered: Whether the diff should compare raw vs rendered models
|
|
1392
|
+
min_intervals: Adjust the plan start date on a per-model basis in order to ensure at least this many intervals are covered
|
|
1393
|
+
on every model when checking for missing intervals
|
|
1384
1394
|
|
|
1385
1395
|
Returns:
|
|
1386
1396
|
The plan builder.
|
|
@@ -1408,6 +1418,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1408
1418
|
"run": run,
|
|
1409
1419
|
"diff_rendered": diff_rendered,
|
|
1410
1420
|
"skip_linter": skip_linter,
|
|
1421
|
+
"min_intervals": min_intervals,
|
|
1411
1422
|
}
|
|
1412
1423
|
user_provided_flags: t.Dict[str, UserProvidedFlags] = {
|
|
1413
1424
|
k: v for k, v in kwargs.items() if v is not None
|
|
@@ -1530,6 +1541,16 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1530
1541
|
# Refresh snapshot intervals to ensure that they are up to date with values reflected in the max_interval_end_per_model.
|
|
1531
1542
|
self.state_sync.refresh_snapshot_intervals(context_diff.snapshots.values())
|
|
1532
1543
|
|
|
1544
|
+
start_override_per_model = self._calculate_start_override_per_model(
|
|
1545
|
+
min_intervals,
|
|
1546
|
+
start or default_start,
|
|
1547
|
+
end or default_end,
|
|
1548
|
+
execution_time or now(),
|
|
1549
|
+
backfill_models,
|
|
1550
|
+
snapshots,
|
|
1551
|
+
max_interval_end_per_model,
|
|
1552
|
+
)
|
|
1553
|
+
|
|
1533
1554
|
return self.PLAN_BUILDER_TYPE(
|
|
1534
1555
|
context_diff=context_diff,
|
|
1535
1556
|
start=start,
|
|
@@ -1560,7 +1581,8 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1560
1581
|
),
|
|
1561
1582
|
end_bounded=not run,
|
|
1562
1583
|
ensure_finalized_snapshots=self.config.plan.use_finalized_state,
|
|
1563
|
-
|
|
1584
|
+
start_override_per_model=start_override_per_model,
|
|
1585
|
+
end_override_per_model=max_interval_end_per_model,
|
|
1564
1586
|
console=self.console,
|
|
1565
1587
|
user_provided_flags=user_provided_flags,
|
|
1566
1588
|
explain=explain or False,
|
|
@@ -2850,7 +2872,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2850
2872
|
def _get_plan_default_start_end(
|
|
2851
2873
|
self,
|
|
2852
2874
|
snapshots: t.Dict[str, Snapshot],
|
|
2853
|
-
max_interval_end_per_model: t.Dict[str,
|
|
2875
|
+
max_interval_end_per_model: t.Dict[str, datetime],
|
|
2854
2876
|
backfill_models: t.Optional[t.Set[str]],
|
|
2855
2877
|
modified_model_names: t.Set[str],
|
|
2856
2878
|
execution_time: t.Optional[TimeLike] = None,
|
|
@@ -2858,7 +2880,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2858
2880
|
if not max_interval_end_per_model:
|
|
2859
2881
|
return None, None
|
|
2860
2882
|
|
|
2861
|
-
default_end = max(max_interval_end_per_model.values())
|
|
2883
|
+
default_end = to_timestamp(max(max_interval_end_per_model.values()))
|
|
2862
2884
|
default_start: t.Optional[int] = None
|
|
2863
2885
|
# Infer the default start by finding the smallest interval start that corresponds to the default end.
|
|
2864
2886
|
for model_name in backfill_models or modified_model_names or max_interval_end_per_model:
|
|
@@ -2887,19 +2909,101 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2887
2909
|
|
|
2888
2910
|
return default_start, default_end
|
|
2889
2911
|
|
|
2912
|
+
def _calculate_start_override_per_model(
|
|
2913
|
+
self,
|
|
2914
|
+
min_intervals: t.Optional[int],
|
|
2915
|
+
plan_start: t.Optional[TimeLike],
|
|
2916
|
+
plan_end: t.Optional[TimeLike],
|
|
2917
|
+
plan_execution_time: TimeLike,
|
|
2918
|
+
backfill_model_fqns: t.Optional[t.Set[str]],
|
|
2919
|
+
snapshots_by_model_fqn: t.Dict[str, Snapshot],
|
|
2920
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]],
|
|
2921
|
+
) -> t.Dict[str, datetime]:
|
|
2922
|
+
if not min_intervals or not backfill_model_fqns or not plan_start:
|
|
2923
|
+
# If there are no models to backfill, there are no intervals to consider for backfill, so we dont need to consider a minimum number
|
|
2924
|
+
# If the plan doesnt have a start date, all intervals are considered already so we dont need to consider a minimum number
|
|
2925
|
+
# If we dont have a minimum number of intervals to consider, then we dont need to adjust the start date on a per-model basis
|
|
2926
|
+
return {}
|
|
2927
|
+
|
|
2928
|
+
start_overrides: t.Dict[str, datetime] = {}
|
|
2929
|
+
end_override_per_model = end_override_per_model or {}
|
|
2930
|
+
|
|
2931
|
+
plan_execution_time_dt = to_datetime(plan_execution_time)
|
|
2932
|
+
plan_start_dt = to_datetime(plan_start, relative_base=plan_execution_time_dt)
|
|
2933
|
+
plan_end_dt = to_datetime(
|
|
2934
|
+
plan_end or plan_execution_time_dt, relative_base=plan_execution_time_dt
|
|
2935
|
+
)
|
|
2936
|
+
|
|
2937
|
+
# we need to take the DAG into account so that parent models can be expanded to cover at least as much as their children
|
|
2938
|
+
# for example, A(hourly) <- B(daily)
|
|
2939
|
+
# if min_intervals=1, A would have 1 hour and B would have 1 day
|
|
2940
|
+
# but B depends on A so in order for B to have 1 valid day, A needs to be expanded to 24 hours
|
|
2941
|
+
backfill_dag: DAG[str] = DAG()
|
|
2942
|
+
for fqn in backfill_model_fqns:
|
|
2943
|
+
backfill_dag.add(
|
|
2944
|
+
fqn,
|
|
2945
|
+
[
|
|
2946
|
+
p.name
|
|
2947
|
+
for p in snapshots_by_model_fqn[fqn].parents
|
|
2948
|
+
if p.name in backfill_model_fqns
|
|
2949
|
+
],
|
|
2950
|
+
)
|
|
2951
|
+
|
|
2952
|
+
# start from the leaf nodes and work back towards the root because the min_start at the root node is determined by the calculated starts in the leaf nodes
|
|
2953
|
+
reversed_dag = backfill_dag.reversed
|
|
2954
|
+
graph = reversed_dag.graph
|
|
2955
|
+
|
|
2956
|
+
for model_fqn in reversed_dag:
|
|
2957
|
+
# Get the earliest start from all immediate children of this snapshot
|
|
2958
|
+
# this works because topological ordering guarantees that they've already been visited
|
|
2959
|
+
# and we always set a start override
|
|
2960
|
+
min_child_start = min(
|
|
2961
|
+
[start_overrides[immediate_child_fqn] for immediate_child_fqn in graph[model_fqn]],
|
|
2962
|
+
default=plan_start_dt,
|
|
2963
|
+
)
|
|
2964
|
+
|
|
2965
|
+
snapshot = snapshots_by_model_fqn.get(model_fqn)
|
|
2966
|
+
|
|
2967
|
+
if not snapshot:
|
|
2968
|
+
continue
|
|
2969
|
+
|
|
2970
|
+
starting_point = end_override_per_model.get(model_fqn, plan_end_dt)
|
|
2971
|
+
if node_end := snapshot.node.end:
|
|
2972
|
+
# if we dont do this, if the node end is a *date* (as opposed to a timestamp)
|
|
2973
|
+
# we end up incorrectly winding back an extra day
|
|
2974
|
+
node_end_dt = make_exclusive(node_end)
|
|
2975
|
+
|
|
2976
|
+
if node_end_dt < plan_end_dt:
|
|
2977
|
+
# if the model has an end date that has already elapsed, use that as a starting point for calculating min_intervals
|
|
2978
|
+
# instead of the plan end. If we use the plan end, we will return intervals in the future which are invalid
|
|
2979
|
+
starting_point = node_end_dt
|
|
2980
|
+
|
|
2981
|
+
snapshot_start = snapshot.node.cron_floor(starting_point)
|
|
2982
|
+
|
|
2983
|
+
for _ in range(min_intervals):
|
|
2984
|
+
# wind back the starting point by :min_intervals intervals to arrive at the minimum snapshot start date
|
|
2985
|
+
snapshot_start = snapshot.node.cron_prev(snapshot_start)
|
|
2986
|
+
|
|
2987
|
+
start_overrides[model_fqn] = min(min_child_start, snapshot_start)
|
|
2988
|
+
|
|
2989
|
+
return start_overrides
|
|
2990
|
+
|
|
2890
2991
|
def _get_max_interval_end_per_model(
|
|
2891
2992
|
self, snapshots: t.Dict[str, Snapshot], backfill_models: t.Optional[t.Set[str]]
|
|
2892
|
-
) -> t.Dict[str,
|
|
2993
|
+
) -> t.Dict[str, datetime]:
|
|
2893
2994
|
models_for_interval_end = (
|
|
2894
2995
|
self._get_models_for_interval_end(snapshots, backfill_models)
|
|
2895
2996
|
if backfill_models is not None
|
|
2896
2997
|
else None
|
|
2897
2998
|
)
|
|
2898
|
-
return
|
|
2899
|
-
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2999
|
+
return {
|
|
3000
|
+
model_fqn: to_datetime(ts)
|
|
3001
|
+
for model_fqn, ts in self.state_sync.max_interval_end_per_model(
|
|
3002
|
+
c.PROD,
|
|
3003
|
+
models=models_for_interval_end,
|
|
3004
|
+
ensure_finalized_snapshots=self.config.plan.use_finalized_state,
|
|
3005
|
+
).items()
|
|
3006
|
+
}
|
|
2903
3007
|
|
|
2904
3008
|
@staticmethod
|
|
2905
3009
|
def _get_models_for_interval_end(
|
|
@@ -31,6 +31,9 @@ class IntervalUnit(str, Enum):
|
|
|
31
31
|
IntervalUnit can be one of 5 types, YEAR, MONTH, DAY, HOUR, MINUTE. The unit is inferred
|
|
32
32
|
based on the cron schedule of a node. The minimum time delta between a sample set of dates
|
|
33
33
|
is used to determine which unit a node's schedule is.
|
|
34
|
+
|
|
35
|
+
It's designed to align with common partitioning schemes, hence why there is no WEEK unit
|
|
36
|
+
because generally tables are not partitioned by week
|
|
34
37
|
"""
|
|
35
38
|
|
|
36
39
|
YEAR = "year"
|
|
@@ -5,6 +5,7 @@ import re
|
|
|
5
5
|
import typing as t
|
|
6
6
|
from collections import defaultdict
|
|
7
7
|
from functools import cached_property
|
|
8
|
+
from datetime import datetime
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
from sqlmesh.core.console import PlanBuilderConsole, get_console
|
|
@@ -85,7 +86,8 @@ class PlanBuilder:
|
|
|
85
86
|
ensure_finalized_snapshots: Whether to compare against snapshots from the latest finalized
|
|
86
87
|
environment state, or to use whatever snapshots are in the current environment state even if
|
|
87
88
|
the environment is not finalized.
|
|
88
|
-
|
|
89
|
+
start_override_per_model: A mapping of model FQNs to target start dates.
|
|
90
|
+
end_override_per_model: A mapping of model FQNs to target end dates.
|
|
89
91
|
explain: Whether to explain the plan instead of applying it.
|
|
90
92
|
"""
|
|
91
93
|
|
|
@@ -117,7 +119,8 @@ class PlanBuilder:
|
|
|
117
119
|
end_bounded: bool = False,
|
|
118
120
|
ensure_finalized_snapshots: bool = False,
|
|
119
121
|
explain: bool = False,
|
|
120
|
-
|
|
122
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
123
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
121
124
|
console: t.Optional[PlanBuilderConsole] = None,
|
|
122
125
|
user_provided_flags: t.Optional[t.Dict[str, UserProvidedFlags]] = None,
|
|
123
126
|
):
|
|
@@ -133,7 +136,8 @@ class PlanBuilder:
|
|
|
133
136
|
self._enable_preview = enable_preview
|
|
134
137
|
self._end_bounded = end_bounded
|
|
135
138
|
self._ensure_finalized_snapshots = ensure_finalized_snapshots
|
|
136
|
-
self.
|
|
139
|
+
self._start_override_per_model = start_override_per_model
|
|
140
|
+
self._end_override_per_model = end_override_per_model
|
|
137
141
|
self._environment_ttl = environment_ttl
|
|
138
142
|
self._categorizer_config = categorizer_config or CategorizerConfig()
|
|
139
143
|
self._auto_categorization_enabled = auto_categorization_enabled
|
|
@@ -280,7 +284,11 @@ class PlanBuilder:
|
|
|
280
284
|
self._adjust_new_snapshot_intervals()
|
|
281
285
|
|
|
282
286
|
deployability_index = (
|
|
283
|
-
DeployabilityIndex.create(
|
|
287
|
+
DeployabilityIndex.create(
|
|
288
|
+
self._context_diff.snapshots.values(),
|
|
289
|
+
start=self._start,
|
|
290
|
+
start_override_per_model=self._start_override_per_model,
|
|
291
|
+
)
|
|
284
292
|
if self._is_dev
|
|
285
293
|
else DeployabilityIndex.all_deployable()
|
|
286
294
|
)
|
|
@@ -291,11 +299,11 @@ class PlanBuilder:
|
|
|
291
299
|
)
|
|
292
300
|
models_to_backfill = self._build_models_to_backfill(dag, restatements)
|
|
293
301
|
|
|
294
|
-
|
|
295
|
-
if
|
|
302
|
+
end_override_per_model = self._end_override_per_model
|
|
303
|
+
if end_override_per_model and self.override_end:
|
|
296
304
|
# If the end date was provided explicitly by a user, then interval end for each individual
|
|
297
305
|
# model should be ignored.
|
|
298
|
-
|
|
306
|
+
end_override_per_model = None
|
|
299
307
|
|
|
300
308
|
# this deliberately uses the passed in self._execution_time and not self.execution_time cached property
|
|
301
309
|
# the reason is because that there can be a delay between the Plan being built and the Plan being actually run,
|
|
@@ -322,7 +330,8 @@ class PlanBuilder:
|
|
|
322
330
|
indirectly_modified=indirectly_modified,
|
|
323
331
|
deployability_index=deployability_index,
|
|
324
332
|
restatements=restatements,
|
|
325
|
-
|
|
333
|
+
start_override_per_model=self._start_override_per_model,
|
|
334
|
+
end_override_per_model=end_override_per_model,
|
|
326
335
|
selected_models_to_backfill=self._backfill_models,
|
|
327
336
|
models_to_backfill=models_to_backfill,
|
|
328
337
|
effective_from=self._effective_from,
|
|
@@ -57,7 +57,8 @@ class Plan(PydanticModel, frozen=True):
|
|
|
57
57
|
|
|
58
58
|
deployability_index: DeployabilityIndex
|
|
59
59
|
restatements: t.Dict[SnapshotId, Interval]
|
|
60
|
-
|
|
60
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]]
|
|
61
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]]
|
|
61
62
|
|
|
62
63
|
selected_models_to_backfill: t.Optional[t.Set[str]] = None
|
|
63
64
|
"""Models that have been explicitly selected for backfill by a user."""
|
|
@@ -177,7 +178,8 @@ class Plan(PydanticModel, frozen=True):
|
|
|
177
178
|
execution_time=self.execution_time,
|
|
178
179
|
restatements=self.restatements,
|
|
179
180
|
deployability_index=self.deployability_index,
|
|
180
|
-
|
|
181
|
+
start_override_per_model=self.start_override_per_model,
|
|
182
|
+
end_override_per_model=self.end_override_per_model,
|
|
181
183
|
end_bounded=self.end_bounded,
|
|
182
184
|
).items()
|
|
183
185
|
if snapshot.is_model and missing
|
|
@@ -265,7 +267,8 @@ class Plan(PydanticModel, frozen=True):
|
|
|
265
267
|
removed_snapshots=sorted(self.context_diff.removed_snapshots),
|
|
266
268
|
requires_backfill=self.requires_backfill,
|
|
267
269
|
models_to_backfill=self.models_to_backfill,
|
|
268
|
-
|
|
270
|
+
start_override_per_model=self.start_override_per_model,
|
|
271
|
+
end_override_per_model=self.end_override_per_model,
|
|
269
272
|
execution_time=self.execution_time,
|
|
270
273
|
disabled_restatement_models={
|
|
271
274
|
s.name
|
|
@@ -303,7 +306,8 @@ class EvaluatablePlan(PydanticModel):
|
|
|
303
306
|
removed_snapshots: t.List[SnapshotId]
|
|
304
307
|
requires_backfill: bool
|
|
305
308
|
models_to_backfill: t.Optional[t.Set[str]] = None
|
|
306
|
-
|
|
309
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None
|
|
310
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None
|
|
307
311
|
execution_time: t.Optional[TimeLike] = None
|
|
308
312
|
disabled_restatement_models: t.Set[str]
|
|
309
313
|
environment_statements: t.Optional[t.List[EnvironmentStatements]] = None
|
|
@@ -256,7 +256,8 @@ class BuiltInPlanEvaluator(PlanEvaluator):
|
|
|
256
256
|
plan.end,
|
|
257
257
|
execution_time=plan.execution_time,
|
|
258
258
|
end_bounded=plan.end_bounded,
|
|
259
|
-
|
|
259
|
+
start_override_per_model=plan.start_override_per_model,
|
|
260
|
+
end_override_per_model=plan.end_override_per_model,
|
|
260
261
|
)
|
|
261
262
|
|
|
262
263
|
if completion_status.is_failure:
|
|
@@ -524,7 +524,8 @@ class PlanStagesBuilder:
|
|
|
524
524
|
},
|
|
525
525
|
deployability_index=deployability_index,
|
|
526
526
|
end_bounded=plan.end_bounded,
|
|
527
|
-
|
|
527
|
+
start_override_per_model=plan.start_override_per_model,
|
|
528
|
+
end_override_per_model=plan.end_override_per_model,
|
|
528
529
|
)
|
|
529
530
|
|
|
530
531
|
def _get_audit_only_snapshots(
|
|
@@ -2,6 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
import logging
|
|
3
3
|
import typing as t
|
|
4
4
|
import time
|
|
5
|
+
from datetime import datetime
|
|
5
6
|
from sqlglot import exp
|
|
6
7
|
from sqlmesh.core import constants as c
|
|
7
8
|
from sqlmesh.core.console import Console, get_console
|
|
@@ -105,7 +106,8 @@ class Scheduler:
|
|
|
105
106
|
execution_time: t.Optional[TimeLike] = None,
|
|
106
107
|
deployability_index: t.Optional[DeployabilityIndex] = None,
|
|
107
108
|
restatements: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
108
|
-
|
|
109
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
110
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
109
111
|
ignore_cron: bool = False,
|
|
110
112
|
end_bounded: bool = False,
|
|
111
113
|
selected_snapshots: t.Optional[t.Set[str]] = None,
|
|
@@ -123,7 +125,8 @@ class Scheduler:
|
|
|
123
125
|
execution_time: The date/time reference to use for execution time. Defaults to now.
|
|
124
126
|
deployability_index: Determines snapshots that are deployable in the context of this evaluation.
|
|
125
127
|
restatements: A set of snapshot names being restated.
|
|
126
|
-
|
|
128
|
+
start_override_per_model: A mapping of model FQNs to target start dates.
|
|
129
|
+
end_override_per_model: A mapping of model FQNs to target end dates.
|
|
127
130
|
ignore_cron: Whether to ignore the node's cron schedule.
|
|
128
131
|
end_bounded: If set to true, the returned intervals will be bounded by the target end date, disregarding lookback,
|
|
129
132
|
allow_partials, and other attributes that could cause the intervals to exceed the target end date.
|
|
@@ -136,7 +139,8 @@ class Scheduler:
|
|
|
136
139
|
execution_time=execution_time,
|
|
137
140
|
deployability_index=deployability_index,
|
|
138
141
|
restatements=restatements,
|
|
139
|
-
|
|
142
|
+
start_override_per_model=start_override_per_model,
|
|
143
|
+
end_override_per_model=end_override_per_model,
|
|
140
144
|
ignore_cron=ignore_cron,
|
|
141
145
|
end_bounded=end_bounded,
|
|
142
146
|
)
|
|
@@ -212,7 +216,8 @@ class Scheduler:
|
|
|
212
216
|
end: t.Optional[TimeLike] = None,
|
|
213
217
|
execution_time: t.Optional[TimeLike] = None,
|
|
214
218
|
restatements: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
215
|
-
|
|
219
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
220
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
216
221
|
ignore_cron: bool = False,
|
|
217
222
|
end_bounded: bool = False,
|
|
218
223
|
selected_snapshots: t.Optional[t.Set[str]] = None,
|
|
@@ -227,7 +232,8 @@ class Scheduler:
|
|
|
227
232
|
end=end,
|
|
228
233
|
execution_time=execution_time,
|
|
229
234
|
remove_intervals=restatements,
|
|
230
|
-
|
|
235
|
+
start_override_per_model=start_override_per_model,
|
|
236
|
+
end_override_per_model=end_override_per_model,
|
|
231
237
|
ignore_cron=ignore_cron,
|
|
232
238
|
end_bounded=end_bounded,
|
|
233
239
|
selected_snapshots=selected_snapshots,
|
|
@@ -243,7 +249,8 @@ class Scheduler:
|
|
|
243
249
|
start: TimeLike,
|
|
244
250
|
end: TimeLike,
|
|
245
251
|
execution_time: t.Optional[TimeLike] = None,
|
|
246
|
-
|
|
252
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
253
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
247
254
|
ignore_cron: bool = False,
|
|
248
255
|
end_bounded: bool = False,
|
|
249
256
|
selected_snapshots: t.Optional[t.Set[str]] = None,
|
|
@@ -266,7 +273,8 @@ class Scheduler:
|
|
|
266
273
|
end=end,
|
|
267
274
|
execution_time=execution_time,
|
|
268
275
|
remove_intervals=remove_intervals,
|
|
269
|
-
|
|
276
|
+
start_override_per_model=start_override_per_model,
|
|
277
|
+
end_override_per_model=end_override_per_model,
|
|
270
278
|
ignore_cron=ignore_cron,
|
|
271
279
|
end_bounded=end_bounded,
|
|
272
280
|
selected_snapshots=selected_snapshots,
|
|
@@ -565,7 +573,8 @@ class Scheduler:
|
|
|
565
573
|
end: t.Optional[TimeLike] = None,
|
|
566
574
|
execution_time: t.Optional[TimeLike] = None,
|
|
567
575
|
remove_intervals: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
568
|
-
|
|
576
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
577
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
569
578
|
ignore_cron: bool = False,
|
|
570
579
|
end_bounded: bool = False,
|
|
571
580
|
selected_snapshots: t.Optional[t.Set[str]] = None,
|
|
@@ -586,7 +595,8 @@ class Scheduler:
|
|
|
586
595
|
execution_time: The date/time time reference to use for execution time. Defaults to now.
|
|
587
596
|
remove_intervals: A dict of snapshots to their intervals. For evaluation, these are the intervals that will be restated. For audits,
|
|
588
597
|
these are the intervals that will be reaudited
|
|
589
|
-
|
|
598
|
+
start_override_per_model: A mapping of model FQNs to target start dates.
|
|
599
|
+
end_override_per_model: A mapping of model FQNs to target end dates.
|
|
590
600
|
ignore_cron: Whether to ignore the node's cron schedule.
|
|
591
601
|
end_bounded: If set to true, the evaluated intervals will be bounded by the target end date, disregarding lookback,
|
|
592
602
|
allow_partials, and other attributes that could cause the intervals to exceed the target end date.
|
|
@@ -634,7 +644,8 @@ class Scheduler:
|
|
|
634
644
|
execution_time,
|
|
635
645
|
deployability_index=deployability_index,
|
|
636
646
|
restatements=remove_intervals,
|
|
637
|
-
|
|
647
|
+
start_override_per_model=start_override_per_model,
|
|
648
|
+
end_override_per_model=end_override_per_model,
|
|
638
649
|
ignore_cron=ignore_cron,
|
|
639
650
|
end_bounded=end_bounded,
|
|
640
651
|
selected_snapshots=selected_snapshots,
|
|
@@ -797,7 +808,8 @@ def merged_missing_intervals(
|
|
|
797
808
|
execution_time: t.Optional[TimeLike] = None,
|
|
798
809
|
deployability_index: t.Optional[DeployabilityIndex] = None,
|
|
799
810
|
restatements: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
800
|
-
|
|
811
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
812
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
801
813
|
ignore_cron: bool = False,
|
|
802
814
|
end_bounded: bool = False,
|
|
803
815
|
) -> SnapshotToIntervals:
|
|
@@ -815,7 +827,8 @@ def merged_missing_intervals(
|
|
|
815
827
|
execution_time: The date/time reference to use for execution time. Defaults to now.
|
|
816
828
|
deployability_index: Determines snapshots that are deployable in the context of this evaluation.
|
|
817
829
|
restatements: A set of snapshot names being restated.
|
|
818
|
-
|
|
830
|
+
start_override_per_model: A mapping of model FQNs to target start dates.
|
|
831
|
+
end_override_per_model: A mapping of model FQNs to target end dates.
|
|
819
832
|
ignore_cron: Whether to ignore the node's cron schedule.
|
|
820
833
|
end_bounded: If set to true, the returned intervals will be bounded by the target end date, disregarding lookback,
|
|
821
834
|
allow_partials, and other attributes that could cause the intervals to exceed the target end date.
|
|
@@ -830,7 +843,8 @@ def merged_missing_intervals(
|
|
|
830
843
|
deployability_index=deployability_index,
|
|
831
844
|
execution_time=execution_time or now_timestamp(),
|
|
832
845
|
restatements=restatements,
|
|
833
|
-
|
|
846
|
+
start_override_per_model=start_override_per_model,
|
|
847
|
+
end_override_per_model=end_override_per_model,
|
|
834
848
|
ignore_cron=ignore_cron,
|
|
835
849
|
end_bounded=end_bounded,
|
|
836
850
|
)
|
|
@@ -844,7 +858,8 @@ def compute_interval_params(
|
|
|
844
858
|
deployability_index: t.Optional[DeployabilityIndex] = None,
|
|
845
859
|
execution_time: t.Optional[TimeLike] = None,
|
|
846
860
|
restatements: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
847
|
-
|
|
861
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
862
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
848
863
|
ignore_cron: bool = False,
|
|
849
864
|
end_bounded: bool = False,
|
|
850
865
|
) -> SnapshotToIntervals:
|
|
@@ -862,7 +877,8 @@ def compute_interval_params(
|
|
|
862
877
|
deployability_index: Determines snapshots that are deployable in the context of this evaluation.
|
|
863
878
|
execution_time: The date/time reference to use for execution time.
|
|
864
879
|
restatements: A dict of snapshot names being restated and their intervals.
|
|
865
|
-
|
|
880
|
+
start_override_per_model: A mapping of model FQNs to target start dates.
|
|
881
|
+
end_override_per_model: A mapping of model FQNs to target end dates.
|
|
866
882
|
ignore_cron: Whether to ignore the node's cron schedule.
|
|
867
883
|
end_bounded: If set to true, the returned intervals will be bounded by the target end date, disregarding lookback,
|
|
868
884
|
allow_partials, and other attributes that could cause the intervals to exceed the target end date.
|
|
@@ -879,7 +895,8 @@ def compute_interval_params(
|
|
|
879
895
|
execution_time=execution_time,
|
|
880
896
|
restatements=restatements,
|
|
881
897
|
deployability_index=deployability_index,
|
|
882
|
-
|
|
898
|
+
start_override_per_model=start_override_per_model,
|
|
899
|
+
end_override_per_model=end_override_per_model,
|
|
883
900
|
ignore_cron=ignore_cron,
|
|
884
901
|
end_bounded=end_bounded,
|
|
885
902
|
).items():
|
|
@@ -1469,7 +1469,8 @@ class DeployabilityIndex(PydanticModel, frozen=True):
|
|
|
1469
1469
|
def create(
|
|
1470
1470
|
cls,
|
|
1471
1471
|
snapshots: t.Dict[SnapshotId, Snapshot] | t.Collection[Snapshot],
|
|
1472
|
-
start: t.Optional[TimeLike] = None,
|
|
1472
|
+
start: t.Optional[TimeLike] = None, # plan start
|
|
1473
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
1473
1474
|
) -> DeployabilityIndex:
|
|
1474
1475
|
if not isinstance(snapshots, dict):
|
|
1475
1476
|
snapshots = {s.snapshot_id: s for s in snapshots}
|
|
@@ -1477,6 +1478,7 @@ class DeployabilityIndex(PydanticModel, frozen=True):
|
|
|
1477
1478
|
deployability_mapping: t.Dict[SnapshotId, bool] = {}
|
|
1478
1479
|
children_deployability_mapping: t.Dict[SnapshotId, bool] = {}
|
|
1479
1480
|
representative_shared_version_ids: t.Set[SnapshotId] = set()
|
|
1481
|
+
start_override_per_model = start_override_per_model or {}
|
|
1480
1482
|
|
|
1481
1483
|
start_date_cache: t.Optional[t.Dict[str, datetime]] = {}
|
|
1482
1484
|
|
|
@@ -1499,12 +1501,12 @@ class DeployabilityIndex(PydanticModel, frozen=True):
|
|
|
1499
1501
|
snapshot.is_model and snapshot.model.auto_restatement_cron is not None
|
|
1500
1502
|
)
|
|
1501
1503
|
|
|
1504
|
+
snapshot_start = start_override_per_model.get(
|
|
1505
|
+
node.name, start_date(snapshot, snapshots.values(), cache=start_date_cache)
|
|
1506
|
+
)
|
|
1507
|
+
|
|
1502
1508
|
is_valid_start = (
|
|
1503
|
-
snapshot.is_valid_start(
|
|
1504
|
-
start, start_date(snapshot, snapshots.values(), start_date_cache)
|
|
1505
|
-
)
|
|
1506
|
-
if start is not None
|
|
1507
|
-
else True
|
|
1509
|
+
snapshot.is_valid_start(start, snapshot_start) if start is not None else True
|
|
1508
1510
|
)
|
|
1509
1511
|
|
|
1510
1512
|
if (
|
|
@@ -1800,7 +1802,8 @@ def missing_intervals(
|
|
|
1800
1802
|
execution_time: t.Optional[TimeLike] = None,
|
|
1801
1803
|
restatements: t.Optional[t.Dict[SnapshotId, Interval]] = None,
|
|
1802
1804
|
deployability_index: t.Optional[DeployabilityIndex] = None,
|
|
1803
|
-
|
|
1805
|
+
start_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
1806
|
+
end_override_per_model: t.Optional[t.Dict[str, datetime]] = None,
|
|
1804
1807
|
ignore_cron: bool = False,
|
|
1805
1808
|
end_bounded: bool = False,
|
|
1806
1809
|
) -> t.Dict[Snapshot, Intervals]:
|
|
@@ -1817,13 +1820,15 @@ def missing_intervals(
|
|
|
1817
1820
|
else earliest_start_date(snapshots, cache=cache, relative_to=end_date)
|
|
1818
1821
|
)
|
|
1819
1822
|
restatements = restatements or {}
|
|
1820
|
-
|
|
1823
|
+
start_override_per_model = start_override_per_model or {}
|
|
1824
|
+
end_override_per_model = end_override_per_model or {}
|
|
1821
1825
|
deployability_index = deployability_index or DeployabilityIndex.all_deployable()
|
|
1822
1826
|
|
|
1823
1827
|
for snapshot in snapshots.values():
|
|
1824
1828
|
if not snapshot.evaluatable:
|
|
1825
1829
|
continue
|
|
1826
|
-
|
|
1830
|
+
|
|
1831
|
+
snapshot_start_date = start_override_per_model.get(snapshot.name, start_dt)
|
|
1827
1832
|
snapshot_end_date: TimeLike = end_date
|
|
1828
1833
|
|
|
1829
1834
|
restated_interval = restatements.get(snapshot.snapshot_id)
|
|
@@ -1833,9 +1838,9 @@ def missing_intervals(
|
|
|
1833
1838
|
snapshot.intervals = snapshot.intervals.copy()
|
|
1834
1839
|
snapshot.remove_interval(restated_interval)
|
|
1835
1840
|
|
|
1836
|
-
existing_interval_end =
|
|
1841
|
+
existing_interval_end = end_override_per_model.get(snapshot.name)
|
|
1837
1842
|
if existing_interval_end:
|
|
1838
|
-
if
|
|
1843
|
+
if snapshot_start_date >= existing_interval_end:
|
|
1839
1844
|
# The start exceeds the provided interval end, so we can skip this snapshot
|
|
1840
1845
|
# since it doesn't have missing intervals by definition
|
|
1841
1846
|
continue
|