sqlmesh 0.198.1.dev10__py3-none-any.whl → 0.198.1.dev12__py3-none-any.whl
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/_version.py +2 -2
- sqlmesh/core/config/scheduler.py +1 -0
- sqlmesh/core/context.py +19 -36
- sqlmesh/core/engine_adapter/base.py +1 -0
- sqlmesh/core/engine_adapter/mixins.py +1 -0
- sqlmesh/core/engine_adapter/mssql.py +10 -4
- sqlmesh/core/engine_adapter/postgres.py +1 -0
- sqlmesh/core/engine_adapter/redshift.py +1 -0
- sqlmesh/core/plan/evaluator.py +2 -4
- sqlmesh/core/plan/explainer.py +0 -2
- sqlmesh/core/snapshot/evaluator.py +2 -0
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/METADATA +1 -1
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/RECORD +17 -17
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/WHEEL +0 -0
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/entry_points.txt +0 -0
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/licenses/LICENSE +0 -0
- {sqlmesh-0.198.1.dev10.dist-info → sqlmesh-0.198.1.dev12.dist-info}/top_level.txt +0 -0
sqlmesh/_version.py
CHANGED
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.198.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 198, 1, '
|
|
20
|
+
__version__ = version = '0.198.1.dev12'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 198, 1, 'dev12')
|
sqlmesh/core/config/scheduler.py
CHANGED
|
@@ -130,6 +130,7 @@ class BuiltInSchedulerConfig(_EngineAdapterStateSyncSchedulerConfig, BaseConfig)
|
|
|
130
130
|
def create_plan_evaluator(self, context: GenericContext) -> PlanEvaluator:
|
|
131
131
|
return BuiltInPlanEvaluator(
|
|
132
132
|
state_sync=context.state_sync,
|
|
133
|
+
snapshot_evaluator=context.snapshot_evaluator,
|
|
133
134
|
create_scheduler=context.create_scheduler,
|
|
134
135
|
default_catalog=context.default_catalog,
|
|
135
136
|
console=context.console,
|
sqlmesh/core/context.py
CHANGED
|
@@ -116,7 +116,7 @@ from sqlmesh.core.test import (
|
|
|
116
116
|
run_tests,
|
|
117
117
|
)
|
|
118
118
|
from sqlmesh.core.user import User
|
|
119
|
-
from sqlmesh.utils import UniqueKeyDict, Verbosity
|
|
119
|
+
from sqlmesh.utils import UniqueKeyDict, Verbosity
|
|
120
120
|
from sqlmesh.utils.concurrency import concurrent_apply_to_values
|
|
121
121
|
from sqlmesh.utils.dag import DAG
|
|
122
122
|
from sqlmesh.utils.date import (
|
|
@@ -417,7 +417,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
417
417
|
self.config.get_state_connection(self.gateway) or self.connection_config
|
|
418
418
|
)
|
|
419
419
|
|
|
420
|
-
self.
|
|
420
|
+
self._snapshot_evaluator: t.Optional[SnapshotEvaluator] = None
|
|
421
421
|
|
|
422
422
|
self.console = get_console()
|
|
423
423
|
setattr(self.console, "dialect", self.config.dialect)
|
|
@@ -445,22 +445,18 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
445
445
|
self._engine_adapter = self.connection_config.create_engine_adapter()
|
|
446
446
|
return self._engine_adapter
|
|
447
447
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
if correlation_id not in self._snapshot_evaluators:
|
|
453
|
-
self._snapshot_evaluators[correlation_id] = SnapshotEvaluator(
|
|
448
|
+
@property
|
|
449
|
+
def snapshot_evaluator(self) -> SnapshotEvaluator:
|
|
450
|
+
if not self._snapshot_evaluator:
|
|
451
|
+
self._snapshot_evaluator = SnapshotEvaluator(
|
|
454
452
|
{
|
|
455
|
-
gateway: adapter.with_settings(
|
|
456
|
-
log_level=logging.INFO, correlation_id=correlation_id
|
|
457
|
-
)
|
|
453
|
+
gateway: adapter.with_settings(log_level=logging.INFO)
|
|
458
454
|
for gateway, adapter in self.engine_adapters.items()
|
|
459
455
|
},
|
|
460
456
|
ddl_concurrent_tasks=self.concurrent_tasks,
|
|
461
457
|
selected_gateway=self.selected_gateway,
|
|
462
458
|
)
|
|
463
|
-
return self.
|
|
459
|
+
return self._snapshot_evaluator
|
|
464
460
|
|
|
465
461
|
def execution_context(
|
|
466
462
|
self,
|
|
@@ -541,9 +537,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
541
537
|
|
|
542
538
|
return self.create_scheduler(snapshots)
|
|
543
539
|
|
|
544
|
-
def create_scheduler(
|
|
545
|
-
self, snapshots: t.Iterable[Snapshot], correlation_id: t.Optional[CorrelationId] = None
|
|
546
|
-
) -> Scheduler:
|
|
540
|
+
def create_scheduler(self, snapshots: t.Iterable[Snapshot]) -> Scheduler:
|
|
547
541
|
"""Creates the built-in scheduler.
|
|
548
542
|
|
|
549
543
|
Args:
|
|
@@ -554,7 +548,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
554
548
|
"""
|
|
555
549
|
return Scheduler(
|
|
556
550
|
snapshots,
|
|
557
|
-
self.snapshot_evaluator
|
|
551
|
+
self.snapshot_evaluator,
|
|
558
552
|
self.state_sync,
|
|
559
553
|
default_catalog=self.default_catalog,
|
|
560
554
|
max_workers=self.concurrent_tasks,
|
|
@@ -719,7 +713,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
719
713
|
NotificationEvent.RUN_START, environment=environment
|
|
720
714
|
)
|
|
721
715
|
analytics_run_id = analytics.collector.on_run_start(
|
|
722
|
-
engine_type=self.snapshot_evaluator
|
|
716
|
+
engine_type=self.snapshot_evaluator.adapter.dialect,
|
|
723
717
|
state_sync_type=self.state_sync.state_type(),
|
|
724
718
|
)
|
|
725
719
|
self._load_materializations()
|
|
@@ -1081,7 +1075,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1081
1075
|
and not parent_snapshot.categorized
|
|
1082
1076
|
]
|
|
1083
1077
|
|
|
1084
|
-
df = self.snapshot_evaluator
|
|
1078
|
+
df = self.snapshot_evaluator.evaluate_and_fetch(
|
|
1085
1079
|
snapshot,
|
|
1086
1080
|
start=start,
|
|
1087
1081
|
end=end,
|
|
@@ -1593,12 +1587,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
1593
1587
|
default_catalog=self.default_catalog,
|
|
1594
1588
|
console=self.console,
|
|
1595
1589
|
)
|
|
1596
|
-
explainer.evaluate(
|
|
1597
|
-
plan.to_evaluatable(),
|
|
1598
|
-
snapshot_evaluator=self.snapshot_evaluator(
|
|
1599
|
-
correlation_id=CorrelationId.from_plan_id(plan.plan_id)
|
|
1600
|
-
),
|
|
1601
|
-
)
|
|
1590
|
+
explainer.evaluate(plan.to_evaluatable())
|
|
1602
1591
|
return
|
|
1603
1592
|
|
|
1604
1593
|
self.notification_target_manager.notify(
|
|
@@ -2121,7 +2110,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2121
2110
|
errors = []
|
|
2122
2111
|
skipped_count = 0
|
|
2123
2112
|
for snapshot in snapshots:
|
|
2124
|
-
for audit_result in self.snapshot_evaluator
|
|
2113
|
+
for audit_result in self.snapshot_evaluator.audit(
|
|
2125
2114
|
snapshot=snapshot,
|
|
2126
2115
|
start=start,
|
|
2127
2116
|
end=end,
|
|
@@ -2153,7 +2142,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2153
2142
|
self.console.log_status_update(f"Got {error.count} results, expected 0.")
|
|
2154
2143
|
if error.query:
|
|
2155
2144
|
self.console.show_sql(
|
|
2156
|
-
f"{error.query.sql(dialect=self.snapshot_evaluator
|
|
2145
|
+
f"{error.query.sql(dialect=self.snapshot_evaluator.adapter.dialect)}"
|
|
2157
2146
|
)
|
|
2158
2147
|
|
|
2159
2148
|
self.console.log_status_update("Done.")
|
|
@@ -2345,14 +2334,12 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2345
2334
|
|
|
2346
2335
|
def close(self) -> None:
|
|
2347
2336
|
"""Releases all resources allocated by this context."""
|
|
2348
|
-
|
|
2349
|
-
|
|
2337
|
+
if self._snapshot_evaluator:
|
|
2338
|
+
self._snapshot_evaluator.close()
|
|
2350
2339
|
|
|
2351
2340
|
if self._state_sync:
|
|
2352
2341
|
self._state_sync.close()
|
|
2353
2342
|
|
|
2354
|
-
self._snapshot_evaluators.clear()
|
|
2355
|
-
|
|
2356
2343
|
def _run(
|
|
2357
2344
|
self,
|
|
2358
2345
|
environment: str,
|
|
@@ -2403,11 +2390,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2403
2390
|
|
|
2404
2391
|
def _apply(self, plan: Plan, circuit_breaker: t.Optional[t.Callable[[], bool]]) -> None:
|
|
2405
2392
|
self._scheduler.create_plan_evaluator(self).evaluate(
|
|
2406
|
-
plan.to_evaluatable(),
|
|
2407
|
-
snapshot_evaluator=self.snapshot_evaluator(
|
|
2408
|
-
correlation_id=CorrelationId.from_plan_id(plan.plan_id)
|
|
2409
|
-
),
|
|
2410
|
-
circuit_breaker=circuit_breaker,
|
|
2393
|
+
plan.to_evaluatable(), circuit_breaker=circuit_breaker
|
|
2411
2394
|
)
|
|
2412
2395
|
|
|
2413
2396
|
@python_api_analytics
|
|
@@ -2700,7 +2683,7 @@ class GenericContext(BaseContext, t.Generic[C]):
|
|
|
2700
2683
|
)
|
|
2701
2684
|
|
|
2702
2685
|
# Remove the expired snapshots tables
|
|
2703
|
-
self.snapshot_evaluator
|
|
2686
|
+
self.snapshot_evaluator.cleanup(
|
|
2704
2687
|
target_snapshots=cleanup_targets,
|
|
2705
2688
|
on_complete=self.console.update_cleanup_progress,
|
|
2706
2689
|
)
|
|
@@ -1939,6 +1939,7 @@ class EngineAdapter:
|
|
|
1939
1939
|
unique_key: t.Sequence[exp.Expression],
|
|
1940
1940
|
when_matched: t.Optional[exp.Whens] = None,
|
|
1941
1941
|
merge_filter: t.Optional[exp.Expression] = None,
|
|
1942
|
+
**kwargs: t.Any,
|
|
1942
1943
|
) -> None:
|
|
1943
1944
|
source_queries, columns_to_types = self._get_source_queries_and_columns_to_types(
|
|
1944
1945
|
source_table, columns_to_types, target_table=target_table
|
|
@@ -198,7 +198,10 @@ class MSSQLEngineAdapter(
|
|
|
198
198
|
unique_key: t.Sequence[exp.Expression],
|
|
199
199
|
when_matched: t.Optional[exp.Whens] = None,
|
|
200
200
|
merge_filter: t.Optional[exp.Expression] = None,
|
|
201
|
+
**kwargs: t.Any,
|
|
201
202
|
) -> None:
|
|
203
|
+
mssql_merge_exists = kwargs.get("physical_properties", {}).get("mssql_merge_exists")
|
|
204
|
+
|
|
202
205
|
source_queries, columns_to_types = self._get_source_queries_and_columns_to_types(
|
|
203
206
|
source_table, columns_to_types, target_table=target_table
|
|
204
207
|
)
|
|
@@ -214,7 +217,6 @@ class MSSQLEngineAdapter(
|
|
|
214
217
|
|
|
215
218
|
match_expressions = []
|
|
216
219
|
if not when_matched:
|
|
217
|
-
match_condition = None
|
|
218
220
|
unique_key_names = [y.name for y in unique_key]
|
|
219
221
|
columns_to_types_no_keys = [c for c in columns_to_types if c not in unique_key_names]
|
|
220
222
|
|
|
@@ -225,10 +227,14 @@ class MSSQLEngineAdapter(
|
|
|
225
227
|
exp.column(c, MERGE_SOURCE_ALIAS) for c in columns_to_types_no_keys
|
|
226
228
|
]
|
|
227
229
|
|
|
228
|
-
match_condition =
|
|
229
|
-
|
|
230
|
-
exp.select(*
|
|
230
|
+
match_condition = (
|
|
231
|
+
exp.Exists(
|
|
232
|
+
this=exp.select(*target_columns_no_keys).except_(
|
|
233
|
+
exp.select(*source_columns_no_keys)
|
|
234
|
+
)
|
|
231
235
|
)
|
|
236
|
+
if mssql_merge_exists
|
|
237
|
+
else None
|
|
232
238
|
)
|
|
233
239
|
|
|
234
240
|
if target_columns_no_keys:
|
|
@@ -109,6 +109,7 @@ class PostgresEngineAdapter(
|
|
|
109
109
|
unique_key: t.Sequence[exp.Expression],
|
|
110
110
|
when_matched: t.Optional[exp.Whens] = None,
|
|
111
111
|
merge_filter: t.Optional[exp.Expression] = None,
|
|
112
|
+
**kwargs: t.Any,
|
|
112
113
|
) -> None:
|
|
113
114
|
# Merge isn't supported until Postgres 15
|
|
114
115
|
merge_impl = (
|
|
@@ -353,6 +353,7 @@ class RedshiftEngineAdapter(
|
|
|
353
353
|
unique_key: t.Sequence[exp.Expression],
|
|
354
354
|
when_matched: t.Optional[exp.Whens] = None,
|
|
355
355
|
merge_filter: t.Optional[exp.Expression] = None,
|
|
356
|
+
**kwargs: t.Any,
|
|
356
357
|
) -> None:
|
|
357
358
|
if self.enable_merge:
|
|
358
359
|
# By default we use the logical merge unless the user has opted in
|
sqlmesh/core/plan/evaluator.py
CHANGED
|
@@ -51,7 +51,6 @@ class PlanEvaluator(abc.ABC):
|
|
|
51
51
|
def evaluate(
|
|
52
52
|
self,
|
|
53
53
|
plan: EvaluatablePlan,
|
|
54
|
-
snapshot_evaluator: SnapshotEvaluator,
|
|
55
54
|
circuit_breaker: t.Optional[t.Callable[[], bool]] = None,
|
|
56
55
|
) -> None:
|
|
57
56
|
"""Evaluates a plan by pushing snapshots and backfilling data.
|
|
@@ -63,7 +62,6 @@ class PlanEvaluator(abc.ABC):
|
|
|
63
62
|
|
|
64
63
|
Args:
|
|
65
64
|
plan: The plan to evaluate.
|
|
66
|
-
snapshot_evaluator: The snapshot evaluator to use.
|
|
67
65
|
circuit_breaker: The circuit breaker to use.
|
|
68
66
|
"""
|
|
69
67
|
|
|
@@ -72,11 +70,13 @@ class BuiltInPlanEvaluator(PlanEvaluator):
|
|
|
72
70
|
def __init__(
|
|
73
71
|
self,
|
|
74
72
|
state_sync: StateSync,
|
|
73
|
+
snapshot_evaluator: SnapshotEvaluator,
|
|
75
74
|
create_scheduler: t.Callable[[t.Iterable[Snapshot]], Scheduler],
|
|
76
75
|
default_catalog: t.Optional[str],
|
|
77
76
|
console: t.Optional[Console] = None,
|
|
78
77
|
):
|
|
79
78
|
self.state_sync = state_sync
|
|
79
|
+
self.snapshot_evaluator = snapshot_evaluator
|
|
80
80
|
self.create_scheduler = create_scheduler
|
|
81
81
|
self.default_catalog = default_catalog
|
|
82
82
|
self.console = console or get_console()
|
|
@@ -85,11 +85,9 @@ class BuiltInPlanEvaluator(PlanEvaluator):
|
|
|
85
85
|
def evaluate(
|
|
86
86
|
self,
|
|
87
87
|
plan: EvaluatablePlan,
|
|
88
|
-
snapshot_evaluator: SnapshotEvaluator,
|
|
89
88
|
circuit_breaker: t.Optional[t.Callable[[], bool]] = None,
|
|
90
89
|
) -> None:
|
|
91
90
|
self._circuit_breaker = circuit_breaker
|
|
92
|
-
self.snapshot_evaluator = snapshot_evaluator
|
|
93
91
|
|
|
94
92
|
self.console.start_plan_evaluation(plan)
|
|
95
93
|
analytics.collector.on_plan_apply_start(
|
sqlmesh/core/plan/explainer.py
CHANGED
|
@@ -20,7 +20,6 @@ from sqlmesh.core.snapshot.definition import (
|
|
|
20
20
|
from sqlmesh.utils import Verbosity, rich as srich, to_snake_case
|
|
21
21
|
from sqlmesh.utils.date import to_ts
|
|
22
22
|
from sqlmesh.utils.errors import SQLMeshError
|
|
23
|
-
from sqlmesh.core.snapshot.evaluator import SnapshotEvaluator
|
|
24
23
|
|
|
25
24
|
|
|
26
25
|
logger = logging.getLogger(__name__)
|
|
@@ -40,7 +39,6 @@ class PlanExplainer(PlanEvaluator):
|
|
|
40
39
|
def evaluate(
|
|
41
40
|
self,
|
|
42
41
|
plan: EvaluatablePlan,
|
|
43
|
-
snapshot_evaluator: SnapshotEvaluator,
|
|
44
42
|
circuit_breaker: t.Optional[t.Callable[[], bool]] = None,
|
|
45
43
|
) -> None:
|
|
46
44
|
plan_stages = stages.build_plan_stages(plan, self.state_reader, self.default_catalog)
|
|
@@ -1614,6 +1614,7 @@ class IncrementalByUniqueKeyStrategy(MaterializableStrategy):
|
|
|
1614
1614
|
end=kwargs.get("end"),
|
|
1615
1615
|
execution_time=kwargs.get("execution_time"),
|
|
1616
1616
|
),
|
|
1617
|
+
physical_properties=kwargs.get("physical_properties", model.physical_properties),
|
|
1617
1618
|
)
|
|
1618
1619
|
|
|
1619
1620
|
def append(
|
|
@@ -1634,6 +1635,7 @@ class IncrementalByUniqueKeyStrategy(MaterializableStrategy):
|
|
|
1634
1635
|
end=kwargs.get("end"),
|
|
1635
1636
|
execution_time=kwargs.get("execution_time"),
|
|
1636
1637
|
),
|
|
1638
|
+
physical_properties=kwargs.get("physical_properties", model.physical_properties),
|
|
1637
1639
|
)
|
|
1638
1640
|
|
|
1639
1641
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
sqlmesh/__init__.py,sha256=QjwaamJIdW7voXoS880yAx7tHm-Im4_mqGA-XJgafos,7631
|
|
2
|
-
sqlmesh/_version.py,sha256=
|
|
2
|
+
sqlmesh/_version.py,sha256=hnPFLgViYAuq9OQ8HMNnl3oJTWYxsMayOWfylgVZPU0,530
|
|
3
3
|
sqlmesh/magics.py,sha256=R9U0Mp9ZQhDYe751nxAQDLaMv3zLAR4HcTdIflKTmEE,41709
|
|
4
4
|
sqlmesh/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
sqlmesh/cicd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -13,7 +13,7 @@ sqlmesh/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
13
13
|
sqlmesh/core/_typing.py,sha256=e1f7xO2aZCy38M_3VoDy-XI3shyd99-IFctgIFSgXWM,497
|
|
14
14
|
sqlmesh/core/console.py,sha256=HInr6MOcxgn8Z-B9fAoghoDXbBEZqkB5ClyZF-fRP58,159032
|
|
15
15
|
sqlmesh/core/constants.py,sha256=gUABXWYgH_XOSbaZAJsR5o1dmA61JDCvBDyxqqXX3LM,2630
|
|
16
|
-
sqlmesh/core/context.py,sha256=
|
|
16
|
+
sqlmesh/core/context.py,sha256=WyaHN2Fh3FMMHN5MQNnfq5fm89wkfJujq-dkhccRId0,118534
|
|
17
17
|
sqlmesh/core/context_diff.py,sha256=TCzM8egBE35DskpouOB-GQM2Qf5iUHWbRgiB5yZ6tzg,21552
|
|
18
18
|
sqlmesh/core/dialect.py,sha256=1ykYwb9WZn_nCaX08PcQ0BJh2Pihv9SPvoMNjpMeCfs,50158
|
|
19
19
|
sqlmesh/core/environment.py,sha256=7DbJX0r5nZRU3LhcgIxbSV-JosQYDjAt3V5Wc2Fpns8,13005
|
|
@@ -54,22 +54,22 @@ sqlmesh/core/config/naming.py,sha256=KVGaxUgswoQajXR_cHFJvgkmEFcU1V182GkOH1SJxuE
|
|
|
54
54
|
sqlmesh/core/config/plan.py,sha256=wJEDfocMcKSMN0-5gVojjIcmJZ0376LJU3tkGMTm-Zc,1558
|
|
55
55
|
sqlmesh/core/config/root.py,sha256=tZxArC4kjPqrt43R9uErH_awwwNQVaNIaTAb-ot9WiU,15529
|
|
56
56
|
sqlmesh/core/config/run.py,sha256=rIK0QnN_vArrwps2TXGVEbvao2AnGZgzXo7EliJa42E,852
|
|
57
|
-
sqlmesh/core/config/scheduler.py,sha256=
|
|
57
|
+
sqlmesh/core/config/scheduler.py,sha256=k3BVMpy5ZrC05ZlyE3vec8ZGfTjUjWyfsKZtYgflbyA,7029
|
|
58
58
|
sqlmesh/core/config/ui.py,sha256=jsO-S6_d9NkLZGG5pT4mgKgxMF34KzkDociZAMvCX3U,278
|
|
59
59
|
sqlmesh/core/engine_adapter/__init__.py,sha256=two_WTs4UnSNp-fscJh8vOunJq0Xi37EuDuMjKsKuNE,2281
|
|
60
60
|
sqlmesh/core/engine_adapter/_typing.py,sha256=_63pYCThfC39UtPVHY3N0H6qJ1YBT32OqwwR3swolGM,1037
|
|
61
61
|
sqlmesh/core/engine_adapter/athena.py,sha256=DMC94WfCH8m37cVPio43Q11J8RQE8tuf1nl0RtXZ_CM,26198
|
|
62
|
-
sqlmesh/core/engine_adapter/base.py,sha256=
|
|
62
|
+
sqlmesh/core/engine_adapter/base.py,sha256=7JbSAzz1U2umlmcUKYd-nIf__yRFArfwgcPkXewqoHU,104081
|
|
63
63
|
sqlmesh/core/engine_adapter/base_postgres.py,sha256=DOsOdCJyQAVfA9S0GznuH0J1bonMqYVP_yJLDYcxFYM,6772
|
|
64
64
|
sqlmesh/core/engine_adapter/bigquery.py,sha256=qJE8vHLKKAeWMvltmYaUvWS95jM_UEZ6UzYLlr58sGo,50424
|
|
65
65
|
sqlmesh/core/engine_adapter/clickhouse.py,sha256=LoPdm_s_s-ZxS1XJPA3Et0iOHeJ1LgqTAFbwBdiqE7A,34912
|
|
66
66
|
sqlmesh/core/engine_adapter/databricks.py,sha256=8ZExPIeT3dDh9MTJW8udvmh9LiY-f9HkRAN1Q5Qebhs,14541
|
|
67
67
|
sqlmesh/core/engine_adapter/duckdb.py,sha256=TlSFSWNzUfjGdhuMyCi1CLwhBaEKyNKtasub9OsYwrc,5199
|
|
68
|
-
sqlmesh/core/engine_adapter/mixins.py,sha256=
|
|
69
|
-
sqlmesh/core/engine_adapter/mssql.py,sha256=
|
|
68
|
+
sqlmesh/core/engine_adapter/mixins.py,sha256=2f6I97iRoeEX2c_BB5Pu8ruIrozwtCZPrxN3a-ANBr8,22495
|
|
69
|
+
sqlmesh/core/engine_adapter/mssql.py,sha256=N-l9RReP45hg9CNKCQTrg4BmwKtN-v9xK68JJW-xYc8,17647
|
|
70
70
|
sqlmesh/core/engine_adapter/mysql.py,sha256=lVC-siXZK3iSfqCmBjZNw8uy09Z8la8v8_oUZ-E2OwI,6966
|
|
71
|
-
sqlmesh/core/engine_adapter/postgres.py,sha256=
|
|
72
|
-
sqlmesh/core/engine_adapter/redshift.py,sha256=
|
|
71
|
+
sqlmesh/core/engine_adapter/postgres.py,sha256=4eXBDKXb6uiu8B7nD60b2p9pbkc8Z1Ycgavw7Necxj4,4626
|
|
72
|
+
sqlmesh/core/engine_adapter/redshift.py,sha256=35T2ZLKozakRNeD0zykWk8RvXomfX9xi4Zg5Y4ZAVhg,16779
|
|
73
73
|
sqlmesh/core/engine_adapter/risingwave.py,sha256=YYCQ0EJaSrR9_P1_2_LmElQ6zSxqkZzhvhdm-2WtWWg,969
|
|
74
74
|
sqlmesh/core/engine_adapter/shared.py,sha256=zL2W2t9af9mo80aSO0fz5TqV6mY8_kI5VYLswbKdZyk,13369
|
|
75
75
|
sqlmesh/core/engine_adapter/snowflake.py,sha256=IEEzepxNpfqBIMe4ziz2k8fjOcJPeQPZyM3XljymAj0,28874
|
|
@@ -96,14 +96,14 @@ sqlmesh/core/model/seed.py,sha256=a0M-1zY1gOkN5ph2GQyataEdBSCtq50YjeFk2LyvInI,50
|
|
|
96
96
|
sqlmesh/core/plan/__init__.py,sha256=NKSvM7ZBVjw9ho3J65M1wFvG3KURB8PJ0FHHLmtSF44,443
|
|
97
97
|
sqlmesh/core/plan/builder.py,sha256=g07h-NOsOr_4spnOrlQ4KrFjh3RmbvHSydEuSOsShNc,41416
|
|
98
98
|
sqlmesh/core/plan/definition.py,sha256=OxgbvkMGNdlvYF2BjFJt_lINsBw38Fq1IX25P8_Z_Z0,13734
|
|
99
|
-
sqlmesh/core/plan/evaluator.py,sha256=
|
|
100
|
-
sqlmesh/core/plan/explainer.py,sha256=
|
|
99
|
+
sqlmesh/core/plan/evaluator.py,sha256=4Gt9svTUe-0YSDawlSbJNed5fkZASbTPsYyytQFXy14,20559
|
|
100
|
+
sqlmesh/core/plan/explainer.py,sha256=aBkvtM9eog_2NIglazSDdG_i9TTCdFSVOkCw5N8O-1k,12028
|
|
101
101
|
sqlmesh/core/plan/stages.py,sha256=5cvEbrQsw_cx1gayxwLRwkIehQPixrbUT9B4BbEOj3A,21972
|
|
102
102
|
sqlmesh/core/snapshot/__init__.py,sha256=Z5HTetNCZGoKF1WAKXk4LWL9dc8EC8lwS2O4TtoBmt4,1317
|
|
103
103
|
sqlmesh/core/snapshot/cache.py,sha256=bgqCR2hyf6r2A_8QP1EnXFK25gDX37-Zg0YeMuETWxg,3934
|
|
104
104
|
sqlmesh/core/snapshot/categorizer.py,sha256=qGG5870mu1jR2whKisSBH_GFbsyh96RnzJDgkN7DV9g,2482
|
|
105
105
|
sqlmesh/core/snapshot/definition.py,sha256=3unI15dMHzBLbfXatMSeVqH4y11TtP2PDt-FeiQfP5k,86696
|
|
106
|
-
sqlmesh/core/snapshot/evaluator.py,sha256=
|
|
106
|
+
sqlmesh/core/snapshot/evaluator.py,sha256=3mjrSp9ggd9uKhuZURrY0HtuCc_WAPsH4PYvQlqmn9o,90443
|
|
107
107
|
sqlmesh/core/state_sync/__init__.py,sha256=B60xj-_Xk-4jas3UphLvwkuf04G-9AyGckcblXE0aRg,869
|
|
108
108
|
sqlmesh/core/state_sync/base.py,sha256=Drq4MDWWxO_J-sJIxsMG1-YSgj2L42n5WM2vh1sr6bc,18334
|
|
109
109
|
sqlmesh/core/state_sync/cache.py,sha256=0AsYdQyBqbLdJvkBQ-hDAipsvnn_jSps-nya-Q4XeL0,5337
|
|
@@ -284,7 +284,7 @@ sqlmesh/utils/pydantic.py,sha256=o_NsXbIpDqNpUA1Uc5xF0ZzoXQYYB0DfHwdRxBwXPNk,120
|
|
|
284
284
|
sqlmesh/utils/rich.py,sha256=BpB47G0-JcU41LkGkeGKroexj4NOV5fox4-GOIXPgIc,3545
|
|
285
285
|
sqlmesh/utils/windows.py,sha256=r7Yin4WEwbvH7sKA3hOJtRsclmscNuBeCklCfVPvtQs,611
|
|
286
286
|
sqlmesh/utils/yaml.py,sha256=hvo5lmybYLcIx4p6CQwufS8X4MbwS60lEBnCmYJCXmU,2336
|
|
287
|
-
sqlmesh-0.198.1.
|
|
287
|
+
sqlmesh-0.198.1.dev12.dist-info/licenses/LICENSE,sha256=OlMefUjgWJdULtf84BLW0AZZcY8DwdgQqb_1j2862j8,11346
|
|
288
288
|
web/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
289
289
|
web/client/dist/index.html,sha256=kNpFjWxt34Pf-P-cROtPWi3GNSVk6zqA3eoN9tlZXI0,5472
|
|
290
290
|
web/client/dist/assets/Audits-DKgXravk.js,sha256=SaVQhNlislD_yQc_KivO7SPi1JH0ts1GnDPD5Zssutw,1041
|
|
@@ -402,8 +402,8 @@ web/server/api/endpoints/models.py,sha256=ud-lRwriyI_OYg9tZchrBgeiXELiRTLNEodraf
|
|
|
402
402
|
web/server/api/endpoints/modules.py,sha256=8hqqgonGay_mJmpCw0IdbjsPhWlQH2VLdKAqha-myac,468
|
|
403
403
|
web/server/api/endpoints/plan.py,sha256=bbbY50W_2MsZSTxOHWMKz0tbIm75nsRSlPy8GI2fg9Q,9306
|
|
404
404
|
web/server/api/endpoints/table_diff.py,sha256=SCy3-pr5x6bEEiOaZGCDbiHQhpgxwmnz3Acqa2Ie6jI,2090
|
|
405
|
-
sqlmesh-0.198.1.
|
|
406
|
-
sqlmesh-0.198.1.
|
|
407
|
-
sqlmesh-0.198.1.
|
|
408
|
-
sqlmesh-0.198.1.
|
|
409
|
-
sqlmesh-0.198.1.
|
|
405
|
+
sqlmesh-0.198.1.dev12.dist-info/METADATA,sha256=qnZqaFCgJs7F_RfwlVT0HnHKk4nO1q2InfazHHOLH1c,26659
|
|
406
|
+
sqlmesh-0.198.1.dev12.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
407
|
+
sqlmesh-0.198.1.dev12.dist-info/entry_points.txt,sha256=pIYKtg-u-uO7BK_Y0qrdmfyj0bYrcMc3Xiqr5WE3VFk,121
|
|
408
|
+
sqlmesh-0.198.1.dev12.dist-info/top_level.txt,sha256=bspjo5vjELQkuN0qKuTFIbsrUt3Zeo8D2mlKeHG1LdE,12
|
|
409
|
+
sqlmesh-0.198.1.dev12.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|