dagster 1.12.0__tar.gz → 1.12.1__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.
Files changed (837) hide show
  1. {dagster-1.12.0/dagster.egg-info → dagster-1.12.1}/PKG-INFO +3 -3
  2. {dagster-1.12.0 → dagster-1.12.1}/dagster/__init__.py +1 -0
  3. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/asset_graph_view/asset_graph_view.py +21 -0
  4. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/assets_definition.py +3 -3
  5. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/automation_condition.py +31 -0
  6. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operands/__init__.py +1 -0
  7. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operands/operands.py +16 -0
  8. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/freshness.py +68 -28
  9. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/job_definition.py +23 -31
  10. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/time_window.py +14 -3
  11. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/utils/time_window.py +8 -0
  12. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/code_location.py +13 -7
  13. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/dagster_run.py +0 -9
  14. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/context.py +9 -4
  15. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/sql_component/sql_component.py +3 -4
  16. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/testing/utils.py +27 -0
  17. dagster-1.12.1/dagster/version.py +1 -0
  18. {dagster-1.12.0 → dagster-1.12.1/dagster.egg-info}/PKG-INFO +3 -3
  19. {dagster-1.12.0 → dagster-1.12.1}/dagster.egg-info/requires.txt +2 -2
  20. {dagster-1.12.0 → dagster-1.12.1}/setup.py +2 -2
  21. dagster-1.12.0/dagster/version.py +0 -1
  22. {dagster-1.12.0 → dagster-1.12.1}/COPYING +0 -0
  23. {dagster-1.12.0 → dagster-1.12.1}/LICENSE +0 -0
  24. {dagster-1.12.0 → dagster-1.12.1}/MANIFEST.in +0 -0
  25. {dagster-1.12.0 → dagster-1.12.1}/README.md +0 -0
  26. {dagster-1.12.0 → dagster-1.12.1}/dagster/__main__.py +0 -0
  27. {dagster-1.12.0 → dagster-1.12.1}/dagster/_annotations.py +0 -0
  28. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/__init__.py +0 -0
  29. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/get_server_id.py +0 -0
  30. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/list_repositories.py +0 -0
  31. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/notebook_data.py +0 -0
  32. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_execution_plan.py +0 -0
  33. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_job.py +0 -0
  34. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_partition.py +0 -0
  35. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_repository.py +0 -0
  36. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_schedule.py +0 -0
  37. {dagster-1.12.0 → dagster-1.12.1}/dagster/_api/snapshot_sensor.py +0 -0
  38. {dagster-1.12.0 → dagster-1.12.1}/dagster/_builtins.py +0 -0
  39. {dagster-1.12.0 → dagster-1.12.1}/dagster/_check/__init__.py +0 -0
  40. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/__init__.py +0 -0
  41. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/api.py +0 -0
  42. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/asset.py +0 -0
  43. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/code_server.py +0 -0
  44. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/config_scaffolder.py +0 -0
  45. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/debug.py +0 -0
  46. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/definitions.py +0 -0
  47. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/dev.py +0 -0
  48. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/instance.py +0 -0
  49. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/job.py +0 -0
  50. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/project.py +0 -0
  51. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/proxy_server_manager.py +0 -0
  52. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/run.py +0 -0
  53. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/schedule.py +0 -0
  54. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/sensor.py +0 -0
  55. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/utils.py +0 -0
  56. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/workspace/__init__.py +0 -0
  57. {dagster-1.12.0 → dagster-1.12.1}/dagster/_cli/workspace/cli_target.py +0 -0
  58. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/__init__.py +0 -0
  59. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/config_schema.py +0 -0
  60. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/config_type.py +0 -0
  61. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/errors.py +0 -0
  62. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/evaluate_value_result.py +0 -0
  63. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/field.py +0 -0
  64. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/field_utils.py +0 -0
  65. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/post_process.py +0 -0
  66. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/primitive_mapping.py +0 -0
  67. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/__init__.py +0 -0
  68. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/attach_other_object_to_context.py +0 -0
  69. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/config.py +0 -0
  70. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/conversion_utils.py +0 -0
  71. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/io_manager.py +0 -0
  72. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/resource.py +0 -0
  73. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/type_check_utils.py +0 -0
  74. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/pythonic_config/typing_utils.py +0 -0
  75. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/snap.py +0 -0
  76. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/source.py +0 -0
  77. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/stack.py +0 -0
  78. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/traversal_context.py +0 -0
  79. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/type_printer.py +0 -0
  80. {dagster-1.12.0 → dagster-1.12.1}/dagster/_config/validate.py +0 -0
  81. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/__init__.py +0 -0
  82. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/asset_graph_view/__init__.py +0 -0
  83. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/asset_graph_view/bfs.py +0 -0
  84. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/asset_graph_view/entity_subset.py +0 -0
  85. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/asset_graph_view/serializable_entity_subset.py +0 -0
  86. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/assets.py +0 -0
  87. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/captured_log_api.py +0 -0
  88. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/code_pointer.py +0 -0
  89. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/container_context/__init__.py +0 -0
  90. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/container_context/config.py +0 -0
  91. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/debug.py +0 -0
  92. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/decorator_utils.py +0 -0
  93. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/__init__.py +0 -0
  94. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/README.md +0 -0
  95. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/__init__.py +0 -0
  96. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/antlr_asset_selection.py +0 -0
  97. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/fix_imports.py +0 -0
  98. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/generated/AssetSelectionLexer.py +0 -0
  99. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/generated/AssetSelectionListener.py +0 -0
  100. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/generated/AssetSelectionParser.py +0 -0
  101. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/generated/AssetSelectionVisitor.py +0 -0
  102. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/antlr_asset_selection/generated/__init__.py +0 -0
  103. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/__init__.py +0 -0
  104. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_evaluation.py +0 -0
  105. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/__init__.py +0 -0
  106. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/freshness_checks/__init__.py +0 -0
  107. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/freshness_checks/last_update.py +0 -0
  108. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/freshness_checks/sensor.py +0 -0
  109. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/freshness_checks/time_partition.py +0 -0
  110. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/metadata_bounds_checks.py +0 -0
  111. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/schema_change_checks.py +0 -0
  112. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_factories/utils.py +0 -0
  113. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_result.py +0 -0
  114. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_check_spec.py +0 -0
  115. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_checks/asset_checks_definition.py +0 -0
  116. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_daemon_cursor.py +0 -0
  117. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_health/__init__.py +0 -0
  118. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_health/asset_check_health.py +0 -0
  119. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_health/asset_freshness_health.py +0 -0
  120. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_health/asset_health.py +0 -0
  121. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_health/asset_materialization_health.py +0 -0
  122. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_key.py +0 -0
  123. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_selection.py +0 -0
  124. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/asset_sensor_definition.py +0 -0
  125. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/__init__.py +0 -0
  126. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/__init__.py +0 -0
  127. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/asset_dep.py +0 -0
  128. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/asset_graph_computation.py +0 -0
  129. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/asset_spec.py +0 -0
  130. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/definition/cacheable_assets_definition.py +0 -0
  131. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/__init__.py +0 -0
  132. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/asset_graph.py +0 -0
  133. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/asset_graph_differ.py +0 -0
  134. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/asset_graph_subset.py +0 -0
  135. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/base_asset_graph.py +0 -0
  136. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/graph/remote_asset_graph.py +0 -0
  137. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/job/__init__.py +0 -0
  138. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/job/asset_in.py +0 -0
  139. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/job/asset_job.py +0 -0
  140. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/job/asset_layer.py +0 -0
  141. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/assets/job/asset_out.py +0 -0
  142. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/auto_materialize_policy.py +0 -0
  143. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/auto_materialize_rule.py +0 -0
  144. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/auto_materialize_rule_evaluation.py +0 -0
  145. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/auto_materialize_rule_impls.py +0 -0
  146. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/automation_condition_sensor_definition.py +0 -0
  147. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/automation_tick_evaluation_context.py +0 -0
  148. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/backfill_policy.py +0 -0
  149. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/composition.py +0 -0
  150. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/config.py +0 -0
  151. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/configurable.py +0 -0
  152. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/data_time.py +0 -0
  153. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/data_version.py +0 -0
  154. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/README.md +0 -0
  155. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/__init__.py +0 -0
  156. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/automation_condition_evaluator.py +0 -0
  157. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/automation_condition_tester.py +0 -0
  158. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/automation_context.py +0 -0
  159. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/legacy/__init__.py +0 -0
  160. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/legacy/legacy_context.py +0 -0
  161. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/legacy/rule_condition.py +0 -0
  162. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/legacy/valid_asset_subset.py +0 -0
  163. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operands/run_operands.py +0 -0
  164. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operands/subset_automation_condition.py +0 -0
  165. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/__init__.py +0 -0
  166. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/any_downstream_conditions_operator.py +0 -0
  167. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/boolean_operators.py +0 -0
  168. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/check_operators.py +0 -0
  169. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/dep_operators.py +0 -0
  170. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/newly_true_operator.py +0 -0
  171. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/since_operator.py +0 -0
  172. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/operators/utils.py +0 -0
  173. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/serialized_objects.py +0 -0
  174. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/declarative_automation/utils.py +0 -0
  175. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/__init__.py +0 -0
  176. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/asset_check_decorator.py +0 -0
  177. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/asset_decorator.py +0 -0
  178. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/config_mapping_decorator.py +0 -0
  179. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/decorator_assets_definition_builder.py +0 -0
  180. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/graph_decorator.py +0 -0
  181. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/hook_decorator.py +0 -0
  182. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/job_decorator.py +0 -0
  183. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/op_decorator.py +0 -0
  184. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/repository_decorator.py +0 -0
  185. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/schedule_decorator.py +0 -0
  186. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/sensor_decorator.py +0 -0
  187. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/decorators/source_asset_decorator.py +0 -0
  188. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/definition_config_schema.py +0 -0
  189. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/definitions_class.py +0 -0
  190. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/definitions_load_context.py +0 -0
  191. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/dependency.py +0 -0
  192. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/dynamic_partitions_request.py +0 -0
  193. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/events.py +0 -0
  194. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/executor_definition.py +0 -0
  195. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/external_asset.py +0 -0
  196. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/freshness_based_auto_materialize.py +0 -0
  197. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/freshness_evaluator.py +0 -0
  198. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/freshness_policy.py +0 -0
  199. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/graph_definition.py +0 -0
  200. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/hook_definition.py +0 -0
  201. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/hook_invocation.py +0 -0
  202. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/inference.py +0 -0
  203. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/input.py +0 -0
  204. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/instigation_logger.py +0 -0
  205. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/job_base.py +0 -0
  206. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/logger_definition.py +0 -0
  207. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/logger_invocation.py +0 -0
  208. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/materialize.py +0 -0
  209. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/__init__.py +0 -0
  210. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/external_metadata.py +0 -0
  211. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/metadata_set.py +0 -0
  212. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/metadata_value.py +0 -0
  213. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/source_code.py +0 -0
  214. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/metadata/table.py +0 -0
  215. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/__init__.py +0 -0
  216. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/load_asset_checks_from_modules.py +0 -0
  217. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/load_assets_from_modules.py +0 -0
  218. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/load_defs_from_module.py +0 -0
  219. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/object_list.py +0 -0
  220. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/module_loaders/utils.py +0 -0
  221. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/multi_asset_sensor_definition.py +0 -0
  222. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/no_step_launcher.py +0 -0
  223. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/node_container.py +0 -0
  224. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/node_definition.py +0 -0
  225. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/observe.py +0 -0
  226. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/op_definition.py +0 -0
  227. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/op_invocation.py +0 -0
  228. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/op_selection.py +0 -0
  229. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/output.py +0 -0
  230. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/__init__.py +0 -0
  231. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/context.py +0 -0
  232. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/__init__.py +0 -0
  233. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/dynamic.py +0 -0
  234. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/multi.py +0 -0
  235. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/partitions_definition.py +0 -0
  236. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/static.py +0 -0
  237. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/time_window.py +0 -0
  238. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/definition/time_window_subclasses.py +0 -0
  239. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/__init__.py +0 -0
  240. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/all.py +0 -0
  241. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/identity.py +0 -0
  242. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/last.py +0 -0
  243. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/multi/__init__.py +0 -0
  244. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/multi/base.py +0 -0
  245. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/multi/multi_to_multi.py +0 -0
  246. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/multi/multi_to_single.py +0 -0
  247. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/partition_mapping.py +0 -0
  248. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/specific_partitions.py +0 -0
  249. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/static.py +0 -0
  250. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/mapping/time_window.py +0 -0
  251. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partition.py +0 -0
  252. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partition_key_range.py +0 -0
  253. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_config/__init__.py +0 -0
  254. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_config/dynamic.py +0 -0
  255. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_config/partitioned_config.py +0 -0
  256. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_config/static.py +0 -0
  257. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_config/time_window.py +0 -0
  258. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/partitioned_schedule.py +0 -0
  259. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/schedule_type.py +0 -0
  260. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/snap/__init__.py +0 -0
  261. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/snap/snap.py +0 -0
  262. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/__init__.py +0 -0
  263. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/all.py +0 -0
  264. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/default.py +0 -0
  265. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/key_ranges.py +0 -0
  266. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/partitions_subset.py +0 -0
  267. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/subset/serialized.py +0 -0
  268. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/utils/__init__.py +0 -0
  269. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/utils/base.py +0 -0
  270. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/utils/mapping.py +0 -0
  271. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/partitions/utils/multi.py +0 -0
  272. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/policy.py +0 -0
  273. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/reconstruct.py +0 -0
  274. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/__init__.py +0 -0
  275. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/caching_index.py +0 -0
  276. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/repository_data.py +0 -0
  277. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/repository_data_builder.py +0 -0
  278. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/repository_definition.py +0 -0
  279. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/repository_definition/valid_definitions.py +0 -0
  280. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/resolved_asset_deps.py +0 -0
  281. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/resource_annotation.py +0 -0
  282. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/resource_definition.py +0 -0
  283. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/resource_invocation.py +0 -0
  284. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/resource_requirement.py +0 -0
  285. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/result.py +0 -0
  286. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/run_config.py +0 -0
  287. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/run_config_schema.py +0 -0
  288. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/run_request.py +0 -0
  289. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/run_status_sensor_definition.py +0 -0
  290. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/schedule_definition.py +0 -0
  291. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/scoped_resources_builder.py +0 -0
  292. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/selector.py +0 -0
  293. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/sensor_definition.py +0 -0
  294. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/source_asset.py +0 -0
  295. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/step_launcher.py +0 -0
  296. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/tags/__init__.py +0 -0
  297. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/tags/tag_set.py +0 -0
  298. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/target.py +0 -0
  299. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/temporal_context.py +0 -0
  300. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/timestamp.py +0 -0
  301. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/unresolved_asset_job_definition.py +0 -0
  302. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/definitions/utils.py +0 -0
  303. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/errors.py +0 -0
  304. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/event_api.py +0 -0
  305. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/events/__init__.py +0 -0
  306. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/events/log.py +0 -0
  307. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/events/utils.py +0 -0
  308. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/__init__.py +0 -0
  309. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/api.py +0 -0
  310. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/asset_backfill.py +0 -0
  311. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/backfill.py +0 -0
  312. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/build_resources.py +0 -0
  313. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/bulk_actions.py +0 -0
  314. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/compute_logs.py +0 -0
  315. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/__init__.py +0 -0
  316. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/asset_check_execution_context.py +0 -0
  317. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/asset_execution_context.py +0 -0
  318. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/compute.py +0 -0
  319. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/data_version_cache.py +0 -0
  320. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/hook.py +0 -0
  321. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/init.py +0 -0
  322. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/input.py +0 -0
  323. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/invocation.py +0 -0
  324. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/logger.py +0 -0
  325. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/metadata_logging.py +0 -0
  326. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/op_execution_context.py +0 -0
  327. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/output.py +0 -0
  328. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context/system.py +0 -0
  329. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/context_creation_job.py +0 -0
  330. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/execute_in_process.py +0 -0
  331. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/execute_in_process_result.py +0 -0
  332. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/execution_result.py +0 -0
  333. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/host_mode.py +0 -0
  334. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/job_backfill.py +0 -0
  335. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/job_execution_result.py +0 -0
  336. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/memoization.py +0 -0
  337. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/__init__.py +0 -0
  338. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/active.py +0 -0
  339. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/compute.py +0 -0
  340. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/compute_generator.py +0 -0
  341. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/execute_plan.py +0 -0
  342. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/execute_step.py +0 -0
  343. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/external_step.py +0 -0
  344. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/handle.py +0 -0
  345. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/inputs.py +0 -0
  346. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/instance_concurrency_context.py +0 -0
  347. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/local_external_step_main.py +0 -0
  348. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/objects.py +0 -0
  349. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/outputs.py +0 -0
  350. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/plan.py +0 -0
  351. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/resume_retry.py +0 -0
  352. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/state.py +0 -0
  353. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/step.py +0 -0
  354. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/plan/utils.py +0 -0
  355. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/resources_init.py +0 -0
  356. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/retries.py +0 -0
  357. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/run_cancellation_thread.py +0 -0
  358. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/run_metrics_thread.py +0 -0
  359. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/scripts/__init__.py +0 -0
  360. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/scripts/poll_compute_logs.py +0 -0
  361. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/scripts/watch_orphans.py +0 -0
  362. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/stats.py +0 -0
  363. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/step_dependency_config.py +0 -0
  364. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/submit_asset_runs.py +0 -0
  365. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/tags.py +0 -0
  366. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/telemetry.py +0 -0
  367. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/validate_run_config.py +0 -0
  368. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/execution/with_resources.py +0 -0
  369. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/__init__.py +0 -0
  370. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/base.py +0 -0
  371. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/child_process_executor.py +0 -0
  372. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/in_process.py +0 -0
  373. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/init.py +0 -0
  374. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/multiprocess.py +0 -0
  375. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/step_delegating/__init__.py +0 -0
  376. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/step_delegating/step_delegating_executor.py +0 -0
  377. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/step_delegating/step_handler/__init__.py +0 -0
  378. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/executor/step_delegating/step_handler/base.py +0 -0
  379. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/__init__.py +0 -0
  380. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/config.py +0 -0
  381. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/events/__init__.py +0 -0
  382. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/factory.py +0 -0
  383. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/instance.py +0 -0
  384. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/__init__.py +0 -0
  385. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/asset_methods.py +0 -0
  386. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/daemon_methods.py +0 -0
  387. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/event_methods.py +0 -0
  388. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/run_launcher_methods.py +0 -0
  389. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/run_methods.py +0 -0
  390. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/scheduling_methods.py +0 -0
  391. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/settings_methods.py +0 -0
  392. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/methods/storage_methods.py +0 -0
  393. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/ref.py +0 -0
  394. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/runs/__init__.py +0 -0
  395. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/runs/run_domain.py +0 -0
  396. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/storage/__init__.py +0 -0
  397. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/types.py +0 -0
  398. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance/utils.py +0 -0
  399. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/instance_for_test.py +0 -0
  400. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/launcher/__init__.py +0 -0
  401. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/launcher/base.py +0 -0
  402. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/launcher/default_run_launcher.py +0 -0
  403. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/launcher/sync_in_memory_run_launcher.py +0 -0
  404. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/libraries.py +0 -0
  405. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/loader.py +0 -0
  406. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/log_manager.py +0 -0
  407. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/nux.py +0 -0
  408. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/op_concurrency_limits_counter.py +0 -0
  409. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/origin.py +0 -0
  410. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/__init__.py +0 -0
  411. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/client.py +0 -0
  412. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/context.py +0 -0
  413. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/merge_streams.py +0 -0
  414. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/subprocess.py +0 -0
  415. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/pipes/utils.py +0 -0
  416. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_origin.py +0 -0
  417. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/__init__.py +0 -0
  418. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/external.py +0 -0
  419. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/external_data.py +0 -0
  420. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/feature_flags.py +0 -0
  421. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/grpc_server_registry.py +0 -0
  422. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/grpc_server_state_subscriber.py +0 -0
  423. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/handle.py +0 -0
  424. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/historical.py +0 -0
  425. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/job_index.py +0 -0
  426. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/remote_representation/represented.py +0 -0
  427. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/run_coordinator/__init__.py +0 -0
  428. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/run_coordinator/base.py +0 -0
  429. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/run_coordinator/default_run_coordinator.py +0 -0
  430. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/run_coordinator/queued_run_coordinator.py +0 -0
  431. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/run_coordinator/sync_in_memory_run_coordinator.py +0 -0
  432. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/scheduler/__init__.py +0 -0
  433. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/scheduler/execution.py +0 -0
  434. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/scheduler/instigation.py +0 -0
  435. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/scheduler/scheduler.py +0 -0
  436. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/secrets/__init__.py +0 -0
  437. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/secrets/env_file.py +0 -0
  438. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/secrets/loader.py +0 -0
  439. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/selector/__init__.py +0 -0
  440. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/selector/subset_selector.py +0 -0
  441. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/__init__.py +0 -0
  442. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/config_types.py +0 -0
  443. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/dagster_types.py +0 -0
  444. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/dep_snapshot.py +0 -0
  445. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/execution_plan_snapshot.py +0 -0
  446. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/job_snapshot.py +0 -0
  447. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/mode.py +0 -0
  448. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/node.py +0 -0
  449. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/snap/snap_to_yaml.py +0 -0
  450. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/DEVELOPING.md +0 -0
  451. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/__init__.py +0 -0
  452. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/README.md +0 -0
  453. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/env.py +0 -0
  454. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/script.py.mako +0 -0
  455. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/001_initial_1.py +0 -0
  456. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/001_initial_schedule.py +0 -0
  457. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/002_cascade_run_deletion_postgres.py +0 -0
  458. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/002_cascade_run_deletion_sqlite.py +0 -0
  459. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/003_add_step_key_pipeline_name_postgres.py +0 -0
  460. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/003_add_step_key_pipeline_name_sqlite.py +0 -0
  461. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/004_add_snapshots_to_run_storage.py +0 -0
  462. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/005_add_asset_key_postgres.py +0 -0
  463. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/005_add_asset_key_sqlite.py +0 -0
  464. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/006_scheduler_update_postgres.py +0 -0
  465. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/007_create_run_id_idx_postgres.py +0 -0
  466. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/007_create_run_id_idx_sqlite.py +0 -0
  467. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/008_add_run_tags_index_postgres.py +0 -0
  468. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/008_add_run_tags_index_sqlite.py +0 -0
  469. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/009_add_partition_column_postgres.py +0 -0
  470. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/009_add_partition_column_sqlite.py +0 -0
  471. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/010_add_run_partition_columns_postgres.py +0 -0
  472. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/010_add_run_partition_columns_sqlite.py +0 -0
  473. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/011_wipe_schedules_table_for_0_10_0_postgres.py +0 -0
  474. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/011_wipe_schedules_table_for_0_10_0_sqlite_1.py +0 -0
  475. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/011_wipe_schedules_table_for_0_10_0_sqlite_2.py +0 -0
  476. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/012_0_10_0_create_new_run_tables_postgres.py +0 -0
  477. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/012_0_10_0_create_new_run_tables_sqlite.py +0 -0
  478. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/013_0_10_0_create_new_event_log_tables_postgres.py +0 -0
  479. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/013_0_10_0_create_new_event_log_tables_sqlite.py +0 -0
  480. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/014_0_10_0_create_new_schedule_tables_postgres.py +0 -0
  481. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/014_0_10_0_create_new_schedule_tables_sqlite.py +0 -0
  482. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/015_change_varchar_to_text_postgres.py +0 -0
  483. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/015_change_varchar_to_text_sqlite.py +0 -0
  484. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/016_add_bulk_actions_table_postgres.py +0 -0
  485. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/016_add_bulk_actions_table_sqlite.py +0 -0
  486. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/017_add_run_status_index_postgres.py +0 -0
  487. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/017_add_run_status_index_sqlite.py +0 -0
  488. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/017_initial_mysql.py +0 -0
  489. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/018_add_asset_tags_mysql.py +0 -0
  490. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/018_add_asset_tags_postgres.py +0 -0
  491. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/018_add_asset_tags_sqlite.py +0 -0
  492. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/019_0_11_0_db_text_to_db_string_unique_postgres.py +0 -0
  493. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/019_0_11_0_db_text_to_db_string_unique_sqlite.py +0 -0
  494. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/020_add_column_asset_body_mysql.py +0 -0
  495. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/020_add_column_asset_body_postgres.py +0 -0
  496. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/020_add_column_asset_body_sqlite.py +0 -0
  497. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/021_add_column_mode_mysql.py +0 -0
  498. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/021_add_column_mode_postgres.py +0 -0
  499. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/021_add_column_mode_sqlite.py +0 -0
  500. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/022_extract_asset_keys_index_columns_mysql.py +0 -0
  501. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/022_extract_asset_keys_index_columns_postgres.py +0 -0
  502. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/022_extract_asset_keys_index_columns_sqlite.py +0 -0
  503. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/023_add_event_log_event_type_idx_mysql.py +0 -0
  504. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/023_add_event_log_event_type_idx_postgres.py +0 -0
  505. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/023_add_event_log_event_type_idx_sqlite.py +0 -0
  506. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/024_add_columns_start_time_and_end_time_mysql.py +0 -0
  507. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/024_add_columns_start_time_and_end_time_postgres.py +0 -0
  508. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/024_add_columns_start_time_and_end_time_sqlite.py +0 -0
  509. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/025_add_range_index_mysql.py +0 -0
  510. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/025_add_range_index_postgres.py +0 -0
  511. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/025_add_range_index_sqlite.py +0 -0
  512. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/026_convert_start_end_times_format_mysql.py +0 -0
  513. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/027_add_migration_table_mysql.py +0 -0
  514. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/027_add_migration_table_postgres.py +0 -0
  515. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/027_add_migration_table_sqlite.py +0 -0
  516. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/028_add_instigators_table_mysql.py +0 -0
  517. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/028_add_instigators_table_postgres.py +0 -0
  518. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/028_add_instigators_table_sqlite.py +0 -0
  519. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/029_add_tick_selector_index_mysql.py +0 -0
  520. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/029_add_tick_selector_index_postgres.py +0 -0
  521. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/029_add_tick_selector_index_sqlite.py +0 -0
  522. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/030_add_columns_action_type_and_selector_id_.py +0 -0
  523. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/031_add_kvs_table.py +0 -0
  524. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/032_rebuild_event_indexes.py +0 -0
  525. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/033_add_asset_event_tags_table.py +0 -0
  526. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/034_add_cached_status_data_column.py +0 -0
  527. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/035_add_run_job_index.py +0 -0
  528. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/036_add_dynamic_partitions_table.py +0 -0
  529. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/037_d9092588866f_add_primary_key_cols.py +0 -0
  530. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/038_701913684cb4_add_postgres_pks.py +0 -0
  531. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/039_d3a4c9e87af3_add_asset_daemon_asset_evaluations_table.py +0 -0
  532. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/040_add_in_progress_step_table.py +0 -0
  533. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/041_add_asset_check_executions_table.py +0 -0
  534. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/042_46b412388816_add_concurrency_limits_table.py +0 -0
  535. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/043_add_run_tags_run_id_index.py +0 -0
  536. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/044_63d7a8ec641a_add_backfill_id_column_to_runs_table.py +0 -0
  537. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/045_1aca709bba64_add_runs_table_backfill_id_index.py +0 -0
  538. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/046_16e3655b4d9b045_add_bulk_actions_job_name_column_and_tags_table.py +0 -0
  539. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/047_add_run_tags_run_id_idx.py +0 -0
  540. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/048_7e2f3204cf8e_add_column_concurrency_default_limit.py +0 -0
  541. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/alembic/versions/__init__.py +0 -0
  542. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/asset_check_execution_record.py +0 -0
  543. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/asset_value_loader.py +0 -0
  544. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/base_storage.py +0 -0
  545. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/branching/__init__.py +0 -0
  546. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/branching/branching_io_manager.py +0 -0
  547. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/cloud_storage_compute_log_manager.py +0 -0
  548. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/compute_log_manager.py +0 -0
  549. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/config.py +0 -0
  550. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/daemon_cursor.py +0 -0
  551. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/db_io_manager.py +0 -0
  552. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/defs_state/__init__.py +0 -0
  553. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/defs_state/base.py +0 -0
  554. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/defs_state/blob_storage_state_storage.py +0 -0
  555. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/__init__.py +0 -0
  556. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/base.py +0 -0
  557. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/in_memory.py +0 -0
  558. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/migration.py +0 -0
  559. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/polling_event_watcher.py +0 -0
  560. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/schema.py +0 -0
  561. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/sql_event_log.py +0 -0
  562. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/sqlite/__init__.py +0 -0
  563. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/sqlite/alembic/alembic.ini +0 -0
  564. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/sqlite/consolidated_sqlite_event_log.py +0 -0
  565. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/event_log/sqlite/sqlite_event_log.py +0 -0
  566. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/file_manager.py +0 -0
  567. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/fs_io_manager.py +0 -0
  568. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/input_manager.py +0 -0
  569. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/io_manager.py +0 -0
  570. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/legacy_storage.py +0 -0
  571. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/local_compute_log_manager.py +0 -0
  572. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/mem_io_manager.py +0 -0
  573. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/migration/__init__.py +0 -0
  574. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/migration/bigint_migration.py +0 -0
  575. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/migration/utils.py +0 -0
  576. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/noop_compute_log_manager.py +0 -0
  577. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/output_manager.py +0 -0
  578. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/partition_status_cache.py +0 -0
  579. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/root.py +0 -0
  580. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/__init__.py +0 -0
  581. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/base.py +0 -0
  582. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/in_memory.py +0 -0
  583. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/migration.py +0 -0
  584. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/schema.py +0 -0
  585. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/sql_run_storage.py +0 -0
  586. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/sqlite/__init__.py +0 -0
  587. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/sqlite/alembic/alembic.ini +0 -0
  588. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/runs/sqlite/sqlite_run_storage.py +0 -0
  589. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/__init__.py +0 -0
  590. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/base.py +0 -0
  591. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/migration.py +0 -0
  592. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/schema.py +0 -0
  593. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/sql_schedule_storage.py +0 -0
  594. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/sqlite/__init__.py +0 -0
  595. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/sqlite/alembic/alembic.ini +0 -0
  596. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/schedules/sqlite/sqlite_schedule_storage.py +0 -0
  597. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/sql.py +0 -0
  598. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/sqlalchemy_compat.py +0 -0
  599. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/sqlite.py +0 -0
  600. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/sqlite_storage.py +0 -0
  601. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/tags.py +0 -0
  602. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/temp_file_manager.py +0 -0
  603. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/storage/upath_io_manager.py +0 -0
  604. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/system_config/__init__.py +0 -0
  605. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/system_config/composite_descent.py +0 -0
  606. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/system_config/objects.py +0 -0
  607. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/telemetry.py +0 -0
  608. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/telemetry_upload.py +0 -0
  609. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/test_utils.py +0 -0
  610. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/__init__.py +0 -0
  611. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/builtin_config_schemas.py +0 -0
  612. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/config_schema.py +0 -0
  613. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/dagster_type.py +0 -0
  614. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/decorator.py +0 -0
  615. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/loadable_target_origin.py +0 -0
  616. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/pagination.py +0 -0
  617. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/primitive_mapping.py +0 -0
  618. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/python_dict.py +0 -0
  619. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/python_set.py +0 -0
  620. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/python_tuple.py +0 -0
  621. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/types/transform_typing.py +0 -0
  622. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/utility_ops.py +0 -0
  623. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/utils.py +0 -0
  624. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/__init__.py +0 -0
  625. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/autodiscovery.py +0 -0
  626. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/config_schema.py +0 -0
  627. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/load.py +0 -0
  628. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/load_target.py +0 -0
  629. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/permissions.py +0 -0
  630. {dagster-1.12.0 → dagster-1.12.1}/dagster/_core/workspace/workspace.py +0 -0
  631. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/__init__.py +0 -0
  632. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/__main__.py +0 -0
  633. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/asset_daemon.py +0 -0
  634. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/auto_run_reexecution/__init__.py +0 -0
  635. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/auto_run_reexecution/auto_run_reexecution.py +0 -0
  636. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/auto_run_reexecution/event_log_consumer.py +0 -0
  637. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/backfill.py +0 -0
  638. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/cli/__init__.py +0 -0
  639. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/controller.py +0 -0
  640. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/daemon.py +0 -0
  641. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/freshness.py +0 -0
  642. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/monitoring/__init__.py +0 -0
  643. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/monitoring/concurrency.py +0 -0
  644. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/monitoring/run_monitoring.py +0 -0
  645. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/run_coordinator/__init__.py +0 -0
  646. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/run_coordinator/queued_run_coordinator_daemon.py +0 -0
  647. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/sensor.py +0 -0
  648. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/types.py +0 -0
  649. {dagster-1.12.0 → dagster-1.12.1}/dagster/_daemon/utils.py +0 -0
  650. {dagster-1.12.0 → dagster-1.12.1}/dagster/_experimental/__init__.py +0 -0
  651. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/__init__.py +0 -0
  652. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/download.py +0 -0
  653. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/generate.py +0 -0
  654. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/PROJECT_NAME_PLACEHOLDER/__init__.py +0 -0
  655. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/PROJECT_NAME_PLACEHOLDER/assets.py +0 -0
  656. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/PROJECT_NAME_PLACEHOLDER/definitions.py.jinja +0 -0
  657. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/PROJECT_NAME_PLACEHOLDER_tests/__init__.py +0 -0
  658. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/PROJECT_NAME_PLACEHOLDER_tests/test_assets.py.jinja +0 -0
  659. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/README.md.jinja +0 -0
  660. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/pyproject.toml.jinja +0 -0
  661. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/setup.cfg.jinja +0 -0
  662. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/PROJECT_NAME_PLACEHOLDER/setup.py.jinja +0 -0
  663. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/REPO_NAME_PLACEHOLDER/__init__.py.tmpl +0 -0
  664. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/REPO_NAME_PLACEHOLDER/assets.py +0 -0
  665. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/REPO_NAME_PLACEHOLDER/repository.py.tmpl +0 -0
  666. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/REPO_NAME_PLACEHOLDER_tests/__init__.py +0 -0
  667. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/REPO_NAME_PLACEHOLDER_tests/test_assets.py.tmpl +0 -0
  668. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/pyproject.toml +0 -0
  669. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/setup.cfg.tmpl +0 -0
  670. {dagster-1.12.0 → dagster-1.12.1}/dagster/_generate/templates/REPO_NAME_PLACEHOLDER/setup.py.tmpl +0 -0
  671. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__generated__/__init__.py +0 -0
  672. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__generated__/dagster_api_pb2.py +0 -0
  673. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__generated__/dagster_api_pb2.pyi +0 -0
  674. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__generated__/dagster_api_pb2_grpc.py +0 -0
  675. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__init__.py +0 -0
  676. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/__main__.py +0 -0
  677. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/client.py +0 -0
  678. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/compile.py +0 -0
  679. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/constants.py +0 -0
  680. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/impl.py +0 -0
  681. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/protos/dagster_api.proto +0 -0
  682. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/proxy_server.py +0 -0
  683. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/server.py +0 -0
  684. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/server_watcher.py +0 -0
  685. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/types.py +0 -0
  686. {dagster-1.12.0 → dagster-1.12.1}/dagster/_grpc/utils.py +0 -0
  687. {dagster-1.12.0 → dagster-1.12.1}/dagster/_legacy/__init__.py +0 -0
  688. {dagster-1.12.0 → dagster-1.12.1}/dagster/_loggers/__init__.py +0 -0
  689. {dagster-1.12.0 → dagster-1.12.1}/dagster/_module_alias_map.py +0 -0
  690. {dagster-1.12.0 → dagster-1.12.1}/dagster/_record/__init__.py +0 -0
  691. {dagster-1.12.0 → dagster-1.12.1}/dagster/_scheduler/__init__.py +0 -0
  692. {dagster-1.12.0 → dagster-1.12.1}/dagster/_scheduler/scheduler.py +0 -0
  693. {dagster-1.12.0 → dagster-1.12.1}/dagster/_scheduler/stale.py +0 -0
  694. {dagster-1.12.0 → dagster-1.12.1}/dagster/_serdes/__init__.py +0 -0
  695. {dagster-1.12.0 → dagster-1.12.1}/dagster/_serdes/config_class.py +0 -0
  696. {dagster-1.12.0 → dagster-1.12.1}/dagster/_symbol_annotations/__init__.py +0 -0
  697. {dagster-1.12.0 → dagster-1.12.1}/dagster/_symbol_annotations/annotatable.py +0 -0
  698. {dagster-1.12.0 → dagster-1.12.1}/dagster/_symbol_annotations/lifecycle.py +0 -0
  699. {dagster-1.12.0 → dagster-1.12.1}/dagster/_symbol_annotations/public.py +0 -0
  700. {dagster-1.12.0 → dagster-1.12.1}/dagster/_time/__init__.py +0 -0
  701. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/__init__.py +0 -0
  702. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/aiodataloader.py +0 -0
  703. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/alert.py +0 -0
  704. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/backoff.py +0 -0
  705. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/cached_method.py +0 -0
  706. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/caching_instance_queryer.py +0 -0
  707. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/concurrency.py +0 -0
  708. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/container.py +0 -0
  709. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/cronstring.py +0 -0
  710. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/dagster_type.py +0 -0
  711. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/env.py +0 -0
  712. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/error.py +0 -0
  713. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/forked_pdb.py +0 -0
  714. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/hosted_user_process.py +0 -0
  715. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/indenting_printer.py +0 -0
  716. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/internal_init.py +0 -0
  717. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/interrupts.py +0 -0
  718. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/log.py +0 -0
  719. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/merger.py +0 -0
  720. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/names.py +0 -0
  721. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/net.py +0 -0
  722. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/partitions.py +0 -0
  723. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/path.py +0 -0
  724. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/pydantic_yaml.py +0 -0
  725. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/schedules.py +0 -0
  726. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/security.py +0 -0
  727. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/storage.py +0 -0
  728. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/tags.py +0 -0
  729. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/temp_file.py +0 -0
  730. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/__init__.py +0 -0
  731. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/data_versions.py +0 -0
  732. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/definitions.py +0 -0
  733. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/hello_world_defs.py +0 -0
  734. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/hello_world_repository.py +0 -0
  735. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/mysql_instance.py +0 -0
  736. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/named_hello_world_repository.py +0 -0
  737. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/postgres_instance.py +0 -0
  738. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/schedule_storage.py +0 -0
  739. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/toys/__init__.py +0 -0
  740. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/test/toys/single_repository.py +0 -0
  741. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/timing.py +0 -0
  742. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/typed_dict.py +0 -0
  743. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/types.py +0 -0
  744. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/typing_api.py +0 -0
  745. {dagster-1.12.0 → dagster-1.12.1}/dagster/_utils/warnings.py +0 -0
  746. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/README.md +0 -0
  747. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/__init__.py +0 -0
  748. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/croniter/LICENSE +0 -0
  749. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/croniter/__init__.py +0 -0
  750. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/croniter/croniter.py +0 -0
  751. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/LICENSE +0 -0
  752. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/__init__.py +0 -0
  753. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/_common.py +0 -0
  754. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/easter.py +0 -0
  755. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/parser/__init__.py +0 -0
  756. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/parser/_parser.py +0 -0
  757. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/parser/isoparser.py +0 -0
  758. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/relativedelta.py +0 -0
  759. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/rrule.py +0 -0
  760. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tz/__init__.py +0 -0
  761. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tz/_common.py +0 -0
  762. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tz/_factories.py +0 -0
  763. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tz/tz.py +0 -0
  764. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tz/win.py +0 -0
  765. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/tzwin.py +0 -0
  766. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/utils.py +0 -0
  767. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/zoneinfo/__init__.py +0 -0
  768. {dagster-1.12.0 → dagster-1.12.1}/dagster/_vendored/dateutil/zoneinfo/rebuild.py +0 -0
  769. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/__init__.py +0 -0
  770. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/__init__.py +0 -0
  771. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/component.py +0 -0
  772. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/component_loader.py +0 -0
  773. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/component_scaffolder.py +0 -0
  774. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/state_backed_component.py +0 -0
  775. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component/template_vars.py +0 -0
  776. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/component_scaffolding.py +0 -0
  777. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/components.py +0 -0
  778. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/__init__.py +0 -0
  779. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/component_tree.py +0 -0
  780. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/component_tree_state.py +0 -0
  781. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/context.py +0 -0
  782. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/decl.py +0 -0
  783. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/defs_module.py +0 -0
  784. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/load_defs.py +0 -0
  785. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/package_entry.py +0 -0
  786. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/core/snapshot.py +0 -0
  787. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/definitions.py +0 -0
  788. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/__init__.py +0 -0
  789. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/definitions_component/__init__.py +0 -0
  790. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/__init__.py +0 -0
  791. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/component.py +0 -0
  792. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/function_component.py +0 -0
  793. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/python_script_component.py +0 -0
  794. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/script_utils.py +0 -0
  795. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/executable_component/uv_run_component.py +0 -0
  796. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/metadata_checks_component.py +0 -0
  797. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/__init__.py +0 -0
  798. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/asset.py +0 -0
  799. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/asset_check.py +0 -0
  800. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/base.py +0 -0
  801. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/job.py +0 -0
  802. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/multi_asset.py +0 -0
  803. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/resources.py +0 -0
  804. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/schedule.py +0 -0
  805. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/shim_components/sensor.py +0 -0
  806. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/sql_component/__init__.py +0 -0
  807. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/lib/sql_component/sql_client.py +0 -0
  808. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/list/__init__.py +0 -0
  809. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/list/list.py +0 -0
  810. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/py.typed +0 -0
  811. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/__init__.py +0 -0
  812. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/base.py +0 -0
  813. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/context.py +0 -0
  814. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/core_models.py +0 -0
  815. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/errors.py +0 -0
  816. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/metadata.py +0 -0
  817. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/resolved/model.py +0 -0
  818. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/scaffold/__init__.py +0 -0
  819. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/scaffold/scaffold.py +0 -0
  820. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/testing/__init__.py +0 -0
  821. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/testing/deprecated/__init__.py +0 -0
  822. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/testing/deprecated/utils.py +0 -0
  823. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/testing/test_cases.py +0 -0
  824. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/utils/__init__.py +0 -0
  825. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/utils/defs_state.py +0 -0
  826. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/utils/project_paths.py +0 -0
  827. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/utils/translation.py +0 -0
  828. {dagster-1.12.0 → dagster-1.12.1}/dagster/components/version.py +0 -0
  829. {dagster-1.12.0 → dagster-1.12.1}/dagster/deprecated/__init__.py +0 -0
  830. {dagster-1.12.0 → dagster-1.12.1}/dagster/preview/__init__.py +0 -0
  831. {dagster-1.12.0 → dagster-1.12.1}/dagster/preview/freshness/__init__.py +0 -0
  832. {dagster-1.12.0 → dagster-1.12.1}/dagster/py.typed +0 -0
  833. {dagster-1.12.0 → dagster-1.12.1}/dagster.egg-info/SOURCES.txt +0 -0
  834. {dagster-1.12.0 → dagster-1.12.1}/dagster.egg-info/dependency_links.txt +0 -0
  835. {dagster-1.12.0 → dagster-1.12.1}/dagster.egg-info/entry_points.txt +0 -0
  836. {dagster-1.12.0 → dagster-1.12.1}/dagster.egg-info/top_level.txt +0 -0
  837. {dagster-1.12.0 → dagster-1.12.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dagster
3
- Version: 1.12.0
3
+ Version: 1.12.1
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.0
64
- Requires-Dist: dagster-shared==1.12.0
63
+ Requires-Dist: dagster-pipes==1.12.1
64
+ Requires-Dist: dagster-shared==1.12.1
65
65
  Requires-Dist: antlr4-python3-runtime
66
66
  Provides-Extra: docker
67
67
  Requires-Dist: docker; extra == "docker"
@@ -244,6 +244,7 @@ from dagster._core.definitions.events import (
244
244
  DynamicOutput as DynamicOutput,
245
245
  ExpectationResult as ExpectationResult,
246
246
  Failure as Failure,
247
+ HookExecutionResult as HookExecutionResult,
247
248
  Output as Output,
248
249
  RetryRequested as RetryRequested,
249
250
  TypeCheck as TypeCheck,
@@ -18,6 +18,7 @@ from dagster._core.asset_graph_view.serializable_entity_subset import Serializab
18
18
  from dagster._core.definitions.asset_key import AssetCheckKey, AssetKey, EntityKey, T_EntityKey
19
19
  from dagster._core.definitions.assets.graph.asset_graph_subset import AssetGraphSubset
20
20
  from dagster._core.definitions.events import AssetKeyPartitionKey
21
+ from dagster._core.definitions.freshness import FreshnessState
21
22
  from dagster._core.definitions.partitions.context import (
22
23
  PartitionLoadingContext,
23
24
  use_partition_loading_context,
@@ -561,6 +562,26 @@ class AssetGraphView(LoadingContext):
561
562
  else:
562
563
  return self.get_empty_subset(key=key)
563
564
 
565
+ async def compute_subset_with_freshness_state(
566
+ self, key: AssetKey, state: FreshnessState
567
+ ) -> EntitySubset[AssetKey]:
568
+ from dagster._core.definitions.asset_health.asset_freshness_health import (
569
+ AssetFreshnessHealthState,
570
+ )
571
+
572
+ if not self.asset_graph.has(key) or self.asset_graph.get(key).freshness_policy is None:
573
+ if state == FreshnessState.NOT_APPLICABLE:
574
+ return self.get_full_subset(key=key)
575
+ else:
576
+ return self.get_empty_subset(key=key)
577
+
578
+ asset_freshness_health_state = await AssetFreshnessHealthState.compute_for_asset(key, self)
579
+
580
+ if asset_freshness_health_state.freshness_state == state:
581
+ return self.get_full_subset(key=key)
582
+ else:
583
+ return self.get_empty_subset(key=key)
584
+
564
585
  async def _compute_run_in_progress_check_subset(
565
586
  self, key: AssetCheckKey
566
587
  ) -> EntitySubset[AssetCheckKey]:
@@ -511,9 +511,9 @@ class AssetsDefinition(ResourceAddable, IHasInternalInit):
511
511
  tags to be associated with each of the output assets for this node. Keys are the names
512
512
  of outputs, and values are dictionaries of tags to be associated with the related
513
513
  asset.
514
- legacy_freshness_policies_by_output_name (Optional[Mapping[str, Optional[FreshnessPolicy]]]): Defines a
515
- FreshnessPolicy to be associated with some or all of the output assets for this node.
516
- Keys are the names of the outputs, and values are the FreshnessPolicies to be attached
514
+ legacy_freshness_policies_by_output_name (Optional[Mapping[str, Optional[LegacyFreshnessPolicy]]]): Defines a
515
+ LegacyFreshnessPolicy to be associated with some or all of the output assets for this node.
516
+ Keys are the names of the outputs, and values are the LegacyFreshnessPolicies to be attached
517
517
  to the associated asset.
518
518
  automation_conditions_by_output_name (Optional[Mapping[str, Optional[AutomationCondition]]]): Defines an
519
519
  AutomationCondition to be associated with some or all of the output assets for this node.
@@ -28,6 +28,7 @@ from dagster._core.definitions.declarative_automation.serialized_objects import
28
28
  get_serializable_candidate_subset,
29
29
  get_serializable_true_subset,
30
30
  )
31
+ from dagster._core.definitions.freshness import FreshnessState
31
32
  from dagster._core.definitions.partitions.subset import (
32
33
  AllPartitionsSubset,
33
34
  TimeWindowPartitionsSubset,
@@ -649,6 +650,36 @@ class AutomationCondition(ABC, Generic[T_EntityKey]):
649
650
  )
650
651
  return CronTickPassedCondition(cron_schedule=cron_schedule, cron_timezone=cron_timezone)
651
652
 
653
+ @public
654
+ @staticmethod
655
+ def freshness_passed() -> "BuiltinAutomationCondition[AssetKey]":
656
+ """Returns an AutomationCondition that is true if the target's freshness is PASS."""
657
+ from dagster._core.definitions.declarative_automation.operands import (
658
+ FreshnessResultCondition,
659
+ )
660
+
661
+ return FreshnessResultCondition(state=FreshnessState.PASS).with_label("freshness_passed")
662
+
663
+ @public
664
+ @staticmethod
665
+ def freshness_warned() -> "BuiltinAutomationCondition[AssetKey]":
666
+ """Returns an AutomationCondition that is true if the target's freshness is WARN."""
667
+ from dagster._core.definitions.declarative_automation.operands import (
668
+ FreshnessResultCondition,
669
+ )
670
+
671
+ return FreshnessResultCondition(state=FreshnessState.WARN).with_label("freshness_warned")
672
+
673
+ @public
674
+ @staticmethod
675
+ def freshness_failed() -> "BuiltinAutomationCondition[AssetKey]":
676
+ """Returns an AutomationCondition that is true if the target's freshness is FAIL."""
677
+ from dagster._core.definitions.declarative_automation.operands import (
678
+ FreshnessResultCondition,
679
+ )
680
+
681
+ return FreshnessResultCondition(state=FreshnessState.FAIL).with_label("freshness_failed")
682
+
652
683
  @public
653
684
  @staticmethod
654
685
  def newly_missing() -> "BuiltinAutomationCondition":
@@ -4,6 +4,7 @@ from dagster._core.definitions.declarative_automation.operands.operands import (
4
4
  CodeVersionChangedCondition as CodeVersionChangedCondition,
5
5
  CronTickPassedCondition as CronTickPassedCondition,
6
6
  ExecutionFailedAutomationCondition as ExecutionFailedAutomationCondition,
7
+ FreshnessResultCondition as FreshnessResultCondition,
7
8
  InitialEvaluationCondition as InitialEvaluationCondition,
8
9
  InLatestTimeWindowCondition as InLatestTimeWindowCondition,
9
10
  MissingAutomationCondition as MissingAutomationCondition,
@@ -14,6 +14,7 @@ from dagster._core.definitions.declarative_automation.automation_context import
14
14
  from dagster._core.definitions.declarative_automation.operands.subset_automation_condition import (
15
15
  SubsetAutomationCondition,
16
16
  )
17
+ from dagster._core.definitions.freshness import FreshnessState
17
18
  from dagster._core.definitions.partitions.snap.snap import PartitionsSnap
18
19
  from dagster._core.definitions.partitions.subset.key_ranges import KeyRangesPartitionsSubset
19
20
  from dagster._record import record
@@ -193,6 +194,21 @@ class NewlyUpdatedCondition(SubsetAutomationCondition):
193
194
  )
194
195
 
195
196
 
197
+ @whitelist_for_serdes
198
+ @record
199
+ class FreshnessResultCondition(SubsetAutomationCondition[AssetKey]):
200
+ state: FreshnessState
201
+
202
+ @property
203
+ def name(self) -> str:
204
+ return f"freshness_result(state={self.state})"
205
+
206
+ async def compute_subset(self, context: AutomationContext[AssetKey]) -> EntitySubset[AssetKey]: # pyright: ignore[reportIncompatibleMethodOverride]
207
+ return await context.asset_graph_view.compute_subset_with_freshness_state(
208
+ key=context.key, state=self.state
209
+ )
210
+
211
+
196
212
  @whitelist_for_serdes
197
213
  @record
198
214
  class DataVersionChangedCondition(SubsetAutomationCondition):
@@ -10,6 +10,7 @@ from dagster._core.definitions.asset_key import AssetKey
10
10
  from dagster._core.loader import LoadableBy, LoadingContext
11
11
  from dagster._record import IHaveNew, record, record_custom
12
12
  from dagster._serdes import deserialize_value, whitelist_for_serdes
13
+ from dagster._symbol_annotations.public import public
13
14
  from dagster._time import datetime_from_timestamp, get_timezone
14
15
  from dagster._utils import check
15
16
  from dagster._utils.schedules import get_smallest_cron_interval, is_valid_cron_string
@@ -48,12 +49,21 @@ class FreshnessStateChange:
48
49
  INTERNAL_FRESHNESS_POLICY_METADATA_KEY = "dagster/internal_freshness_policy"
49
50
 
50
51
 
52
+ @public
51
53
  class FreshnessPolicy(ABC):
52
54
  """Base class for all freshness policies.
53
- The "internal" prefix is a temporary measure to distinguish these policies from an existing, deprecated freshness policy model
54
- which has since been renamed to `LegacyFreshnessPolicy`.
55
- Expect the name of this class to change to `FreshnessPolicy` in a future release.
56
55
 
56
+ A freshness policy allows you to define expectations for the timing and frequency of asset materializations.
57
+
58
+ An asset with a defined freshness policy can take on different freshness states:
59
+ - ``PASS``: The asset is passing its freshness policy.
60
+ - ``WARN``: The asset is close to failing its freshness policy.
61
+ - ``FAIL``: The asset is failing its freshness policy.
62
+ - ``UNKNOWN``: The asset has no materialization events, and the freshness state cannot be determined.
63
+
64
+ If an asset does not have a freshness policy defined, it will have a freshness state of ``NOT_APPLICABLE``.
65
+
66
+ This class provides static constructors for each of the supported freshness policy types. It is preferred to use these constructors to instantiate freshness policies, instead of instantiating the policy subtypes directly.
57
67
  """
58
68
 
59
69
  @classmethod
@@ -71,12 +81,67 @@ class FreshnessPolicy(ABC):
71
81
  def time_window(
72
82
  fail_window: timedelta, warn_window: Optional[timedelta] = None
73
83
  ) -> "TimeWindowFreshnessPolicy":
84
+ """Defines freshness with reference to a time window.
85
+
86
+ Args:
87
+ fail_window: a timedelta that defines the failure window for the asset.
88
+ warn_window: an optional timedelta that defines the warning window for the asset.
89
+
90
+ Returns:
91
+ A ``TimeWindowFreshnessPolicy`` instance.
92
+
93
+ Examples:
94
+ .. code-block:: python
95
+
96
+ policy = FreshnessPolicy.time_window(
97
+ fail_window=timedelta(hours=24), warn_window=timedelta(hours=12)
98
+ )
99
+
100
+ This policy expects the asset to materialize at least once every 24 hours, and warns if the latest materialization is older than 12 hours.
101
+
102
+ - If it has been less than 12 hours since the latest materialization, the asset is passing its freshness policy, and will have a freshness state of ``PASS``.
103
+ - If it has been between 12 and 24 hours since the latest materialization, the asset will have a freshness state of ``WARN``.
104
+ - If it has been more than 24 hours since the latest materialization, the asset is failing its freshness policy, and will have a freshness state of ``FAIL``.
105
+
106
+ """
74
107
  return TimeWindowFreshnessPolicy.from_timedeltas(fail_window, warn_window)
75
108
 
76
109
  @staticmethod
77
110
  def cron(
78
111
  deadline_cron: str, lower_bound_delta: timedelta, timezone: str = "UTC"
79
112
  ) -> "CronFreshnessPolicy":
113
+ """Defines freshness with reference to a predetermined cron schedule.
114
+
115
+ Args:
116
+ deadline_cron: a cron string that defines a deadline for the asset to be materialized.
117
+ lower_bound_delta: a timedelta that defines the lower bound for when the asset could have been materialized.
118
+ If a deadline cron tick has passed and the most recent materialization is older than (deadline cron tick timestamp - lower bound delta),
119
+ the asset is considered stale until it materializes again.
120
+ timezone: optionally provide a timezone for cron evaluation. IANA time zone strings are supported. If not provided, defaults to UTC.
121
+
122
+ Returns:
123
+ A ``CronFreshnessPolicy`` instance.
124
+
125
+ Examples:
126
+ .. code-block:: python
127
+
128
+ policy = FreshnessPolicy.cron(
129
+ deadline_cron="0 10 * * *", # 10am daily
130
+ lower_bound_delta=timedelta(hours=1),
131
+ )
132
+
133
+ This policy expects the asset to materialize every day between 9:00 AM and 10:00 AM.
134
+
135
+ - If the asset is materialized at 9:30 AM, the asset is passing its freshness policy, and will have a freshness state of ``PASS``. The asset will continue to pass the freshness policy until at least the deadline next day (10AM).
136
+ - If the asset is materialized at 9:59 AM, the asset is passing its freshness policy, and will have a freshness state of ``PASS``. The asset will continue to pass the freshness policy until at least the deadline next day (10AM).
137
+ - If the asset is not materialized by 10:00 AM, the asset is failing its freshness policy, and will have a freshness state of ``FAIL``. The asset will continue to fail the freshness policy until it is materialized again.
138
+ - If the asset is then materialized at 10:30AM, it will pass the freshness policy again until at least the deadline the next day (10AM).
139
+
140
+ Keep in mind that the policy will always look at the last completed cron tick.
141
+ So in the example above, if asset freshness is evaluated at 9:59 AM, the policy will still consider the previous day's 9-10AM window.
142
+
143
+
144
+ """
80
145
  return CronFreshnessPolicy(
81
146
  deadline_cron=deadline_cron, lower_bound_delta=lower_bound_delta, timezone=timezone
82
147
  )
@@ -114,31 +179,6 @@ class TimeWindowFreshnessPolicy(FreshnessPolicy, IHaveNew):
114
179
  }
115
180
  )
