kaal 0.4.0 → 0.6.0

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 (131) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +60 -25
  3. data/config/kaal.yml +12 -0
  4. data/lib/kaal/active_record_support.rb +2 -2
  5. data/lib/kaal/backend/adapter.rb +8 -0
  6. data/lib/kaal/backend/memory_adapter.rb +5 -0
  7. data/lib/kaal/backend/mysql.rb +25 -3
  8. data/lib/kaal/backend/postgres.rb +6 -2
  9. data/lib/kaal/backend/redis_adapter.rb +5 -0
  10. data/lib/kaal/backend/sqlite.rb +4 -0
  11. data/lib/kaal/cli.rb +38 -33
  12. data/lib/kaal/config/backend_factory.rb +178 -0
  13. data/lib/kaal/config/configuration.rb +98 -9
  14. data/lib/kaal/config/delayed_job_security_policy.rb +60 -0
  15. data/lib/kaal/config/file_loader.rb +187 -0
  16. data/lib/kaal/config.rb +3 -0
  17. data/lib/kaal/core/coordinator.rb +68 -19
  18. data/lib/kaal/delayed_job/database_engine.rb +116 -0
  19. data/lib/kaal/delayed_job/dispatch_failure_logger.rb +31 -0
  20. data/lib/kaal/delayed_job/memory_engine.rb +79 -0
  21. data/lib/kaal/delayed_job/mysql_version_support.rb +43 -0
  22. data/lib/kaal/delayed_job/redis_engine.rb +119 -0
  23. data/lib/kaal/delayed_job/registry.rb +39 -0
  24. data/lib/kaal/internal/active_record/database_backend.rb +5 -0
  25. data/lib/kaal/internal/active_record/delayed_job_record.rb +16 -0
  26. data/lib/kaal/internal/active_record/delayed_job_registry.rb +119 -0
  27. data/lib/kaal/internal/active_record/migration_templates.rb +33 -3
  28. data/lib/kaal/internal/active_record/mysql_backend.rb +23 -5
  29. data/lib/kaal/internal/active_record/postgres_backend.rb +4 -0
  30. data/lib/kaal/internal/active_record.rb +2 -0
  31. data/lib/kaal/internal/sequel/database_backend.rb +5 -0
  32. data/lib/kaal/internal/sequel/mysql_backend.rb +15 -1
  33. data/lib/kaal/internal/sequel/postgres_backend.rb +4 -0
  34. data/lib/kaal/internal/sequel.rb +1 -0
  35. data/lib/kaal/job_dispatcher.rb +108 -0
  36. data/lib/kaal/persistence/database.rb +4 -0
  37. data/lib/kaal/persistence/migration_templates.rb +35 -3
  38. data/lib/kaal/runtime/scheduler_boot_loader.rb +3 -1
  39. data/lib/kaal/scheduler_file/job_applier.rb +28 -53
  40. data/lib/kaal/scheduler_file/loader.rb +1 -1
  41. data/lib/kaal/sequel_support.rb +2 -2
  42. data/lib/kaal/version.rb +1 -1
  43. data/lib/kaal.rb +118 -0
  44. data/sig/00_types.rbs +12 -0
  45. data/sig/dependencies.rbs +49 -0
  46. data/sig/kaal/active_record_support.rbs +23 -0
  47. data/sig/kaal/backend/adapter.rbs +26 -0
  48. data/sig/kaal/backend/dispatch_attempt_logger.rbs +17 -0
  49. data/sig/kaal/backend/dispatch_logging.rbs +23 -0
  50. data/sig/kaal/backend/dispatch_registry_accessor.rbs +17 -0
  51. data/sig/kaal/backend/memory_adapter.rbs +33 -0
  52. data/sig/kaal/backend/mysql.rbs +25 -0
  53. data/sig/kaal/backend/postgres.rbs +19 -0
  54. data/sig/kaal/backend/redis_adapter.rbs +41 -0
  55. data/sig/kaal/backend/sqlite.rbs +19 -0
  56. data/sig/kaal/cli.rbs +41 -0
  57. data/sig/kaal/config/backend_factory.rbs +41 -0
  58. data/sig/kaal/config/configuration.rbs +70 -0
  59. data/sig/kaal/config/delayed_job_security_policy.rbs +19 -0
  60. data/sig/kaal/config/file_loader.rbs +35 -0
  61. data/sig/kaal/config/scheduler_config_error.rbs +4 -0
  62. data/sig/kaal/config/scheduler_time_zone_resolver.rbs +19 -0
  63. data/sig/kaal/config.rbs +11 -0
  64. data/sig/kaal/core/coordinator.rbs +103 -0
  65. data/sig/kaal/core/enabled_entry_enumerator.rbs +21 -0
  66. data/sig/kaal/core/occurrence_finder.rbs +9 -0
  67. data/sig/kaal/core.rbs +9 -0
  68. data/sig/kaal/definition/database_engine.rbs +25 -0
  69. data/sig/kaal/definition/memory_engine.rbs +23 -0
  70. data/sig/kaal/definition/persistence_helpers.rbs +9 -0
  71. data/sig/kaal/definition/redis_engine.rbs +33 -0
  72. data/sig/kaal/definition/registry.rbs +29 -0
  73. data/sig/kaal/definitions/registration_service.rbs +27 -0
  74. data/sig/kaal/definitions/registry_accessor.rbs +17 -0
  75. data/sig/kaal/delayed_job/database_engine.rbs +37 -0
  76. data/sig/kaal/delayed_job/dispatch_failure_logger.rbs +7 -0
  77. data/sig/kaal/delayed_job/memory_engine.rbs +29 -0
  78. data/sig/kaal/delayed_job/mysql_version_support.rbs +15 -0
  79. data/sig/kaal/delayed_job/redis_engine.rbs +31 -0
  80. data/sig/kaal/delayed_job/registry.rbs +20 -0
  81. data/sig/kaal/dispatch/database_engine.rbs +39 -0
  82. data/sig/kaal/dispatch/memory_engine.rbs +23 -0
  83. data/sig/kaal/dispatch/redis_engine.rbs +25 -0
  84. data/sig/kaal/dispatch/registry.rbs +11 -0
  85. data/sig/kaal/internal/active_record/base_record.rbs +8 -0
  86. data/sig/kaal/internal/active_record/connection_support.rbs +25 -0
  87. data/sig/kaal/internal/active_record/database_backend.rbs +37 -0
  88. data/sig/kaal/internal/active_record/definition_record.rbs +8 -0
  89. data/sig/kaal/internal/active_record/definition_registry.rbs +27 -0
  90. data/sig/kaal/internal/active_record/delayed_job_record.rbs +8 -0
  91. data/sig/kaal/internal/active_record/delayed_job_registry.rbs +39 -0
  92. data/sig/kaal/internal/active_record/dispatch_record.rbs +8 -0
  93. data/sig/kaal/internal/active_record/dispatch_registry.rbs +43 -0
  94. data/sig/kaal/internal/active_record/lock_record.rbs +8 -0
  95. data/sig/kaal/internal/active_record/migration_templates.rbs +17 -0
  96. data/sig/kaal/internal/active_record/mysql_backend.rbs +45 -0
  97. data/sig/kaal/internal/active_record/postgres_backend.rbs +41 -0
  98. data/sig/kaal/internal/active_record.rbs +0 -0
  99. data/sig/kaal/internal/sequel/database_backend.rbs +39 -0
  100. data/sig/kaal/internal/sequel/mysql_backend.rbs +47 -0
  101. data/sig/kaal/internal/sequel/postgres_backend.rbs +43 -0
  102. data/sig/kaal/internal/sequel.rbs +0 -0
  103. data/sig/kaal/job_dispatcher.rbs +19 -0
  104. data/sig/kaal/persistence/database.rbs +19 -0
  105. data/sig/kaal/persistence/migration_templates.rbs +15 -0
  106. data/sig/kaal/register_conflict_support.rbs +11 -0
  107. data/sig/kaal/registry.rbs +44 -0
  108. data/sig/kaal/runtime/runtime_context.rbs +23 -0
  109. data/sig/kaal/runtime/scheduler_boot_loader.rbs +23 -0
  110. data/sig/kaal/runtime/signal_handler_chain.rbs +19 -0
  111. data/sig/kaal/runtime/signal_handler_installer.rbs +19 -0
  112. data/sig/kaal/runtime.rbs +11 -0
  113. data/sig/kaal/scheduler_file/hash_transform.rbs +9 -0
  114. data/sig/kaal/scheduler_file/helper_bundle.rbs +15 -0
  115. data/sig/kaal/scheduler_file/job_applier.rbs +43 -0
  116. data/sig/kaal/scheduler_file/job_normalizer.rbs +27 -0
  117. data/sig/kaal/scheduler_file/loader.rbs +69 -0
  118. data/sig/kaal/scheduler_file/payload_loader.rbs +33 -0
  119. data/sig/kaal/scheduler_file/placeholder_support.rbs +19 -0
  120. data/sig/kaal/scheduler_file.rbs +9 -0
  121. data/sig/kaal/sequel_support.rbs +25 -0
  122. data/sig/kaal/support/hash_tools.rbs +27 -0
  123. data/sig/kaal/utils/cron_humanizer.rbs +39 -0
  124. data/sig/kaal/utils/cron_utils.rbs +43 -0
  125. data/sig/kaal/utils/idempotency_key_generator.rbs +5 -0
  126. data/sig/kaal/utils.rbs +9 -0
  127. data/sig/kaal/version.rbs +3 -0
  128. data/sig/kaal.rbs +145 -0
  129. metadata +100 -3
  130. data/config/kaal.rb +0 -15
  131. /data/config/{scheduler.yml → kaal-scheduler.yml} +0 -0
