paper_trail 7.0.2 → 7.0.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/.github/CONTRIBUTING.md +1 -1
- data/.rubocop_todo.yml +10 -0
- data/.travis.yml +4 -4
- data/Appraisals +3 -5
- data/CHANGELOG.md +16 -1
- data/README.md +70 -119
- data/Rakefile +6 -1
- data/doc/bug_report_template.rb +4 -2
- data/doc/warning_about_not_setting_whodunnit.md +6 -5
- data/gemfiles/ar_4.0.gemfile +1 -1
- data/gemfiles/ar_4.2.gemfile +1 -1
- data/gemfiles/ar_5.0.gemfile +2 -3
- data/gemfiles/ar_5.1.gemfile +8 -0
- data/gemfiles/ar_master.gemfile +2 -2
- data/lib/generators/paper_trail/templates/add_object_changes_to_versions.rb.erb +1 -1
- data/lib/generators/paper_trail/templates/add_transaction_id_column_to_versions.rb.erb +1 -1
- data/lib/generators/paper_trail/templates/create_version_associations.rb.erb +1 -1
- data/lib/paper_trail/model_config.rb +4 -4
- data/lib/paper_trail/version_concern.rb +4 -4
- data/lib/paper_trail/version_number.rb +1 -1
- data/paper_trail.gemspec +5 -5
- data/spec/controllers/articles_controller_spec.rb +1 -1
- data/spec/generators/install_generator_spec.rb +2 -2
- data/spec/models/animal_spec.rb +5 -5
- data/spec/models/boolit_spec.rb +2 -2
- data/spec/models/callback_modifier_spec.rb +2 -2
- data/spec/models/car_spec.rb +2 -2
- data/spec/models/custom_primary_key_record_spec.rb +2 -2
- data/spec/models/document_spec.rb +2 -2
- data/spec/models/gadget_spec.rb +2 -2
- data/spec/models/joined_version_spec.rb +1 -1
- data/spec/models/json_version_spec.rb +4 -4
- data/spec/models/kitchen/banana_spec.rb +2 -2
- data/spec/models/not_on_update_spec.rb +2 -2
- data/spec/models/post_with_status_spec.rb +4 -4
- data/spec/models/skipper_spec.rb +1 -1
- data/spec/models/thing_spec.rb +2 -2
- data/spec/models/vehicle_spec.rb +2 -2
- data/spec/models/version_spec.rb +26 -5
- data/spec/models/widget_spec.rb +10 -2
- data/spec/modules/paper_trail_spec.rb +2 -2
- data/spec/modules/version_concern_spec.rb +2 -2
- data/spec/modules/version_number_spec.rb +1 -1
- data/spec/paper_trail/associations_spec.rb +965 -0
- data/spec/paper_trail/cleaner_spec.rb +2 -2
- data/spec/paper_trail/config_spec.rb +2 -2
- data/spec/paper_trail/model_spec.rb +1421 -0
- data/spec/paper_trail/serializer_spec.rb +85 -0
- data/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb +1 -1
- data/spec/paper_trail/serializers/json_spec.rb +2 -2
- data/spec/paper_trail/serializers/yaml_spec.rb +42 -0
- data/spec/paper_trail/version_limit_spec.rb +2 -2
- data/spec/paper_trail/version_spec.rb +96 -0
- data/spec/paper_trail_spec.rb +1 -1
- data/spec/requests/articles_spec.rb +2 -2
- data/spec/spec_helper.rb +47 -79
- data/{test → spec/support}/custom_json_serializer.rb +0 -0
- data/test/dummy/app/models/document.rb +1 -1
- data/test/dummy/app/models/not_on_update.rb +1 -1
- data/test/dummy/app/models/widget.rb +1 -1
- data/test/dummy/config/routes.rb +1 -1
- data/test/dummy/db/migrate/20110208155312_set_up_test_tables.rb +18 -9
- data/test/dummy/db/schema.rb +64 -64
- data/test/test_helper.rb +1 -33
- data/test/unit/serializers/mixin_json_test.rb +1 -1
- metadata +27 -32
- data/spec/models/truck_spec.rb +0 -5
- data/spec/rails_helper.rb +0 -34
- data/test/time_travel_helper.rb +0 -1
- data/test/unit/associations_test.rb +0 -1032
- data/test/unit/model_test.rb +0 -1416
- data/test/unit/serializer_test.rb +0 -107
- data/test/unit/serializers/yaml_test.rb +0 -50
- data/test/unit/version_test.rb +0 -112
@@ -1,7 +1,16 @@
|
|
1
|
-
#
|
1
|
+
# Parts of this migration must be kept in sync with
|
2
2
|
# `lib/generators/paper_trail/templates/create_versions.rb`
|
3
|
-
#
|
4
|
-
|
3
|
+
#
|
4
|
+
# Starting with AR 5.1, we must specify which version of AR we are using.
|
5
|
+
# I tried using `const_get` but I got a `NameError`, then I learned about
|
6
|
+
# `::ActiveRecord::Migration::Current`.
|
7
|
+
class SetUpTestTables < (
|
8
|
+
if ::ActiveRecord::VERSION::MAJOR >= 5
|
9
|
+
::ActiveRecord::Migration::Current
|
10
|
+
else
|
11
|
+
::ActiveRecord::Migration
|
12
|
+
end
|
13
|
+
)
|
5
14
|
MYSQL_ADAPTERS = [
|
6
15
|
"ActiveRecord::ConnectionAdapters::MysqlAdapter",
|
7
16
|
"ActiveRecord::ConnectionAdapters::Mysql2Adapter"
|
@@ -73,7 +82,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
73
82
|
t.string :ip
|
74
83
|
t.string :user_agent
|
75
84
|
end
|
76
|
-
add_index :versions, %i
|
85
|
+
add_index :versions, %i[item_type item_id]
|
77
86
|
|
78
87
|
create_table :version_associations do |t|
|
79
88
|
t.integer :version_id
|
@@ -82,7 +91,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
82
91
|
end
|
83
92
|
add_index :version_associations, [:version_id]
|
84
93
|
add_index :version_associations,
|
85
|
-
%i
|
94
|
+
%i[foreign_key_name foreign_key_id],
|
86
95
|
name: "index_version_associations_on_foreign_key"
|
87
96
|
|
88
97
|
create_table :post_versions, force: true do |t|
|
@@ -97,7 +106,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
97
106
|
t.string :ip
|
98
107
|
t.string :user_agent
|
99
108
|
end
|
100
|
-
add_index :post_versions, %i
|
109
|
+
add_index :post_versions, %i[item_type item_id]
|
101
110
|
|
102
111
|
if ENV["DB"] == "postgres" && ::ActiveRecord::VERSION::MAJOR >= 4
|
103
112
|
create_table :json_versions, force: true do |t|
|
@@ -109,7 +118,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
109
118
|
t.json :object_changes
|
110
119
|
t.datetime :created_at
|
111
120
|
end
|
112
|
-
add_index :json_versions, %i
|
121
|
+
add_index :json_versions, %i[item_type item_id]
|
113
122
|
end
|
114
123
|
|
115
124
|
create_table :not_on_updates, force: true do |t|
|
@@ -128,7 +137,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
128
137
|
t.text :object
|
129
138
|
t.datetime :created_at
|
130
139
|
end
|
131
|
-
add_index :banana_versions, %i
|
140
|
+
add_index :banana_versions, %i[item_type item_id]
|
132
141
|
|
133
142
|
create_table :wotsits, force: true do |t|
|
134
143
|
t.integer :widget_id
|
@@ -305,7 +314,7 @@ class SetUpTestTables < ActiveRecord::Migration
|
|
305
314
|
t.text :object
|
306
315
|
t.datetime :created_at
|
307
316
|
end
|
308
|
-
add_index :custom_primary_key_record_versions, %i
|
317
|
+
add_index :custom_primary_key_record_versions, %i[item_type item_id], name: "idx_cust_pk_item"
|
309
318
|
end
|
310
319
|
|
311
320
|
def down
|
data/test/dummy/db/schema.rb
CHANGED
@@ -30,11 +30,11 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
30
30
|
end
|
31
31
|
|
32
32
|
create_table "banana_versions", force: :cascade do |t|
|
33
|
-
t.string
|
34
|
-
t.integer
|
35
|
-
t.string
|
36
|
-
t.string
|
37
|
-
t.text
|
33
|
+
t.string "item_type", null: false
|
34
|
+
t.integer "item_id", null: false
|
35
|
+
t.string "event", null: false
|
36
|
+
t.string "whodunnit"
|
37
|
+
t.text "object"
|
38
38
|
t.datetime "created_at"
|
39
39
|
t.index ["item_type", "item_id"], name: "index_banana_versions_on_item_type_and_item_id"
|
40
40
|
end
|
@@ -60,13 +60,13 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
60
60
|
end
|
61
61
|
|
62
62
|
create_table "boolits", force: :cascade do |t|
|
63
|
-
t.string
|
63
|
+
t.string "name"
|
64
64
|
t.boolean "scoped", default: true
|
65
65
|
end
|
66
66
|
|
67
67
|
create_table "callback_modifiers", force: :cascade do |t|
|
68
|
-
t.string
|
69
|
-
t.boolean "deleted",
|
68
|
+
t.string "some_content"
|
69
|
+
t.boolean "deleted", default: false
|
70
70
|
end
|
71
71
|
|
72
72
|
create_table "chapters", force: :cascade do |t|
|
@@ -78,20 +78,20 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
78
78
|
end
|
79
79
|
|
80
80
|
create_table "custom_primary_key_record_versions", force: :cascade do |t|
|
81
|
-
t.string
|
82
|
-
t.string
|
83
|
-
t.string
|
84
|
-
t.string
|
85
|
-
t.text
|
81
|
+
t.string "item_type", null: false
|
82
|
+
t.string "item_id", null: false
|
83
|
+
t.string "event", null: false
|
84
|
+
t.string "whodunnit"
|
85
|
+
t.text "object"
|
86
86
|
t.datetime "created_at"
|
87
87
|
t.index ["item_type", "item_id"], name: "idx_cust_pk_item"
|
88
88
|
end
|
89
89
|
|
90
90
|
create_table "custom_primary_key_records", primary_key: "uuid", id: :string, force: :cascade do |t|
|
91
|
-
t.string
|
91
|
+
t.string "name"
|
92
92
|
t.datetime "created_at"
|
93
93
|
t.datetime "updated_at"
|
94
|
-
t.index ["uuid"], unique: true
|
94
|
+
t.index ["uuid"], name: "sqlite_autoindex_custom_primary_key_records_1", unique: true
|
95
95
|
end
|
96
96
|
|
97
97
|
create_table "customers", force: :cascade do |t|
|
@@ -113,7 +113,7 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
113
113
|
|
114
114
|
create_table "fluxors", force: :cascade do |t|
|
115
115
|
t.integer "widget_id"
|
116
|
-
t.string
|
116
|
+
t.string "name"
|
117
117
|
end
|
118
118
|
|
119
119
|
create_table "foo_habtms", force: :cascade do |t|
|
@@ -126,20 +126,20 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
126
126
|
end
|
127
127
|
|
128
128
|
create_table "gadgets", force: :cascade do |t|
|
129
|
-
t.string
|
130
|
-
t.string
|
129
|
+
t.string "name"
|
130
|
+
t.string "brand"
|
131
131
|
t.datetime "created_at"
|
132
132
|
t.datetime "updated_at"
|
133
133
|
end
|
134
134
|
|
135
135
|
create_table "legacy_widgets", force: :cascade do |t|
|
136
|
-
t.string
|
136
|
+
t.string "name"
|
137
137
|
t.integer "version"
|
138
138
|
end
|
139
139
|
|
140
140
|
create_table "line_items", force: :cascade do |t|
|
141
141
|
t.integer "order_id"
|
142
|
-
t.string
|
142
|
+
t.string "product"
|
143
143
|
end
|
144
144
|
|
145
145
|
create_table "not_on_updates", force: :cascade do |t|
|
@@ -165,34 +165,34 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
165
165
|
|
166
166
|
create_table "orders", force: :cascade do |t|
|
167
167
|
t.integer "customer_id"
|
168
|
-
t.string
|
168
|
+
t.string "order_date"
|
169
169
|
end
|
170
170
|
|
171
171
|
create_table "paragraphs", force: :cascade do |t|
|
172
172
|
t.integer "section_id"
|
173
|
-
t.string
|
173
|
+
t.string "name"
|
174
174
|
end
|
175
175
|
|
176
176
|
create_table "people", force: :cascade do |t|
|
177
|
-
t.string
|
178
|
-
t.string
|
177
|
+
t.string "name"
|
178
|
+
t.string "time_zone"
|
179
179
|
t.integer "mentor_id"
|
180
180
|
end
|
181
181
|
|
182
182
|
create_table "post_versions", force: :cascade do |t|
|
183
|
-
t.string
|
184
|
-
t.integer
|
185
|
-
t.string
|
186
|
-
t.string
|
187
|
-
t.text
|
183
|
+
t.string "item_type", null: false
|
184
|
+
t.integer "item_id", null: false
|
185
|
+
t.string "event", null: false
|
186
|
+
t.string "whodunnit"
|
187
|
+
t.text "object"
|
188
188
|
t.datetime "created_at"
|
189
|
-
t.string
|
190
|
-
t.string
|
189
|
+
t.string "ip"
|
190
|
+
t.string "user_agent"
|
191
191
|
t.index ["item_type", "item_id"], name: "index_post_versions_on_item_type_and_item_id"
|
192
192
|
end
|
193
193
|
|
194
194
|
create_table "post_with_statuses", force: :cascade do |t|
|
195
|
-
t.integer
|
195
|
+
t.integer "status"
|
196
196
|
t.datetime "created_at", null: false
|
197
197
|
t.datetime "updated_at", null: false
|
198
198
|
end
|
@@ -208,11 +208,11 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
208
208
|
|
209
209
|
create_table "sections", force: :cascade do |t|
|
210
210
|
t.integer "chapter_id"
|
211
|
-
t.string
|
211
|
+
t.string "name"
|
212
212
|
end
|
213
213
|
|
214
214
|
create_table "skippers", force: :cascade do |t|
|
215
|
-
t.string
|
215
|
+
t.string "name"
|
216
216
|
t.datetime "another_timestamp"
|
217
217
|
t.datetime "created_at"
|
218
218
|
t.datetime "updated_at"
|
@@ -234,63 +234,63 @@ ActiveRecord::Schema.define(version: 20110208155312) do
|
|
234
234
|
end
|
235
235
|
|
236
236
|
create_table "vehicles", force: :cascade do |t|
|
237
|
-
t.string
|
238
|
-
t.string
|
237
|
+
t.string "name", null: false
|
238
|
+
t.string "type", null: false
|
239
239
|
t.datetime "created_at", null: false
|
240
240
|
t.datetime "updated_at", null: false
|
241
241
|
end
|
242
242
|
|
243
243
|
create_table "version_associations", force: :cascade do |t|
|
244
244
|
t.integer "version_id"
|
245
|
-
t.string
|
245
|
+
t.string "foreign_key_name", null: false
|
246
246
|
t.integer "foreign_key_id"
|
247
247
|
t.index ["foreign_key_name", "foreign_key_id"], name: "index_version_associations_on_foreign_key"
|
248
248
|
t.index ["version_id"], name: "index_version_associations_on_version_id"
|
249
249
|
end
|
250
250
|
|
251
251
|
create_table "versions", force: :cascade do |t|
|
252
|
-
t.string
|
253
|
-
t.integer
|
254
|
-
t.string
|
255
|
-
t.string
|
256
|
-
t.text
|
257
|
-
t.text
|
258
|
-
t.integer
|
252
|
+
t.string "item_type", null: false
|
253
|
+
t.integer "item_id", null: false
|
254
|
+
t.string "event", null: false
|
255
|
+
t.string "whodunnit"
|
256
|
+
t.text "object", limit: 1073741823
|
257
|
+
t.text "object_changes", limit: 1073741823
|
258
|
+
t.integer "transaction_id"
|
259
259
|
t.datetime "created_at"
|
260
|
-
t.integer
|
261
|
-
t.string
|
262
|
-
t.string
|
263
|
-
t.integer
|
264
|
-
t.string
|
265
|
-
t.string
|
266
|
-
t.string
|
260
|
+
t.integer "answer"
|
261
|
+
t.string "action"
|
262
|
+
t.string "question"
|
263
|
+
t.integer "article_id"
|
264
|
+
t.string "title"
|
265
|
+
t.string "ip"
|
266
|
+
t.string "user_agent"
|
267
267
|
t.index ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id"
|
268
268
|
end
|
269
269
|
|
270
270
|
create_table "whatchamajiggers", force: :cascade do |t|
|
271
|
-
t.string
|
271
|
+
t.string "owner_type"
|
272
272
|
t.integer "owner_id"
|
273
|
-
t.string
|
273
|
+
t.string "name"
|
274
274
|
end
|
275
275
|
|
276
276
|
create_table "widgets", force: :cascade do |t|
|
277
|
-
t.string
|
278
|
-
t.text
|
279
|
-
t.integer
|
280
|
-
t.float
|
281
|
-
t.decimal
|
277
|
+
t.string "name"
|
278
|
+
t.text "a_text"
|
279
|
+
t.integer "an_integer"
|
280
|
+
t.float "a_float"
|
281
|
+
t.decimal "a_decimal", precision: 6, scale: 4
|
282
282
|
t.datetime "a_datetime"
|
283
|
-
t.time
|
284
|
-
t.date
|
285
|
-
t.boolean
|
286
|
-
t.string
|
283
|
+
t.time "a_time"
|
284
|
+
t.date "a_date"
|
285
|
+
t.boolean "a_boolean"
|
286
|
+
t.string "type"
|
287
287
|
t.datetime "created_at"
|
288
288
|
t.datetime "updated_at"
|
289
289
|
end
|
290
290
|
|
291
291
|
create_table "wotsits", force: :cascade do |t|
|
292
|
-
t.integer
|
293
|
-
t.string
|
292
|
+
t.integer "widget_id"
|
293
|
+
t.string "name"
|
294
294
|
t.datetime "created_at"
|
295
295
|
t.datetime "updated_at"
|
296
296
|
end
|
data/test/test_helper.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require "pry
|
1
|
+
require "pry"
|
2
2
|
|
3
3
|
ENV["RAILS_ENV"] = "test"
|
4
4
|
ENV["DB"] ||= "sqlite"
|
@@ -53,38 +53,6 @@ module ActiveSupport
|
|
53
53
|
DatabaseCleaner.clean if using_mysql?
|
54
54
|
Thread.current[:paper_trail] = nil
|
55
55
|
end
|
56
|
-
|
57
|
-
private
|
58
|
-
|
59
|
-
def assert_attributes_equal(expected, actual)
|
60
|
-
if using_mysql?
|
61
|
-
expected = expected.dup
|
62
|
-
actual = actual.dup
|
63
|
-
|
64
|
-
# Adjust timestamps for missing fractional seconds precision.
|
65
|
-
%w(created_at updated_at).each do |timestamp|
|
66
|
-
expected[timestamp] = expected[timestamp].change(usec: 0)
|
67
|
-
actual[timestamp] = actual[timestamp].change(usec: 0)
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
assert_equal expected, actual
|
72
|
-
end
|
73
|
-
|
74
|
-
def assert_changes_equal(expected, actual)
|
75
|
-
if using_mysql?
|
76
|
-
expected = expected.dup
|
77
|
-
actual = actual.dup
|
78
|
-
|
79
|
-
# Adjust timestamps for missing fractional seconds precision.
|
80
|
-
%w(created_at updated_at).each do |timestamp|
|
81
|
-
expected[timestamp][1] = expected[timestamp][1].change(usec: 0)
|
82
|
-
actual[timestamp][1] = actual[timestamp][1].change(usec: 0)
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
assert_equal expected, actual
|
87
|
-
end
|
88
56
|
end
|
89
57
|
end
|
90
58
|
|
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: 7.0.
|
4
|
+
version: 7.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Stewart
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-06-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
@@ -65,42 +65,42 @@ dependencies:
|
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: '12.0'
|
69
69
|
type: :development
|
70
70
|
prerelease: false
|
71
71
|
version_requirements: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: '12.0'
|
76
76
|
- !ruby/object:Gem::Dependency
|
77
77
|
name: shoulda
|
78
78
|
requirement: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 3.5
|
82
|
+
version: '3.5'
|
83
83
|
type: :development
|
84
84
|
prerelease: false
|
85
85
|
version_requirements: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 3.5
|
89
|
+
version: '3.5'
|
90
90
|
- !ruby/object:Gem::Dependency
|
91
91
|
name: ffaker
|
92
92
|
requirement: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 2.
|
96
|
+
version: '2.5'
|
97
97
|
type: :development
|
98
98
|
prerelease: false
|
99
99
|
version_requirements: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 2.
|
103
|
+
version: '2.5'
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
105
|
name: railties
|
106
106
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,33 +178,33 @@ dependencies:
|
|
178
178
|
- !ruby/object:Gem::Version
|
179
179
|
version: '1.2'
|
180
180
|
- !ruby/object:Gem::Dependency
|
181
|
-
name: pry-
|
181
|
+
name: pry-byebug
|
182
182
|
requirement: !ruby/object:Gem::Requirement
|
183
183
|
requirements:
|
184
184
|
- - "~>"
|
185
185
|
- !ruby/object:Gem::Version
|
186
|
-
version:
|
186
|
+
version: '3.4'
|
187
187
|
type: :development
|
188
188
|
prerelease: false
|
189
189
|
version_requirements: !ruby/object:Gem::Requirement
|
190
190
|
requirements:
|
191
191
|
- - "~>"
|
192
192
|
- !ruby/object:Gem::Version
|
193
|
-
version:
|
193
|
+
version: '3.4'
|
194
194
|
- !ruby/object:Gem::Dependency
|
195
195
|
name: rubocop
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
197
197
|
requirements:
|
198
198
|
- - '='
|
199
199
|
- !ruby/object:Gem::Version
|
200
|
-
version: 0.48.
|
200
|
+
version: 0.48.1
|
201
201
|
type: :development
|
202
202
|
prerelease: false
|
203
203
|
version_requirements: !ruby/object:Gem::Requirement
|
204
204
|
requirements:
|
205
205
|
- - '='
|
206
206
|
- !ruby/object:Gem::Version
|
207
|
-
version: 0.48.
|
207
|
+
version: 0.48.1
|
208
208
|
- !ruby/object:Gem::Dependency
|
209
209
|
name: rubocop-rspec
|
210
210
|
requirement: !ruby/object:Gem::Requirement
|
@@ -303,6 +303,7 @@ files:
|
|
303
303
|
- gemfiles/ar_4.0.gemfile
|
304
304
|
- gemfiles/ar_4.2.gemfile
|
305
305
|
- gemfiles/ar_5.0.gemfile
|
306
|
+
- gemfiles/ar_5.1.gemfile
|
306
307
|
- gemfiles/ar_master.gemfile
|
307
308
|
- lib/generators/paper_trail/USAGE
|
308
309
|
- lib/generators/paper_trail/default_initializer.rb
|
@@ -362,24 +363,27 @@ files:
|
|
362
363
|
- spec/models/post_with_status_spec.rb
|
363
364
|
- spec/models/skipper_spec.rb
|
364
365
|
- spec/models/thing_spec.rb
|
365
|
-
- spec/models/truck_spec.rb
|
366
366
|
- spec/models/vehicle_spec.rb
|
367
367
|
- spec/models/version_spec.rb
|
368
368
|
- spec/models/widget_spec.rb
|
369
369
|
- spec/modules/paper_trail_spec.rb
|
370
370
|
- spec/modules/version_concern_spec.rb
|
371
371
|
- spec/modules/version_number_spec.rb
|
372
|
+
- spec/paper_trail/associations_spec.rb
|
372
373
|
- spec/paper_trail/cleaner_spec.rb
|
373
374
|
- spec/paper_trail/config_spec.rb
|
375
|
+
- spec/paper_trail/model_spec.rb
|
376
|
+
- spec/paper_trail/serializer_spec.rb
|
374
377
|
- spec/paper_trail/serializers/custom_yaml_serializer_spec.rb
|
375
378
|
- spec/paper_trail/serializers/json_spec.rb
|
379
|
+
- spec/paper_trail/serializers/yaml_spec.rb
|
376
380
|
- spec/paper_trail/version_limit_spec.rb
|
381
|
+
- spec/paper_trail/version_spec.rb
|
377
382
|
- spec/paper_trail_spec.rb
|
378
|
-
- spec/rails_helper.rb
|
379
383
|
- spec/requests/articles_spec.rb
|
380
384
|
- spec/spec_helper.rb
|
381
385
|
- spec/support/alt_db_init.rb
|
382
|
-
-
|
386
|
+
- spec/support/custom_json_serializer.rb
|
383
387
|
- test/dummy/Rakefile
|
384
388
|
- test/dummy/app/controllers/application_controller.rb
|
385
389
|
- test/dummy/app/controllers/articles_controller.rb
|
@@ -460,13 +464,7 @@ files:
|
|
460
464
|
- test/functional/controller_test.rb
|
461
465
|
- test/functional/thread_safety_test.rb
|
462
466
|
- test/test_helper.rb
|
463
|
-
- test/time_travel_helper.rb
|
464
|
-
- test/unit/associations_test.rb
|
465
|
-
- test/unit/model_test.rb
|
466
|
-
- test/unit/serializer_test.rb
|
467
467
|
- test/unit/serializers/mixin_json_test.rb
|
468
|
-
- test/unit/serializers/yaml_test.rb
|
469
|
-
- test/unit/version_test.rb
|
470
468
|
homepage: https://github.com/airblade/paper_trail
|
471
469
|
licenses:
|
472
470
|
- MIT
|
@@ -487,7 +485,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
487
485
|
version: 1.3.6
|
488
486
|
requirements: []
|
489
487
|
rubyforge_project:
|
490
|
-
rubygems_version: 2.
|
488
|
+
rubygems_version: 2.6.10
|
491
489
|
signing_key:
|
492
490
|
specification_version: 4
|
493
491
|
summary: Track changes to your models.
|
@@ -508,24 +506,27 @@ test_files:
|
|
508
506
|
- spec/models/post_with_status_spec.rb
|
509
507
|
- spec/models/skipper_spec.rb
|
510
508
|
- spec/models/thing_spec.rb
|
511
|
-
- spec/models/truck_spec.rb
|
512
509
|
- spec/models/vehicle_spec.rb
|
513
510
|
- spec/models/version_spec.rb
|
514
511
|
- spec/models/widget_spec.rb
|
515
512
|
- spec/modules/paper_trail_spec.rb
|
516
513
|
- spec/modules/version_concern_spec.rb
|
517
514
|
- spec/modules/version_number_spec.rb
|
515
|
+
- spec/paper_trail/associations_spec.rb
|
518
516
|
- spec/paper_trail/cleaner_spec.rb
|
519
517
|
- spec/paper_trail/config_spec.rb
|
518
|
+
- spec/paper_trail/model_spec.rb
|
519
|
+
- spec/paper_trail/serializer_spec.rb
|
520
520
|
- spec/paper_trail/serializers/custom_yaml_serializer_spec.rb
|
521
521
|
- spec/paper_trail/serializers/json_spec.rb
|
522
|
+
- spec/paper_trail/serializers/yaml_spec.rb
|
522
523
|
- spec/paper_trail/version_limit_spec.rb
|
524
|
+
- spec/paper_trail/version_spec.rb
|
523
525
|
- spec/paper_trail_spec.rb
|
524
|
-
- spec/rails_helper.rb
|
525
526
|
- spec/requests/articles_spec.rb
|
526
527
|
- spec/spec_helper.rb
|
527
528
|
- spec/support/alt_db_init.rb
|
528
|
-
-
|
529
|
+
- spec/support/custom_json_serializer.rb
|
529
530
|
- test/dummy/Rakefile
|
530
531
|
- test/dummy/app/controllers/application_controller.rb
|
531
532
|
- test/dummy/app/controllers/articles_controller.rb
|
@@ -606,10 +607,4 @@ test_files:
|
|
606
607
|
- test/functional/controller_test.rb
|
607
608
|
- test/functional/thread_safety_test.rb
|
608
609
|
- test/test_helper.rb
|
609
|
-
- test/time_travel_helper.rb
|
610
|
-
- test/unit/associations_test.rb
|
611
|
-
- test/unit/model_test.rb
|
612
|
-
- test/unit/serializer_test.rb
|
613
610
|
- test/unit/serializers/mixin_json_test.rb
|
614
|
-
- test/unit/serializers/yaml_test.rb
|
615
|
-
- test/unit/version_test.rb
|