116
181
  class CronFreshnessPolicy(FreshnessPolicy, IHaveNew):
117
- """Defines freshness with reference to a predetermined cron schedule.
118
-
119
- Args:
120
- deadline_cron: a cron string that defines a deadline for the asset to be materialized.
121
- lower_bound_delta: a timedelta that defines the lower bound for when the asset could have been materialized.
122
- If a deadline cron tick has passed and the most recent materialization is older than (deadline cron tick timestamp - lower bound delta), the asset is considered stale until it materializes again.
123
- timezone: optionally provide a timezone for cron evaluation. IANA time zone strings are supported. If not provided, defaults to UTC.
124
-
125
- Example:
126
- policy = FreshnessPolicy.cron(
127
- deadline_cron="0 10 * * *", # 10am daily
128
- lower_bound_delta=timedelta(hours=1),
129
- )
130
-
131
- This policy expects the asset to materialize every day between 9:00 AM and 10:00 AM.
132
-
133
- If the asset is materialized at 9:30 AM, the asset is fresh, and will continue to be fresh until at least the deadline next day (10AM)
134
- If the asset is materialized at 9:59 AM, the asset is fresh, and will continue to be fresh until at least the deadline next day (10AM)
135
- If the asset is not materialized by 10:00 AM, the asset is stale, and will continue to be stale until it is materialized.
136
- If the asset is then materialized at 10:30AM, it becomes fresh again until at least the deadline the next day (10AM).
137
-
138
- Keep in mind that the policy will always look at the last completed cron tick.
139
- So in the example above, if asset freshness is evaluated at 9:59 AM, the policy will still consider the previous day's 9-10AM window.
140
- """
141
-
142
182
  deadline_cron: str
