resque-serializer 0.1.1 → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c585a7208430ad2238d75d959dbb0894ca294263
4
- data.tar.gz: 2ea899d81f89c05a9eeb048e718c41062649c3fb
3
+ metadata.gz: df7981e4e3465956ef681be0515e3b132f467c92
4
+ data.tar.gz: beb3c0112e30f2a4d87a7e4a00cbf2b3b83a2c48
5
5
  SHA512:
6
- metadata.gz: b503d44847ec2b7a699d6064ce66714f23ad7d991b5772fbc9da0816de5900a0f8dd52e3824d6fa2ee2adc3fac9913ed8889a37d18bad9539135e4fc1b8ac52a
7
- data.tar.gz: 536e86f5487b7d6953e92045960844c9324d4b096809f99b6207abd0d863a377b26863321496faba45e9dd6c6e205395c7e83e98e23572c89f41534d7835b1d9
6
+ metadata.gz: 9d611f691cfd8fa954a57bdcdb07ba636259fc96e407b5ec4add1baafbfbf50a89ad673d0742d7a95543bc16a0baf583a36e345b97b4484e20771572b9a75f7d
7
+ data.tar.gz: fe4ca85898ed891dd318101cd6be87635ab141cd48eafb2261cc86702b07f168dce205f998947934905f932bb7e5207000bf9756bb970b14c6c92b6392a8d6f2
@@ -0,0 +1,8 @@
1
+ ### Description
2
+ A description of the changes included in this PR
3
+
4
+ ### Tasks
5
+ - [ ] Any tasks that must be completed before or after this PR
6
+
7
+ ### References
8
+ - Any Github issues or other links related to this PR
data/CHANGELOG.md ADDED
@@ -0,0 +1,13 @@
1
+ # Changelog
2
+
3
+ The noteworthy changes for each Resque::Serializer version are included here.
4
+ For a complete changelog, see the git history for each version via the version
5
+ links.
6
+
7
+ ## [0.1.0] - April 10, 2017
8
+
9
+ ### Initial Release
10
+ - Initial release. Adds support for resque job serialization via four
11
+ strategies.
12
+
13
+ [0.1.0]: https://github.com/rringler/resque-serializer/releases/tag/v0.1.0
@@ -0,0 +1,36 @@
1
+ module ResqueSerializer
2
+ module MonkeyPatches
3
+ module Resque
4
+ # NOTE: `Resque#pop` is called when working queued jobs via the
5
+ # `resque:work` rake task. Resque's default implementation will
6
+ # not trigger the `before_dequeue` or `after_dequeue` hooks;
7
+ # this patch will force it do so.
8
+ def pop(queue)
9
+ return unless (job_details = decode(data_store.pop_from_queue(queue)))
10
+ klass = job_details['class'].safe_constantize
11
+ args = job_details['args']
12
+
13
+ # Perform before_dequeue hooks. Don't perform dequeue if any hook
14
+ # returns false
15
+ # rubocop:disable Metrics/LineLength
16
+ before_hooks = ::Resque::Plugin.before_dequeue_hooks(klass).collect do |hook|
17
+ klass.send(hook, *args)
18
+ end
19
+
20
+ return job_details if before_hooks.any? { |result| result == false }
21
+
22
+ ::Resque::Plugin.after_dequeue_hooks(klass).each do |hook|
23
+ klass.send(hook, *args)
24
+ end
25
+
26
+ job_details
27
+ end
28
+ end
29
+ end
30
+ end
31
+
32
+ module Resque
33
+ prepend ResqueSerializer::MonkeyPatches::Resque
34
+
35
+ module_function :pop
36
+ end
@@ -1,7 +1,7 @@
1
1
  module Resque
2
2
  module Plugins
3
3
  module Serializer
4
- VERSION = '0.1.1'
4
+ VERSION = '0.1.2'
5
5
  end
6
6
  end
7
7
  end
@@ -1,4 +1,5 @@
1
1
  require 'resque-serializer/version'
2
+ require 'resque-serializer/monkey_patches/resque'
2
3
  require 'resque-serializer/mutex'
3
4
  require 'resque-serializer/serializers/both'
4
5
  require 'resque-serializer/serializers/combined'
@@ -21,10 +21,10 @@ Gem::Specification.new do |gem|
21
21
  gem.add_dependency 'resque'
