sidekiq_publisher 2.0.1 → 2.1.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.
- checksums.yaml +4 -4
- data/Appraisals +18 -0
- data/CHANGELOG.md +5 -0
- data/README.md +6 -5
- data/lib/sidekiq_publisher/compatibility.rb +22 -0
- data/lib/sidekiq_publisher/version.rb +1 -1
- data/lib/sidekiq_publisher/worker.rb +1 -1
- data/lib/sidekiq_publisher.rb +1 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa63cc2e02febd7a4fe0da8a1deba89df521cf9df46d453626ee80c45cb441c1
|
4
|
+
data.tar.gz: 8c4ba92a29040892080f1b0248dfec8a6f1193063f054c48d6736e3fc15a9e40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '01874b1f9cad7364bf28af24830f62278c3e6aea796a5af4b66ca1fc5c3a63806f48fe3a44892f40c18759dabe58f825d444f28fb48f7b76777440c988120728'
|
7
|
+
data.tar.gz: 9c1c712c199f2abc7fa86c61d9739c1739d78200978071cb0b4ee0cb470091c5d84cf310f0a523f5cb31c98b87ed0ef2afd42ca61d3d743c7f605dde45b32663
|
data/Appraisals
CHANGED
@@ -36,6 +36,12 @@ appraise "rails-5.2-sidekiq-6.2" do
|
|
36
36
|
gem "sidekiq", "~> 6.2.0"
|
37
37
|
end
|
38
38
|
|
39
|
+
appraise "rails-5.2-sidekiq-6.3" do
|
40
|
+
gem "activejob", "~> 5.2.0"
|
41
|
+
gem "activesupport", "~> 5.2.0"
|
42
|
+
gem "sidekiq", "~> 6.3.0"
|
43
|
+
end
|
44
|
+
|
39
45
|
appraise "rails-6.0-sidekiq-5.2" do
|
40
46
|
gem "activejob", "~> 6.0.0"
|
41
47
|
gem "activesupport", "~> 6.0.0"
|
@@ -60,6 +66,12 @@ appraise "rails-6.0-sidekiq-6.2" do
|
|
60
66
|
gem "sidekiq", "~> 6.2.0"
|
61
67
|
end
|
62
68
|
|
69
|
+
appraise "rails-6.0-sidekiq-6.3" do
|
70
|
+
gem "activejob", "~> 6.0.0"
|
71
|
+
gem "activesupport", "~> 6.0.0"
|
72
|
+
gem "sidekiq", "~> 6.3.0"
|
73
|
+
end
|
74
|
+
|
63
75
|
appraise "rails-6.1-sidekiq-5.2" do
|
64
76
|
gem "activejob", "~> 6.1.0"
|
65
77
|
gem "activesupport", "~> 6.1.0"
|
@@ -83,3 +95,9 @@ appraise "rails-6.1-sidekiq-6.2" do
|
|
83
95
|
gem "activesupport", "~> 6.1.0"
|
84
96
|
gem "sidekiq", "~> 6.2.0"
|
85
97
|
end
|
98
|
+
|
99
|
+
appraise "rails-6.1-sidekiq-6.3" do
|
100
|
+
gem "activejob", "~> 6.1.0"
|
101
|
+
gem "activesupport", "~> 6.1.0"
|
102
|
+
gem "sidekiq", "~> 6.3.0"
|
103
|
+
end
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# sidekiq_publisher
|
2
2
|
|
3
|
+
## 2.1.0
|
4
|
+
- Add support for sidekiq `7.0.0` by using `Sidekiq::Job` instead of
|
5
|
+
`Sidekiq::Worker` in sidekiq `>= 6.3.0` to handle name changes outlined in
|
6
|
+
mperham/sidekiq#4971 and first introduced in 6.2.2.
|
7
|
+
|
3
8
|
## 2.0.1
|
4
9
|
- Changing the `Job#args` validator to be a manual check instead of using the `exclusions` validator. This is to fix an issue introduced with rails 6.1 and the condition of `in: [nil]`. More details [here](https://github.com/rails/rails/issues/41051).
|
5
10
|
|
data/README.md
CHANGED
@@ -138,22 +138,23 @@ end
|
|
138
138
|
|
139
139
|
#### ActiveJob Exception Reporting
|
140
140
|
|
141
|
-
Many exception monitoring service (e.g. Sentry, Airbrake, Honeybadger, etc) already provide basic integration support for `Sidekiq`.
|
142
|
-
These integration should also work with `SidekiqPublisher`.
|
143
|
-
However, you may need to explicitly include
|
141
|
+
Many exception monitoring service (e.g. Sentry, Airbrake, Honeybadger, etc) already provide basic integration support for `Sidekiq`.
|
142
|
+
These integration should also work with `SidekiqPublisher`.
|
143
|
+
However, you may need to explicitly include
|
144
144
|
`ActiveJob::QueueAdapters::SidekiqPublisherAdapter` as a compatible adapter for this to work properly.
|
145
145
|
|
146
146
|
Alternatively, you can manually report the exception:
|
147
147
|
|
148
148
|
```ruby
|
149
149
|
retry_on SomeError, attempts: 10 do |_job, exception|
|
150
|
-
Raven.capture_exception(exception, extra: { custom: :foo }) # Reporting using the Sentry gem
|
150
|
+
Raven.capture_exception(exception, extra: { custom: :foo }) # Reporting using the Sentry gem
|
151
151
|
end
|
152
152
|
```
|
153
153
|
|
154
154
|
### SidekiqPublisher::Worker
|
155
155
|
|
156
|
-
Sidekiq workers are usually defined by including `Sidekiq::
|
156
|
+
Sidekiq workers are usually defined by including `Sidekiq::Job` or
|
157
|
+
`Sidekiq::Worker` in a class.
|
157
158
|
|
158
159
|
To use the `SidekiqPublisher`, this can be replaced by including
|
159
160
|
`SidekiqPublisher::Worker`. The usual `perform_async`, etc methods will be
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module SidekiqPublisher
|
4
|
+
module Compatibility
|
5
|
+
class << self
|
6
|
+
# Sidekiq::Worker will be renamed to Sidekiq::Job in sidekiq 7.0.0 and a
|
7
|
+
# deprecation warning will be printed in sidekiq 6.4.0, per
|
8
|
+
# mperham/sidekiq#4971. Sidekiq 6.2.2 (mperham/sidekiq@8e36432) introduces
|
9
|
+
# an alias and 6.3.0 includes it when the gem is loaded. This alias is
|
10
|
+
# used here to ensure future compatibility.
|
11
|
+
def sidekiq_job_class
|
12
|
+
@_sidekiq_job_class ||= Gem::Dependency.new("sidekiq", ">= 6.3.0").then do |dependency|
|
13
|
+
if dependency.match?(Gem.loaded_specs["sidekiq"])
|
14
|
+
Sidekiq::Job
|
15
|
+
else
|
16
|
+
Sidekiq::Worker
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module SidekiqPublisher
|
4
4
|
module Worker
|
5
5
|
def self.included(base)
|
6
|
-
base.include(
|
6
|
+
base.include(SidekiqPublisher::Compatibility.sidekiq_job_class)
|
7
7
|
base.singleton_class.public_send(:alias_method, :sidekiq_client_push, :client_push)
|
8
8
|
base.extend(ClassMethods)
|
9
9
|
end
|
data/lib/sidekiq_publisher.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require "active_support"
|
4
4
|
require "active_support/core_ext/numeric/time"
|
5
5
|
require "sidekiq_publisher/version"
|
6
|
+
require "sidekiq_publisher/compatibility"
|
6
7
|
require "sidekiq_publisher/instrumenter"
|
7
8
|
require "sidekiq_publisher/metrics_reporter"
|
8
9
|
require "sidekiq_publisher/exception_reporter"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq_publisher
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ezCater, Inc
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activejob
|
@@ -311,6 +311,7 @@ files:
|
|
311
311
|
- lib/generators/sidekiq_publisher/templates/create_sidekiq_publisher_jobs.rb
|
312
312
|
- lib/sidekiq_publisher.rb
|
313
313
|
- lib/sidekiq_publisher/client.rb
|
314
|
+
- lib/sidekiq_publisher/compatibility.rb
|
314
315
|
- lib/sidekiq_publisher/datadog_apm.rb
|
315
316
|
- lib/sidekiq_publisher/engine.rb
|
316
317
|
- lib/sidekiq_publisher/exception_reporter.rb
|
@@ -345,7 +346,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
345
346
|
- !ruby/object:Gem::Version
|
346
347
|
version: '0'
|
347
348
|
requirements: []
|
348
|
-
rubygems_version: 3.
|
349
|
+
rubygems_version: 3.1.4
|
349
350
|
signing_key:
|
350
351
|
specification_version: 4
|
351
352
|
summary: Publisher for enqueuing jobs to Sidekiq
|