143
183
  serializable_lower_bound_delta: SerializableTimeDelta
144
184
  timezone: str
@@ -4,7 +4,7 @@ import warnings
4
4
  from collections.abc import Iterable, Mapping, Sequence
5
5
  from datetime import datetime
6
6
  from functools import cached_property, update_wrapper
7
- from typing import TYPE_CHECKING, AbstractSet, Any, Optional, Union, cast # noqa: UP035
7
+ from typing import TYPE_CHECKING, AbstractSet, Any, Optional, Union, cast # noqa: UP035,
8
8
 
9
9
  import dagster._check as check
10
10
  from dagster._annotations import beta_param, deprecated, public
@@ -210,9 +210,6 @@ class JobDefinition(IHasInternalInit):
210
210
  self._was_provided_resources
211
211
  )
212
212
 
213
- self._config_mapping = None
214
- self._partitioned_config = None
215
- self._run_config = None
216
213
  self._run_config_schema = None
217
214
  self._original_config_argument = config
218
215
 
@@ -396,9 +393,7 @@ class JobDefinition(IHasInternalInit):
396
393
 
397
394
  A partitioned config defines a way to map partition keys to run config for the job.
398
395
  """
399
- if self.has_unresolved_configs:
400
- self._resolve_configs()
401
- return self._partitioned_config
396
+ return self._resolve_configs()[0]
402
397
 
403
398
  @public
404
399
  @property
@@ -407,9 +402,7 @@ class JobDefinition(IHasInternalInit):
407
402
 
408
403
  A config mapping defines a way to map a top-level config schema to run config for the job.
409
404
  """