22
22
 
23
23
  gem.add_development_dependency 'bundler', '~> 1.14'
24
+ gem.add_development_dependency 'bump', '~> 0.7'
24
25
  gem.add_development_dependency 'mock_redis'
25
26
  gem.add_development_dependency 'pry-byebug'
26
27
  gem.add_development_dependency 'pry-stack_explorer'
27
28
  gem.add_development_dependency 'rake'
28
- gem.add_development_dependency 'resque_spec'
29
29
  gem.add_development_dependency 'rspec', '~> 3.0'
30
30
  end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+
3
+ class ResqueDequeueHookJob
4
+ extend Resque::Plugins::Serializer
5
+
6
+ serialize :both
7
+
8
+ @queue = :default
9
+
10
+ def self.perform(*args); end
11
+ end
12
+
13
+ RSpec.describe ResqueDequeueHookJob do
14
+ let(:args) { %w[arg1 arg2] }
15
+ let(:queue_name) { :default }
16
+ let(:dequeue_hooks) { [] }
17
+
18
+ before do
19
+ allow(Resque::Plugin)
20
+ .to receive(:before_dequeue_hooks)
21
+ .and_return(dequeue_hooks)
22
+ allow(Resque::Plugin)
23
+ .to receive(:after_dequeue_hooks)
24
+ .and_return(dequeue_hooks)
25
+ enqueue_job
26
+ end
27
+
28
+ it 'executes the dequeue hooks' do
29
+ expect(::Resque::Plugin).to receive(:before_dequeue_hooks).ordered
30
+ expect(::Resque::Plugin).to receive(:after_dequeue_hooks).ordered
31
+
32
+ execute_job
33
+ end
34
+ end
@@ -21,107 +21,64 @@ class JobSerializedByBoth
21
21
  end
22
22
 
23
23
  RSpec.describe JobSerializedByBoth do
24
- let(:args) { %w(arg1 arg2) }
24
+ let(:args) { %w[arg1 arg2] }
25
+ let(:queue_name) { :default }
25
26
 
26
27
  before do
27
- ResqueSpec.reset!
28
28
  Resque.redis.redis.flushall
29
29
  end
30
30
 
31
- describe 'before enqueuing the job' do
32
- let(:mutex) { described_class.queue_mutex(args) }
33
-
34
- subject(:enqueue_job) { Resque.enqueue(described_class, *args) }
35
-
36
- context 'when a lock for the job exists' do
37
- before { mutex.lock! }
38
-
39
- it 'does not enqueue the job' do
40
- expect { enqueue_job }.to_not change {
41
- ResqueSpec.queue_for(described_class).size
42
- }.from(0)
43
- end
44
-
45
- it 'does not unlock the mutex' do
46
- expect { enqueue_job }.to_not change {
47
- mutex.locked?
48
- }.from(true)
49
- end
31
+ context 'with no jobs in the queue' do
32
+ before do
33
+ expect(queue_size).to eq(0)
50
34
  end
51
35
 
52
- context 'when a lock for the job does not exist' do
53
- it 'enqueues the job' do
54
- expect { enqueue_job }.to change {
55
- ResqueSpec.queue_for(described_class).size
56
- }.from(0).to(1)
57
- end
58
-
59
- it 'locks the mutex' do
60
- expect { enqueue_job }.to change {
61
- mutex.locked?
62
- }.from(false).to(true)
63
- end
36
+ it 'can enqueue the job' do
37
+ expect { enqueue_job }.to change {
38
+ queue_size
39
+ }.from(0).to(1)
64
40
  end
65
- end
66
-
67
- describe 'after dequeuing the job' do
68
- let(:mutex) { described_class.queue_mutex(args) }
69
-
70
- subject(:dequeue_job) { Resque.dequeue(described_class, *args) }
71
-
72
- before { mutex.lock! }
73
41
 
74
- it 'unlocks the mutex' do
75
- expect { dequeue_job }.to change {
76
- mutex.locked?
77
- }.from(true).to(false)
42
+ it 'can not execute any jobs' do
43
+ expect(execute_job).to be_nil
78
44
  end
79
45
  end
80
46
 
81
- describe 'before dequeuing the job' do
82
- let(:mutex) { described_class.job_mutex(args) }
47
+ context 'with one job in the queue' do
48
+ before do
49
+ enqueue_job
50
+ expect(queue_size).to eq(1)
51
+ end
83
52
 