@@ -0,0 +1,39 @@
1
+ module Kaal
2
+ module CronHumanizer
3
+ I18N_LOAD_MUTEX: Kaal::rbs_any
4
+
5
+ MACRO_PHRASES: ::Hash[::String, ::String]
6
+
7
+ def self.to_human: (Kaal::rbs_any expression, ?locale: Kaal::rbs_any?) -> Kaal::rbs_any
8
+
9
+ def self.humanize_expression: (Kaal::rbs_any normalized) -> Kaal::rbs_any
10
+
11
+ def self.humanize_macro: (Kaal::rbs_any expression) -> Kaal::rbs_any
12
+
13
+ def self.humanize_cron: (Kaal::rbs_any cron) -> Kaal::rbs_any
14
+
15
+ def self.every_minute_interval_phrase: (Kaal::rbs_any cron) -> (nil | Kaal::rbs_any)
16
+
17
+ def self.derive_interval: (Kaal::rbs_any minutes) -> (nil | Kaal::rbs_any)
18
+
19
+ def self.at_time_weekday_phrase: (Kaal::rbs_any cron) -> (nil | ::String)
20
+
21
+ def self.at_time_daily_phrase: (Kaal::rbs_any cron) -> (nil | ::String)
22
+
23
+ def self.single_time?: (Kaal::rbs_any cron) -> Kaal::rbs_any
24
+
25
+ def self.extract_weekday: (Kaal::rbs_any weekdays) -> (nil | Kaal::rbs_any)
26
+
27
+ def self.weekday_name: (Kaal::rbs_any day) -> Kaal::rbs_any
28
+
29
+ def self.format_time: (Kaal::rbs_any hour, Kaal::rbs_any minute) -> Kaal::rbs_any
30
+
31
+ def self.interval_unit: (Kaal::rbs_any count, singular: Kaal::rbs_any, plural: Kaal::rbs_any) -> Kaal::rbs_any
32
+
33
+ def self.macro?: (Kaal::rbs_any expression) -> Kaal::rbs_any
34
+
35
+ def self.translate_phrase: (Kaal::rbs_any key, **Kaal::rbs_any) -> Kaal::rbs_any
36
+
37
+ def self.ensure_i18n_loaded!: () -> (nil | Kaal::rbs_any)
38
+ end
39
+ end
@@ -0,0 +1,43 @@
1
+ module Kaal
2
+ module CronUtils
3
+ MACRO_MAP: ::Hash[::String, ::String]
4
+
5
+ CANONICAL_MACROS: ::Hash[::String, ::String]
6
+
7
+ FIELD_SPECS: ::Array[Kaal::rbs_any]
8
+
9
+ def self.normalize_expression: (Kaal::rbs_any expression) -> Kaal::rbs_any
10
+
11
+ def self.safe_normalize_expression: (Kaal::rbs_any expression) -> Kaal::rbs_any
12
+
13
+ def self.unsupported_macro_error_message: (Kaal::rbs_any expression) -> ::String
14
+
15
+ def self.invalid_expression_error_message: (Kaal::rbs_any expression) -> ::String
16
+
17
+ def self.valid?: (Kaal::rbs_any expression) -> Kaal::rbs_any
18
+
19
+ def self.simplify: (Kaal::rbs_any expression) -> Kaal::rbs_any
20
+
21
+ def self.lint: (Kaal::rbs_any expression) -> (::Array[Kaal::rbs_any] | Kaal::rbs_any)
22
+
23
+ def self.lint_field: (Kaal::rbs_any field, Kaal::rbs_any spec) -> Kaal::rbs_any
24
+
25
+ def self.lint_segment: (Kaal::rbs_any segment, Kaal::rbs_any spec) -> (::Array[Kaal::rbs_any] | Kaal::rbs_any | ::Array[::String])
26
+
27
+ def self.lint_step_only: (Kaal::rbs_any step, Kaal::rbs_any spec) -> (::Array[Kaal::rbs_any] | ::Array[::String])
28
+
29
+ def self.lint_range_segment: (Kaal::rbs_any segment, Kaal::rbs_any start_value, Kaal::rbs_any end_value, Kaal::rbs_any step, Kaal::rbs_any spec) -> (::Array[::String] | ::Array[Kaal::rbs_any])
30
+
31
+ def self.lint_base_step_segment: (Kaal::rbs_any segment, Kaal::rbs_any base, Kaal::rbs_any step, Kaal::rbs_any spec) -> (::Array[::String] | ::Array[Kaal::rbs_any])
32
+
33
+ def self.parse_value: (Kaal::rbs_any token, Kaal::rbs_any spec) -> (Kaal::rbs_any | nil)
34
+
35
+ def self.macro?: (Kaal::rbs_any expression) -> Kaal::rbs_any
36
+
37
+ def self.five_fields?: (Kaal::rbs_any expression) -> Kaal::rbs_any
38
+
39
+ def self.canonical_macro_for: (Kaal::rbs_any macro) -> Kaal::rbs_any
40
+
41
+ def self.field_count_message: (Kaal::rbs_any expression) -> ::String
42
+ end
43
+ end
@@ -0,0 +1,5 @@
1
+ module Kaal
2
+ class IdempotencyKeyGenerator
3
+ def self.call: (Kaal::rbs_any cron_key, Kaal::rbs_any fire_time, configuration: Kaal::rbs_any) -> ::String
4
+ end
5
+ end
@@ -0,0 +1,9 @@
1
+ module Kaal
2
+ module Utils
3
+ CronUtils: Kaal::rbs_any
4
+
5
+ CronHumanizer: Kaal::rbs_any
6
+
7
+ IdempotencyKeyGenerator: Kaal::rbs_any
8
+ end
9
+ end
@@ -0,0 +1,3 @@
1
+ module Kaal
2
+ VERSION: String
3
+ end
data/sig/kaal.rbs ADDED
@@ -0,0 +1,145 @@
1
+ module Kaal
2
+ self.@configuration: Kaal::rbs_any
3
+
4
+ self.@registry: Kaal::rbs_any
5
+
6
+ self.@coordinator: Kaal::rbs_any
7
+
8
+ self.@definition_registry: Kaal::rbs_any
9
+
10
+ self.@definitions_registry_accessor: Kaal::rbs_any
11
+
12
+ self.@dispatch_registry_accessor: Kaal::rbs_any
13
+
14
+ self.@risky_configuration_warnings_emitted: Kaal::rbs_any
15
+
16
+ self.@registration_service: Kaal::rbs_any
17
+
18
+ extend RegisterConflictSupport
19
+
20
+ def self.configuration: () -> Kaal::rbs_any
21
+
22
+ def self.registry: () -> Kaal::rbs_any
23
+
24
+ def self.coordinator: () -> Kaal::rbs_any
25
+
26
+ def self.reset_configuration!: () -> Kaal::rbs_any
27
+
28
+ def self.reset_registry!: () -> Kaal::rbs_any
29
+
30
+ def self.reset_coordinator!: () -> Kaal::rbs_any
31
+
32
+ def self.configure: () ?{ (Kaal::rbs_any) -> Kaal::rbs_any } -> (Kaal::rbs_any | nil)
33
+
34
+ def self.load_config_file!: (?path: ::String, ?runtime_context: Kaal::rbs_any) -> Kaal::rbs_any
35
+
36
+ def self.register: (key: Kaal::rbs_any, cron: Kaal::rbs_any, enqueue: Kaal::rbs_any) -> Kaal::rbs_any
37
+
38
+ def self.load_scheduler_file!: (?runtime_context: Kaal::rbs_any) -> Kaal::rbs_any
39
+
40
+ def self.unregister: (key: Kaal::rbs_any) -> Kaal::rbs_any
41
+
42
+ def self.registered: () -> Kaal::rbs_any
43
+
44
+ def self.registered?: (key: Kaal::rbs_any) -> Kaal::rbs_any
45
+
46
+ def self.enable: (key: Kaal::rbs_any) -> Kaal::rbs_any
47
+
48
+ def self.disable: (key: Kaal::rbs_any) -> Kaal::rbs_any
49
+
50
+ def self.start!: () -> Kaal::rbs_any
51
+
52
+ def self.stop!: (?timeout: ::Integer) -> Kaal::rbs_any
53
+
54
+ def self.running?: () -> Kaal::rbs_any
55
+
56
+ def self.restart!: () -> Kaal::rbs_any
57
+
58
+ def self.tick!: () -> Kaal::rbs_any
59
+
60
+ def self.enqueue_at: (at: Kaal::rbs_any, job_class: Kaal::rbs_any, args: Kaal::rbs_any, job_id: Kaal::rbs_any, ?queue: Kaal::rbs_any?, ?connection: Kaal::rbs_any?) -> Kaal::rbs_any
61
+
62
+ def self.with_idempotency: (Kaal::rbs_any key, Kaal::rbs_any fire_time) ?{ (Kaal::rbs_any) -> Kaal::rbs_any } -> Kaal::rbs_any
63
+
64
+ def self.dispatched?: (Kaal::rbs_any key, Kaal::rbs_any fire_time) -> Kaal::rbs_any
65
+
66
+ def self.dispatch_log_registry: () -> Kaal::rbs_any
67
+
68
+ def self.tick_interval: () -> Kaal::rbs_any
69
+
70
+ def self.window_lookback: () -> Kaal::rbs_any
71
+
72
+ def self.window_lookahead: () -> Kaal::rbs_any
73
+
74
+ def self.lease_ttl: () -> Kaal::rbs_any
75
+
76
+ def self.namespace: () -> Kaal::rbs_any
77
+
78
+ def self.backend: () -> Kaal::rbs_any
79
+
80
+ def self.logger: () -> Kaal::rbs_any
81
+
82
+ def self.time_zone: () -> Kaal::rbs_any
83
+
84
+ def self.tick_interval=: (Kaal::rbs_any value) -> Kaal::rbs_any
85
+
86
+ def self.window_lookback=: (Kaal::rbs_any value) -> Kaal::rbs_any
87
+
88
+ def self.window_lookahead=: (Kaal::rbs_any value) -> Kaal::rbs_any
89
+
90
+ def self.lease_ttl=: (Kaal::rbs_any value) -> Kaal::rbs_any
91
+
92
+ def self.namespace=: (Kaal::rbs_any value) -> Kaal::rbs_any
93
+
94
+ def self.backend=: (Kaal::rbs_any value) -> Kaal::rbs_any
95
+
96
+ def self.logger=: (Kaal::rbs_any value) -> Kaal::rbs_any
97
+
98
+ def self.time_zone=: (Kaal::rbs_any value) -> Kaal::rbs_any
99
+
100
+ def self.delayed_job_allowed_class_prefixes: () -> Kaal::rbs_any
101
+
102
+ def self.delayed_job_allowed_class_prefixes=: (Kaal::rbs_any value) -> Kaal::rbs_any
103
+
104
+ def self.definition_registry: () -> Kaal::rbs_any
105
+
106
+ def self.validate: () -> Kaal::rbs_any
107
+
108
+ def self.validate!: () -> Kaal::rbs_any
109
+
110
+ def self.validation_warnings: () -> Kaal::rbs_any
111
+
112
+ def self.warn_on_risky_configuration!: (?configuration: Kaal::rbs_any, ?logger: Kaal::rbs_any) -> (::Array[Kaal::rbs_any] | Kaal::rbs_any)
113
+
114
+ def self.valid?: (Kaal::rbs_any expression) -> Kaal::rbs_any
115
+
116
+ def self.simplify: (Kaal::rbs_any expression) -> Kaal::rbs_any
117
+
118
+ def self.lint: (Kaal::rbs_any expression) -> Kaal::rbs_any
119
+
120
+ def self.to_human: (Kaal::rbs_any expression, ?locale: Kaal::rbs_any?) -> Kaal::rbs_any
121
+
122
+ private
123
+
124
+ def self.rollback_registered_definition: (Kaal::rbs_any key, Kaal::rbs_any existing_definition) -> (Kaal::rbs_any | Kaal::rbs_any | nil)
125
+
126
+ def self.registration_service: () -> Kaal::rbs_any
127
+
128
+ def self.definitions_registry_accessor: () -> Kaal::rbs_any
129
+
130
+ def self.dispatch_registry_accessor: () -> Kaal::rbs_any
131
+
132
+ def self.delayed_store!: () -> Kaal::rbs_any
133
+
134
+ def self.normalize_delayed_run_at: (Kaal::rbs_any at) -> Kaal::rbs_any
135
+
136
+ def self.normalize_delayed_args: (Kaal::rbs_any args) -> Kaal::rbs_any
137
+
138
+ def self.normalize_delayed_queue: (Kaal::rbs_any queue) -> (nil | Kaal::rbs_any)
139
+
140
+ def self.normalize_delayed_job_id: (Kaal::rbs_any job_id) -> Kaal::rbs_any
141
+
142
+ def self.invalid_delayed_time_error: () -> Kaal::rbs_any
143
+
144
+ def self.ensure_delayed_time!: (Kaal::rbs_any time) -> (Kaal::rbs_any | nil)
145
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kaal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nitesh Purohit
@@ -79,9 +79,9 @@ files:
79
79
  - LICENSE