410
- if self.has_unresolved_configs:
411
- self._resolve_configs()
412
- return self._config_mapping
405
+ return self._resolve_configs()[1]
413
406
 
414
407
  @public
415
408
  @property
@@ -439,9 +432,7 @@ class JobDefinition(IHasInternalInit):
439
432
 
440
433
  @property
441
434
  def run_config(self) -> Optional[Mapping[str, Any]]:
442
- if self.has_unresolved_configs:
443
- self._resolve_configs()
444
- return self._run_config
435
+ return self._resolve_configs()[2]
445
436
 
446
437
  @property
447
438
  def run_config_schema(self) -> "RunConfigSchema":
@@ -486,25 +477,24 @@ class JobDefinition(IHasInternalInit):
486
477
  def op_retry_policy(self) -> Optional[RetryPolicy]:
487
478
  return self._op_retry_policy
488
479
 
489
- @property
490
- def has_unresolved_configs(self) -> bool:
491
- return (
492
- self._partitioned_config is None
493
- and self._run_config is None
494
- and self._config_mapping is None
495
- )
496
-
497
480
  @cached_method
498
- def _resolve_configs(self) -> None:
481
+ def _resolve_configs(
482
+ self,
483
+ ) -> tuple[Optional[PartitionedConfig], Optional[ConfigMapping], Optional[Mapping[str, Any]]]:
499
484
  config = self._original_config_argument
