paper_trail 9.0.0 → 9.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/generators/paper_trail/install_generator.rb +1 -1
- data/lib/paper_trail.rb +2 -2
- data/lib/paper_trail/record_trail.rb +25 -3
- data/lib/paper_trail/version_number.rb +1 -1
- metadata +10 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1c8b21b88ed51a36003e6df11297955cfba569f71d3c6de6be11715a94ec63c9
|
4
|
+
data.tar.gz: 11b1b625dd80e75f3218a047d9caf69ead79e18bf79dc7f7b5e597b0f4b7f7a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e024e2ad10466f53e07edc2d0683de403034cdedf49b2f6440c3fe8c59b37f90a46ec1f6ddcf1412b21dfa4c0369e3caefe701eb05c4c30e9701a2c6666d1ff
|
7
|
+
data.tar.gz: 6c98b6f10cc6a4e4e0b8d0b516d3d89eec54243624a544b4b7bea7963400b38c944bdbe2d438ead507bc43f57b71fada18b7fd0f5caa51338c6c357c59e66345
|
data/lib/paper_trail.rb
CHANGED
@@ -121,7 +121,8 @@ module PaperTrail
|
|
121
121
|
# word "request" right there in your application code will remind you that
|
122
122
|
# these variables only affect the current request, not all threads.
|
123
123
|
#
|
124
|
-
# Given a block, temporarily sets the given `options
|
124
|
+
# Given a block, temporarily sets the given `options`, executes the block,
|
125
|
+
# and returns the value of the block.
|
125
126
|
#
|
126
127
|
# Without a block, this currently just returns `PaperTrail::Request`.
|
127
128
|
# However, please do not use `PaperTrail::Request` directly. Currently,
|
@@ -135,7 +136,6 @@ module PaperTrail
|
|
135
136
|
Request
|
136
137
|
else
|
137
138
|
Request.with(options, &block)
|
138
|
-
nil
|
139
139
|
end
|
140
140
|
end
|
141
141
|
|
@@ -4,8 +4,10 @@ module PaperTrail
|
|
4
4
|
# Represents the "paper trail" for a single record.
|
5
5
|
class RecordTrail
|
6
6
|
DPR_TOUCH_WITH_VERSION = <<-STR.squish.freeze
|
7
|
-
|
8
|
-
|
7
|
+
my_model.paper_trail.touch_with_version is deprecated, please use
|
8
|
+
my_model.paper_trail.save_with_version, which is slightly different. It's
|
9
|
+
a save, not a touch, so make sure you understand the difference by reading
|
10
|
+
the ActiveRecord documentation for both.
|
9
11
|
STR
|
10
12
|
DPR_WHODUNNIT = <<-STR.squish.freeze
|
11
13
|
my_model_instance.paper_trail.whodunnit('John') is deprecated,
|
@@ -508,6 +510,26 @@ module PaperTrail
|
|
508
510
|
record_update(force: true, in_after_callback: false)
|
509
511
|
end
|
510
512
|
|
513
|
+
# Save, and create a version record regardless of options such as `:on`,
|
514
|
+
# `:if`, or `:unless`.
|
515
|
+
#
|
516
|
+
# Arguments are passed to `save`.
|
517
|
+
#
|
518
|
+
# This is an "update" event. That is, we record the same data we would in
|
519
|
+
# the case of a normal AR `update`.
|
520
|
+
#
|
521
|
+
# In older versions of PaperTrail, a method named `touch_with_version` was
|
522
|
+
# used for this purpose. `save_with_version` is not exactly the same.
|
523
|
+
# First, the arguments are different. It passes all arguments to `save`.
|
524
|
+
# Second, it doesn't set any timestamp attributes prior to the `save` the
|
525
|
+
# way `touch_with_version` did.
|
526
|
+
def save_with_version(*args)
|
527
|
+
::PaperTrail.request(enabled: false) do
|
528
|
+
@record.save(*args)
|
529
|
+
end
|
530
|
+
record_update(force: true, in_after_callback: false)
|
531
|
+
end
|
532
|
+
|
511
533
|
# Like the `update_column` method from `ActiveRecord::Persistence`, but also
|
512
534
|
# creates a version to record those changes.
|
513
535
|
# @api public
|
@@ -648,7 +670,7 @@ module PaperTrail
|
|
648
670
|
|
649
671
|
def log_version_errors(version, action)
|
650
672
|
version.logger&.warn(
|
651
|
-
"Unable to create version for #{action} of #{@record.class.name}"
|
673
|
+
"Unable to create version for #{action} of #{@record.class.name}" \
|
652
674
|
"##{@record.id}: " + version.errors.full_messages.join(", ")
|
653
675
|
)
|
654
676
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paper_trail
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.0.
|
4
|
+
version: 9.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Stewart
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2018-
|
13
|
+
date: 2018-04-23 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
@@ -66,28 +66,28 @@ dependencies:
|
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
69
|
+
version: '10.0'
|
70
70
|
type: :development
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '
|
76
|
+
version: '10.0'
|
77
77
|
- !ruby/object:Gem::Dependency
|
78
78
|
name: ffaker
|
79
79
|
requirement: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '2.
|
83
|
+
version: '2.8'
|
84
84
|
type: :development
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '2.
|
90
|
+
version: '2.8'
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: generator_spec
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
@@ -130,26 +130,6 @@ dependencies:
|
|
130
130
|
- - "~>"
|
131
131
|
- !ruby/object:Gem::Version
|
132
132
|
version: 0.21.0
|
133
|
-
- !ruby/object:Gem::Dependency
|
134
|
-
name: rack-test
|
135
|
-
requirement: !ruby/object:Gem::Requirement
|
136
|
-
requirements:
|
137
|
-
- - ">="
|
138
|
-
- !ruby/object:Gem::Version
|
139
|
-
version: 0.6.3
|
140
|
-
- - "<"
|
141
|
-
- !ruby/object:Gem::Version
|
142
|
-
version: '0.9'
|
143
|
-
type: :development
|
144
|
-
prerelease: false
|
145
|
-
version_requirements: !ruby/object:Gem::Requirement
|
146
|
-
requirements:
|
147
|
-
- - ">="
|
148
|
-
- !ruby/object:Gem::Version
|
149
|
-
version: 0.6.3
|
150
|
-
- - "<"
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '0.9'
|
153
133
|
- !ruby/object:Gem::Dependency
|
154
134
|
name: rake
|
155
135
|
requirement: !ruby/object:Gem::Requirement
|
@@ -184,28 +164,28 @@ dependencies:
|
|
184
164
|
requirements:
|
185
165
|
- - "~>"
|
186
166
|
- !ruby/object:Gem::Version
|
187
|
-
version: 0.
|
167
|
+
version: 0.54.0
|
188
168
|
type: :development
|
189
169
|
prerelease: false
|
190
170
|
version_requirements: !ruby/object:Gem::Requirement
|
191
171
|
requirements:
|
192
172
|
- - "~>"
|
193
173
|
- !ruby/object:Gem::Version
|
194
|
-
version: 0.
|
174
|
+
version: 0.54.0
|
195
175
|
- !ruby/object:Gem::Dependency
|
196
176
|
name: rubocop-rspec
|
197
177
|
requirement: !ruby/object:Gem::Requirement
|
198
178
|
requirements:
|
199
179
|
- - "~>"
|
200
180
|
- !ruby/object:Gem::Version
|
201
|
-
version: 1.
|
181
|
+
version: 1.24.0
|
202
182
|
type: :development
|
203
183
|
prerelease: false
|
204
184
|
version_requirements: !ruby/object:Gem::Requirement
|
205
185
|
requirements:
|
206
186
|
- - "~>"
|
207
187
|
- !ruby/object:Gem::Version
|
208
|
-
version: 1.
|
188
|
+
version: 1.24.0
|
209
189
|
- !ruby/object:Gem::Dependency
|
210
190
|
name: sqlite3
|
211
191
|
requirement: !ruby/object:Gem::Requirement
|