80
80
  - README.md
81
81
  - Rakefile
82
- - config/kaal.rb
82
+ - config/kaal-scheduler.yml
83
+ - config/kaal.yml
83
84
  - config/locales/en.yml
84
- - config/scheduler.yml
85
85
  - exe/kaal
86
86
  - lib/kaal.rb
87
87
  - lib/kaal/active_record_support.rb
@@ -96,7 +96,10 @@ files:
96
96
  - lib/kaal/backend/sqlite.rb
97
97
  - lib/kaal/cli.rb
98
98
  - lib/kaal/config.rb
99
+ - lib/kaal/config/backend_factory.rb
99
100
  - lib/kaal/config/configuration.rb
101
+ - lib/kaal/config/delayed_job_security_policy.rb
102
+ - lib/kaal/config/file_loader.rb
100
103
  - lib/kaal/config/scheduler_config_error.rb
101
104
  - lib/kaal/config/scheduler_time_zone_resolver.rb
102
105
  - lib/kaal/core.rb
@@ -110,6 +113,12 @@ files:
110
113
  - lib/kaal/definition/registry.rb
111
114
  - lib/kaal/definitions/registration_service.rb
112
115
  - lib/kaal/definitions/registry_accessor.rb
116
+ - lib/kaal/delayed_job/database_engine.rb
117
+ - lib/kaal/delayed_job/dispatch_failure_logger.rb
118
+ - lib/kaal/delayed_job/memory_engine.rb
119
+ - lib/kaal/delayed_job/mysql_version_support.rb
120
+ - lib/kaal/delayed_job/redis_engine.rb
121
+ - lib/kaal/delayed_job/registry.rb
113
122
  - lib/kaal/dispatch/database_engine.rb