500
485
  partition_def = self._original_partitions_def_argument
486
+
487
+ partitioned_config = None
488
+ config_mapping = None
489
+ run_config = None
490
+
501
491
  if partition_def:
502
- self._partitioned_config = PartitionedConfig.from_flexible_config(config, partition_def)
492
+ partitioned_config = PartitionedConfig.from_flexible_config(config, partition_def)
503
493
  else:
504
494
  if isinstance(config, ConfigMapping):
505
- self._config_mapping = config
495
+ config_mapping = config
506
496
  elif isinstance(config, PartitionedConfig):
507
- self._partitioned_config = config
497
+ partitioned_config = config
508
498
  if self.asset_layer:
509
499
  for asset_key in self._asset_layer.selected_asset_keys:
510
500
  asset_partitions_def = self._asset_layer.get(asset_key).partitions_def
@@ -516,10 +506,10 @@ class JobDefinition(IHasInternalInit):
516
506
  )
517
507
 
518
508
  elif isinstance(config, dict):
519
- self._run_config = config
509
+ run_config = config
520
510
  # Using config mapping here is a trick to make it so that the preset will be used even
521
511
  # when no config is supplied for the job.
522
- self._config_mapping = _config_mapping_with_default_value(
512
+ config_mapping = _config_mapping_with_default_value(
523
513
  get_run_config_schema_for_job(
524
514
  self._graph_def,
525
515
  self.resource_defs,
@@ -537,6 +527,8 @@ class JobDefinition(IHasInternalInit):
537
527
  f" but is an object of type {type(config)}"
538
528
  )
539
529
 
530
+ return partitioned_config, config_mapping, run_config
531
+
540
532
  def node_def_named(self, name: str) -> NodeDefinition:
541
533
  check.str_param(name, "name")
542
534
 
@@ -885,15 +877,15 @@ class JobDefinition(IHasInternalInit):
885
877
  self, partition_key: str, selected_asset_keys: Optional[Iterable[AssetKey]]
886
878
  ) -> Mapping[str, str]:
887
879
  """Gets tags for the given partition key."""
888
- if self._partitioned_config is not None:
889
- return self._partitioned_config.get_tags_for_partition_key(partition_key, self.name)
880
+ if self.partitioned_config is not None:
881
+ return self.partitioned_config.get_tags_for_partition_key(partition_key, self.name)
890
882
 
891
883
  partitions_def = self._get_partitions_def(selected_asset_keys)
892
884
  return partitions_def.get_tags_for_partition_key(partition_key)
893
885
 
894
886
  def get_run_config_for_partition_key(self, partition_key: str) -> Mapping[str, Any]:
895
- if self._partitioned_config:
896
- return self._partitioned_config.get_run_config_for_partition_key(partition_key)
887
+ if self.partitioned_config:
888
+ return self.partitioned_config.get_run_config_for_partition_key(partition_key)
897
889
  else:
898
890
  return {}
899
891
 
@@ -457,15 +457,26 @@ class TimeWindowPartitionsSubset(
457
457
  [*self.included_time_windows, *other.included_time_windows],
458
458
  key=lambda tw: tw.start_timestamp,
459
459
  )
460
+
460
461
  result_windows = [input_time_windows[0]] if len(input_time_windows) > 0 else []
462
+
461
463
  for window in input_time_windows[1:]:
462
464
  latest_window = result_windows[-1]
463
465
  if window.start_timestamp <= latest_window.end_timestamp:
464
466
  # merge this window with the latest window
465
- result_windows[-1] = PersistedTimeWindow.from_public_time_window(
466
- TimeWindow(latest_window.start, max(latest_window.end, window.end)),
467
- self.partitions_def.timezone,
467
+ merged_window_end = (
468
+ latest_window.end_timestamp_with_timezone
469
+ if latest_window.end_timestamp >= window.end_timestamp
470
+ else window.end_timestamp_with_timezone
468
471
  )
472
+
473
+ merged_window = PersistedTimeWindow(
474
+ latest_window.start_timestamp_with_timezone,
475
+ merged_window_end,
476
+ )
477
+
478
+ # merge this window with the latest window
479
+ result_windows[-1] = merged_window
469
480
  else:
470
481
  result_windows.append(window)
471
482
 
@@ -96,6 +96,14 @@ class PersistedTimeWindow(
96
96
  def start_timestamp(self) -> float:
97
97
  return self._asdict()["start"].timestamp
98
98
 
99
+ @property
100
+ def start_timestamp_with_timezone(self) -> TimestampWithTimezone:
101
+ return self._asdict()["start"]
102
+
103
+ @property
104
+ def end_timestamp_with_timezone(self) -> TimestampWithTimezone:
105
+ return self._asdict()["end"]
106
+
99
107
  @property
100
108
  def end_timestamp(self) -> float:
101
109
  return self._asdict()["end"].timestamp
@@ -1,9 +1,10 @@
1
1
  import sys
2
2
  import threading
3
3
  from abc import abstractmethod
4
+ from collections import defaultdict
4
5
  from collections.abc import Mapping, Sequence
5
6
  from contextlib import AbstractContextManager
6
- from functools import cached_property
7
+ from functools import cached_property, partial
7
8
  from typing import TYPE_CHECKING, Any, Callable, Optional, Union, cast
8
9
 
9
10
  from dagster_shared.libraries import DagsterLibraryRegistry
@@ -739,7 +740,8 @@ class GrpcServerCodeLocation(CodeLocation):
739
740
 
740
741
  self._container_context = list_repositories_response.container_context
741
742
 
742
- self._job_snaps = {}
743
+ self._job_snaps_by_name = defaultdict(dict)
744
+ self._job_snaps_by_snapshot_id = {}
743
745
 
744
746
  self.remote_repositories = {}
745
747
 
@@ -755,21 +757,25 @@ class GrpcServerCodeLocation(CodeLocation):
755
757
  code_location=self,
756
758
  ),
757
759
  auto_materialize_use_sensors=instance.auto_materialize_use_sensors,
758
- ref_to_data_fn=self._job_ref_to_snap,
760
+ ref_to_data_fn=partial(self._job_ref_to_snap, repo_name),
759
761
  )
760
762
  for job_snap in job_snaps.values():
761
- self._job_snaps[job_snap.snapshot_id] = job_snap
763
+ self._job_snaps_by_name[repo_name][job_snap.name] = job_snap
764
+ self._job_snaps_by_snapshot_id[job_snap.snapshot_id] = job_snap
762
765
 
763
766
  except:
764
767
  self.cleanup()
765
768
  raise
766
769
 
767
- def _job_ref_to_snap(self, job_ref: "JobRefSnap") -> "JobDataSnap":
770
+ def _job_ref_to_snap(self, repository_name: str, job_ref: "JobRefSnap") -> "JobDataSnap":
768
771
  from dagster._core.remote_representation.external_data import JobDataSnap
769
772
 
770
- snapshot = self._job_snaps[job_ref.snapshot_id]
773
+ # key by name to ensure that we are resilient to snapshot ID instability
774
+ snapshot = self._job_snaps_by_name[repository_name][job_ref.name]
771
775
  parent_snapshot = (
772
- self._job_snaps[job_ref.parent_snapshot_id] if job_ref.parent_snapshot_id else None
776
+ self._job_snaps_by_snapshot_id.get(job_ref.parent_snapshot_id)
777
+ if job_ref.parent_snapshot_id
778
+ else None
773
779
  )
774
780
  return JobDataSnap(
775
781
  name=job_ref.name,
@@ -119,8 +119,6 @@ NOT_FINISHED_STATUSES = [
119
119
  # creating the run and launching or enqueueing it.
120
120
  CANCELABLE_RUN_STATUSES = [DagsterRunStatus.STARTED, DagsterRunStatus.QUEUED]
121
121
 
122
- DAGSTER_EXECUTION_METADATA_TAG_PREFIX = "DAGSTER_EXECUTION_"
123
-
124
122
 
125
123
  @whitelist_for_serdes(storage_name="PipelineRunStatsSnapshot")
126
124
  @record
@@ -422,13 +420,6 @@ class DagsterRun(
422
420
  if value := os.getenv(env_var):
423
421
  tags[f"dagster/{tag}"] = value
424
422
 
425
- # find any `DAGSTER_EXECUTION_METADATA_*` environment variables and add them as tags
426
- for key, value in os.environ.items():
427
- if key.startswith(DAGSTER_EXECUTION_METADATA_TAG_PREFIX):
428
- tag_key = key[len(DAGSTER_EXECUTION_METADATA_TAG_PREFIX) :]
429
- tag_key = tag_key.lower().replace("_", "-")
430
- tags[f"dagster/{tag_key}"] = value
431
-
432
423
  return tags
433
424
 
434
425
  def tags_for_storage(self) -> Mapping[str, str]:
@@ -8,7 +8,7 @@ from collections.abc import Mapping, Sequence
8
8
  from contextlib import ExitStack
9
9
  from functools import cached_property
10
10
  from itertools import count
11
- from typing import TYPE_CHECKING, AbstractSet, Any, Optional, TypeVar, Union # noqa: UP035
11
+ from typing import TYPE_CHECKING, AbstractSet, Any, Generic, Optional, TypeVar, Union # noqa: UP035
12
12
 
13
13
  from typing_extensions import Self
14
14
 
@@ -135,8 +135,10 @@ class BaseWorkspaceRequestContext(LoadingContext):
135
135
  def get_current_workspace(self) -> CurrentWorkspace: ...
136
136
 
137
137
  # abstracted since they may be calculated without the full CurrentWorkspace
138
+ @abstractmethod
138
139
  def get_location_entry(self, name: str) -> Optional[CodeLocationEntry]: ...
139
140
 
141
+ @abstractmethod
140
142
  def get_code_location_statuses(self) -> Sequence[CodeLocationStatusEntry]: ...
141
143
 
142
144
  # implemented here since they require the full CurrentWorkspace
@@ -833,14 +835,17 @@ class WorkspaceRequestContext(BaseWorkspaceRequestContext):
833
835
  return int(os.getenv("DAGSTER_UI_EVENT_LOAD_CHUNK_SIZE", "1000"))
834
836
 
835
837
 
836
- class IWorkspaceProcessContext(ABC):
838
+ TRequestContext = TypeVar("TRequestContext", bound="BaseWorkspaceRequestContext")
839
+
840
+
841
+ class IWorkspaceProcessContext(ABC, Generic[TRequestContext]):
837
842
  """Class that stores process-scoped information about a webserver session.
838
843
  In most cases, you will want to create a `BaseWorkspaceRequestContext` to create a request-scoped
839
844
  object.
840
845
  """
841
846
 
842
847
  @abstractmethod
843
- def create_request_context(self, source: Optional[Any] = None) -> BaseWorkspaceRequestContext:
848
+ def create_request_context(self, source: Optional[Any] = None) -> TRequestContext:
844
849
  """Create a usable fixed context for the scope of a request.
845
850
 
846
851
  Args:
@@ -883,7 +888,7 @@ class IWorkspaceProcessContext(ABC):
883
888
  pass
884
889
 
885
890
 
886
- class WorkspaceProcessContext(IWorkspaceProcessContext):
891
+ class WorkspaceProcessContext(IWorkspaceProcessContext[WorkspaceRequestContext]):
887
892
  """Process-scoped object that tracks the state of a workspace.
888
893
 
889
894
  1. Maintains an update-to-date dictionary of repository locations
@@ -4,7 +4,7 @@ from pathlib import Path
4
4
  from typing import Annotated, Any, Optional, Union
5
5
 
6
6
  from dagster_shared import check
7
- from pydantic import BaseModel, Field
7
+ from pydantic import BaseModel, ConfigDict, Field
8
8
 
9
9
  from dagster._annotations import preview, public
10
10
  from dagster._core.definitions.result import MaterializeResult
@@ -24,9 +24,8 @@ class SqlComponent(ExecutableComponent, ABC):
24
24
  implement instructions on where to load the SQL content from.
25
25
  """
26
26
 
27
- class Config:
28
- # Necessary to allow connection to be a SQLClient, which is an ABC
29
- arbitrary_types_allowed = True
27
+ # Necessary to allow connection to be a SQLClient, which is an ABC
28
+ model_config = ConfigDict(arbitrary_types_allowed=True)
30
29
 
31
30
  connection: Annotated[
32
31
  Annotated[