paper_trail-background 1.1.0 → 1.2.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/LICENSE +34 -14
- data/README.md +1 -5
- data/lib/paper_trail/background/config.rb +4 -6
- data/lib/paper_trail/background/job.rb +4 -2
- data/lib/paper_trail/background/rspec_helpers.rb +3 -2
- data/lib/paper_trail/background/version.rb +3 -1
- data/lib/paper_trail/background.rb +9 -8
- data/lib/paper_trail/background_spec.rb +52 -30
- data/lib/paper_trail-background/rspec.rb +5 -3
- data/lib/paper_trail-background.rb +2 -0
- metadata +9 -79
- data/lib/paper_trail/background/version_spec.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9e2dd49405269a4a58d9c53508f93b9170df368c38222432bda11b91ba2d7c5a
|
4
|
+
data.tar.gz: 1b1f557c3af6f3176135bcbff57f47aec91820a1572b495a40c82711be0fb2f9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d050650a0468c2187a8edbf15b486014216452c837a52cc51a8c4c0f71ce0975990399cc244f9f5693a3862a4ffa692837b680fb44c9245db00c39df48451d6b
|
7
|
+
data.tar.gz: 49155e0c1239a58b7ac2119fd7aced16ab708cbcf3bb13f52af94167d6d9e4fba6fc4541fbc1e13b7487d38976180302fff73fffbf693931959611e077cc77b9
|
data/LICENSE
CHANGED
@@ -2,7 +2,7 @@ HIPPOCRATIC LICENSE
|
|
2
2
|
|
3
3
|
Version 3.0, October 2021
|
4
4
|
|
5
|
-
https://firstdonoharm.dev/version/3/0/
|
5
|
+
https://firstdonoharm.dev/version/3/0/full.txt
|
6
6
|
|
7
7
|
TERMS AND CONDITIONS
|
8
8
|
|
@@ -171,55 +171,75 @@ the Licensee’s ongoing compliance with the following conditions:
|
|
171
171
|
individual or entity, that engages in fossil fuel or mineral exploration,
|
172
172
|
extraction, development, or sale;
|
173
173
|
|
174
|
-
* 3.1.14.
|
174
|
+
* 3.1.14. Boycott / Divestment / Sanctions: Be an individual or entity, or a
|
175
|
+
representative, agent, affiliate, successor, attorney, or assign of an
|
176
|
+
individual or entity, identified by the Boycott, Divestment, Sanctions
|
177
|
+
(“BDS”) movement on its website (https://bdsmovement.net/
|
178
|
+
[https://bdsmovement.net/] and
|
179
|
+
https://bdsmovement.net/get-involved/what-to-boycott
|
180
|
+
[https://bdsmovement.net/get-involved/what-to-boycott]) as a target for
|
181
|
+
boycott;
|
182
|
+
|
183
|
+
* 3.1.15. Taliban: Be an individual or entity that:
|
175
184
|
|
176
|
-
* 3.1.
|
185
|
+
* 3.1.15.1. engages in any commercial transactions with the Taliban; or
|
177
186
|
|
178
|
-
* 3.1.
|
187
|
+
* 3.1.15.2. is a representative, agent, affiliate, successor, attorney, or
|
179
188
|
assign of the Taliban;
|
180
189
|
|
181
|
-
* 3.1.
|
190
|
+
* 3.1.16. Myanmar: Be an individual or entity that:
|
182
191
|
|
183
|
-
* 3.1.
|
192
|
+
* 3.1.16.1. engages in any commercial transactions with the
|
184
193
|
Myanmar/Burmese military junta; or
|
185
194
|
|
186
|
-
* 3.1.
|
195
|
+
* 3.1.16.2. is a representative, agent, affiliate, successor, attorney, or
|
187
196
|
assign of the Myanmar/Burmese government;
|
188
197
|
|
189
|
-
* 3.1.
|
198
|
+
* 3.1.17. Xinjiang Uygur Autonomous Region: Be an individual or entity, or a
|
190
199
|
representative, agent, affiliate, successor, attorney, or assign of any
|
191
200
|
individual or entity, that does business in, purchases goods from, or
|
192
201
|
otherwise benefits from goods produced in the Xinjiang Uygur Autonomous
|
193
202
|
Region of China;
|
194
203
|
|
195
|
-
* 3.1.
|
204
|
+
* 3.1.18. US Tariff Act: Be an individual or entity:
|
205
|
+
|
206
|
+
* 3.1.18.1. which U.S. Customs and Border Protection (CBP) has currently
|
207
|
+
issued a Withhold Release Order (WRO) or finding against based on
|
208
|
+
reasonable suspicion of forced labor; or
|
209
|
+
|
210
|
+
* 3.1.18.2. that is a representative, agent, affiliate, successor,
|
211
|
+
attorney, or assign of an individual or entity that does business with
|
212
|
+
an individual or entity which currently has a WRO or finding from CBP
|
213
|
+
issued against it based on reasonable suspicion of forced labor;
|
214
|
+
|
215
|
+
* 3.1.19. Mass Surveillance: Be a government agency or multinational
|
196
216
|
corporation, or a representative, agent, affiliate, successor, attorney,
|
197
217
|
or assign of a government or multinational corporation, which participates
|
198
218
|
in mass surveillance programs;
|
199
219
|
|
200
|
-
* 3.1.
|
220
|
+
* 3.1.20. Military Activities: Be an entity or a representative, agent,
|
201
221
|
affiliate, successor, attorney, or assign of an entity which conducts
|
202
222
|
military activities;
|
203
223
|
|
204
|
-
* 3.1.
|
224
|
+
* 3.1.21. Law Enforcement: Be an individual or entity, or a or a
|
205
225
|
representative, agent, affiliate, successor, attorney, or assign of an
|
206
226
|
individual or entity, that provides good or services to, or otherwise
|
207
227
|
enters into any commercial contracts with, any local, state, or federal
|
208
228
|
law enforcement agency;
|
209
229
|
|
210
|
-
* 3.1.
|
230
|
+
* 3.1.22. Media: Be an individual or entity, or a or a representative,
|
211
231
|
agent, affiliate, successor, attorney, or assign of an individual or
|
212
232
|
entity, that broadcasts messages promoting killing, torture, or other
|
213
233
|
forms of extreme violence;
|
214
234
|
|
215
|
-
* 3.1.
|
235
|
+
* 3.1.23. Interfere with Workers' free exercise of the right to organize and
|
216
236
|
associate (See Article 20, United Nations Universal Declaration of Human
|
217
237
|
Rights; C087 - Freedom of Association and Protection of the Right to
|
218
238
|
Organise Convention, 1948 (No. 87), International Labour Organization;
|
219
239
|
Article 8, International Covenant on Economic, Social and Cultural Rights);
|
220
240
|
and
|
221
241
|
|
222
|
-
* 3.1.
|
242
|
+
* 3.1.24. Harm the environment in a manner inconsistent with local, state,
|
223
243
|
national, or international law.
|
224
244
|
|
225
245
|
* 3.2. The Licensee SHALL:
|
data/README.md
CHANGED
@@ -1,9 +1,5 @@
|
|
1
1
|
# paper_trail-background
|
2
2
|
|
3
|
-
- [](https://rubygems.org/gems/paper_trail-background)
|
4
|
-
- [](https://rubygems.org/gems/paper_trail-background)
|
5
|
-
|
6
|
-
|
7
3
|
Allows you to enqueue version creation/deletion as a background job to avoid having business logic blocked by changelog writing.
|
8
4
|
|
9
5
|
|
@@ -51,7 +47,7 @@ Or install it yourself with:
|
|
51
47
|
|
52
48
|
## Contributing
|
53
49
|
|
54
|
-
1. Read the [Code of Conduct](/CONDUCT
|
50
|
+
1. Read the [Code of Conduct](/CONDUCT)
|
55
51
|
2. Fork it
|
56
52
|
3. Create your feature branch (`git checkout -b my-new-feature`)
|
57
53
|
4. Commit your changes (`git commit -am 'Add some feature'`)
|
@@ -1,11 +1,9 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module PaperTrail
|
2
4
|
module Background
|
3
5
|
class Configuration
|
4
|
-
|
5
|
-
|
6
|
-
def opt_in=(value)
|
7
|
-
@opt_in = value
|
8
|
-
end
|
6
|
+
attr_accessor :opt_in
|
9
7
|
end
|
10
8
|
|
11
9
|
class Config
|
@@ -14,7 +12,7 @@ module PaperTrail
|
|
14
12
|
@configuration ||= Configuration.new
|
15
13
|
end
|
16
14
|
|
17
|
-
def configure
|
15
|
+
def configure
|
18
16
|
yield(configuration)
|
19
17
|
end
|
20
18
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module PaperTrail
|
2
4
|
module Background
|
3
5
|
module Job
|
4
|
-
def perform(version_class, attributes,
|
5
|
-
|
6
|
+
def perform(version_class, attributes, _event)
|
7
|
+
version_class.constantize.create!(attributes)
|
6
8
|
end
|
7
9
|
end
|
8
10
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require "paper_trail/record_trail"
|
2
4
|
require "ar_after_transaction"
|
3
5
|
|
@@ -12,7 +14,8 @@ module PaperTrail
|
|
12
14
|
# paper_trail-association_tracking
|
13
15
|
def record_create
|
14
16
|
return unless enabled?
|
15
|
-
|
17
|
+
|
18
|
+
return super if @record.paper_trail_options[:async].blank?
|
16
19
|
|
17
20
|
event = PaperTrail::Events::Create.new(@record, true)
|
18
21
|
|
@@ -30,7 +33,7 @@ module PaperTrail
|
|
30
33
|
# paper_trail-association_tracking
|
31
34
|
def record_destroy(recording_order)
|
32
35
|
return unless enabled?
|
33
|
-
return if
|
36
|
+
return super if @record.paper_trail_options[:async].blank?
|
34
37
|
return if @record.new_record?
|
35
38
|
|
36
39
|
in_after_callback = recording_order == "after"
|
@@ -49,7 +52,7 @@ module PaperTrail
|
|
49
52
|
# paper_trail-association_tracking
|
50
53
|
def record_update(force:, in_after_callback:, is_touch:)
|
51
54
|
return unless enabled?
|
52
|
-
return if Config.configuration.opt_in && @record.paper_trail_options[:async].blank?
|
55
|
+
return super if Config.configuration.opt_in && @record.paper_trail_options[:async].blank?
|
53
56
|
|
54
57
|
event = PaperTrail::Events::Update.new(@record, in_after_callback, is_touch, nil)
|
55
58
|
|
@@ -67,7 +70,7 @@ module PaperTrail
|
|
67
70
|
# paper_trail-association_tracking
|
68
71
|
def record_update_columns(changes)
|
69
72
|
return unless enabled?
|
70
|
-
return if Config.configuration.opt_in && @record.paper_trail_options[:async].blank?
|
73
|
+
return super if Config.configuration.opt_in && @record.paper_trail_options[:async].blank?
|
71
74
|
|
72
75
|
event = Events::Update.new(@record, false, false, changes)
|
73
76
|
|
@@ -81,11 +84,9 @@ module PaperTrail
|
|
81
84
|
end
|
82
85
|
|
83
86
|
private def trigger_write(record, data, event)
|
84
|
-
|
85
|
-
|
86
|
-
ActiveRecord::Base.after_transaction do
|
87
|
+
record.class.after_transaction do
|
87
88
|
VersionJob.perform_later(
|
88
|
-
version_class,
|
89
|
+
record.class.paper_trail.version_class.name,
|
89
90
|
data,
|
90
91
|
event
|
91
92
|
)
|
@@ -1,11 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require "spec_helper"
|
2
4
|
|
3
|
-
|
5
|
+
WithData = Struct.new(:data)
|
6
|
+
WithVersionClass = Struct.new(:version_class)
|
7
|
+
|
8
|
+
class SuperDummyClass
|
9
|
+
def record_create
|
10
|
+
@record = 1
|
11
|
+
end
|
12
|
+
|
13
|
+
def record_update(record)
|
14
|
+
@record = record
|
15
|
+
end
|
16
|
+
|
17
|
+
def record_destroy(record)
|
18
|
+
@record = record
|
19
|
+
end
|
20
|
+
|
21
|
+
def record_update_columns(record)
|
22
|
+
@record = record
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
class DummyClass < SuperDummyClass
|
4
27
|
include PaperTrail::Background
|
5
28
|
|
6
29
|
def initialize(options: {}, record: nil)
|
7
30
|
@options = options
|
8
31
|
@record = record
|
32
|
+
super()
|
9
33
|
end
|
10
34
|
|
11
35
|
def enabled?
|
@@ -55,20 +79,22 @@ RSpec.describe PaperTrail::Background do
|
|
55
79
|
end
|
56
80
|
|
57
81
|
it "does not trigger a write if record is opted in but async is blank" do
|
82
|
+
allow(record).to receive(:paper_trail_event).and_return(async: nil)
|
58
83
|
allow(record).to receive(:paper_trail_options).and_return(async: nil)
|
84
|
+
allow(record.class).to receive(:paper_trail).and_return(WithVersionClass.new(Class))
|
59
85
|
|
60
|
-
DummyClass.new(options: { enabled: true }, record:
|
86
|
+
DummyClass.new(options: { enabled: true }, record:).record_create
|
61
87
|
|
62
88
|
expect(VersionJob).not_to have_received(:perform_later)
|
63
89
|
end
|
64
90
|
|
65
91
|
it "triggers a write if record is opted in and async is true" do
|
66
92
|
allow(record).to receive(:paper_trail_options).and_return(async: true)
|
67
|
-
allow(PaperTrail::Events::Create).to receive(:new).and_return(
|
68
|
-
allow(
|
69
|
-
allow(
|
93
|
+
allow(PaperTrail::Events::Create).to receive(:new).and_return(WithData.new({}))
|
94
|
+
allow(record.class).to receive(:paper_trail).and_return(WithVersionClass.new(Class))
|
95
|
+
allow(record.class).to receive(:after_transaction).and_yield
|
70
96
|
|
71
|
-
DummyClass.new(options: { enabled: true }, record:
|
97
|
+
DummyClass.new(options: { enabled: true }, record:).record_create
|
72
98
|
|
73
99
|
expect(VersionJob).to have_received(:perform_later)
|
74
100
|
end
|
@@ -94,28 +120,26 @@ RSpec.describe PaperTrail::Background do
|
|
94
120
|
it "does not trigger a write if record is opted in but async is blank" do
|
95
121
|
allow(record).to receive(:paper_trail_options).and_return(async: nil)
|
96
122
|
|
97
|
-
DummyClass.new(options: { enabled: true }, record:
|
123
|
+
DummyClass.new(options: { enabled: true }, record:).record_destroy("after")
|
98
124
|
|
99
125
|
expect(VersionJob).not_to have_received(:perform_later)
|
100
126
|
end
|
101
127
|
|
102
128
|
it "does not trigger a write if record is new" do
|
103
|
-
allow(record).to
|
104
|
-
allow(record).to receive(:new_record?).and_return(true)
|
129
|
+
allow(record).to receive_messages(paper_trail_options: { async: true }, new_record?: true)
|
105
130
|
|
106
|
-
DummyClass.new(options: { enabled: true }, record:
|
131
|
+
DummyClass.new(options: { enabled: true }, record:).record_destroy("after")
|
107
132
|
|
108
133
|
expect(VersionJob).not_to have_received(:perform_later)
|
109
134
|
end
|
110
135
|
|
111
136
|
it "triggers a write if record is opted in and async is true" do
|
112
|
-
allow(record).to
|
113
|
-
allow(
|
114
|
-
allow(
|
115
|
-
allow(
|
116
|
-
allow(ActiveRecord::Base).to receive(:after_transaction).and_yield
|
137
|
+
allow(record).to receive_messages(paper_trail_options: { async: true }, new_record?: false)
|
138
|
+
allow(PaperTrail::Events::Destroy).to receive(:new).and_return(WithData.new({}))
|
139
|
+
allow(record.class).to receive(:paper_trail).and_return(WithVersionClass.new(Class))
|
140
|
+
allow(record.class).to receive(:after_transaction).and_yield
|
117
141
|
|
118
|
-
DummyClass.new(options: { enabled: true }, record:
|
142
|
+
DummyClass.new(options: { enabled: true }, record:).record_destroy("after")
|
119
143
|
|
120
144
|
expect(VersionJob).to have_received(:perform_later)
|
121
145
|
end
|
@@ -141,19 +165,18 @@ RSpec.describe PaperTrail::Background do
|
|
141
165
|
it "does not trigger a write if record is opted in but async is blank" do
|
142
166
|
allow(record).to receive(:paper_trail_options).and_return(async: nil)
|
143
167
|
|
144
|
-
DummyClass.new(options: { enabled: true }, record:
|
168
|
+
DummyClass.new(options: { enabled: true }, record:).record_update(force: true, in_after_callback: true, is_touch: false)
|
145
169
|
|
146
170
|
expect(VersionJob).not_to have_received(:perform_later)
|
147
171
|
end
|
148
172
|
|
149
173
|
it "triggers a write if record is opted in and async is true" do
|
150
|
-
allow(record).to
|
151
|
-
allow(
|
152
|
-
allow(
|
153
|
-
allow(
|
154
|
-
allow(ActiveRecord::Base).to receive(:after_transaction).and_yield
|
174
|
+
allow(record).to receive_messages(paper_trail_options: { async: true }, new_record?: false)
|
175
|
+
allow(PaperTrail::Events::Update).to receive(:new).and_return(WithData.new({}))
|
176
|
+
allow(record.class).to receive(:paper_trail).and_return(WithVersionClass.new(Class))
|
177
|
+
allow(record.class).to receive(:after_transaction).and_yield
|
155
178
|
|
156
|
-
DummyClass.new(options: { enabled: true }, record:
|
179
|
+
DummyClass.new(options: { enabled: true }, record:).record_update(force: true, in_after_callback: true, is_touch: false)
|
157
180
|
|
158
181
|
expect(VersionJob).to have_received(:perform_later)
|
159
182
|
end
|
@@ -179,19 +202,18 @@ RSpec.describe PaperTrail::Background do
|
|
179
202
|
it "does not trigger a write if record is opted in but async is blank" do
|
180
203
|
allow(record).to receive(:paper_trail_options).and_return(async: nil)
|
181
204
|
|
182
|
-
DummyClass.new(options: { enabled: true }, record:
|
205
|
+
DummyClass.new(options: { enabled: true }, record:).record_update_columns({})
|
183
206
|
|
184
207
|
expect(VersionJob).not_to have_received(:perform_later)
|
185
208
|
end
|
186
209
|
|
187
210
|
it "triggers a write if record is opted in and async is true" do
|
188
|
-
allow(record).to
|
189
|
-
allow(
|
190
|
-
allow(
|
191
|
-
allow(
|
192
|
-
allow(ActiveRecord::Base).to receive(:after_transaction).and_yield
|
211
|
+
allow(record).to receive_messages(paper_trail_options: { async: true }, new_record?: false)
|
212
|
+
allow(PaperTrail::Events::Update).to receive(:new).and_return(WithData.new({}))
|
213
|
+
allow(record.class).to receive(:paper_trail).and_return(WithVersionClass.new(Class))
|
214
|
+
allow(record.class).to receive(:after_transaction).and_yield
|
193
215
|
|
194
|
-
DummyClass.new(options: { enabled: true }, record:
|
216
|
+
DummyClass.new(options: { enabled: true }, record:).record_update_columns({})
|
195
217
|
|
196
218
|
expect(VersionJob).to have_received(:perform_later)
|
197
219
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
require "ar_after_transaction"
|
4
|
+
|
5
|
+
require_relative "../paper_trail/background/rspec_helpers"
|
4
6
|
|
5
7
|
RSpec.configure do |config|
|
6
8
|
config.include PaperTrail::Background::RSpecHelpers::InstanceMethods
|
7
9
|
config.extend PaperTrail::Background::RSpecHelpers::ClassMethods
|
8
|
-
end
|
10
|
+
end
|
metadata
CHANGED
@@ -1,99 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paper_trail-background
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kurtis Rainbolt-Greene
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: bundler
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '2'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '2'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: rspec
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '3.8'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '3.8'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: rake
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '12.2'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '12.2'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: pry
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0.14'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0.14'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: pry-doc
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - '='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.11.1
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - '='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 0.11.1
|
83
13
|
- !ruby/object:Gem::Dependency
|
84
14
|
name: ar_after_transaction
|
85
15
|
requirement: !ruby/object:Gem::Requirement
|
86
16
|
requirements:
|
87
17
|
- - "~>"
|
88
18
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
19
|
+
version: 0.10.0
|
90
20
|
type: :runtime
|
91
21
|
prerelease: false
|
92
22
|
version_requirements: !ruby/object:Gem::Requirement
|
93
23
|
requirements:
|
94
24
|
- - "~>"
|
95
25
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
26
|
+
version: 0.10.0
|
97
27
|
- !ruby/object:Gem::Dependency
|
98
28
|
name: paper_trail
|
99
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -125,28 +55,28 @@ files:
|
|
125
55
|
- lib/paper_trail/background/job.rb
|
126
56
|
- lib/paper_trail/background/rspec_helpers.rb
|
127
57
|
- lib/paper_trail/background/version.rb
|
128
|
-
- lib/paper_trail/background/version_spec.rb
|
129
58
|
- lib/paper_trail/background_spec.rb
|
130
59
|
homepage: https://github.com/krainboltgreene/paper_trail-background.rb
|
131
60
|
licenses:
|
132
61
|
- HL3
|
133
|
-
metadata:
|
62
|
+
metadata:
|
63
|
+
rubygems_mfa_required: 'true'
|
134
64
|
post_install_message:
|
135
65
|
rdoc_options: []
|
136
66
|
require_paths:
|
137
67
|
- lib
|
138
68
|
required_ruby_version: !ruby/object:Gem::Requirement
|
139
69
|
requirements:
|
140
|
-
- - "
|
70
|
+
- - "~>"
|
141
71
|
- !ruby/object:Gem::Version
|
142
|
-
version: '
|
72
|
+
version: '3.2'
|
143
73
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
144
74
|
requirements:
|
145
75
|
- - ">="
|
146
76
|
- !ruby/object:Gem::Version
|
147
77
|
version: '0'
|
148
78
|
requirements: []
|
149
|
-
rubygems_version: 3.
|
79
|
+
rubygems_version: 3.4.10
|
150
80
|
signing_key:
|
151
81
|
specification_version: 4
|
152
82
|
summary: A library for making paper_trail a background process
|