84
- subject(:dequeue_job) { Resque.dequeue(described_class, *args) }
53
+ it 'cannot enqueue the same job' do
54
+ expect { enqueue_job }.to_not change {
55
+ queue_size
56
+ }.from(1)
57
+ end
85
58
 
86
- it 'locks the mutex' do
87
- expect { dequeue_job }.to change {
88
- mutex.locked?
89
- }.from(false).to(true)
59
+ it 'can execute the job' do
60
+ expect(execute_job).to_not be_nil
90
61
  end
91
62
  end
92
63
 
93
- describe 'after performing the job' do
94
- let(:mutex) { described_class.job_mutex(args) }
95
-
64
+ context 'with one job in the queue and one job being executed' do
96
65
  before do
97
- Resque.enqueue(described_class, *args)
98
- mutex.lock!
66
+ enqueue_job
67
+ expect(queue_size).to eq(1)
68
+ execute_job
69
+ expect(queue_size).to eq(0)
70
+ enqueue_job
71
+ expect(queue_size).to eq(1)
99
72
  end
100
73
 
101
- subject(:perform_job) { ResqueSpec.perform_next(:default) }
102
-
103
- context 'if the job completes successfully' do
104
- it 'releases the lock after execution' do
105
- expect { perform_job }.to change {
106
- mutex.locked?
107
- }.from(true).to(false)
108
- end
74
+ it 'cannot enqueue the same job' do
75
+ expect { enqueue_job }.to_not change {
76
+ queue_size
77
+ }.from(1)
109
78
  end
110
79
 
111
- context 'if the job raises an exception' do
112
- let(:error) { StandardError }
113
-
114
- before do
115
- allow(described_class).to receive(:perform).and_raise(error)
116
- end
117
-
118
- it 'still releases the lock after execution' do
119
- expect(mutex.locked?).to eq(true)
120
-
121
- expect { perform_job }.to raise_error(error)
122
-
123
- expect(mutex.locked?).to eq(false)
124
- end
80
+ it 'can execute the job' do
81
+ expect(execute_job).to_not be_nil
125
82
  end
126
83
  end
127
84
  end
@@ -21,81 +21,58 @@ class JobSerializedByCombined
21
21
  end
22
22
 
23
23
  RSpec.describe JobSerializedByCombined do
24
- let(:args) { %w(arg1 arg2) }
24
+ let(:args) { %w[arg1 arg2] }
25
+ let(:queue_name) { :default }
25
26
 
26
27
  before do
27
- ResqueSpec.reset!
28
28
  Resque.redis.redis.flushall
29
29
  end
30
30
 
31
- describe 'before enqueuing the job' do
32
- let(:mutex) { described_class.mutex(args) }
33
-
34
- subject(:enqueue_job) { Resque.enqueue(described_class, *args) }
35
-
36
- context 'when a lock for the job exists' do
37
- before { mutex.lock! }
38
-
39
- it 'does not enqueue the job' do
40
- expect { enqueue_job }.to_not change {
41
- ResqueSpec.queue_for(described_class).size
42
- }.from(0)
43
- end
44
-
45
- it 'does not change the mutex' do
46
- expect { enqueue_job }.to_not change {
47
- mutex.locked?
48
- }.from(true)
49
- end
31
+ context 'with no jobs in the queue' do
32
+ before do
33
+ expect(queue_size).to eq(0)
50
34
  end
51
35
 
52
- context 'when a lock for the job does not exist' do
53
- before { mutex.unlock }
54
-
55
- it 'enqueues the job' do
56
- expect { enqueue_job }.to change {
57
- ResqueSpec.queue_for(described_class).size
58
- }.from(0).to(1)
59
- end
60
-
61
- it 'locks the mutex' do
62
- expect { enqueue_job }.to change {
63
- mutex.locked?
64
- }.from(false).to(true)
65
- end
36
+ it 'can enqueue the job' do
37
+ expect { enqueue_job }.to change {
38
+ queue_size
39
+ }.from(0).to(1)
66
40
  end
67
41
  end
68
42
 
69
- describe 'after performing the job' do
70
- let(:mutex) { described_class.mutex(args) }
71
-
43
+ context 'with one job in the queue' do
72
44
  before do
