sqlmesh-dag-generator 0.9.7__tar.gz → 0.9.8__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 (29) hide show
  1. {sqlmesh_dag_generator-0.9.7/sqlmesh_dag_generator.egg-info → sqlmesh_dag_generator-0.9.8}/PKG-INFO +1 -1
  2. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/setup.py +1 -1
  3. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/__init__.py +1 -1
  4. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/config.py +1 -1
  5. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/generator.py +15 -4
  6. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8/sqlmesh_dag_generator.egg-info}/PKG-INFO +1 -1
  7. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/LICENSE +0 -0
  8. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/README.md +0 -0
  9. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/pyproject.toml +0 -0
  10. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/setup.cfg +0 -0
  11. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/airflow_utils.py +0 -0
  12. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/cli.py +0 -0
  13. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/dag_builder.py +0 -0
  14. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/models.py +0 -0
  15. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/security.py +0 -0
  16. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/utils.py +0 -0
  17. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator/validation.py +0 -0
  18. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator.egg-info/SOURCES.txt +0 -0
  19. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator.egg-info/dependency_links.txt +0 -0
  20. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator.egg-info/entry_points.txt +0 -0
  21. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator.egg-info/requires.txt +0 -0
  22. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/sqlmesh_dag_generator.egg-info/top_level.txt +0 -0
  23. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_airflow_utils.py +0 -0
  24. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_auto_schedule.py +0 -0
  25. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_config.py +0 -0
  26. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_generator.py +0 -0
  27. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_kubernetes.py +0 -0
  28. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_models.py +0 -0
  29. {sqlmesh_dag_generator-0.9.7 → sqlmesh_dag_generator-0.9.8}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlmesh-dag-generator
3
- Version: 0.9.7
3
+ Version: 0.9.8
4
4
  Summary: Open-source Airflow DAG generator for SQLMesh projects
5
5
  Home-page: https://github.com/kubolko/sqlmesh-dag-generator
6
6
  Author: Jakub Sumionka
@@ -20,7 +20,7 @@ if requirements_file.exists():
20
20
 
21
21
  setup(
22
22
  name="sqlmesh-dag-generator",
23
- version="0.9.7",
23
+ version="0.9.8",
24
24
  description="Open-source Airflow DAG generator for SQLMesh projects",
25
25
  long_description=long_description,
26
26
  long_description_content_type="text/markdown",
@@ -2,7 +2,7 @@
2
2
  SQLMesh DAG Generator - Open Source Airflow Integration for SQLMesh
3
3
  """
4
4
 
5
- __version__ = "0.9.7"
5
+ __version__ = "0.9.8"
6
6
 
7
7
 
8
8
  from sqlmesh_dag_generator.generator import SQLMeshDAGGenerator
@@ -138,7 +138,7 @@ class GenerationConfig:
138
138
  include_source_tables: bool = True # Include upstream source tables as dummy tasks
139
139
  return_value: bool = True # Whether to return execution result (XCom)
140
140
  auto_replan_on_change: bool = True # Automatically plan+apply before running models
141
- replan_timeout_hours: int = 6 # Timeout for replan task (initial backfills can be long!)
141
+ replan_timeout_hours: Optional[int] = 6 # None disables the replan task timeout.
142
142
  skip_audits: bool = False # Skip audit checks during execution
143
143
  enable_health_check: bool = False # Add a pre-flight health check task
144
144
  # Tag-based filtering - only include models with any of these tags
@@ -183,7 +183,7 @@ class SQLMeshDAGGenerator:
183
183
  include_source_tables=kwargs.get("include_source_tables", True), # Default: enabled
184
184
  return_value=kwargs.get("return_value", True),
185
185
  auto_replan_on_change=kwargs.get("auto_replan_on_change", True),
186
- replan_timeout_hours=kwargs.get("replan_timeout_hours", 6), # Default: 6 hours for backfills
186
+ replan_timeout_hours=kwargs.get("replan_timeout_hours", 6), # None disables the replan timeout.
187
187
  skip_audits=kwargs.get("skip_audits", False),
188
188
  enable_health_check=kwargs.get("enable_health_check", False),
189
189
  include_tags=kwargs.get("include_tags"),
@@ -991,14 +991,25 @@ class SQLMeshDAGGenerator:
991
991
  }
992
992
 
993
993
  from datetime import timedelta as td
994
+
995
+ replan_timeout_hours = self.config.generation.replan_timeout_hours
994
996
  replan_task = PythonOperator(
995
997
  task_id="sqlmesh_plan_apply",
996
998
  python_callable=run_replan,
997
999
  dag=dag,
998
- # Use custom timeout for replan task - initial backfills can take hours!
999
- execution_timeout=td(hours=self.config.generation.replan_timeout_hours),
1000
+ execution_timeout=(
1001
+ td(hours=replan_timeout_hours)
1002
+ if replan_timeout_hours is not None
1003
+ else None
1004
+ ),
1000
1005
  )
1001
- logger.info(f"Created auto-replan task: sqlmesh_plan_apply (timeout: {self.config.generation.replan_timeout_hours}h)")
1006
+ if replan_timeout_hours is None:
1007
+ logger.info("Created auto-replan task: sqlmesh_plan_apply (timeout: disabled)")
1008
+ else:
1009
+ logger.info(
1010
+ "Created auto-replan task: sqlmesh_plan_apply (timeout: %sh)",
1011
+ replan_timeout_hours,
1012
+ )
1002
1013
 
1003
1014
  # Link health check to replan if both exist
1004
1015
  if health_check_task:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlmesh-dag-generator
3
- Version: 0.9.7
3
+ Version: 0.9.8
4
4
  Summary: Open-source Airflow DAG generator for SQLMesh projects
5
5
  Home-page: https://github.com/kubolko/sqlmesh-dag-generator
6
6
  Author: Jakub Sumionka