sqlmesh 0.192.0__tar.gz → 0.192.1.dev2__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.192.0 → sqlmesh-0.192.1.dev2}/PKG-INFO +1 -1
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/_version.py +2 -2
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/connection.py +6 -2
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/context.py +20 -2
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/builder.py +53 -4
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/definition.py +13 -5
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/snapshot/definition.py +6 -1
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/date.py +22 -12
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/PKG-INFO +1 -1
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_context.py +94 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_plan.py +108 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_github_controller.py +3 -1
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_date.py +15 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/config.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/continue_config.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/get_scm_version.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/install-prerequisites.sh +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/manage-test-db.sh +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/test_migration.sh +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/update-pypirc.sh +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.circleci/wait-for-db.sh +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.github/dependabot.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.github/workflows/pr.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.pre-commit-config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.prettierignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.prettierrc.cjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/.readthedocs.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/LICENSE +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/MANIFEST.in +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/Makefile +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/README.md +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/benchmarks/lsp_render_model_bench.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/custom_materializations/custom_materializations/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/custom_materializations/custom_materializations/custom_kind.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/custom_materializations/custom_materializations/full.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/custom_materializations/pyproject.toml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/audits/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/audits/assert_positive_order_ids.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/constants.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/data/.keep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/macros/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/full_model.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/ibis_full_model_python.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/ibis_full_model_sql.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/incremental_model.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/models/seed_model.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/seeds/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/seeds/seed_data.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/ibis/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/audits/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/linter/user.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/macros/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/models/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/models/a.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/models/b.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_1/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/audits/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/macros/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/models/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/models/c.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/models/d.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/models/e.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi/repo_2/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/bronze/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/bronze/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/bronze/models/a.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/bronze/models/b.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/bronze/profiles.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/macros/store_schemas.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/models/c.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/models/d.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_dbt/silver/profiles.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/macros/round_dollars.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/models/c.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/models/d.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/models/e.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/dbt_repo/profiles.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/sqlmesh_repo/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/sqlmesh_repo/models/a.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/multi_hybrid/sqlmesh_repo/models/b.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/audits/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/audits/items.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/audits/order_items.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/audits/raw_demographics.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/data/.keep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/external_models/model1/model1.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/external_models/model2/model2.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/external_models/prod.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/external_models.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/helper.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/linter/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/linter/user.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/macros/macros.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/macros/macros.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/macros/utils.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/metrics/metrics.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/active_customers.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/blueprint.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/customer_revenue_lifetime.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/customers.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/disabled.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/disabled.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/items.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/latest_order.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/marketing.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/order_items.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/orders.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/raw_marketing.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/top_waiters.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/waiter_names.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/models/waiters.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/signals/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/sqlmesh-requirements.lock +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/tests/test_customer_revenue_by_day.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/tests/test_customer_revenue_lifetime.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi/tests/test_order_items.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/.user.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/analyses/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/macros/incremental.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/macros/log_value.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/customers.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/top_waiters.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/models/waiters.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/profiles.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/seeds/items.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/seeds/order_items.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/seeds/orders.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/seeds/properties.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/snapshots/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/tests/assert_item_price_above_zero.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dbt/tests/generic/less_than_amount.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/sushi_dlt/sushi_pipeline.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/audits/db/order_f.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/macros/macros.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/db/customer_d.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/db/item_d.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/db/order_f.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/db/order_item_f.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/src/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/src/customer_details.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/src/menu_item_details.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/src/order_item_details.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/models/src/shared.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/seeds/src/menu_item_details.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/tests/test_customer_d.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/examples/wursthall/tests/test_order_item_f.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/mkdocs.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/package.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/pdoc/cli.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/pdoc/templates/module.html.jinja2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/pnpm-lock.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/pnpm-workspace.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/pyproject.toml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/setup.cfg +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/.airflowignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cicd/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cicd/bot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cicd/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cli/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cli/example_project.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cli/main.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/cli/options.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/_typing.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/analytics/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/analytics/collector.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/analytics/dispatcher.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/audit/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/audit/builtin.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/audit/definition.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/base.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/categorizer.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/common.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/feature_flag.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/format.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/gateway.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/janitor.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/linter.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/migration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/naming.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/plan.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/root.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/run.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/scheduler.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/config/ui.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/console.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/constants.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/context_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/dialect.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/_typing.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/athena.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/base.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/base_postgres.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/bigquery.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/clickhouse.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/databricks.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/duckdb.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/mixins.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/mssql.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/mysql.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/postgres.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/redshift.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/risingwave.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/shared.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/snowflake.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/spark.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/engine_adapter/trino.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/environment.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/lineage.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/definition.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/helpers.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/rule.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/rules/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/linter/rules/builtin.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/macros.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/metric/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/metric/definition.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/metric/rewriter.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/cache.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/common.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/decorator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/definition.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/kind.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/meta.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/schema.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/model/seed.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/node.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/notification_target.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/evaluator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/explainer.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/plan/stages.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/reference.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/renderer.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/scheduler.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/schema_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/schema_loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/selector.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/signal.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/snapshot/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/snapshot/cache.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/snapshot/categorizer.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/snapshot/evaluator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/base.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/cache.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/common.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/environment.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/facade.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/interval.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/migrator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/snapshot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/utils.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/db/version.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/state_sync/export_import.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/table_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/context.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/definition.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/discovery.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/result.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/test/runner.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/core/user.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/adapter.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/basemodel.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/builtin.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/column.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/common.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/context.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/manifest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/package.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/profile.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/project.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/relation.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/seed.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/source.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/target.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/test.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/dbt/util.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/commands.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/spark/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/spark/app.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/spark/db_api/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/spark/db_api/errors.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/engines/spark/db_api/spark_session.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/dlt.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/github/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/github/cicd/command.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/github/cicd/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/github/cicd/controller.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/llm.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/integrations/slack.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/api.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/completions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/context.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/custom.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/description.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/helpers.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/hints.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/main.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/reference.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/lsp/uri.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/magics.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0001_init.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0002_remove_identify.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0003_move_batch_size.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0004_environmnent_add_finalized_at.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0005_create_seed_table.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0006_change_seed_hash.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0007_env_table_info_to_kind.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0008_create_intervals_table.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0009_remove_pre_post_hooks.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0010_seed_hash_batch_size.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0011_add_model_kind_name.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0012_update_jinja_expressions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0013_serde_using_model_dialects.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0014_fix_dev_intervals.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0015_environment_add_promoted_snapshot_ids.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0016_fix_windows_path.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0017_fix_windows_seed_path.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0018_rename_snapshot_model_to_node.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0019_add_env_suffix_target.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0020_remove_redundant_attributes_from_dbt_models.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0021_fix_table_properties.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0022_move_project_to_model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0023_fix_added_models_with_forward_only_parents.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0024_replace_model_kind_name_enum_with_value.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0025_fix_intervals_and_missing_change_category.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0026_remove_dialect_from_seed.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0027_minute_interval_to_five.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0028_add_plan_dags_table.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0029_generate_schema_types_using_dialect.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0030_update_unrestorable_snapshots.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0031_remove_dbt_target_fields.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0032_add_sqlmesh_version.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0033_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0034_add_default_catalog.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0035_add_catalog_name_override.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0036_delete_plan_dags_bug_fix.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0037_remove_dbt_is_incremental_macro.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0038_add_expiration_ts_to_snapshot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0039_include_environment_in_plan_dag_spec.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0040_add_previous_finalized_snapshots.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0041_remove_hash_raw_query_attribute.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0042_trim_indirect_versions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0043_fix_remove_obsolete_attributes_in_plan_dags.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0044_quote_identifiers_in_model_attributes.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0045_move_gateway_variable.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0046_add_batch_concurrency.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0047_change_scd_string_to_column.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0048_drop_indirect_versions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0049_replace_identifier_with_version_in_seeds_table.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0050_drop_seeds_table.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0051_rename_column_descriptions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0052_add_normalize_name_in_environment_naming_info.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0053_custom_model_kind_extra_attributes.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0054_fix_trailing_comments.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0055_add_updated_ts_unpaused_ts_ttl_ms_unrestorable_to_snapshot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0056_restore_table_indexes.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0057_add_table_format.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0058_add_requirements.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0059_add_physical_version.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0060_move_audits_to_model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0061_mysql_fix_blob_text_type.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0062_add_model_gateway.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0063_change_signals.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0064_join_when_matched_strings.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0065_add_model_optimize.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0066_add_auto_restatements.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0067_add_tsql_date_full_precision.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0068_include_unrendered_query_in_metadata_hash.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0069_update_dev_table_suffix.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0070_include_grains_in_metadata_hash.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0071_add_dev_version_to_intervals.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0072_add_environment_statements.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0073_remove_symbolic_disable_restatement.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0074_add_partition_by_time_column_property.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0075_remove_validate_query.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0076_add_cron_tz.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0077_fix_column_type_hash_calculation.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0078_warn_if_non_migratable_python_env.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0079_add_gateway_managed_property.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0080_add_batch_size_to_scd_type_2_models.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0081_update_partitioned_by.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0082_warn_if_incorrectly_duplicated_statements.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/migrations/v0083_use_sql_for_scd_time_data_type_data_hash.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/py.typed +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/schedulers/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/aws.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/cache.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/concurrency.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/connection_pool.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/conversions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/cron.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/dag.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/errors.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/git.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/hashing.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/jinja.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/metaprogramming.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/migration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/pandas.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/process.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/pydantic.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/rich.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/windows.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh/utils/yaml.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/SOURCES.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/dependency_links.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/entry_points.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/requires.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/sqlmesh.egg-info/top_level.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/cli/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/cli/test_cli.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/cli/test_integration_cli.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/analytics/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/analytics/test_collector.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/analytics/test_dispatcher.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/config.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/_common-hive.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/clickhouse/config.xml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/clickhouse/keeper.xml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.clickhouse.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.mssql.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.mysql.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.postgres.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.risingwave.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.spark.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/compose.trino.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/init-metastore-db.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/spark/Dockerfile +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/spark/conf/hive-site.xml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/spark/conf/spark-defaults.conf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake.properties +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_delta.properties +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_iceberg.properties +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/trino/catalog/datalake_nessie.properties +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/docker/trino/catalog/testing.properties +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_athena.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_bigquery.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_clickhouse.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_duckdb.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_postgres.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_redshift.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_snowflake.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/integration/test_integration_trino.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_athena.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_base.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_base_postgres.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_bigquery.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_clickhouse.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_databricks.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_duckdb.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_mixins.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_mssql.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_mysql.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_postgres.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_redshift.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_risingwave.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_snowflake.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_spark.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/engine_adapter/test_trino.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/metric/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/metric/test_metric.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/metric/test_rewriter.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/state_sync/test_export_import.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/state_sync/test_state_sync.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_audit.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_connection_config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_dialect.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_environment.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_format.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_integration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_lineage.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_macros.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_notification_target.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_plan_evaluator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_plan_stages.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_reference.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_rule.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_scheduler.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_schema_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_schema_loader.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_seed.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_selector.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_snapshot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_snapshot_evaluator.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_table_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/core/test_test.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_adapter.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_integration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_manifest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_test.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_transformation.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/dbt/test_util.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/engines/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/engines/spark/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/engines/spark/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/engines/spark/test_db_api.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/analyses/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/logs/dbt.log.legacy +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/macros/create_tables.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/macros/incremental.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/macros/log_value.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/macros/test_dependencies.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/disabled_model.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/simple_model_a.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/simple_model_b.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/top_waiters.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/waiter_as_customer_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/waiter_revenue_by_day_v1.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/models/waiters.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/analyses/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/dbt_project.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/macros/current_engine.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/macros/distinct.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/macros/packaged_tables.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/models/customer_revenue_by_day.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/models/customers.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/models/schema.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/seeds/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/snapshots/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages/customers/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/packages.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/profiles.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/schema.yaml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/seed_sources.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/seeds/properties.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/seeds/waiter_names.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/snapshots/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/snapshots/items_check_snapshot.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/snapshots/items_no_hard_delete_snapshot.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/snapshots/items_snapshot.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/source_data/items.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/source_data/order_items.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/source_data/orders.csv +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/dbt/sushi_test/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_closed.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_command_deploy.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_comment.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_review_submit.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_synchronized.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/github/pull_request_synchronized_enterprise.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/migrations/environments.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/migrations/snapshots.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/audits/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/macros/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/macros/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/models/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/models/first_schema/model_one.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/models/first_schema/model_two.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/models/second_schema/model_one.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/models/second_schema/model_two.sql +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/multi_virtual_layer/tests/.gitkeep +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/snowflake/rsa_key_no_pass.p8 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/fixtures/snowflake/rsa_key_pass.p8 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_config.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_github_commands.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_github_event.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_integration.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/jupyter/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/jupyter/example_outputs.ipynb +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/jupyter/test_magics.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_completions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_context.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_description.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_diagnostics.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_hints.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_cte.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_cte_find_all.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_external_model.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_macro.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_macro_find_all.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_macro_multi.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/lsp/test_reference_model_find_all.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/pyproject.toml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/schedulers/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/setup.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/test_forking.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/pandas.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_aws.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_cache.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_concurrency.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_connection_pool.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_dag.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_filesystem.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_filters.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_helpers.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_jinja.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_metaprogramming.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_pydantic.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/utils/test_yaml.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/web/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/web/conftest.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/web/test_lineage.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/web/test_main.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tooling/README.md +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tooling/vscode/extensions.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tooling/vscode/launch.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tooling/vscode/settings.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tooling/vscode/tasks.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/bus/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/bus/package.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/bus/src/callbacks.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/bus/src/result.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/bus/tsconfig.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/.vscodeignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/CHANGELOG.md +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/E2E_TESTING.md +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/README.md +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/assets/logo.png +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/assets/logo.svg +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/esbuild.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/eslint.config.mjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/package.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/playwright.config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/scripts/fetch-vscode.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/auth/auth.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/commands/format.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/commands/renderModel.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/commands/signin.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/commands/signinSpecifyFlow.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/commands/signout.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/completion/completion.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/extension.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/lsp/custom.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/lsp/lsp.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/providers/renderedModelProvider.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/constants.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/log.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/python.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/settings.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/utilities.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/common/vscodeapi.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/errors.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/exec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/isCodespaces.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/isWindows.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/python.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/sleep.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/utilities/sqlmesh/sqlmesh.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/src/webviews/lineagePanel.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/completions.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/diagnostics.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/find_references.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/format.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/go_to_definition.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/hints.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/lineage.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/render.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tests/utils.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/extension/tsconfig.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/openapi.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/.cta.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/index.html +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/orval.config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/package.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/App.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/api/client.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/api/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/api/instance.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/button/Button.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/Graph.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/context.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/graph/types.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/input/Input.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/input/Selector.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components/title/Title.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components-additional/additional-components.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/components-additional/tbk-components.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/domain/initial.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/domain/lineage.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/domain/sqlmesh-model.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/hooks/eventBus.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/hooks/vscode.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/main.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/pages/lineage.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/reportWebVitals.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/routeTree.gen.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/routes/__root.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/routes/index.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/routes/lineage.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/style/variants.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/styles.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/utils/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/utils/receiveEvents.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/utils/rpc.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/utils/vscodeapi.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/workers/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/src/workers/lineage.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/tailwind.config.cjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/tsconfig.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/vscode/react/vite.config.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/.dockerignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/Dockerfile.api +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/Dockerfile.app +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/.gitignore +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Audits-Dym5PKHr.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Banner-BeLNhV1V.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/ChevronDownIcon-DlnnZjiA.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/ChevronRightIcon-NPjpYxnn.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Content-BArLdTPL.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Content-DA4WySs8.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Data-y-N_Uq1L.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/DataCatalog-Mvlf_ijD.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Editor-BDYpNxXe.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Editor-B_Eu4-Yv.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Errors-DUEZ6U5r.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/FileExplorer-BMMg4WGN.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Footer-BWuRBavm.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Header-BnCvN-7r.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Input-DAYXvlPo.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Lineage-CQy2gjl7.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/ListboxShow-CneqBQlG.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/ModelLineage-LwVobskP.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Models-ybMoSGAy.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Page-C1ITdiJq.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Plan-CSCHEA-W.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/PlusCircleIcon-fYWRjHku.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/ReportErrors-BQ_A528A.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Root-x89Lo48v.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/SearchList-B9qYyCPy.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/SelectEnvironment-3fBvWeru.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/SourceList-CFOEK1vr.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/SourceListItem-DA5_xyCX.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/SplitPane-B78j2dEu.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Tests-P41ilYMc.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/Welcome-hiNJ1DDk.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/context-BBu4gIRy.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/context-DQtNDhRm.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/editor-BC8LxZn5.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/file-ugRqly-F.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/floating-ui.react-dom-BYz8RJrU.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/help-6Q7f7fjd.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/help-BMdD8bGm.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/index-B3LoCbyu.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/index-_R_PVUU6.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/plan-BxgjbT85.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/popover-h8iQeLew.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/assets/project-BaeMGMbz.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/css/base.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/css/design.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/favicons/favicon.svg +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/dist/index.html +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/eslint.config.mjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/index.html +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/openapi.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/orval.config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/package.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/playwright.config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/postcss.config.cjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/css/base.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/css/design.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/favicons/favicon.svg +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/OFL.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/README.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Black.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Bold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Light.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Medium.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Regular.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Inter/static/Inter-Thin.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/OFL.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/README.txt +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Bold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-BoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraBoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLight.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ExtraLightItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Italic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Light.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-LightItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Medium.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-MediumItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Regular.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBold.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-SemiBoldItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-Thin.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/JetBrains_Mono/static/JetBrainsMono-ThinItalic.ttf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Martina_Plantijn/martina-plantijn-regular.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-buch-kursiv.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-buch-kursiv.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-buch.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-buch.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-kraftig.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-kraftig.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-mono-buch.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-mono-buch.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-mono-kraftig.otf +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/public/fonts/Sohne/sohne-mono-kraftig.woff2 +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/App.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/api/channels.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/api/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/api/instance.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/context/context.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/context/editor.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/context/plan.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/context/project.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/context/theme.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/hooks/useActiveFocus.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/hooks/useLocalStorage.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/banner/Banner.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/banner/Welcome.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/button/Button.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/button/tests/Button.spec.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/container/Container.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/divider/Divider.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/divider/tests/Divider.spec.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/documentation/Documentation.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/Editor.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/Editor.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorCode.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorFooter.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorIndicator.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorInspector.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorPreview.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorTab.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/EditorTabs.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/extensions/SQLMeshDialect.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/extensions/SQLMeshModel.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/extensions/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/extensions/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/editor/hooks.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/environmentDetails/AddEnvironment.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/environmentDetails/EnvironmentChanges.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/environmentDetails/EnvironmentChangesPreview.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/environmentDetails/EnvironmentDetails.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/environmentDetails/SelectEnvironment.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/fileExplorer/Directory.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/fileExplorer/DragLayer.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/fileExplorer/File.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/fileExplorer/FileExplorer.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/fileExplorer/context.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/Graph.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelColumns.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelLineage.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelLineageDetails.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelLineageSearch.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelNode.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/ModelNodeHeaderHandles.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/context.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/graph/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/historyNavigation/historyNavigation.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/input/Input.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/input/InputToggle.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/input/Selector.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/input/Textfield.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/listbox/ListboxShow.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/loading/Loading.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/loading/LoadingSegment.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/loading/LoadingStatus.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/logo/Spinner.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/logo/SqlMesh.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/logo/Tobiko.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/modal/Modal.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/modal/ModalConfirmation.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/moduleNavigation/ModuleLink.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/moduleNavigation/ModuleNavigation.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/Plan.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanActions.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanApplyStageTracker.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanBackfillDates.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanChangePreview.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanHeader.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/PlanOptions.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/context.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/help.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/plan/hooks.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/progress/Progress.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/report/ReportErrors.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/report/ReportTestsErrors.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/search/SearchList.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/search/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/sourceList/SourceList.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/sourceList/SourceListItem.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/splitPane/SplitPane.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/splitPane/SplitPane.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/tab/Tab.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/table/Table.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/table/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/tableDiff/TableDiff.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/tableDiff/help.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/tasksOverview/TasksOverview.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/title/Title.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/components/toggle/Toggle.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/audits/Audits.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/data/Data.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/data-catalog/DataCatalog.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/editor/Editor.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/errors/Content.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/errors/Errors.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/lineage/Lineage.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/models/Models.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/plan/Content.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/plan/Plan.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/Footer.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/Header.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/Navigation.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/NotFound.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/Page.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/Root.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/root/context/notificationCenter.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/library/pages/tests/Tests.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/main.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/artifact.posix.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/artifact.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/artifact.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/artifact.win.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/directory.posix.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/directory.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/directory.win.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/environment.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/file.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/file.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/initial.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/module-controller.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/plan-action.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/sqlmesh-change-display.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/sqlmesh-model.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/tracker-plan-apply.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/tracker-plan-cancel.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/tracker-plan-overview.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/models/tracker-plan.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/routes.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/styles/index.css +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/tests/setup.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/tests/utils.tsx +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/types/enum.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/types/index.d.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/utils/additional-components.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/utils/index.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/utils/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/utils/tbk-components.js +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/workers/index.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/workers/lineage.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/workers/sqlglot/sqlglot.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/src/workers/sqlglot/sqlglot.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/tailwind.config.cjs +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/tests/initial.spec.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/tsconfig.json +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/client/vite.config.ts +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/docker-compose.build.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/docker-compose.yml +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/__init__.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/commands.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/directories.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/environments.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/events.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/files.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/lineage.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/meta.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/models.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/modules.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/plan.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/api/endpoints/table_diff.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/app.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/console.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/exceptions.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/main.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/models.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/openapi.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/settings.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/utils.py +0 -0
- {sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/web/server/watcher.py +0 -0
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.192.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 192,
|
|
20
|
+
__version__ = version = '0.192.1.dev2'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 192, 1, 'dev2')
|
|
@@ -539,7 +539,6 @@ class SnowflakeConnectionConfig(ConnectionConfig):
|
|
|
539
539
|
type_: t.Literal["snowflake"] = Field(alias="type", default="snowflake")
|
|
540
540
|
|
|
541
541
|
_concurrent_tasks_validator = concurrent_tasks_validator
|
|
542
|
-
_engine_import_validator = _get_engine_import_validator("snowflake", "snowflake")
|
|
543
542
|
|
|
544
543
|
@model_validator(mode="before")
|
|
545
544
|
def _validate_authenticator(cls, data: t.Any) -> t.Any:
|
|
@@ -566,6 +565,10 @@ class SnowflakeConnectionConfig(ConnectionConfig):
|
|
|
566
565
|
|
|
567
566
|
return data
|
|
568
567
|
|
|
568
|
+
_engine_import_validator = _get_engine_import_validator(
|
|
569
|
+
"snowflake.connector.network", "snowflake"
|
|
570
|
+
)
|
|
571
|
+
|
|
569
572
|
@classmethod
|
|
570
573
|
def _get_private_key(cls, values: t.Dict[str, t.Optional[str]], auth: str) -> t.Optional[bytes]:
|
|
571
574
|
"""
|
|
@@ -733,7 +736,6 @@ class DatabricksConnectionConfig(ConnectionConfig):
|
|
|
733
736
|
|
|
734
737
|
_concurrent_tasks_validator = concurrent_tasks_validator
|
|
735
738
|
_http_headers_validator = http_headers_validator
|
|
736
|
-
_engine_import_validator = _get_engine_import_validator("databricks", "databricks")
|
|
737
739
|
|
|
738
740
|
@model_validator(mode="before")
|
|
739
741
|
def _databricks_connect_validator(cls, data: t.Any) -> t.Any:
|
|
@@ -811,6 +813,8 @@ class DatabricksConnectionConfig(ConnectionConfig):
|
|
|
811
813
|
|
|
812
814
|
return data
|
|
813
815
|
|
|
816
|
+
_engine_import_validator = _get_engine_import_validator("databricks", "databricks")
|
|
817
|
+
|
|
814
818
|
@property
|
|
815
819
|
def _connection_kwargs_keys(self) -> t.Set[str]:
|
|
816
820
|
if self.use_spark_session_only:
|
|
@@ -120,7 +120,14 @@ from sqlmesh.core.user import User
|
|
|
120
120
|
from sqlmesh.utils import UniqueKeyDict, Verbosity
|
|
121
121
|
from sqlmesh.utils.concurrency import concurrent_apply_to_values
|
|
122
122
|
from sqlmesh.utils.dag import DAG
|
|
123
|
-
from sqlmesh.utils.date import
|
|
123
|
+
from sqlmesh.utils.date import (
|
|
124
|
+
TimeLike,
|
|
125
|
+
now_ds,
|
|
126
|
+
to_timestamp,
|
|
127
|
+
format_tz_datetime,
|
|
128
|
+
now_timestamp,
|
|
129
|
+
now,
|
|
130
|
+
)
|
|
124
131
|
from sqlmesh.utils.errors import (
|
|
125
132
|
CircuitBreakerError,
|
|
126
133
|
ConfigError,
|
|
@@ -1513,7 +1520,11 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1513
1520
|
# If no end date is specified, use the max interval end from prod
|
|
1514
1521
|
# to prevent unintended evaluation of the entire DAG.
|
|
1515
1522
|
default_start, default_end = self._get_plan_default_start_end(
|
|
1516
|
-
snapshots,
|
|
1523
|
+
snapshots,
|
|
1524
|
+
max_interval_end_per_model,
|
|
1525
|
+
backfill_models,
|
|
1526
|
+
modified_model_names,
|
|
1527
|
+
execution_time or now(),
|
|
1517
1528
|
)
|
|
1518
1529
|
|
|
1519
1530
|
# Refresh snapshot intervals to ensure that they are up to date with values reflected in the max_interval_end_per_model.
|
|
@@ -2818,6 +2829,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2818
2829
|
max_interval_end_per_model: t.Dict[str, int],
|
|
2819
2830
|
backfill_models: t.Optional[t.Set[str]],
|
|
2820
2831
|
modified_model_names: t.Set[str],
|
|
2832
|
+
execution_time: t.Optional[TimeLike] = None,
|
|
2821
2833
|
) -> t.Tuple[t.Optional[int], t.Optional[int]]:
|
|
2822
2834
|
if not max_interval_end_per_model:
|
|
2823
2835
|
return None, None
|
|
@@ -2843,6 +2855,12 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2843
2855
|
)
|
|
2844
2856
|
),
|
|
2845
2857
|
)
|
|
2858
|
+
|
|
2859
|
+
if execution_time and to_timestamp(default_end) > to_timestamp(execution_time):
|
|
2860
|
+
# the end date can't be in the future, which can happen if a specific `execution_time` is set and prod intervals
|
|
2861
|
+
# are newer than it
|
|
2862
|
+
default_end = to_timestamp(execution_time)
|
|
2863
|
+
|
|
2846
2864
|
return default_start, default_end
|
|
2847
2865
|
|
|
2848
2866
|
def _get_max_interval_end_per_model(
|
|
@@ -41,6 +41,8 @@ from sqlmesh.utils.date import (
|
|
|
41
41
|
to_datetime,
|
|
42
42
|
yesterday_ds,
|
|
43
43
|
to_timestamp,
|
|
44
|
+
time_like_to_str,
|
|
45
|
+
is_relative,
|
|
44
46
|
)
|
|
45
47
|
from sqlmesh.utils.errors import NoChangesPlanError, PlanError
|
|
46
48
|
|
|
@@ -55,6 +57,7 @@ class PlanBuilder:
|
|
|
55
57
|
start: The start time to backfill data.
|
|
56
58
|
end: The end time to backfill data.
|
|
57
59
|
execution_time: The date/time time reference to use for execution time. Defaults to now.
|
|
60
|
+
If :start or :end are relative time expressions, they are interpreted as relative to the :execution_time
|
|
58
61
|
apply: The callback to apply the plan.
|
|
59
62
|
restate_models: A list of models for which the data should be restated for the time range
|
|
60
63
|
specified in this plan. Note: models defined outside SQLMesh (external) won't be a part
|
|
@@ -137,7 +140,14 @@ class PlanBuilder:
|
|
|
137
140
|
self._include_unmodified = include_unmodified
|
|
138
141
|
self._restate_models = set(restate_models) if restate_models is not None else None
|
|
139
142
|
self._effective_from = effective_from
|
|
143
|
+
|
|
144
|
+
# note: this deliberately doesnt default to now() here.
|
|
145
|
+
# There may be an significant delay between the PlanBuilder producing a Plan and the Plan actually being run
|
|
146
|
+
# so if execution_time=None is passed to the PlanBuilder, then the resulting Plan should also have execution_time=None
|
|
147
|
+
# in order to prevent the Plan that was intended to run "as at now" from having "now" fixed to some time in the past
|
|
148
|
+
# ref: https://github.com/TobikoData/sqlmesh/pull/4702#discussion_r2140696156
|
|
140
149
|
self._execution_time = execution_time
|
|
150
|
+
|
|
141
151
|
self._backfill_models = backfill_models
|
|
142
152
|
self._end = end or default_end
|
|
143
153
|
self._apply = apply
|
|
@@ -172,6 +182,26 @@ class PlanBuilder:
|
|
|
172
182
|
"""Indicates whether this plan allows to set the start and end dates."""
|
|
173
183
|
return self._is_dev or bool(self._restate_models)
|
|
174
184
|
|
|
185
|
+
@property
|
|
186
|
+
def start(self) -> t.Optional[TimeLike]:
|
|
187
|
+
if self._start and is_relative(self._start):
|
|
188
|
+
# only do this for relative expressions otherwise inclusive date strings like '2020-01-01' can be turned into exclusive timestamps eg '2020-01-01 00:00:00'
|
|
189
|
+
return to_datetime(self._start, relative_base=to_datetime(self.execution_time))
|
|
190
|
+
return self._start
|
|
191
|
+
|
|
192
|
+
@property
|
|
193
|
+
def end(self) -> t.Optional[TimeLike]:
|
|
194
|
+
if self._end and is_relative(self._end):
|
|
195
|
+
# only do this for relative expressions otherwise inclusive date strings like '2020-01-01' can be turned into exclusive timestamps eg '2020-01-01 00:00:00'
|
|
196
|
+
return to_datetime(self._end, relative_base=to_datetime(self.execution_time))
|
|
197
|
+
return self._end
|
|
198
|
+
|
|
199
|
+
@cached_property
|
|
200
|
+
def execution_time(self) -> TimeLike:
|
|
201
|
+
# this is cached to return a stable value from now() in the places where the execution time matters for resolving relative date strings
|
|
202
|
+
# during the plan building process
|
|
203
|
+
return self._execution_time or now()
|
|
204
|
+
|
|
175
205
|
def set_start(self, new_start: TimeLike) -> PlanBuilder:
|
|
176
206
|
self._start = new_start
|
|
177
207
|
self.override_start = True
|
|
@@ -256,7 +286,8 @@ class PlanBuilder:
|
|
|
256
286
|
)
|
|
257
287
|
|
|
258
288
|
restatements = self._build_restatements(
|
|
259
|
-
dag,
|
|
289
|
+
dag,
|
|
290
|
+
earliest_interval_start(self._context_diff.snapshots.values(), self.execution_time),
|
|
260
291
|
)
|
|
261
292
|
models_to_backfill = self._build_models_to_backfill(dag, restatements)
|
|
262
293
|
|
|
@@ -266,11 +297,17 @@ class PlanBuilder:
|
|
|
266
297
|
# model should be ignored.
|
|
267
298
|
interval_end_per_model = None
|
|
268
299
|
|
|
300
|
+
# this deliberately uses the passed in self._execution_time and not self.execution_time cached property
|
|
301
|
+
# the reason is because that there can be a delay between the Plan being built and the Plan being actually run,
|
|
302
|
+
# so this ensures that an _execution_time of None can be propagated to the Plan and thus be re-resolved to
|
|
303
|
+
# the current timestamp of when the Plan is eventually run
|
|
304
|
+
plan_execution_time = self._execution_time
|
|
305
|
+
|
|
269
306
|
plan = Plan(
|
|
270
307
|
context_diff=self._context_diff,
|
|
271
308
|
plan_id=self._plan_id,
|
|
272
|
-
provided_start=self.
|
|
273
|
-
provided_end=self.
|
|
309
|
+
provided_start=self.start,
|
|
310
|
+
provided_end=self.end,
|
|
274
311
|
is_dev=self._is_dev,
|
|
275
312
|
skip_backfill=self._skip_backfill,
|
|
276
313
|
empty_backfill=self._empty_backfill,
|
|
@@ -289,7 +326,7 @@ class PlanBuilder:
|
|
|
289
326
|
selected_models_to_backfill=self._backfill_models,
|
|
290
327
|
models_to_backfill=models_to_backfill,
|
|
291
328
|
effective_from=self._effective_from,
|
|
292
|
-
execution_time=
|
|
329
|
+
execution_time=plan_execution_time,
|
|
293
330
|
end_bounded=self._end_bounded,
|
|
294
331
|
ensure_finalized_snapshots=self._ensure_finalized_snapshots,
|
|
295
332
|
user_provided_flags=self._user_provided_flags,
|
|
@@ -739,6 +776,18 @@ class PlanBuilder:
|
|
|
739
776
|
"The start and end dates can't be set for a production plan without restatements."
|
|
740
777
|
)
|
|
741
778
|
|
|
779
|
+
if (start := self.start) and (end := self.end):
|
|
780
|
+
if to_datetime(start) > to_datetime(end):
|
|
781
|
+
raise PlanError(
|
|
782
|
+
f"Plan end date: '{time_like_to_str(end)}' must be after the plan start date: '{time_like_to_str(start)}'"
|
|
783
|
+
)
|
|
784
|
+
|
|
785
|
+
if end := self.end:
|
|
786
|
+
if to_datetime(end) > to_datetime(self.execution_time):
|
|
787
|
+
raise PlanError(
|
|
788
|
+
f"Plan end date: '{time_like_to_str(end)}' cannot be in the future (execution time: '{time_like_to_str(self.execution_time)}')"
|
|
789
|
+
)
|
|
790
|
+
|
|
742
791
|
def _ensure_no_forward_only_revert(self) -> None:
|
|
743
792
|
"""Ensures that a previously superseded breaking / non-breaking snapshot is not being
|
|
744
793
|
used again to replace an existing forward-only snapshot with the same version.
|
|
@@ -5,6 +5,7 @@ from dataclasses import dataclass
|
|
|
5
5
|
from datetime import datetime
|
|
6
6
|
from enum import Enum
|
|
7
7
|
from functools import cached_property
|
|
8
|
+
from pydantic import Field
|
|
8
9
|
|
|
9
10
|
from sqlmesh.core.context_diff import ContextDiff
|
|
10
11
|
from sqlmesh.core.environment import Environment, EnvironmentNamingInfo, EnvironmentStatements
|
|
@@ -63,7 +64,7 @@ class Plan(PydanticModel, frozen=True):
|
|
|
63
64
|
models_to_backfill: t.Optional[t.Set[str]] = None
|
|
64
65
|
"""All models that should be backfilled as part of this plan."""
|
|
65
66
|
effective_from: t.Optional[TimeLike] = None
|
|
66
|
-
|
|
67
|
+
execution_time_: t.Optional[TimeLike] = Field(default=None, alias="execution_time")
|
|
67
68
|
|
|
68
69
|
user_provided_flags: t.Optional[t.Dict[str, UserProvidedFlags]] = None
|
|
69
70
|
|
|
@@ -80,7 +81,12 @@ class Plan(PydanticModel, frozen=True):
|
|
|
80
81
|
|
|
81
82
|
@cached_property
|
|
82
83
|
def end(self) -> TimeLike:
|
|
83
|
-
return self.provided_end or
|
|
84
|
+
return self.provided_end or self.execution_time
|
|
85
|
+
|
|
86
|
+
@cached_property
|
|
87
|
+
def execution_time(self) -> TimeLike:
|
|
88
|
+
# note: property is cached so that it returns a consistent timestamp for now()
|
|
89
|
+
return self.execution_time_ or now()
|
|
84
90
|
|
|
85
91
|
@property
|
|
86
92
|
def previous_plan_id(self) -> t.Optional[str]:
|
|
@@ -271,7 +277,7 @@ class Plan(PydanticModel, frozen=True):
|
|
|
271
277
|
|
|
272
278
|
@cached_property
|
|
273
279
|
def _earliest_interval_start(self) -> datetime:
|
|
274
|
-
return earliest_interval_start(self.snapshots.values())
|
|
280
|
+
return earliest_interval_start(self.snapshots.values(), self.execution_time)
|
|
275
281
|
|
|
276
282
|
|
|
277
283
|
class EvaluatablePlan(PydanticModel):
|
|
@@ -345,8 +351,10 @@ class SnapshotIntervals:
|
|
|
345
351
|
return format_intervals(self.merged_intervals, unit)
|
|
346
352
|
|
|
347
353
|
|
|
348
|
-
def earliest_interval_start(
|
|
349
|
-
|
|
354
|
+
def earliest_interval_start(
|
|
355
|
+
snapshots: t.Collection[Snapshot], execution_time: t.Optional[TimeLike] = None
|
|
356
|
+
) -> datetime:
|
|
357
|
+
earliest_start = earliest_start_date(snapshots, relative_to=execution_time)
|
|
350
358
|
earliest_interval_starts = [s.intervals[0][0] for s in snapshots if s.intervals]
|
|
351
359
|
return (
|
|
352
360
|
min(earliest_start, to_datetime(min(earliest_interval_starts)))
|
|
@@ -1995,7 +1995,12 @@ def earliest_start_date(
|
|
|
1995
1995
|
start_date(snapshot, snapshots, cache=cache, relative_to=relative_to)
|
|
1996
1996
|
for snapshot in snapshots.values()
|
|
1997
1997
|
)
|
|
1998
|
-
|
|
1998
|
+
|
|
1999
|
+
relative_base = None
|
|
2000
|
+
if relative_to is not None:
|
|
2001
|
+
relative_base = to_datetime(relative_to)
|
|
2002
|
+
|
|
2003
|
+
return yesterday(relative_base=relative_base)
|
|
1999
2004
|
|
|
2000
2005
|
|
|
2001
2006
|
def start_date(
|
|
@@ -87,34 +87,34 @@ def now_ds() -> str:
|
|
|
87
87
|
return to_ds(now())
|
|
88
88
|
|
|
89
89
|
|
|
90
|
-
def yesterday() -> datetime:
|
|
90
|
+
def yesterday(relative_base: t.Optional[datetime] = None) -> datetime:
|
|
91
91
|
"""
|
|
92
92
|
Yesterday utc datetime.
|
|
93
93
|
|
|
94
94
|
Returns:
|
|
95
95
|
A datetime object with tz utc representing yesterday's date
|
|
96
96
|
"""
|
|
97
|
-
return to_datetime("yesterday")
|
|
97
|
+
return to_datetime("yesterday", relative_base=relative_base)
|
|
98
98
|
|
|
99
99
|
|
|
100
|
-
def yesterday_ds() -> str:
|
|
100
|
+
def yesterday_ds(relative_base: t.Optional[datetime] = None) -> str:
|
|
101
101
|
"""
|
|
102
102
|
Yesterday utc ds.
|
|
103
103
|
|
|
104
104
|
Returns:
|
|
105
105
|
Yesterday's ds string.
|
|
106
106
|
"""
|
|
107
|
-
return to_ds("yesterday")
|
|
107
|
+
return to_ds("yesterday", relative_base=relative_base)
|
|
108
108
|
|
|
109
109
|
|
|
110
|
-
def yesterday_timestamp() -> int:
|
|
110
|
+
def yesterday_timestamp(relative_base: t.Optional[datetime] = None) -> int:
|
|
111
111
|
"""
|
|
112
112
|
Yesterday utc timestamp.
|
|
113
113
|
|
|
114
114
|
Returns:
|
|
115
115
|
UTC epoch millis timestamp of yesterday
|
|
116
116
|
"""
|
|
117
|
-
return to_timestamp(yesterday())
|
|
117
|
+
return to_timestamp(yesterday(relative_base=relative_base))
|
|
118
118
|
|
|
119
119
|
|
|
120
120
|
def to_timestamp(
|
|
@@ -265,19 +265,19 @@ def date_dict(
|
|
|
265
265
|
return kwargs
|
|
266
266
|
|
|
267
267
|
|
|
268
|
-
def to_ds(obj: TimeLike) -> str:
|
|
268
|
+
def to_ds(obj: TimeLike, relative_base: t.Optional[datetime] = None) -> str:
|
|
269
269
|
"""Converts a TimeLike object into YYYY-MM-DD formatted string."""
|
|
270
|
-
return to_ts(obj)[0:10]
|
|
270
|
+
return to_ts(obj, relative_base=relative_base)[0:10]
|
|
271
271
|
|
|
272
272
|
|
|
273
|
-
def to_ts(obj: TimeLike) -> str:
|
|
273
|
+
def to_ts(obj: TimeLike, relative_base: t.Optional[datetime] = None) -> str:
|
|
274
274
|
"""Converts a TimeLike object into YYYY-MM-DD HH:MM:SS formatted string."""
|
|
275
|
-
return to_datetime(obj).replace(tzinfo=None).isoformat(sep=" ")
|
|
275
|
+
return to_datetime(obj, relative_base=relative_base).replace(tzinfo=None).isoformat(sep=" ")
|
|
276
276
|
|
|
277
277
|
|
|
278
|
-
def to_tstz(obj: TimeLike) -> str:
|
|
278
|
+
def to_tstz(obj: TimeLike, relative_base: t.Optional[datetime] = None) -> str:
|
|
279
279
|
"""Converts a TimeLike object into YYYY-MM-DD HH:MM:SS+00:00 formatted string."""
|
|
280
|
-
return to_datetime(obj).isoformat(sep=" ")
|
|
280
|
+
return to_datetime(obj, relative_base=relative_base).isoformat(sep=" ")
|
|
281
281
|
|
|
282
282
|
|
|
283
283
|
def is_date(obj: TimeLike) -> bool:
|
|
@@ -373,6 +373,16 @@ def is_categorical_relative_expression(expression: str) -> bool:
|
|
|
373
373
|
return not any(k in TIME_UNITS for k in grain_kwargs)
|
|
374
374
|
|
|
375
375
|
|
|
376
|
+
def is_relative(value: TimeLike) -> bool:
|
|
377
|
+
"""
|
|
378
|
+
Tests a TimeLike object to see if it is a relative expression, eg '1 week ago' as opposed to an absolute timestamp
|
|
379
|
+
"""
|
|
380
|
+
if isinstance(value, str):
|
|
381
|
+
return is_categorical_relative_expression(value)
|
|
382
|
+
|
|
383
|
+
return False
|
|
384
|
+
|
|
385
|
+
|
|
376
386
|
def to_time_column(
|
|
377
387
|
time_column: t.Union[TimeLike, exp.Null],
|
|
378
388
|
time_column_type: exp.DataType,
|
|
@@ -49,6 +49,7 @@ from sqlmesh.utils.date import (
|
|
|
49
49
|
make_inclusive_end,
|
|
50
50
|
now,
|
|
51
51
|
to_date,
|
|
52
|
+
to_datetime,
|
|
52
53
|
to_timestamp,
|
|
53
54
|
yesterday_ds,
|
|
54
55
|
)
|
|
@@ -438,6 +439,99 @@ def test_plan_execution_time():
|
|
|
438
439
|
)
|
|
439
440
|
|
|
440
441
|
|
|
442
|
+
def test_plan_execution_time_start_end():
|
|
443
|
+
context = Context(config=Config())
|
|
444
|
+
context.upsert_model(
|
|
445
|
+
load_sql_based_model(
|
|
446
|
+
parse(
|
|
447
|
+
"""
|
|
448
|
+
MODEL(
|
|
449
|
+
name db.x,
|
|
450
|
+
start '2020-01-01',
|
|
451
|
+
kind INCREMENTAL_BY_TIME_RANGE (
|
|
452
|
+
time_column ds
|
|
453
|
+
),
|
|
454
|
+
cron '@daily'
|
|
455
|
+
);
|
|
456
|
+
|
|
457
|
+
SELECT id, ds FROM (VALUES
|
|
458
|
+
('1', '2020-01-01'),
|
|
459
|
+
('2', '2021-01-01'),
|
|
460
|
+
('3', '2022-01-01'),
|
|
461
|
+
('4', '2023-01-01'),
|
|
462
|
+
('5', '2024-01-01')
|
|
463
|
+
) data(id, ds)
|
|
464
|
+
WHERE ds BETWEEN @start_ds AND @end_ds
|
|
465
|
+
"""
|
|
466
|
+
)
|
|
467
|
+
)
|
|
468
|
+
)
|
|
469
|
+
|
|
470
|
+
# prod plan - no fixed execution time so it defaults to now() and reads all the data
|
|
471
|
+
prod_plan = context.plan(auto_apply=True)
|
|
472
|
+
|
|
473
|
+
assert len(prod_plan.new_snapshots) == 1
|
|
474
|
+
|
|
475
|
+
context.upsert_model(
|
|
476
|
+
load_sql_based_model(
|
|
477
|
+
parse(
|
|
478
|
+
"""
|
|
479
|
+
MODEL(
|
|
480
|
+
name db.x,
|
|
481
|
+
start '2020-01-01',
|
|
482
|
+
kind INCREMENTAL_BY_TIME_RANGE (
|
|
483
|
+
time_column ds
|
|
484
|
+
),
|
|
485
|
+
cron '@daily'
|
|
486
|
+
);
|
|
487
|
+
|
|
488
|
+
SELECT id, ds, 'changed' as a FROM (VALUES
|
|
489
|
+
('1', '2020-01-01'),
|
|
490
|
+
('2', '2021-01-01'),
|
|
491
|
+
('3', '2022-01-01'),
|
|
492
|
+
('4', '2023-01-01'),
|
|
493
|
+
('5', '2024-01-01')
|
|
494
|
+
) data(id, ds)
|
|
495
|
+
WHERE ds BETWEEN @start_ds AND @end_ds
|
|
496
|
+
"""
|
|
497
|
+
)
|
|
498
|
+
)
|
|
499
|
+
)
|
|
500
|
+
|
|
501
|
+
# dev plan with an execution time in the past and no explicit start/end specified
|
|
502
|
+
# the plan end should be bounded to it and not exceed it even though in prod the last interval (used as a default end)
|
|
503
|
+
# is newer than the execution time
|
|
504
|
+
dev_plan = context.plan("dev", execution_time="2020-01-05")
|
|
505
|
+
|
|
506
|
+
assert to_datetime(dev_plan.start) == to_datetime(
|
|
507
|
+
"2020-01-01"
|
|
508
|
+
) # default start is the earliest prod interval
|
|
509
|
+
assert to_datetime(dev_plan.execution_time) == to_datetime("2020-01-05")
|
|
510
|
+
assert to_datetime(dev_plan.end) == to_datetime(
|
|
511
|
+
"2020-01-05"
|
|
512
|
+
) # end should not be greater than execution_time
|
|
513
|
+
|
|
514
|
+
# same as above but with a relative start
|
|
515
|
+
dev_plan = context.plan("dev", start="1 day ago", execution_time="2020-01-05")
|
|
516
|
+
|
|
517
|
+
assert to_datetime(dev_plan.start) == to_datetime(
|
|
518
|
+
"2020-01-04"
|
|
519
|
+
) # start relative to execution_time
|
|
520
|
+
assert to_datetime(dev_plan.execution_time) == to_datetime("2020-01-05")
|
|
521
|
+
assert to_datetime(dev_plan.end) == to_datetime(
|
|
522
|
+
"2020-01-05"
|
|
523
|
+
) # end should not be greater than execution_time
|
|
524
|
+
|
|
525
|
+
# same as above but with a relative start and a relative end
|
|
526
|
+
dev_plan = context.plan("dev", start="2 days ago", execution_time="2020-01-05", end="1 day ago")
|
|
527
|
+
|
|
528
|
+
assert to_datetime(dev_plan.start) == to_datetime(
|
|
529
|
+
"2020-01-03"
|
|
530
|
+
) # start relative to execution_time
|
|
531
|
+
assert to_datetime(dev_plan.execution_time) == to_datetime("2020-01-05")
|
|
532
|
+
assert to_datetime(dev_plan.end) == to_datetime("2020-01-04") # end relative to execution_time
|
|
533
|
+
|
|
534
|
+
|
|
441
535
|
def test_override_builtin_audit_blocking_mode():
|
|
442
536
|
context = Context(config=Config())
|
|
443
537
|
context.upsert_model(
|
|
@@ -3095,3 +3095,111 @@ def test_user_provided_flags(sushi_context: Context):
|
|
|
3095
3095
|
context_diff,
|
|
3096
3096
|
).build()
|
|
3097
3097
|
assert plan_builder.user_provided_flags == None
|
|
3098
|
+
|
|
3099
|
+
|
|
3100
|
+
@time_machine.travel(now())
|
|
3101
|
+
@pytest.mark.parametrize(
|
|
3102
|
+
"input,output",
|
|
3103
|
+
[
|
|
3104
|
+
# execution_time, start, end
|
|
3105
|
+
(
|
|
3106
|
+
# no execution time, start or end
|
|
3107
|
+
(None, None, None),
|
|
3108
|
+
# execution time defaults to now()
|
|
3109
|
+
# start defaults to 1 day before execution time
|
|
3110
|
+
# end defaults to execution_time
|
|
3111
|
+
(now(), yesterday_ds(), now()),
|
|
3112
|
+
),
|
|
3113
|
+
(
|
|
3114
|
+
# fixed execution time, no start, no end
|
|
3115
|
+
("2020-01-05", None, None),
|
|
3116
|
+
# execution time set to 2020-01-05
|
|
3117
|
+
# start defaults to 1 day before execution time
|
|
3118
|
+
# end defaults to execution time
|
|
3119
|
+
("2020-01-05", "2020-01-04", "2020-01-05"),
|
|
3120
|
+
),
|
|
3121
|
+
(
|
|
3122
|
+
# fixed execution time, relative start, no end
|
|
3123
|
+
("2020-01-05", "2 days ago", None),
|
|
3124
|
+
# execution time set to 2020-01-05
|
|
3125
|
+
# start relative to execution time
|
|
3126
|
+
# end defaults to execution time
|
|
3127
|
+
("2020-01-05", "2020-01-03", "2020-01-05"),
|
|
3128
|
+
),
|
|
3129
|
+
(
|
|
3130
|
+
# fixed execution time, relative start, relative end
|
|
3131
|
+
("2020-01-05", "2 days ago", "1 day ago"),
|
|
3132
|
+
# execution time set to 2020-01-05
|
|
3133
|
+
# start relative to execution time
|
|
3134
|
+
# end relative to execution time
|
|
3135
|
+
("2020-01-05", "2020-01-03", "2020-01-04"),
|
|
3136
|
+
),
|
|
3137
|
+
(
|
|
3138
|
+
# fixed execution time, fixed start, fixed end
|
|
3139
|
+
("2020-01-05", "2020-01-01", "2020-01-05"),
|
|
3140
|
+
# fixed dates are all in the valid range
|
|
3141
|
+
("2020-01-05", "2020-01-01", "2020-01-05"),
|
|
3142
|
+
),
|
|
3143
|
+
(
|
|
3144
|
+
# fixed execution time, fixed start, fixed end
|
|
3145
|
+
("2020-01-05", "2020-01-05", "2020-01-01"),
|
|
3146
|
+
# Error because start is after end
|
|
3147
|
+
r"Plan end date.*must be after the plan start date",
|
|
3148
|
+
),
|
|
3149
|
+
(
|
|
3150
|
+
# fixed execution time, relative start, fixed end beyond fixed execution time
|
|
3151
|
+
("2020-01-05", "2 days ago", "2021-01-01"),
|
|
3152
|
+
# Error because end is set to 2021-01-01 which is after the execution time
|
|
3153
|
+
r"Plan end date.*cannot be in the future",
|
|
3154
|
+
),
|
|
3155
|
+
],
|
|
3156
|
+
)
|
|
3157
|
+
def test_plan_dates_relative_to_execution_time(
|
|
3158
|
+
input: t.Tuple[t.Optional[str], ...],
|
|
3159
|
+
output: t.Union[str, t.Tuple[t.Optional[str], ...]],
|
|
3160
|
+
make_snapshot: t.Callable,
|
|
3161
|
+
):
|
|
3162
|
+
snapshot_a = make_snapshot(
|
|
3163
|
+
SqlModel(name="a", query=parse_one("select 1, ds"), dialect="duckdb")
|
|
3164
|
+
)
|
|
3165
|
+
|
|
3166
|
+
context_diff = ContextDiff(
|
|
3167
|
+
environment="test_environment",
|
|
3168
|
+
is_new_environment=True,
|
|
3169
|
+
is_unfinalized_environment=False,
|
|
3170
|
+
normalize_environment_name=True,
|
|
3171
|
+
create_from="prod",
|
|
3172
|
+
create_from_env_exists=True,
|
|
3173
|
+
added={snapshot_a.snapshot_id},
|
|
3174
|
+
removed_snapshots={},
|
|
3175
|
+
modified_snapshots={},
|
|
3176
|
+
snapshots={},
|
|
3177
|
+
new_snapshots={snapshot_a.snapshot_id: snapshot_a},
|
|
3178
|
+
previous_plan_id=None,
|
|
3179
|
+
previously_promoted_snapshot_ids=set(),
|
|
3180
|
+
previous_finalized_snapshots=None,
|
|
3181
|
+
previous_gateway_managed_virtual_layer=False,
|
|
3182
|
+
gateway_managed_virtual_layer=False,
|
|
3183
|
+
)
|
|
3184
|
+
|
|
3185
|
+
input_execution_time, input_start, input_end = input
|
|
3186
|
+
|
|
3187
|
+
def _build_plan() -> Plan:
|
|
3188
|
+
return PlanBuilder(
|
|
3189
|
+
context_diff,
|
|
3190
|
+
start=input_start,
|
|
3191
|
+
end=input_end,
|
|
3192
|
+
execution_time=input_execution_time,
|
|
3193
|
+
is_dev=True,
|
|
3194
|
+
).build()
|
|
3195
|
+
|
|
3196
|
+
if isinstance(output, str):
|
|
3197
|
+
with pytest.raises(PlanError, match=output):
|
|
3198
|
+
_build_plan()
|
|
3199
|
+
else:
|
|
3200
|
+
output_execution_time, output_start, output_end = output
|
|
3201
|
+
|
|
3202
|
+
plan = _build_plan()
|
|
3203
|
+
assert to_datetime(plan.start) == to_datetime(output_start)
|
|
3204
|
+
assert to_datetime(plan.end) == to_datetime(output_end)
|
|
3205
|
+
assert to_datetime(plan.execution_time) == to_datetime(output_execution_time)
|
{sqlmesh-0.192.0 → sqlmesh-0.192.1.dev2}/tests/integrations/github/cicd/test_github_controller.py
RENAMED
|
@@ -19,6 +19,7 @@ from sqlmesh.integrations.github.cicd.controller import (
|
|
|
19
19
|
GithubCheckStatus,
|
|
20
20
|
MergeStateStatus,
|
|
21
21
|
)
|
|
22
|
+
from sqlmesh.utils.date import to_datetime, now
|
|
22
23
|
from tests.integrations.github.cicd.conftest import MockIssueComment
|
|
23
24
|
|
|
24
25
|
pytestmark = pytest.mark.github
|
|
@@ -236,6 +237,7 @@ def test_pr_plan(github_client, make_controller):
|
|
|
236
237
|
def test_pr_plan_auto_categorization(github_client, make_controller):
|
|
237
238
|
custom_categorizer_config = CategorizerConfig.all_semi()
|
|
238
239
|
default_start = "1 week ago"
|
|
240
|
+
default_start_absolute = to_datetime(default_start, relative_base=now())
|
|
239
241
|
controller = make_controller(
|
|
240
242
|
"tests/fixtures/github/pull_request_synchronized.json",
|
|
241
243
|
github_client,
|
|
@@ -249,7 +251,7 @@ def test_pr_plan_auto_categorization(github_client, make_controller):
|
|
|
249
251
|
assert not controller._context.apply.called
|
|
250
252
|
assert controller._context._run_plan_tests.call_args == call(skip_tests=True)
|
|
251
253
|
assert controller._pr_plan_builder._categorizer_config == custom_categorizer_config
|
|
252
|
-
assert controller.pr_plan.start ==
|
|
254
|
+
assert controller.pr_plan.start == default_start_absolute
|
|
253
255
|
|
|
254
256
|
|
|
255
257
|
def test_prod_plan(github_client, make_controller):
|
|
@@ -12,6 +12,7 @@ from sqlmesh.utils.date import (
|
|
|
12
12
|
date_dict,
|
|
13
13
|
format_tz_datetime,
|
|
14
14
|
is_categorical_relative_expression,
|
|
15
|
+
is_relative,
|
|
15
16
|
make_inclusive,
|
|
16
17
|
to_datetime,
|
|
17
18
|
to_time_column,
|
|
@@ -324,3 +325,17 @@ def test_format_tz_datetime():
|
|
|
324
325
|
test_datetime = to_datetime("2020-01-01 00:00:00")
|
|
325
326
|
assert format_tz_datetime(test_datetime) == "2020-01-01 12:00AM UTC"
|
|
326
327
|
assert format_tz_datetime(test_datetime, format_string=None) == "2020-01-01 00:00:00+00:00"
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
def test_is_relative():
|
|
331
|
+
assert is_relative("1 week ago")
|
|
332
|
+
assert is_relative("1 week")
|
|
333
|
+
assert is_relative("1 day ago")
|
|
334
|
+
assert is_relative("yesterday")
|
|
335
|
+
|
|
336
|
+
assert not is_relative("2024-01-01")
|
|
337
|
+
assert not is_relative("2024-01-01 01:02:03")
|
|
338
|
+
assert not is_relative(to_datetime("2024-01-01 01:02:03"))
|
|
339
|
+
assert not is_relative(to_timestamp("2024-01-01 01:02:03"))
|
|
340
|
+
assert not is_relative(to_datetime("1 week ago"))
|
|
341
|
+
assert not is_relative(to_timestamp("1 day ago"))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|