delayed 0.5.2 → 0.5.3
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/lib/delayed/active_job_adapter.rb +1 -1
- data/lib/delayed/job_wrapper.rb +10 -2
- data/lib/delayed/monitor.rb +1 -1
- data/spec/delayed/active_job_adapter_spec.rb +10 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1a6428c0614b28cf06d2921310bea48cc8e0bcc891a9772b7aed44238dbf1533
|
4
|
+
data.tar.gz: fa61f990945d382d21dd856170ce10dc52ecf44f2360a5be8ac9ec3463f9b5ac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46152e349a8b725978c3ef8a281789e288301e1d605b67fe4a8562733dac1742d5a9783a329c1569dce69910e73249b1134f8a5a1b19956ccb2b3a3a355dddd9
|
7
|
+
data.tar.gz: f6bd7af40fd73a4d4d9fe5c2af5eb307241d627a43ecf972cc7fb6510ba1a0d2ad0b2e065fdf935bb2bc3f03ffa912f91d2cead31cd01a2ab5aa6e70d446203a
|
@@ -14,7 +14,7 @@ module Delayed
|
|
14
14
|
opts.merge!({ queue: job.queue_name, priority: job.priority }.compact)
|
15
15
|
.merge!(job.provider_attributes || {})
|
16
16
|
|
17
|
-
Delayed::Job.enqueue(JobWrapper.new(job
|
17
|
+
Delayed::Job.enqueue(JobWrapper.new(job), opts).tap do |dj|
|
18
18
|
job.provider_job_id = dj.id
|
19
19
|
end
|
20
20
|
end
|
data/lib/delayed/job_wrapper.rb
CHANGED
@@ -4,8 +4,16 @@ module Delayed
|
|
4
4
|
|
5
5
|
delegate_missing_to :job
|
6
6
|
|
7
|
-
def initialize(
|
8
|
-
|
7
|
+
def initialize(job_or_data)
|
8
|
+
# During enqueue the job instance is passed in directly, saves us deserializing
|
9
|
+
# it to find out how to queue the job.
|
10
|
+
# During load from the db, we get a data hash passed in so deserialize lazily.
|
11
|
+
if job_or_data.is_a?(ActiveJob::Base)
|
12
|
+
@job = job_or_data
|
13
|
+
@job_data = job_or_data.serialize
|
14
|
+
else
|
15
|
+
@job_data = job_or_data
|
16
|
+
end
|
9
17
|
end
|
10
18
|
|
11
19
|
def display_name
|
data/lib/delayed/monitor.rb
CHANGED
@@ -34,7 +34,7 @@ module Delayed
|
|
34
34
|
attr_reader :jobs
|
35
35
|
|
36
36
|
def emit_metric!(metric)
|
37
|
-
send("#{metric}_grouped").reverse_merge(default_results).each do |(priority, queue), value|
|
37
|
+
send(:"#{metric}_grouped").reverse_merge(default_results).each do |(priority, queue), value|
|
38
38
|
ActiveSupport::Notifications.instrument(
|
39
39
|
"delayed.job.#{metric}",
|
40
40
|
default_tags.merge(priority: Priority.new(priority).to_s, queue: queue, value: value),
|
@@ -23,6 +23,16 @@ RSpec.describe Delayed::ActiveJobAdapter do
|
|
23
23
|
ActiveJob::Base.queue_adapter = adapter_was
|
24
24
|
end
|
25
25
|
|
26
|
+
it "does not invoke #deserialize during enqueue" do # rubocop:disable RSpec/NoExpectationExample
|
27
|
+
JobClass.include(Module.new do
|
28
|
+
def deserialize(*)
|
29
|
+
raise "uh oh, deserialize called during enqueue!"
|
30
|
+
end
|
31
|
+
end)
|
32
|
+
|
33
|
+
JobClass.perform_later
|
34
|
+
end
|
35
|
+
|
26
36
|
it 'serializes a JobWrapper in the handler with expected fields' do
|
27
37
|
Timecop.freeze('2023-01-20T18:52:29Z') do
|
28
38
|
JobClass.perform_later
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: delayed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Griffith
|
@@ -19,7 +19,7 @@ authors:
|
|
19
19
|
autorequire:
|
20
20
|
bindir: bin
|
21
21
|
cert_chain: []
|
22
|
-
date:
|
22
|
+
date: 2024-01-31 00:00:00.000000000 Z
|
23
23
|
dependencies:
|
24
24
|
- !ruby/object:Gem::Dependency
|
25
25
|
name: activerecord
|