73
- # Note: this locks the mutex on the :before_enqueue_* hook
74
- Resque.enqueue(described_class, *args)
45
+ enqueue_job
46
+ expect(queue_size).to eq(1)
75
47
  end
76
48
 
77
- subject(:perform_job) { ResqueSpec.perform_next(:default) }
78
-
79
- context 'when the job completes successfully' do
80
- it 'releases the lock after execution' do
81
- expect { perform_job }.to change {
82
- mutex.locked?
83
- }.from(true).to(false)
84
- end
49
+ it 'cannot enqueue the same job' do
50
+ expect { enqueue_job }.to_not change {
51
+ queue_size
52
+ }.from(1)
85
53
  end
86
54
 
87
- context 'when the job raises an exception' do
88
- let(:error) { StandardError }
89
-
90
- before { allow(described_class).to receive(:perform).and_raise(error) }
55
+ it 'can execute the job' do
56
+ expect(execute_job).to_not be_nil
57
+ end
58
+ end
91
59
 
92
- it 'still releases the lock after execution' do
93
- expect(mutex.locked?).to eq(true)
60
+ context 'with one job in the queue and one job being executed' do
61
+ let(:execute_job) { worker.reserve.perform }
94
62
 
95
- expect { perform_job }.to raise_error(error)
63
+ before do
64
+ enqueue_job
65
+ expect(queue_size).to eq(1)
66
+ execute_job
67
+ expect(queue_size).to eq(0)
68
+ enqueue_job
69
+ expect(queue_size).to eq(1)
70
+ end
96
71
 
97
- expect(mutex.locked?).to eq(false)
98
- end
72
+ it 'cannot enqueue the same job' do
73
+ expect { enqueue_job }.to_not change {
74
+ queue_size
75
+ }.from(1)
99
76
  end
100
77
  end
101
78
  end
@@ -21,55 +21,60 @@ class JobSerializedByJob
21
21
  end
22
22
 
23
23
  RSpec.describe JobSerializedByJob do
24
- let(:args) { %w(arg1 arg2) }
24
+ let(:args) { %w[arg1 arg2] }
25
+ let(:queue_name) { :default }
25
26
 
26
27
  before do
27
- ResqueSpec.reset!
28
28
  Resque.redis.redis.flushall
29
29
  end
30
30
 
31
- describe 'before dequeuing the job' do
32
- let(:mutex) { described_class.mutex(args) }
31
+ context 'with no jobs in the queue' do
32
+ before do
33
+ expect(queue_size).to eq(0)
34
+ end
33
35
 
34
- subject(:dequeue_job) { Resque.dequeue(described_class, *args) }
36
+ it 'can enqueue the job' do
37
+ expect { enqueue_job }.to change {
38
+ queue_size
39
+ }.from(0).to(1)
40
+ end
35
41
 
36
- it 'locks the mutex' do
37
- expect { dequeue_job }.to change {
38
- mutex.locked?
39
- }.from(false).to(true)
42
+ it 'can not execute any jobs' do
43
+ expect(execute_job).to be_nil
40
44
  end
41
45
  end
42
46
 
43
- describe 'after performing the job' do
44
- let(:mutex) { described_class.mutex(args) }
45
-
47
+ context 'with one job in the queue' do
46
48
  before do
47
- Resque.enqueue(described_class, *args)
48
- mutex.lock!
49
+ enqueue_job
50
+ expect(queue_size).to eq(1)
49
51
  end
50
52
 
51
- subject(:perform_job) { ResqueSpec.perform_next(:default) }
52
-
53
- context 'when the job completes successfully' do
54
- it 'releases the lock after execution' do
55
- expect { perform_job }.to change {
56
- mutex.locked?
57
- }.from(true).to(false)
58
- end
53
+ it 'can enqueue the same job' do
54
+ expect { enqueue_job }.to change {
55
+ queue_size
56
+ }.from(1).to(2)
59
57
  end
60
58
 
61
- context 'when the job raises an exception' do
62
- let(:error) { StandardError }
63
-
64
- before { allow(described_class).to receive(:perform).and_raise(error) }
65
-
66
- it 'still releases the lock after execution' do
67
- expect(mutex.locked?).to eq(true)
59
+ it 'can execute the job' do
60
+ expect(execute_job).to_not be_nil
61
+ end
62
+ end
68
63
 