114
123
  - lib/kaal/dispatch/memory_engine.rb
115
124
  - lib/kaal/dispatch/redis_engine.rb
@@ -120,6 +129,8 @@ files:
120
129
  - lib/kaal/internal/active_record/database_backend.rb
121
130
  - lib/kaal/internal/active_record/definition_record.rb
122
131
  - lib/kaal/internal/active_record/definition_registry.rb
132
+ - lib/kaal/internal/active_record/delayed_job_record.rb
133
+ - lib/kaal/internal/active_record/delayed_job_registry.rb
123
134
  - lib/kaal/internal/active_record/dispatch_record.rb
124
135
  - lib/kaal/internal/active_record/dispatch_registry.rb
125
136
  - lib/kaal/internal/active_record/lock_record.rb
@@ -130,6 +141,7 @@ files:
130
141
  - lib/kaal/internal/sequel/database_backend.rb
131
142
  - lib/kaal/internal/sequel/mysql_backend.rb
132
143
  - lib/kaal/internal/sequel/postgres_backend.rb
144
+ - lib/kaal/job_dispatcher.rb
133
145
  - lib/kaal/persistence/database.rb
134
146
  - lib/kaal/persistence/migration_templates.rb
135
147
  - lib/kaal/register_conflict_support.rb
@@ -154,6 +166,91 @@ files:
154
166
  - lib/kaal/utils/cron_utils.rb
