dagster 1.12.11__py3-none-any.whl → 1.12.12__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.
- dagster/_cli/asset.py +15 -4
- dagster/_cli/job.py +8 -3
- dagster/_core/asset_graph_view/serializable_entity_subset.py +9 -0
- dagster/_core/code_pointer.py +8 -1
- dagster/_core/definitions/declarative_automation/serialized_objects.py +36 -0
- dagster/_core/definitions/decorators/asset_decorator.py +13 -13
- dagster/_core/execution/run_cancellation_thread.py +1 -0
- dagster/_core/telemetry.py +3 -0
- dagster/_generate/download.py +1 -0
- dagster/components/list/list.py +4 -1
- dagster/version.py +1 -1
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/METADATA +4 -4
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/RECORD +17 -17
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/WHEEL +1 -1
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/entry_points.txt +0 -0
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/licenses/LICENSE +0 -0
- {dagster-1.12.11.dist-info → dagster-1.12.12.dist-info}/top_level.txt +0 -0
dagster/_cli/asset.py
CHANGED
|
@@ -43,7 +43,11 @@ def asset_cli():
|
|
|
43
43
|
@click.option("--partition", help="Asset partition to target", required=False)
|
|
44
44
|
@click.option(
|
|
45
45
|
"--partition-range",
|
|
46
|
-
help=
|
|
46
|
+
help=(
|
|
47
|
+
"Asset partition range to materialize in the format <start>...<end>. "
|
|
48
|
+
"Requires all assets to have a BackfillPolicy.single_run() policy, which allows "
|
|
49
|
+
"the partition range to be executed in a single run. For example: 2025-01-01...2025-01-05"
|
|
50
|
+
),
|
|
47
51
|
required=False,
|
|
48
52
|
)
|
|
49
53
|
@click.option(
|
|
@@ -163,12 +167,18 @@ def execute_materialize_command(
|
|
|
163
167
|
for asset_key in asset_keys:
|
|
164
168
|
backfill_policy = implicit_job_def.asset_layer.get(asset_key).backfill_policy
|
|
165
169
|
if (
|
|
166
|
-
backfill_policy is
|
|
167
|
-
|
|
170
|
+
backfill_policy is None
|
|
171
|
+
or backfill_policy.policy_type != BackfillPolicyType.SINGLE_RUN
|
|
168
172
|
):
|
|
169
173
|
check.failed(
|
|
170
|
-
"
|
|
174
|
+
"Partition ranges with the CLI require all selected assets to have a "
|
|
175
|
+
"BackfillPolicy.single_run() policy. This allows the partition range to be "
|
|
176
|
+
"executed in a single run. Assets without this policy would require creating "
|
|
177
|
+
"a backfill with separate runs per partition, which needs a running daemon "
|
|
178
|
+
"process. Consider using the Dagster UI or a running daemon to execute "
|
|
179
|
+
"partition ranges for assets without a single-run backfill policy."
|
|
171
180
|
)
|
|
181
|
+
|
|
172
182
|
try:
|
|
173
183
|
implicit_job_def.validate_partition_key(
|
|
174
184
|
partition_range_start, selected_asset_keys=asset_keys, context=context
|
|
@@ -181,6 +191,7 @@ def execute_materialize_command(
|
|
|
181
191
|
"All selected assets must have a PartitionsDefinition containing the passed"
|
|
182
192
|
f" partition key `{partition_range_start}` or have no PartitionsDefinition."
|
|
183
193
|
)
|
|
194
|
+
|
|
184
195
|
tags = {
|
|
185
196
|
ASSET_PARTITION_RANGE_START_TAG: partition_range_start,
|
|
186
197
|
ASSET_PARTITION_RANGE_END_TAG: partition_range_end,
|
dagster/_cli/job.py
CHANGED
|
@@ -405,11 +405,16 @@ def execute_execute_command(
|
|
|
405
405
|
for asset_key in job_def.asset_layer.executable_asset_keys:
|
|
406
406
|
backfill_policy = job_def.asset_layer.get(asset_key).backfill_policy
|
|
407
407
|
if (
|
|
408
|
-
backfill_policy is
|
|
409
|
-
|
|
408
|
+
backfill_policy is None
|
|
409
|
+
or backfill_policy.policy_type != BackfillPolicyType.SINGLE_RUN
|
|
410
410
|
):
|
|
411
411
|
check.failed(
|
|
412
|
-
"
|
|
412
|
+
"Partition ranges with the CLI require all selected assets to have a "
|
|
413
|
+
"BackfillPolicy.single_run() policy. This allows the partition range to be "
|
|
414
|
+
"executed in a single run. Assets without this policy would require creating "
|
|
415
|
+
"a backfill with separate runs per partition, which needs a running daemon "
|
|
416
|
+
"process. Consider using the Dagster UI or a running daemon to execute "
|
|
417
|
+
"partition ranges for assets without a single-run backfill policy."
|
|
413
418
|
)
|
|
414
419
|
try:
|
|
415
420
|
job_def.validate_partition_key(
|
|
@@ -132,6 +132,10 @@ class SerializableEntitySubset(Generic[T_EntityKey]):
|
|
|
132
132
|
def is_compatible_with_partitions_def(
|
|
133
133
|
self, partitions_def: Optional[PartitionsDefinition]
|
|
134
134
|
) -> bool:
|
|
135
|
+
from dagster._core.definitions.partitions.definition.time_window import (
|
|
136
|
+
TimeWindowPartitionsDefinition,
|
|
137
|
+
)
|
|
138
|
+
|
|
135
139
|
if self.is_partitioned:
|
|
136
140
|
# for some PartitionSubset types, we have access to the underlying partitions
|
|
137
141
|
# definitions, so we can ensure those are identical
|
|
@@ -150,6 +154,11 @@ class SerializableEntitySubset(Generic[T_EntityKey]):
|
|
|
150
154
|
and partitions_def.has_partition_key(r.end)
|
|
151
155
|
for r in self.value.key_ranges
|
|
152
156
|
)
|
|
157
|
+
elif isinstance(self.value, DefaultPartitionsSubset) and isinstance(
|
|
158
|
+
partitions_def, TimeWindowPartitionsDefinition
|
|
159
|
+
):
|
|
160
|
+
return all(partitions_def.has_partition_key(k) for k in self.value.subset)
|
|
161
|
+
|
|
153
162
|
else:
|
|
154
163
|
return partitions_def is not None
|
|
155
164
|
else:
|
dagster/_core/code_pointer.py
CHANGED
|
@@ -2,6 +2,7 @@ import importlib
|
|
|
2
2
|
import inspect
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
|
+
import uuid
|
|
5
6
|
from abc import ABC, abstractmethod
|
|
6
7
|
from collections.abc import Callable, Sequence
|
|
7
8
|
from pathlib import Path
|
|
@@ -59,7 +60,11 @@ def rebase_file(relative_path_in_file: str, file_path_resides_in: str) -> str:
|
|
|
59
60
|
)
|
|
60
61
|
|
|
61
62
|
|
|
62
|
-
def load_python_file(
|
|
63
|
+
def load_python_file(
|
|
64
|
+
python_file: Union[str, Path],
|
|
65
|
+
working_directory: Optional[str],
|
|
66
|
+
add_uuid_suffix: bool = False,
|
|
67
|
+
) -> ModuleType:
|
|
63
68
|
"""Takes a path to a python file and returns a loaded module."""
|
|
64
69
|
check.inst_param(python_file, "python_file", (str, Path))
|
|
65
70
|
check.opt_str_param(working_directory, "working_directory")
|
|
@@ -68,6 +73,8 @@ def load_python_file(python_file: Union[str, Path], working_directory: Optional[
|
|
|
68
73
|
os.stat(python_file)
|
|
69
74
|
|
|
70
75
|
module_name = os.path.splitext(os.path.basename(python_file))[0]
|
|
76
|
+
if add_uuid_suffix:
|
|
77
|
+
module_name = f"{module_name}_{uuid.uuid4().hex}"
|
|
71
78
|
|
|
72
79
|
# Use the passed in working directory for local imports (sys.path[0] isn't
|
|
73
80
|
# consistently set in the different entry points that Dagster uses to import code)
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import itertools
|
|
1
2
|
from collections.abc import Iterator, Mapping, Sequence
|
|
2
3
|
from dataclasses import dataclass
|
|
3
4
|
from typing import ( # noqa: UP035
|
|
@@ -312,3 +313,38 @@ class AutomationConditionEvaluationState:
|
|
|
312
313
|
@property
|
|
313
314
|
def true_subset(self) -> SerializableEntitySubset:
|
|
314
315
|
return self.previous_evaluation.true_subset
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
def get_expanded_label(
|
|
319
|
+
item: Union[AutomationConditionEvaluation, AutomationConditionSnapshot],
|
|
320
|
+
use_label=False,
|
|
321
|
+
) -> Sequence[str]:
|
|
322
|
+
if isinstance(item, AutomationConditionSnapshot):
|
|
323
|
+
label, name, description, children = (
|
|
324
|
+
item.node_snapshot.label,
|
|
325
|
+
item.node_snapshot.name,
|
|
326
|
+
item.node_snapshot.description,
|
|
327
|
+
item.children,
|
|
328
|
+
)
|
|
329
|
+
else:
|
|
330
|
+
snapshot = item.condition_snapshot
|
|
331
|
+
label, name, description, children = (
|
|
332
|
+
snapshot.label,
|
|
333
|
+
snapshot.name,
|
|
334
|
+
snapshot.description,
|
|
335
|
+
item.child_evaluations,
|
|
336
|
+
)
|
|
337
|
+
|
|
338
|
+
if use_label and label is not None:
|
|
339
|
+
return [label]
|
|
340
|
+
node_text = name or description
|
|
341
|
+
child_labels = [f"({' '.join(get_expanded_label(c, use_label=True))})" for c in children]
|
|
342
|
+
if len(child_labels) == 0:
|
|
343
|
+
return [node_text]
|
|
344
|
+
elif len(child_labels) == 1:
|
|
345
|
+
return [node_text, f"{child_labels[0]}"]
|
|
346
|
+
else:
|
|
347
|
+
# intersperses node_text (e.g. AND) between each child label
|
|
348
|
+
return list(itertools.chain(*itertools.zip_longest(child_labels, [], fillvalue=node_text)))[
|
|
349
|
+
:-1
|
|
350
|
+
]
|
|
@@ -82,11 +82,11 @@ def asset(
|
|
|
82
82
|
io_manager_def: Optional[object] = ...,
|
|
83
83
|
io_manager_key: Optional[str] = ...,
|
|
84
84
|
dagster_type: Optional[DagsterType] = ...,
|
|
85
|
-
partitions_def: Optional[PartitionsDefinition] = ...,
|
|
85
|
+
partitions_def: Optional[PartitionsDefinition[str]] = ...,
|
|
86
86
|
op_tags: Optional[Mapping[str, Any]] = ...,
|
|
87
87
|
group_name: Optional[str] = ...,
|
|
88
88
|
output_required: bool = ...,
|
|
89
|
-
automation_condition: Optional[AutomationCondition] = ...,
|
|
89
|
+
automation_condition: Optional[AutomationCondition[AssetKey]] = ...,
|
|
90
90
|
backfill_policy: Optional[BackfillPolicy] = ...,
|
|
91
91
|
retry_policy: Optional[RetryPolicy] = ...,
|
|
92
92
|
code_version: Optional[str] = ...,
|
|
@@ -95,14 +95,14 @@ def asset(
|
|
|
95
95
|
owners: Optional[Sequence[str]] = ...,
|
|
96
96
|
kinds: Optional[AbstractSet[str]] = ...,
|
|
97
97
|
pool: Optional[str] = ...,
|
|
98
|
-
**kwargs,
|
|
98
|
+
**kwargs: Any,
|
|
99
99
|
) -> Callable[[Callable[..., Any]], AssetsDefinition]: ...
|
|
100
100
|
|
|
101
101
|
|
|
102
102
|
@overload
|
|
103
103
|
def asset(
|
|
104
104
|
compute_fn: Callable[..., Any],
|
|
105
|
-
**kwargs,
|
|
105
|
+
**kwargs: Any,
|
|
106
106
|
) -> AssetsDefinition: ...
|
|
107
107
|
|
|
108
108
|
|
|
@@ -168,11 +168,11 @@ def asset(
|
|
|
168
168
|
io_manager_def: Optional[object] = None,
|
|
169
169
|
io_manager_key: Optional[str] = None,
|
|
170
170
|
dagster_type: Optional[DagsterType] = None,
|
|
171
|
-
partitions_def: Optional[PartitionsDefinition] = None,
|
|
171
|
+
partitions_def: Optional[PartitionsDefinition[str]] = None,
|
|
172
172
|
op_tags: Optional[Mapping[str, Any]] = None,
|
|
173
173
|
group_name: Optional[str] = None,
|
|
174
174
|
output_required: bool = True,
|
|
175
|
-
automation_condition: Optional[AutomationCondition] = None,
|
|
175
|
+
automation_condition: Optional[AutomationCondition[AssetKey]] = None,
|
|
176
176
|
freshness_policy: Optional[FreshnessPolicy] = None,
|
|
177
177
|
backfill_policy: Optional[BackfillPolicy] = None,
|
|
178
178
|
retry_policy: Optional[RetryPolicy] = None,
|
|
@@ -182,7 +182,7 @@ def asset(
|
|
|
182
182
|
owners: Optional[Sequence[str]] = None,
|
|
183
183
|
kinds: Optional[AbstractSet[str]] = None,
|
|
184
184
|
pool: Optional[str] = None,
|
|
185
|
-
**kwargs,
|
|
185
|
+
**kwargs: Any,
|
|
186
186
|
) -> Union[AssetsDefinition, Callable[[Callable[..., Any]], AssetsDefinition]]:
|
|
187
187
|
"""Create a definition for how to compute an asset.
|
|
188
188
|
|
|
@@ -590,7 +590,7 @@ def multi_asset(
|
|
|
590
590
|
config_schema: Optional[UserConfigSchema] = None,
|
|
591
591
|
required_resource_keys: Optional[AbstractSet[str]] = None,
|
|
592
592
|
internal_asset_deps: Optional[Mapping[str, set[AssetKey]]] = None,
|
|
593
|
-
partitions_def: Optional[PartitionsDefinition] = None,
|
|
593
|
+
partitions_def: Optional[PartitionsDefinition[str]] = None,
|
|
594
594
|
hooks: Optional[AbstractSet[HookDefinition]] = None,
|
|
595
595
|
backfill_policy: Optional[BackfillPolicy] = None,
|
|
596
596
|
op_tags: Optional[Mapping[str, Any]] = None,
|
|
@@ -769,7 +769,7 @@ def graph_asset(
|
|
|
769
769
|
config: Optional[Union[ConfigMapping, Mapping[str, Any]]] = None,
|
|
770
770
|
key_prefix: Optional[CoercibleToAssetKeyPrefix] = None,
|
|
771
771
|
group_name: Optional[str] = None,
|
|
772
|
-
partitions_def: Optional[PartitionsDefinition] = None,
|
|
772
|
+
partitions_def: Optional[PartitionsDefinition[str]] = None,
|
|
773
773
|
hooks: Optional[AbstractSet[HookDefinition]] = None,
|
|
774
774
|
metadata: Optional[RawMetadataMapping] = ...,
|
|
775
775
|
tags: Optional[Mapping[str, str]] = ...,
|
|
@@ -777,7 +777,7 @@ def graph_asset(
|
|
|
777
777
|
kinds: Optional[AbstractSet[str]] = None,
|
|
778
778
|
legacy_freshness_policy: Optional[LegacyFreshnessPolicy] = ...,
|
|
779
779
|
auto_materialize_policy: Optional[AutoMaterializePolicy] = ...,
|
|
780
|
-
automation_condition: Optional[AutomationCondition] = ...,
|
|
780
|
+
automation_condition: Optional[AutomationCondition[AssetKey]] = ...,
|
|
781
781
|
backfill_policy: Optional[BackfillPolicy] = ...,
|
|
782
782
|
resource_defs: Optional[Mapping[str, ResourceDefinition]] = ...,
|
|
783
783
|
check_specs: Optional[Sequence[AssetCheckSpec]] = None,
|
|
@@ -806,19 +806,19 @@ def graph_asset(
|
|
|
806
806
|
config: Optional[Union[ConfigMapping, Mapping[str, Any]]] = None,
|
|
807
807
|
key_prefix: Optional[CoercibleToAssetKeyPrefix] = None,
|
|
808
808
|
group_name: Optional[str] = None,
|
|
809
|
-
partitions_def: Optional[PartitionsDefinition] = None,
|
|
809
|
+
partitions_def: Optional[PartitionsDefinition[str]] = None,
|
|
810
810
|
hooks: Optional[AbstractSet[HookDefinition]] = None,
|
|
811
811
|
metadata: Optional[RawMetadataMapping] = None,
|
|
812
812
|
tags: Optional[Mapping[str, str]] = None,
|
|
813
813
|
owners: Optional[Sequence[str]] = None,
|
|
814
|
-
automation_condition: Optional[AutomationCondition] = None,
|
|
814
|
+
automation_condition: Optional[AutomationCondition[AssetKey]] = None,
|
|
815
815
|
backfill_policy: Optional[BackfillPolicy] = None,
|
|
816
816
|
resource_defs: Optional[Mapping[str, ResourceDefinition]] = None,
|
|
817
817
|
check_specs: Optional[Sequence[AssetCheckSpec]] = None,
|
|
818
818
|
code_version: Optional[str] = None,
|
|
819
819
|
key: Optional[CoercibleToAssetKey] = None,
|
|
820
820
|
kinds: Optional[AbstractSet[str]] = None,
|
|
821
|
-
**kwargs,
|
|
821
|
+
**kwargs: Any,
|
|
822
822
|
) -> Union[AssetsDefinition, Callable[[Callable[..., Any]], AssetsDefinition]]:
|
|
823
823
|
"""Creates a software-defined asset that's computed using a graph of ops.
|
|
824
824
|
|
|
@@ -21,6 +21,7 @@ def _kill_on_cancel(instance_ref: InstanceRef, run_id, shutdown_event):
|
|
|
21
21
|
if run.status in [
|
|
22
22
|
DagsterRunStatus.CANCELING,
|
|
23
23
|
DagsterRunStatus.CANCELED,
|
|
24
|
+
DagsterRunStatus.FAILURE,
|
|
24
25
|
]:
|
|
25
26
|
print( # noqa: T201
|
|
26
27
|
f"Detected run status {run.status}, sending interrupt to main thread"
|
dagster/_core/telemetry.py
CHANGED
|
@@ -25,6 +25,7 @@ from dagster_shared.telemetry import (
|
|
|
25
25
|
TelemetrySettings,
|
|
26
26
|
dagster_home_if_set,
|
|
27
27
|
get_or_set_instance_id,
|
|
28
|
+
get_or_set_user_id,
|
|
28
29
|
log_telemetry_action,
|
|
29
30
|
write_telemetry_log_line,
|
|
30
31
|
)
|
|
@@ -379,6 +380,7 @@ def log_remote_repo_stats(
|
|
|
379
380
|
client_time=str(datetime.datetime.now()),
|
|
380
381
|
event_id=str(uuid.uuid4()),
|
|
381
382
|
instance_id=instance_id,
|
|
383
|
+
user_id=get_or_set_user_id(),
|
|
382
384
|
metadata={
|
|
383
385
|
**get_stats_from_remote_repo(remote_repo),
|
|
384
386
|
"source": source,
|
|
@@ -450,6 +452,7 @@ def log_repo_stats(
|
|
|
450
452
|
client_time=str(datetime.datetime.now()),
|
|
451
453
|
event_id=str(uuid.uuid4()),
|
|
452
454
|
instance_id=instance_id,
|
|
455
|
+
user_id=get_or_set_user_id(),
|
|
453
456
|
metadata={
|
|
454
457
|
"source": source,
|
|
455
458
|
"pipeline_name_hash": job_name_hash,
|
dagster/_generate/download.py
CHANGED
dagster/components/list/list.py
CHANGED
|
@@ -28,6 +28,7 @@ from dagster._cli.workspace.cli_target import get_repository_python_origin_from_
|
|
|
28
28
|
from dagster._config.pythonic_config.resource import get_resource_type_name
|
|
29
29
|
from dagster._core.definitions.asset_selection import AssetSelection
|
|
30
30
|
from dagster._core.definitions.assets.job.asset_job import is_reserved_asset_job_name
|
|
31
|
+
from dagster._core.definitions.declarative_automation.serialized_objects import get_expanded_label
|
|
31
32
|
from dagster._core.definitions.definitions_load_context import (
|
|
32
33
|
DefinitionsLoadContext,
|
|
33
34
|
DefinitionsLoadType,
|
|
@@ -177,7 +178,9 @@ def list_definitions(
|
|
|
177
178
|
group=node.group_name,
|
|
178
179
|
kinds=sorted(list(node.kinds)),
|
|
179
180
|
description=node.description,
|
|
180
|
-
automation_condition=
|
|
181
|
+
automation_condition=" ".join(
|
|
182
|
+
get_expanded_label(node.automation_condition.get_snapshot())
|
|
183
|
+
)
|
|
181
184
|
if node.automation_condition
|
|
182
185
|
else None,
|
|
183
186
|
tags=sorted(f'"{k}"="{v}"' for k, v in node.tags.items() if _tag_filter(k)),
|
dagster/version.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "1.12.
|
|
1
|
+
__version__ = "1.12.12"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dagster
|
|
3
|
-
Version: 1.12.
|
|
3
|
+
Version: 1.12.12
|
|
4
4
|
Summary: Dagster is an orchestration platform for the development, production, and observation of data assets.
|
|
5
5
|
Author: Dagster Labs
|
|
6
6
|
Author-email: hello@dagsterlabs.com
|
|
@@ -60,8 +60,8 @@ Requires-Dist: universal_pathlib; python_version < "3.12"
|
|
|
60
60
|
Requires-Dist: universal_pathlib>=0.2.0; python_version >= "3.12"
|
|
61
61
|
Requires-Dist: rich
|
|
62
62
|
Requires-Dist: filelock
|
|
63
|
-
Requires-Dist: dagster-pipes==1.12.
|
|
64
|
-
Requires-Dist: dagster-shared==1.12.
|
|
63
|
+
Requires-Dist: dagster-pipes==1.12.12
|
|
64
|
+
Requires-Dist: dagster-shared==1.12.12
|
|
65
65
|
Requires-Dist: antlr4-python3-runtime
|
|
66
66
|
Provides-Extra: docker
|
|
67
67
|
Requires-Dist: docker; extra == "docker"
|
|
@@ -88,7 +88,7 @@ Requires-Dist: ruff==0.11.5; extra == "test"
|
|
|
88
88
|
Provides-Extra: test-components
|
|
89
89
|
Requires-Dist: tomlkit; extra == "test-components"
|
|
90
90
|
Requires-Dist: jsonschema; extra == "test-components"
|
|
91
|
-
Requires-Dist: pandas; extra == "test-components"
|
|
91
|
+
Requires-Dist: pandas<3.0.0; extra == "test-components"
|
|
92
92
|
Requires-Dist: duckdb; extra == "test-components"
|
|
93
93
|
Provides-Extra: mypy
|
|
94
94
|
Requires-Dist: mypy==1.8.0; extra == "mypy"
|
|
@@ -4,7 +4,7 @@ dagster/_annotations.py,sha256=GC7Rc8ZJZS9EpUuiCMyrtLZ5lsGGjPPkVtlmaClkt2o,1610
|
|
|
4
4
|
dagster/_builtins.py,sha256=J6A1CE28JV0itz73hCaHIKoUknb1j5B3QO5Frx_hQuU,471
|
|
5
5
|
dagster/_module_alias_map.py,sha256=KsLPXRga52UbPcEjFpOie8tvb7sGdNnikl3MUelYtVA,3349
|
|
6
6
|
dagster/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
|
|
7
|
-
dagster/version.py,sha256=
|
|
7
|
+
dagster/version.py,sha256=vKk1j8B-0kB8gelcQBK0OZVY0ogGIIA3KR4K_1iNmJQ,24
|
|
8
8
|
dagster/_api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
dagster/_api/get_server_id.py,sha256=sBjhjcHgB__iIN567QCJmTtBK6-v31VfjDsYNZIohVw,731
|
|
10
10
|
dagster/_api/list_repositories.py,sha256=fbjMobgFKzwoMN825GEgDeCx1jzUlW2vPhPDuYIg93g,3905
|
|
@@ -18,14 +18,14 @@ dagster/_api/snapshot_sensor.py,sha256=_82m5cvlMk20LthzsI9ItjInHvqs3IVUXy5rllU6p
|
|
|
18
18
|
dagster/_check/__init__.py,sha256=rAQ12QVMC3hHvL2rTbfA8-hhidu3zoP5y0ZnizqLqic,3615
|
|
19
19
|
dagster/_cli/__init__.py,sha256=JplfqlA9u-tp2fWytdiePQI4H3Wj8YCKPzj7ZLOK0z4,1389
|
|
20
20
|
dagster/_cli/api.py,sha256=Hf1qqeU6eVSsR-5kjkGVtoW1vfH4J-UUklD5AYMl1mc,32407
|
|
21
|
-
dagster/_cli/asset.py,sha256=
|
|
21
|
+
dagster/_cli/asset.py,sha256=Eyxa-AmkwanG4Kp36ZBlFCTBIpszeVGJCavBcwEEgxs,13432
|
|
22
22
|
dagster/_cli/code_server.py,sha256=9__r3D8b9OnWAuG1-L_v6rCIkJDSPo-x0sLBH5c30hE,10399
|
|
23
23
|
dagster/_cli/config_scaffolder.py,sha256=D3JYF_8u1mSgaYqrV_LHIDFoGrrP2UUNuJXZtegkGYk,2374
|
|
24
24
|
dagster/_cli/debug.py,sha256=ub8kEXDpnysokKUY_khPLYjLV-AKc4Sr4J3xIfznxJA,3400
|
|
25
25
|
dagster/_cli/definitions.py,sha256=0YR3-hbtg1cg36YK-xoYvJlEpGPZ-9G3E4885R-R_S4,5395
|
|
26
26
|
dagster/_cli/dev.py,sha256=spRTstgbAUy8raECbSfKfSCwR3VUgNwJ1L9JzrKArKQ,12399
|
|
27
27
|
dagster/_cli/instance.py,sha256=CSxsaPPRMT2TgGQw4abdLeO1kMX5oZ5lxqfdlYMrD7Q,6687
|
|
28
|
-
dagster/_cli/job.py,sha256=
|
|
28
|
+
dagster/_cli/job.py,sha256=0w-3yYtBB5altfKuutEeP_LiQfUrj1hZeqZBL1jM-DY,36078
|
|
29
29
|
dagster/_cli/project.py,sha256=OB6VAUmvvZxZwgSZkwlqEQrNQ33x9dnRuAhgbHF74PM,10330
|
|
30
30
|
dagster/_cli/proxy_server_manager.py,sha256=lJNBT3_ztC3eWfq-DMCZiBcFDZmBICurpGMcz6pPxcs,5938
|
|
31
31
|
dagster/_cli/run.py,sha256=WQu6eDJ4cjQr6htIoYwm1A-OAPci-8OMEWHfY_-s1ck,5751
|
|
@@ -60,7 +60,7 @@ dagster/_config/pythonic_config/typing_utils.py,sha256=iph3bfIu2-ANo3pfuQZKOB3xj
|
|
|
60
60
|
dagster/_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
61
61
|
dagster/_core/assets.py,sha256=WJl_wtNmZPD0yPPsIPTWvaVhUVt8sE_EAts3dmE2g-s,983
|
|
62
62
|
dagster/_core/captured_log_api.py,sha256=CKXR2vfHoKQhJTXDKCTk7OqQjbwGlWb7F5BvXdSFclA,1711
|
|
63
|
-
dagster/_core/code_pointer.py,sha256=
|
|
63
|
+
dagster/_core/code_pointer.py,sha256=f8fu_NoBdu2zpKZYirEiR9pJIsYZPkqH1kPW6KhniM4,12564
|
|
64
64
|
dagster/_core/debug.py,sha256=_hzIFHGR58jTkFY84Awcxdw9WnOUKvlM7F20-Pk3kkQ,2301
|
|
65
65
|
dagster/_core/decorator_utils.py,sha256=X3c0O7XjBHho0ccbkKi7lVqS-zv2sAaBKOrlmcGZoZc,9724
|
|
66
66
|
dagster/_core/errors.py,sha256=UTfu5kdq3XcDxMn0wF4yNBoK5RX-TkA1OQ3y6R0U-40,26360
|
|
@@ -73,7 +73,7 @@ dagster/_core/nux.py,sha256=z5AmDl_zp572aIQTciHDM-PdSLhWwIrTzEHcEem6mHs,1029
|
|
|
73
73
|
dagster/_core/op_concurrency_limits_counter.py,sha256=tJoAiVBo9zLfIbT1fFaEeQr0hTqN9SZQYJqNHBaZ6cA,11441
|
|
74
74
|
dagster/_core/origin.py,sha256=ZJ9GO2_-tLb8Q9wXLShhPEK6NPRHJ5r6TZoDLNUk1xg,3641
|
|
75
75
|
dagster/_core/remote_origin.py,sha256=9jR8LU-830gMx_j7nagvOgE7D8nitadDjEHfIt6GIXo,19335
|
|
76
|
-
dagster/_core/telemetry.py,sha256=
|
|
76
|
+
dagster/_core/telemetry.py,sha256=QDuLXO4mzwkzW_KqPqr7-xsU-nvJFApkh9HgwaADgeM,20179
|
|
77
77
|
dagster/_core/telemetry_upload.py,sha256=N5LPfAuGkAFr54V049W4KvXg2x4Zt5ecU34p5_HfrZY,4847
|
|
78
78
|
dagster/_core/test_utils.py,sha256=xqnrQ5CLKSh5bmeLEXPCVoNoX0I3gyhy3VAnfvQ2PkE,26467
|
|
79
79
|
dagster/_core/utility_ops.py,sha256=KtVCu9FquKD4AfXBHrRTeWSuRrz1kHta9ABRMC7ubTU,1468
|
|
@@ -82,7 +82,7 @@ dagster/_core/asset_graph_view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
|
|
|
82
82
|
dagster/_core/asset_graph_view/asset_graph_view.py,sha256=LlUQUvjNupyNdnAXgEiBgqrSWbw0B2gOy9JqEJ1EZMc,42021
|
|
83
83
|
dagster/_core/asset_graph_view/bfs.py,sha256=x1HRAiT7fN87ZfL4hdlEBNHvScXwGxNa1i4dHzR9gvg,8157
|
|
84
84
|
dagster/_core/asset_graph_view/entity_subset.py,sha256=VlvH2kR9Ov-eB4nOjyObd_Mq1WHb2YiG1St6bzlFBuc,5596
|
|
85
|
-
dagster/_core/asset_graph_view/serializable_entity_subset.py,sha256=
|
|
85
|
+
dagster/_core/asset_graph_view/serializable_entity_subset.py,sha256=jpFtcO4g-ZIERqStd09fcrCREOTHkZ9jOxj1dwivvG0,7746
|
|
86
86
|
dagster/_core/container_context/__init__.py,sha256=YxylRIFRSQ5yYetyE6C09MyDBtk19QtUsUUkJd4mRas,215
|
|
87
87
|
dagster/_core/container_context/config.py,sha256=wtFTDLs1OMMqiOx4CbUEg7gP7XPzDdAB-P-7dp64PG0,1301
|
|
88
88
|
dagster/_core/definitions/__init__.py,sha256=XF5z5xyFd5X9-P2KnSOQmpKMMo8klCwoolz4Cu8pXkk,9143
|
|
@@ -208,7 +208,7 @@ dagster/_core/definitions/declarative_automation/automation_condition.py,sha256=
|
|
|
208
208
|
dagster/_core/definitions/declarative_automation/automation_condition_evaluator.py,sha256=2KXtlpu0qVSxy3tqzHCGTY4Q-QlQfIuzF4NpzLxk6E4,9622
|
|
209
209
|
dagster/_core/definitions/declarative_automation/automation_condition_tester.py,sha256=QqxG9eGheEKHEt_WjGWjSV1Mz0t5bDMEVhZaH506YiE,7115
|
|
210
210
|
dagster/_core/definitions/declarative_automation/automation_context.py,sha256=-wnFXPRwCCiLOz7FYBUdoLhQmPCe9OY8pH5kE9tImlc,11456
|
|
211
|
-
dagster/_core/definitions/declarative_automation/serialized_objects.py,sha256=
|
|
211
|
+
dagster/_core/definitions/declarative_automation/serialized_objects.py,sha256=L5eGF2j3R1uK_TLsReceeEHAuNDypfjt0SCKdkrkfyo,13861
|
|
212
212
|
dagster/_core/definitions/declarative_automation/utils.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
213
213
|
dagster/_core/definitions/declarative_automation/legacy/__init__.py,sha256=8ftenCz41M-t8ykfZZW7kNBQuWkShsq7IGk3nujfRF0,123
|
|
214
214
|
dagster/_core/definitions/declarative_automation/legacy/legacy_context.py,sha256=zRD0MMTTud6U4arfyaS5xcLFfF1AW67ON-Dt5idqMWY,18188
|
|
@@ -228,7 +228,7 @@ dagster/_core/definitions/declarative_automation/operators/since_operator.py,sha
|
|
|
228
228
|
dagster/_core/definitions/declarative_automation/operators/utils.py,sha256=cg3F0GbO4DacupGIg2JTjCRKs9vhp7ro2-A3QQsUTRc,1322
|
|
229
229
|
dagster/_core/definitions/decorators/__init__.py,sha256=nZab7hwK6UgnRh5EvP4H6kf75XzWptWN7XRN9cQv39M,908
|
|
230
230
|
dagster/_core/definitions/decorators/asset_check_decorator.py,sha256=xThUiK6Tmi90ZwFyMH6RLnAmIRJRI8npWe6d1Eyj3mQ,19051
|
|
231
|
-
dagster/_core/definitions/decorators/asset_decorator.py,sha256=
|
|
231
|
+
dagster/_core/definitions/decorators/asset_decorator.py,sha256=eNGi67HGmEYF4YOABRVQZP2t-F-EsdIxZLvXWkCDgCM,54736
|
|
232
232
|
dagster/_core/definitions/decorators/config_mapping_decorator.py,sha256=-0I74xAEPgvinT-ySF8hR9X2NUImDIz1G6yGtGONJTA,4953
|
|
233
233
|
dagster/_core/definitions/decorators/decorator_assets_definition_builder.py,sha256=KrcLTzZXjlN03UC-A3lXb_4H7G27G9CpYSKEDJats-w,30882
|
|
234
234
|
dagster/_core/definitions/decorators/graph_decorator.py,sha256=iGSSGWxn4cpJWTkId-DTbFmm6qf80fUT7I8h_zsxZwI,9278
|
|
@@ -323,7 +323,7 @@ dagster/_core/execution/job_execution_result.py,sha256=wY5cFQp3AmCtfGgVtOIoXD2p9
|
|
|
323
323
|
dagster/_core/execution/memoization.py,sha256=1z2wYAkjQy7nPJfvzxMqQInmjMagpuRfMh6aEUpLUwc,998
|
|
324
324
|
dagster/_core/execution/resources_init.py,sha256=t4Y7CJp4aGobSe-777WUSXuDJ6iDNoG8_Vkys5XTbNs,19689
|
|
325
325
|
dagster/_core/execution/retries.py,sha256=LgwLSE-ZqUZYkzWfARmtHz1DYMZcfiaRh2Uc6Mhe8wY,6363
|
|
326
|
-
dagster/_core/execution/run_cancellation_thread.py,sha256=
|
|
326
|
+
dagster/_core/execution/run_cancellation_thread.py,sha256=hU8CubHQ5C49QCPQucfQc5_Vey3nXYX8iSuAiSvm1-Y,1581
|
|
327
327
|
dagster/_core/execution/run_metrics_thread.py,sha256=QnAQ4RMDR6oayKdujsroAF89vUQI96_77K-DOGOJMJU,11585
|
|
328
328
|
dagster/_core/execution/stats.py,sha256=2SSwpc_oon9MeYEAXGDOa-r1tsxMy0LVgNwtH1V6ef4,14253
|
|
329
329
|
dagster/_core/execution/step_dependency_config.py,sha256=OncskwLvAp1ODVrkrPhvz1sHPCmJjwef_bJyMNX2-Gg,924
|
|
@@ -642,7 +642,7 @@ dagster/_daemon/run_coordinator/__init__.py,sha256=bGB6eE5Qujr9tpPaXuHXbzioywsc9
|
|
|
642
642
|
dagster/_daemon/run_coordinator/queued_run_coordinator_daemon.py,sha256=qu2NQCFJ7YIFydb8zyfpeyOwZZXdaK5Sat3rP5O94Wc,20211
|
|
643
643
|
dagster/_experimental/__init__.py,sha256=neUdP3MLSFZjVTpc_mraGEkrt-SEAiYJGeX44JzyMlk,300
|
|
644
644
|
dagster/_generate/__init__.py,sha256=RctCCaSawF_t6F2XkN48ytPX-VqRjAEHC09d6P3Of88,233
|
|
645
|
-
dagster/_generate/download.py,sha256=
|
|
645
|
+
dagster/_generate/download.py,sha256=ddHeIPuzryFVxjGWKCmSSHlje-xuwekdeohXOEd7fH8,3370
|
|
646
646
|
dagster/_generate/generate.py,sha256=vNOP3n9p8QOwYP-2V7Su4tA08YxgmlSrj0tfA24ByFo,1422
|
|
647
647
|
dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/README.md.jinja,sha256=pRETiGTZ6_W87mw2x3qB_TU-J1i3nGpWQWZh0PnXdOk,1742
|
|
648
648
|
dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/pyproject.toml.jinja,sha256=-Xu-80ZRhpWX4g7x6Fhmmm6iEXzB4RP8oUn9AJQ8qI4,546
|
|
@@ -801,7 +801,7 @@ dagster/components/lib/sql_component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
|
|
|
801
801
|
dagster/components/lib/sql_component/sql_client.py,sha256=iNQOkd4wZs1Vv6mo0vG5UhhUeIRxS2xI6F5G8C3ok8c,311
|
|
802
802
|
dagster/components/lib/sql_component/sql_component.py,sha256=hfphuHdWq02-CcVqIX1Jb6Q0xj2sDxpnOKNCjgfK1dk,3897
|
|
803
803
|
dagster/components/list/__init__.py,sha256=sgkMP-KLNI2C9XFJJlvj5ar4bZZHKu6lomriGXGCMRM,183
|
|
804
|
-
dagster/components/list/list.py,sha256=
|
|
804
|
+
dagster/components/list/list.py,sha256=2-ibqpD-dbcfjkaf217baX5QmwQCDvpQdlRzwCq1fvg,11701
|
|
805
805
|
dagster/components/resolved/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
806
806
|
dagster/components/resolved/base.py,sha256=ybv1WkQChlPBKHN7_VXIGtAohMV2WAnr2FOxyFWyVB0,20150
|
|
807
807
|
dagster/components/resolved/context.py,sha256=abYHWnnVBT1O6Vl0GwkhxEJtadmdHVYlMEDA9NyBjiQ,8547
|
|
@@ -824,9 +824,9 @@ dagster/components/utils/translation.py,sha256=gKal6ZdMbYImiBLZVa9E2pz4690j8Hukf
|
|
|
824
824
|
dagster/deprecated/__init__.py,sha256=fkuCwd_79EmS-Voox0YlWEHWxZwQ0ZM_V0viwxw5isw,127
|
|
825
825
|
dagster/preview/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
826
826
|
dagster/preview/freshness/__init__.py,sha256=zq0UU-3mnxycgJDtAZ9DFWiBh4eXxKCaKbeuRmUl3_Y,276
|
|
827
|
-
dagster-1.12.
|
|
828
|
-
dagster-1.12.
|
|
829
|
-
dagster-1.12.
|
|
830
|
-
dagster-1.12.
|
|
831
|
-
dagster-1.12.
|
|
832
|
-
dagster-1.12.
|
|
827
|
+
dagster-1.12.12.dist-info/licenses/LICENSE,sha256=4lsMW-RCvfVD4_F57wrmpe3vX1xwUk_OAKKmV_XT7Z0,11348
|
|
828
|
+
dagster-1.12.12.dist-info/METADATA,sha256=rfD8noucfFxbPl1zFT2ScLl6dyXV5O1S_rbBvI-EPXc,12224
|
|
829
|
+
dagster-1.12.12.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
830
|
+
dagster-1.12.12.dist-info/entry_points.txt,sha256=D4W0jf1lM8zq82j3DJd9JkZEmHdFz5gkz8ddRzOEzpc,139
|
|
831
|
+
dagster-1.12.12.dist-info/top_level.txt,sha256=Gx3NqlMQh6AsfIZaJJXEfep5yh-e9pUxkzOlUV3s6CM,8
|
|
832
|
+
dagster-1.12.12.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|