69
- expect { perform_job }.to raise_error(error)
64
+ context 'with one job in the queue and one job being executed' do
65
+ before do
66
+ enqueue_job
67
+ expect(queue_size).to eq(1)
68
+ execute_job
69
+ expect(queue_size).to eq(0)
70
+ enqueue_job
71
+ expect(queue_size).to eq(1)
72
+ end
70
73
 
71
- expect(mutex.locked?).to eq(false)
72
- end
74
+ it 'can enqueue the same job' do
75
+ expect { enqueue_job }.to change {
76
+ queue_size
77
+ }.from(1).to(2)
73
78
  end
74
79
  end
75
80
  end
@@ -21,62 +21,64 @@ class JobSerializedByQueue
21
21
  end
22
22
 
23
23
  RSpec.describe JobSerializedByQueue do
24
- let(:args) { %w(arg1 arg2) }
24
+ let(:args) { %w[arg1 arg2] }
25
+ let(:queue_name) { :default }
25
26
 
26
27
  before do
27
- ResqueSpec.reset!
28
28
  Resque.redis.redis.flushall
29
29
  end
30
30
 
31
- describe 'before enqueuing the job' do
32
- let(:mutex) { described_class.mutex(args) }
33
-
34
- subject(:enqueue_job) { Resque.enqueue(described_class, *args) }
35
-
36
- context 'when a lock for the job exists' do
37
- before { mutex.lock! }
31
+ context 'with no jobs in the queue' do
32
+ before do
33
+ expect(queue_size).to eq(0)
34
+ end
38
35
 
39
- it 'does not enqueue the job' do
40
- expect { enqueue_job }.to_not change {
41
- ResqueSpec.queue_for(described_class).size
42
- }.from(0)
43
- end
36
+ it 'can enqueue the job' do
37
+ expect { enqueue_job }.to change {
38
+ queue_size
39
+ }.from(0).to(1)
40
+ end
44
41
 
45
- it 'does not change the mutex' do
46
- expect { enqueue_job }.to_not change {
47
- mutex.locked?
48
- }.from(true)
49
- end
42
+ it 'can not execute any jobs' do
43
+ expect(execute_job).to be_nil
50
44
  end
45
+ end
51
46
 
52
- context 'when a lock for the job does not exist' do
53
- before { mutex.unlock }
47
+ context 'with one job in the queue' do
48
+ before do
49
+ enqueue_job
50
+ expect(queue_size).to eq(1)
51
+ end
54
52
 
55
- it 'enqueues the job' do
56
- expect { enqueue_job }.to change {
57
- ResqueSpec.queue_for(described_class).size
58
- }.from(0).to(1)
59
- end
53
+ it 'cannot enqueue the same job' do
54
+ expect { enqueue_job }.to_not change {
55
+ queue_size
56
+ }.from(1)
57
+ end
60
58
 
61
- it 'locks the mutex' do
62
- expect { enqueue_job }.to change {
63
- mutex.locked?
64
- }.from(false).to(true)
65
- end
59
+ it 'can execute the job' do
60
+ expect(execute_job).to_not be_nil
66
61
  end
67
62
  end
68
63
 
69
- describe 'after dequeuing the job' do
70
- let(:mutex) { described_class.mutex(args) }
71
-
72
- subject(:dequeue_job) { Resque.dequeue(described_class, *args) }
64
+ context 'with one job in the queue and one job being executed' do
65
+ before do
66
+ enqueue_job
67
+ expect(queue_size).to eq(1)
68
+ execute_job
69
+ expect(queue_size).to eq(0)
70
+ enqueue_job
71
+ expect(queue_size).to eq(1)
72
+ end
73
73
 
74
- before { mutex.lock! }
74
+ it 'cannot enqueue the same job' do
75
+ expect { enqueue_job }.to_not change {
76
+ queue_size
77
+ }.from(1)
78
+ end
75
79
 
76
- it 'unlocks the mutex' do
77
- expect { dequeue_job }.to change {
78
- mutex.locked?
79
- }.from(true).to(false)
80
+ it 'can execute the job' do
81
+ expect(execute_job).to_not be_nil
80
82
  end
81
83
  end
82
84
  end
