dotflow 0.15.0.dev6__tar.gz → 0.15.0.dev7__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 (116) hide show
  1. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/PKG-INFO +1 -1
  2. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/__init__.py +1 -1
  3. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/schedule.py +14 -1
  4. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/pyproject.toml +2 -2
  5. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/LICENSE +0 -0
  6. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/README.md +0 -0
  7. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/__init__.py +0 -0
  8. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/file.py +0 -0
  9. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/flow.py +0 -0
  10. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/http.py +0 -0
  11. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/log.py +0 -0
  12. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/metrics.py +0 -0
  13. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/notify.py +0 -0
  14. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/scheduler.py +0 -0
  15. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/server.py +0 -0
  16. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/storage.py +0 -0
  17. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/tcp.py +0 -0
  18. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/abc/tracer.py +0 -0
  19. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/__init__.py +0 -0
  20. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/command.py +0 -0
  21. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/__init__.py +0 -0
  22. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/cloud.py +0 -0
  23. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/deploy.py +0 -0
  24. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/init.py +0 -0
  25. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/log.py +0 -0
  26. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/schedule.py +0 -0
  27. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/start.py +0 -0
  28. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/commands/storage.py +0 -0
  29. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/setup.py +0 -0
  30. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/validators/__init__.py +0 -0
  31. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cli/validators/start.py +0 -0
  32. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/__init__.py +0 -0
  33. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/__init__.py +0 -0
  34. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/constants.py +0 -0
  35. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/deployers/__init__.py +0 -0
  36. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/deployers/fc.py +0 -0
  37. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/deployers/fc_scheduled.py +0 -0
  38. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/services/__init__.py +0 -0
  39. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/alibaba/services/cr.py +0 -0
  40. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/__init__.py +0 -0
  41. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/constants.py +0 -0
  42. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/__init__.py +0 -0
  43. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/base_lambda.py +0 -0
  44. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/ecs.py +0 -0
  45. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/ecs_scheduled.py +0 -0
  46. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/lambda_.py +0 -0
  47. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/lambda_api.py +0 -0
  48. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/lambda_s3.py +0 -0
  49. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/deployers/lambda_sqs.py +0 -0
  50. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/services/__init__.py +0 -0
  51. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/services/cloudwatch.py +0 -0
  52. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/services/ecr.py +0 -0
  53. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/services/iam.py +0 -0
  54. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/aws/services/s3.py +0 -0
  55. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/core.py +0 -0
  56. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/__init__.py +0 -0
  57. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/constants.py +0 -0
  58. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/deployers/__init__.py +0 -0
  59. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/deployers/cloudrun.py +0 -0
  60. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/services/__init__.py +0 -0
  61. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/services/apis.py +0 -0
  62. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/services/artifact_registry.py +0 -0
  63. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/gcp/services/gcs.py +0 -0
  64. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/github/__init__.py +0 -0
  65. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/github/constants.py +0 -0
  66. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/github/deployers/__init__.py +0 -0
  67. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/cloud/github/deployers/actions.py +0 -0
  68. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/__init__.py +0 -0
  69. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/action.py +0 -0
  70. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/config.py +0 -0
  71. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/context.py +0 -0
  72. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/decorators/__init__.py +0 -0
  73. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/decorators/time.py +0 -0
  74. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/dotflow.py +0 -0
  75. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/engine.py +0 -0
  76. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/exception.py +0 -0
  77. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/module.py +0 -0
  78. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/serializers/__init__.py +0 -0
  79. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/serializers/task.py +0 -0
  80. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/serializers/transport.py +0 -0
  81. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/serializers/workflow.py +0 -0
  82. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/task.py +0 -0
  83. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/__init__.py +0 -0
  84. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/execution.py +0 -0
  85. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/overlap.py +0 -0
  86. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/status.py +0 -0
  87. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/storage.py +0 -0
  88. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/types/workflow.py +0 -0
  89. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/core/workflow.py +0 -0
  90. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/logging.py +0 -0
  91. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/main.py +0 -0
  92. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/__init__.py +0 -0
  93. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/log_default.py +0 -0
  94. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/log_opentelemetry.py +0 -0
  95. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/log_sentry.py +0 -0
  96. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/metrics_default.py +0 -0
  97. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/metrics_opentelemetry.py +0 -0
  98. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/notify_default.py +0 -0
  99. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/notify_discord.py +0 -0
  100. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/notify_telegram.py +0 -0
  101. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/scheduler_cron.py +0 -0
  102. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/scheduler_default.py +0 -0
  103. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/server_default.py +0 -0
  104. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/storage_default.py +0 -0
  105. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/storage_file.py +0 -0
  106. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/storage_gcs.py +0 -0
  107. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/storage_s3.py +0 -0
  108. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/tracer_default.py +0 -0
  109. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/tracer_opentelemetry.py +0 -0
  110. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/providers/tracer_sentry.py +0 -0
  111. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/settings.py +0 -0
  112. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/types.py +0 -0
  113. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/utils/__init__.py +0 -0
  114. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/utils/basic_functions.py +0 -0
  115. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/utils/error_handler.py +0 -0
  116. {dotflow-0.15.0.dev6 → dotflow-0.15.0.dev7}/dotflow/utils/tools.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dotflow
3
- Version: 0.15.0.dev6
3
+ Version: 0.15.0.dev7
4
4
  Summary: 🎲 Dotflow turns an idea into flow! Lightweight Python library for execution pipelines with retry, parallel, cron and async support.
5
5
  License: MIT License
6
6
 
@@ -1,6 +1,6 @@
1
1
  """Dotflow __init__ module."""
2
2
 
3
- __version__ = "0.15.0.dev6"
3
+ __version__ = "0.15.0.dev7"
4
4
  __description__ = "🎲 Dotflow turns an idea into flow!"
5
5
 
6
6
  from .core.action import Action as action
@@ -58,9 +58,22 @@ def _crontab_to_aws(expression: str) -> str:
58
58
 
59
59
  minute, hour, dom, month, dow = parts
60
60
 
61
- if dow != "*" and dom == "*":
61
+ minute = _fix_step(minute)
62
+ hour = _fix_step(hour)
63
+ dom = _fix_step(dom)
64
+ month = _fix_step(month)
65
+ dow = _fix_step(dow)
66
+
67
+ if dow != "*" and dow != "?" and dom == "*":
62
68
  dom = "?"
63
69
  else:
64
70
  dow = "?"
65
71
 
66
72
  return f"cron({minute} {hour} {dom} {month} {dow} *)"
73
+
74
+
75
+ def _fix_step(field: str) -> str:
76
+ """Convert */N to 0/N for AWS EventBridge compatibility."""
77
+ if field.startswith("*/"):
78
+ return "0/" + field[2:]
79
+ return field
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "dotflow"
3
- version = "0.15.0.dev6"
3
+ version = "0.15.0.dev7"
4
4
  authors = [
5
5
  { name="Fernando Celmer", email="email@fernandocelmer.com" },
6
6
  ]
@@ -66,7 +66,7 @@ sentry = ["sentry-sdk"]
66
66
 
67
67
  [tool.poetry]
68
68
  name = "dotflow"
69
- version = "0.15.0.dev6"
69
+ version = "0.15.0.dev7"
70
70
  description = "🎲 Dotflow turns an idea into flow! Lightweight Python library for execution pipelines with retry, parallel, cron and async support."
71
71
  authors = ["Fernando Celmer <email@fernandocelmer.com>"]
72
72
  readme = "README.md"
File without changes
File without changes