155
167
  - lib/kaal/utils/idempotency_key_generator.rb
156
168
  - lib/kaal/version.rb
169
+ - sig/00_types.rbs
170
+ - sig/dependencies.rbs
171
+ - sig/kaal.rbs
172
+ - sig/kaal/active_record_support.rbs
173
+ - sig/kaal/backend/adapter.rbs
174
+ - sig/kaal/backend/dispatch_attempt_logger.rbs
175
+ - sig/kaal/backend/dispatch_logging.rbs
176
+ - sig/kaal/backend/dispatch_registry_accessor.rbs
177
+ - sig/kaal/backend/memory_adapter.rbs
178
+ - sig/kaal/backend/mysql.rbs
179
+ - sig/kaal/backend/postgres.rbs
180
+ - sig/kaal/backend/redis_adapter.rbs
181
+ - sig/kaal/backend/sqlite.rbs
182
+ - sig/kaal/cli.rbs
183
+ - sig/kaal/config.rbs
184
+ - sig/kaal/config/backend_factory.rbs
185
+ - sig/kaal/config/configuration.rbs
186
+ - sig/kaal/config/delayed_job_security_policy.rbs
187
+ - sig/kaal/config/file_loader.rbs
188
+ - sig/kaal/config/scheduler_config_error.rbs
189
+ - sig/kaal/config/scheduler_time_zone_resolver.rbs
190
+ - sig/kaal/core.rbs
191
+ - sig/kaal/core/coordinator.rbs
192
+ - sig/kaal/core/enabled_entry_enumerator.rbs
193
+ - sig/kaal/core/occurrence_finder.rbs
194
+ - sig/kaal/definition/database_engine.rbs
195
+ - sig/kaal/definition/memory_engine.rbs
196
+ - sig/kaal/definition/persistence_helpers.rbs
197
+ - sig/kaal/definition/redis_engine.rbs
198
+ - sig/kaal/definition/registry.rbs
199
+ - sig/kaal/definitions/registration_service.rbs
200
+ - sig/kaal/definitions/registry_accessor.rbs
201
+ - sig/kaal/delayed_job/database_engine.rbs
202
+ - sig/kaal/delayed_job/dispatch_failure_logger.rbs
203
+ - sig/kaal/delayed_job/memory_engine.rbs
204
+ - sig/kaal/delayed_job/mysql_version_support.rbs
205
+ - sig/kaal/delayed_job/redis_engine.rbs
206
+ - sig/kaal/delayed_job/registry.rbs
207
+ - sig/kaal/dispatch/database_engine.rbs
208
+ - sig/kaal/dispatch/memory_engine.rbs
209
+ - sig/kaal/dispatch/redis_engine.rbs
210
+ - sig/kaal/dispatch/registry.rbs
211
+ - sig/kaal/internal/active_record.rbs
212
+ - sig/kaal/internal/active_record/base_record.rbs
213
+ - sig/kaal/internal/active_record/connection_support.rbs
214
+ - sig/kaal/internal/active_record/database_backend.rbs
215
+ - sig/kaal/internal/active_record/definition_record.rbs
216
+ - sig/kaal/internal/active_record/definition_registry.rbs
217
+ - sig/kaal/internal/active_record/delayed_job_record.rbs
218
+ - sig/kaal/internal/active_record/delayed_job_registry.rbs
219
+ - sig/kaal/internal/active_record/dispatch_record.rbs
220
+ - sig/kaal/internal/active_record/dispatch_registry.rbs
221
+ - sig/kaal/internal/active_record/lock_record.rbs
222
+ - sig/kaal/internal/active_record/migration_templates.rbs
223
+ - sig/kaal/internal/active_record/mysql_backend.rbs
224
+ - sig/kaal/internal/active_record/postgres_backend.rbs
225
+ - sig/kaal/internal/sequel.rbs
226
+ - sig/kaal/internal/sequel/database_backend.rbs
227
+ - sig/kaal/internal/sequel/mysql_backend.rbs
228
+ - sig/kaal/internal/sequel/postgres_backend.rbs
229
+ - sig/kaal/job_dispatcher.rbs
230
+ - sig/kaal/persistence/database.rbs
231
+ - sig/kaal/persistence/migration_templates.rbs
232
+ - sig/kaal/register_conflict_support.rbs
233
+ - sig/kaal/registry.rbs
234
+ - sig/kaal/runtime.rbs
235
+ - sig/kaal/runtime/runtime_context.rbs
236
+ - sig/kaal/runtime/scheduler_boot_loader.rbs
237
+ - sig/kaal/runtime/signal_handler_chain.rbs
238
+ - sig/kaal/runtime/signal_handler_installer.rbs
239
+ - sig/kaal/scheduler_file.rbs
240
+ - sig/kaal/scheduler_file/hash_transform.rbs
241
+ - sig/kaal/scheduler_file/helper_bundle.rbs
242
+ - sig/kaal/scheduler_file/job_applier.rbs
243
+ - sig/kaal/scheduler_file/job_normalizer.rbs
244
+ - sig/kaal/scheduler_file/loader.rbs
245
+ - sig/kaal/scheduler_file/payload_loader.rbs
246
+ - sig/kaal/scheduler_file/placeholder_support.rbs
247
+ - sig/kaal/sequel_support.rbs
248
+ - sig/kaal/support/hash_tools.rbs
249
+ - sig/kaal/utils.rbs
250
+ - sig/kaal/utils/cron_humanizer.rbs
251
+ - sig/kaal/utils/cron_utils.rbs
252
+ - sig/kaal/utils/idempotency_key_generator.rbs
253
+ - sig/kaal/version.rbs
157
254
  homepage: https://github.com/Code-Vedas/kaal
158
255
  licenses:
159
256
  - MIT
data/config/kaal.rb DELETED
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright Codevedas Inc. 2025-present
4
- #
5
- # This source code is licensed under the MIT license found in the
6
- # LICENSE file in the root directory of this source tree.
7
- require 'kaal'
8
-
9
- Kaal.configure do |config|
10
- config.backend = Kaal::Backend::MemoryAdapter.new
11
- config.tick_interval = 5
12
- config.window_lookback = 120
13
- config.lease_ttl = 125
14
- config.scheduler_config_path = 'config/scheduler.yml'
15
- end
File without changes