@@ -0,0 +1,17 @@
1
+ module ResqueTestHelper
2
+ def enqueue_job
3
+ Resque.enqueue(described_class, *args)
4
+ end
5
+
6
+ def queue_size
7
+ Resque.size(queue_name)
8
+ end
9
+
10
+ def worker
11
+ Resque::Worker.new(queue_name)
12
+ end
13
+
14
+ def execute_job
15
+ worker.reserve
16
+ end
17
+ end
data/spec/spec_helper.rb CHANGED
@@ -3,8 +3,8 @@ require 'resque-serializer'
3
3
  require 'bundler/setup'
4
4
  require 'mock_redis'
5
5
  require 'resque'
6
- require 'resque_spec'
7
6
  require 'pry-byebug'
7
+ require 'resque_test_helper'
8
8
 
9
9
  RSpec.configure do |config|
10
10
  config.expect_with(:rspec) do |c|
@@ -14,4 +14,6 @@ RSpec.configure do |config|
14
14
  config.before(:suite) do
15
15
  Resque.redis = MockRedis.new
16
16
  end
17
+
18
+ config.include ResqueTestHelper
17
19
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-serializer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Ringler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-10 00:00:00.000000000 Z
11
+ date: 2018-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -53,21 +53,21 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.14'
55
55
  - !ruby/object:Gem::Dependency
56
- name: mock_redis
56
+ name: bump
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '0.7'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '0.7'
69
69
  - !ruby/object:Gem::Dependency
70
- name: pry-byebug
70
+ name: mock_redis
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
@@ -81,7 +81,7 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: pry-stack_explorer
84
+ name: pry-byebug
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="
@@ -95,7 +95,7 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rake
98
+ name: pry-stack_explorer
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -109,7 +109,7 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: resque_spec
112
+ name: rake
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="
@@ -146,9 +146,11 @@ executables:
146
146
  extensions: []
147
147
  extra_rdoc_files: []
148
148
  files:
149
+ - ".github/PULL_REQUEST_TEMPLATE.md"
149
150
  - ".gitignore"
150
151
  - ".rspec"
151
152
  - ".travis.yml"
153
+ - CHANGELOG.md
152
154
  - Gemfile
153
155
  - LICENSE.txt
154
156
  - README.md
@@ -156,6 +158,7 @@ files:
156
158
  - bin/console
157
159
  - bin/setup
158
160
  - lib/resque-serializer.rb
161
+ - lib/resque-serializer/monkey_patches/resque.rb
159
162
  - lib/resque-serializer/mutex.rb
160
163
  - lib/resque-serializer/serializers/both.rb
161
164
  - lib/resque-serializer/serializers/combined.rb
@@ -163,11 +166,13 @@ files:
163
166
  - lib/resque-serializer/serializers/queue.rb
164
167
  - lib/resque-serializer/version.rb
165
168
  - resque-serializer.gemspec
169
+ - spec/lib/resque-serializer/monkey_patches/resque_spec.rb
166
170
  - spec/lib/resque-serializer/mutex_spec.rb
167
171
  - spec/lib/resque-serializer/serializers/both_spec.rb
168
172
  - spec/lib/resque-serializer/serializers/combined_spec.rb
169
173
  - spec/lib/resque-serializer/serializers/job_spec.rb
170
174
  - spec/lib/resque-serializer/serializers/queue_spec.rb
175
+ - spec/resque_test_helper.rb
171
176
  - spec/spec_helper.rb
172
177
  homepage: https://github.com/rringler/resque-serializer
173
178
  licenses:
@@ -189,14 +194,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
189
194
  version: '0'
190
195
  requirements: []
191
196
  rubyforge_project:
192
- rubygems_version: 2.4.5.1
197
+ rubygems_version: 2.6.14.1
193
198
  signing_key:
194
199
  specification_version: 4
195
200
  summary: Serializes Resque jobs
196
201
  test_files:
202
+ - spec/lib/resque-serializer/monkey_patches/resque_spec.rb
197
203
  - spec/lib/resque-serializer/mutex_spec.rb
198
204
  - spec/lib/resque-serializer/serializers/both_spec.rb
199
205
  - spec/lib/resque-serializer/serializers/combined_spec.rb
200
206
  - spec/lib/resque-serializer/serializers/job_spec.rb
201
207
  - spec/lib/resque-serializer/serializers/queue_spec.rb
208
+ - spec/resque_test_helper.rb
202
209
  - spec/spec_helper.rb