que-scheduler 5.0.0 → 5.1.1
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.
- checksums.yaml +4 -4
- data/README.md +3 -1
- data/lib/que/scheduler/state_checks.rb +2 -0
- data/lib/que/scheduler/to_enqueue.rb +17 -12
- data/lib/que/scheduler/version.rb +1 -1
- data/lib/que-scheduler.rb +0 -2
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c8e6eface6f64e6dd63dfcd340528a0624e13fc0dc5d38e7c0aeaf9a233bf870
|
4
|
+
data.tar.gz: b89fe9c4ed0bf5e0897307b695e7ff614df9b4a3cd8187e78038ff50a7bab22b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 33d83f27fdf2f22beabcea208bb6f19dce018c8b60b9f29a82771a4e7b2fbd5ad25abd9e42559c2967db6bec26d89b67464a3f59ff4fa806685549ca45d4d5d5
|
7
|
+
data.tar.gz: 2b0239e99adac86c1dd5d2324e9bd120ecb36a46b35b7411682c40c57a5e8767d2aff44e1ecbe32cdf613b064b5f14455bf786343ca3969f1fadb2b54bae3896
|
data/README.md
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
que-scheduler
|
2
2
|
================
|
3
3
|
|
4
|
-
[](https://
|
4
|
+
[](https://rubygems.org/gems/que-scheduler)
|
5
|
+
[](https://github.com/hlascelles/que-scheduler/actions)
|
6
|
+
[](https://opensource.org/licenses/MIT)
|
5
7
|
[](https://coveralls.io/github/hlascelles/que-scheduler?branch=master)
|
6
8
|
[](https://codeclimate.com/github/hlascelles/que-scheduler/maintainability)
|
7
9
|
|
@@ -10,6 +10,7 @@ module Que
|
|
10
10
|
assert_db_migrated
|
11
11
|
end
|
12
12
|
|
13
|
+
# rubocop:disable Metrics/MethodLength
|
13
14
|
private def assert_db_migrated
|
14
15
|
db_version = Que::Scheduler::Migrations.db_version
|
15
16
|
return if db_version == Que::Scheduler::Migrations::MAX_VERSION
|
@@ -57,6 +58,7 @@ module Que
|
|
57
58
|
synchronously. This will fail as que-scheduler needs the above tables to work.
|
58
59
|
ERR
|
59
60
|
end
|
61
|
+
# rubocop:enable Metrics/MethodLength
|
60
62
|
end
|
61
63
|
end
|
62
64
|
end
|
@@ -96,18 +96,7 @@ module Que
|
|
96
96
|
# be used when the job is worked.
|
97
97
|
data = JSON.parse(job.to_json, symbolize_names: true)
|
98
98
|
|
99
|
-
|
100
|
-
scheduled_at =
|
101
|
-
begin
|
102
|
-
scheduled_at_float = data[:scheduled_at]
|
103
|
-
# rubocop:disable Style/EmptyElse
|
104
|
-
if scheduled_at_float
|
105
|
-
Que::Scheduler::TimeZone.time_zone.at(scheduled_at_float)
|
106
|
-
else
|
107
|
-
nil
|
108
|
-
end
|
109
|
-
# rubocop:enable Style/EmptyElse
|
110
|
-
end
|
99
|
+
scheduled_at = self.class.extract_scheduled_at(data[:scheduled_at])
|
111
100
|
|
112
101
|
# Rails didn't support queues for ActiveJob for a while
|
113
102
|
used_queue = data[:queue_name] if ToEnqueue.active_job_version_supports_queues?
|
@@ -142,6 +131,22 @@ module Que
|
|
142
131
|
job_class_set.perform_later(*args)
|
143
132
|
end
|
144
133
|
end
|
134
|
+
|
135
|
+
class << self
|
136
|
+
# ActiveJob scheduled_at is returned as a float, or a string post Rails 7.1,
|
137
|
+
# and we want a Time for consistency
|
138
|
+
def extract_scheduled_at(scheduled_at)
|
139
|
+
# rubocop:disable Style/EmptyElse
|
140
|
+
if scheduled_at.is_a?(Float)
|
141
|
+
Que::Scheduler::TimeZone.time_zone.at(scheduled_at)
|
142
|
+
elsif scheduled_at.is_a?(String)
|
143
|
+
Que::Scheduler::TimeZone.time_zone.parse(scheduled_at)
|
144
|
+
else
|
145
|
+
nil
|
146
|
+
end
|
147
|
+
# rubocop:enable Style/EmptyElse
|
148
|
+
end
|
149
|
+
end
|
145
150
|
end
|
146
151
|
|
147
152
|
# A value object returned after a job has been enqueued. This is necessary as Que (normal) and
|
data/lib/que-scheduler.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: que-scheduler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Harry Lascelles
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
version: '1.1'
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 1.1
|
36
|
+
version: 1.11.1
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '1.1'
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 1.1
|
46
|
+
version: 1.11.1
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: hashie
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -436,7 +436,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
436
436
|
- !ruby/object:Gem::Version
|
437
437
|
version: '0'
|
438
438
|
requirements: []
|
439
|
-
rubygems_version: 3.
|
439
|
+
rubygems_version: 3.5.11
|
440
440
|
signing_key:
|
441
441
|
specification_version: 4
|
442
442
|
summary: A cron scheduler for Que
|