paper_trail 7.1.0 → 7.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/lib/paper_trail/record_trail.rb +1 -1
  3. data/lib/paper_trail/version_number.rb +1 -1
  4. metadata +3 -274
  5. data/.github/CONTRIBUTING.md +0 -151
  6. data/.github/ISSUE_TEMPLATE.md +0 -13
  7. data/.gitignore +0 -23
  8. data/.rspec +0 -2
  9. data/.rubocop.yml +0 -135
  10. data/.rubocop_todo.yml +0 -41
  11. data/.travis.yml +0 -41
  12. data/Appraisals +0 -26
  13. data/CHANGELOG.md +0 -739
  14. data/Gemfile +0 -2
  15. data/MIT-LICENSE +0 -20
  16. data/README.md +0 -1613
  17. data/Rakefile +0 -38
  18. data/doc/bug_report_template.rb +0 -73
  19. data/doc/triage.md +0 -27
  20. data/doc/warning_about_not_setting_whodunnit.md +0 -33
  21. data/gemfiles/ar_4.0.gemfile +0 -7
  22. data/gemfiles/ar_4.2.gemfile +0 -7
  23. data/gemfiles/ar_5.0.gemfile +0 -8
  24. data/gemfiles/ar_5.1.gemfile +0 -8
  25. data/gemfiles/ar_master.gemfile +0 -9
  26. data/lib/generators/paper_trail/default_initializer.rb +0 -0
  27. data/paper_trail.gemspec +0 -49
  28. data/spec/controllers/articles_controller_spec.rb +0 -28
  29. data/spec/controllers/widgets_controller_spec.rb +0 -85
  30. data/spec/dummy_app/Rakefile +0 -7
  31. data/spec/dummy_app/app/controllers/application_controller.rb +0 -30
  32. data/spec/dummy_app/app/controllers/articles_controller.rb +0 -16
  33. data/spec/dummy_app/app/controllers/test_controller.rb +0 -5
  34. data/spec/dummy_app/app/controllers/widgets_controller.rb +0 -28
  35. data/spec/dummy_app/app/models/animal.rb +0 -4
  36. data/spec/dummy_app/app/models/article.rb +0 -25
  37. data/spec/dummy_app/app/models/authorship.rb +0 -5
  38. data/spec/dummy_app/app/models/bar_habtm.rb +0 -4
  39. data/spec/dummy_app/app/models/book.rb +0 -9
  40. data/spec/dummy_app/app/models/boolit.rb +0 -4
  41. data/spec/dummy_app/app/models/callback_modifier.rb +0 -45
  42. data/spec/dummy_app/app/models/car.rb +0 -3
  43. data/spec/dummy_app/app/models/cat.rb +0 -2
  44. data/spec/dummy_app/app/models/chapter.rb +0 -9
  45. data/spec/dummy_app/app/models/citation.rb +0 -5
  46. data/spec/dummy_app/app/models/custom_primary_key_record.rb +0 -15
  47. data/spec/dummy_app/app/models/customer.rb +0 -4
  48. data/spec/dummy_app/app/models/document.rb +0 -8
  49. data/spec/dummy_app/app/models/dog.rb +0 -2
  50. data/spec/dummy_app/app/models/editor.rb +0 -4
  51. data/spec/dummy_app/app/models/editorship.rb +0 -5
  52. data/spec/dummy_app/app/models/elephant.rb +0 -3
  53. data/spec/dummy_app/app/models/fluxor.rb +0 -3
  54. data/spec/dummy_app/app/models/foo_habtm.rb +0 -5
  55. data/spec/dummy_app/app/models/foo_widget.rb +0 -2
  56. data/spec/dummy_app/app/models/fruit.rb +0 -5
  57. data/spec/dummy_app/app/models/gadget.rb +0 -3
  58. data/spec/dummy_app/app/models/kitchen/banana.rb +0 -5
  59. data/spec/dummy_app/app/models/legacy_widget.rb +0 -6
  60. data/spec/dummy_app/app/models/line_item.rb +0 -4
  61. data/spec/dummy_app/app/models/not_on_update.rb +0 -4
  62. data/spec/dummy_app/app/models/on/create.rb +0 -6
  63. data/spec/dummy_app/app/models/on/destroy.rb +0 -6
  64. data/spec/dummy_app/app/models/on/empty_array.rb +0 -6
  65. data/spec/dummy_app/app/models/on/update.rb +0 -6
  66. data/spec/dummy_app/app/models/order.rb +0 -5
  67. data/spec/dummy_app/app/models/paragraph.rb +0 -5
  68. data/spec/dummy_app/app/models/person.rb +0 -39
  69. data/spec/dummy_app/app/models/post.rb +0 -3
  70. data/spec/dummy_app/app/models/post_with_status.rb +0 -7
  71. data/spec/dummy_app/app/models/quotation.rb +0 -5
  72. data/spec/dummy_app/app/models/section.rb +0 -6
  73. data/spec/dummy_app/app/models/skipper.rb +0 -3
  74. data/spec/dummy_app/app/models/song.rb +0 -37
  75. data/spec/dummy_app/app/models/thing.rb +0 -3
  76. data/spec/dummy_app/app/models/translation.rb +0 -11
  77. data/spec/dummy_app/app/models/truck.rb +0 -4
  78. data/spec/dummy_app/app/models/vehicle.rb +0 -4
  79. data/spec/dummy_app/app/models/whatchamajigger.rb +0 -4
  80. data/spec/dummy_app/app/models/widget.rb +0 -8
  81. data/spec/dummy_app/app/models/wotsit.rb +0 -8
  82. data/spec/dummy_app/app/versions/custom_primary_key_record_version.rb +0 -3
  83. data/spec/dummy_app/app/versions/joined_version.rb +0 -6
  84. data/spec/dummy_app/app/versions/json_version.rb +0 -3
  85. data/spec/dummy_app/app/versions/kitchen/banana_version.rb +0 -5
  86. data/spec/dummy_app/app/versions/post_version.rb +0 -3
  87. data/spec/dummy_app/config.ru +0 -4
  88. data/spec/dummy_app/config/application.rb +0 -39
  89. data/spec/dummy_app/config/boot.rb +0 -24
  90. data/spec/dummy_app/config/database.mysql.yml +0 -19
  91. data/spec/dummy_app/config/database.postgres.yml +0 -15
  92. data/spec/dummy_app/config/database.sqlite.yml +0 -15
  93. data/spec/dummy_app/config/environment.rb +0 -5
  94. data/spec/dummy_app/config/environments/development.rb +0 -36
  95. data/spec/dummy_app/config/environments/production.rb +0 -74
  96. data/spec/dummy_app/config/environments/test.rb +0 -46
  97. data/spec/dummy_app/config/initializers/backtrace_silencers.rb +0 -9
  98. data/spec/dummy_app/config/initializers/inflections.rb +0 -10
  99. data/spec/dummy_app/config/initializers/mime_types.rb +0 -5
  100. data/spec/dummy_app/config/initializers/paper_trail.rb +0 -1
  101. data/spec/dummy_app/config/initializers/secret_token.rb +0 -9
  102. data/spec/dummy_app/config/initializers/session_store.rb +0 -8
  103. data/spec/dummy_app/config/locales/en.yml +0 -5
  104. data/spec/dummy_app/config/routes.rb +0 -4
  105. data/spec/dummy_app/db/migrate/20110208155312_set_up_test_tables.rb +0 -344
  106. data/spec/dummy_app/db/schema.rb +0 -298
  107. data/spec/generators/install_generator_spec.rb +0 -88
  108. data/spec/models/animal_spec.rb +0 -61
  109. data/spec/models/article_spec.rb +0 -186
  110. data/spec/models/boolit_spec.rb +0 -41
  111. data/spec/models/callback_modifier_spec.rb +0 -92
  112. data/spec/models/car_spec.rb +0 -13
  113. data/spec/models/custom_primary_key_record_spec.rb +0 -18
  114. data/spec/models/document_spec.rb +0 -57
  115. data/spec/models/gadget_spec.rb +0 -63
  116. data/spec/models/joined_version_spec.rb +0 -41
  117. data/spec/models/json_version_spec.rb +0 -101
  118. data/spec/models/kitchen/banana_spec.rb +0 -14
  119. data/spec/models/legacy_widget_spec.rb +0 -40
  120. data/spec/models/not_on_update_spec.rb +0 -22
  121. data/spec/models/on/create_spec.rb +0 -27
  122. data/spec/models/on/destroy_spec.rb +0 -27
  123. data/spec/models/on/empty_array_spec.rb +0 -30
  124. data/spec/models/on/update_spec.rb +0 -27
  125. data/spec/models/post_with_status_spec.rb +0 -46
  126. data/spec/models/skipper_spec.rb +0 -42
  127. data/spec/models/thing_spec.rb +0 -11
  128. data/spec/models/translation_spec.rb +0 -70
  129. data/spec/models/vehicle_spec.rb +0 -5
  130. data/spec/models/version_spec.rb +0 -282
  131. data/spec/models/widget_spec.rb +0 -338
  132. data/spec/modules/paper_trail_spec.rb +0 -27
  133. data/spec/modules/version_concern_spec.rb +0 -28
  134. data/spec/modules/version_number_spec.rb +0 -18
  135. data/spec/paper_trail/associations_spec.rb +0 -965
  136. data/spec/paper_trail/cleaner_spec.rb +0 -152
  137. data/spec/paper_trail/config_spec.rb +0 -45
  138. data/spec/paper_trail/model_spec.rb +0 -992
  139. data/spec/paper_trail/serializer_spec.rb +0 -85
  140. data/spec/paper_trail/serializers/custom_json_serializer_spec.rb +0 -18
  141. data/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb +0 -45
  142. data/spec/paper_trail/serializers/json_spec.rb +0 -57
  143. data/spec/paper_trail/serializers/yaml_spec.rb +0 -42
  144. data/spec/paper_trail/thread_safety_spec.rb +0 -44
  145. data/spec/paper_trail/version_limit_spec.rb +0 -55
  146. data/spec/paper_trail/version_spec.rb +0 -96
  147. data/spec/paper_trail_spec.rb +0 -122
  148. data/spec/requests/articles_spec.rb +0 -34
  149. data/spec/spec_helper.rb +0 -78
  150. data/spec/support/alt_db_init.rb +0 -54
  151. data/spec/support/custom_json_serializer.rb +0 -13
@@ -1,4 +0,0 @@
1
- Dummy::Application.routes.draw do
2
- resources :articles, only: [:create]
3
- resources :widgets, only: %i[create update destroy]
4
- end
@@ -1,344 +0,0 @@
1
- # Parts of this migration must be kept in sync with
2
- # `lib/generators/paper_trail/templates/create_versions.rb`
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
- )
14
- MYSQL_ADAPTERS = [
15
- "ActiveRecord::ConnectionAdapters::MysqlAdapter",
16
- "ActiveRecord::ConnectionAdapters::Mysql2Adapter"
17
- ].freeze
18
- TEXT_BYTES = 1_073_741_823
19
-
20
- def up
21
- create_table :on_create, force: true do |t|
22
- t.string :name, null: false
23
- end
24
-
25
- create_table :on_destroy, force: true do |t|
26
- t.string :name, null: false
27
- end
28
-
29
- create_table :on_empty_array, force: true do |t|
30
- t.string :name, null: false
31
- end
32
-
33
- create_table :on_update, force: true do |t|
34
- t.string :name, null: false
35
- end
36
-
37
- # Classes: Vehicle, Car, Truck
38
- create_table :vehicles, force: true do |t|
39
- t.string :name, null: false
40
- t.string :type, null: false
41
- t.timestamps null: false
42
- end
43
-
44
- create_table :skippers, force: true do |t|
45
- t.string :name
46
- t.datetime :another_timestamp
47
- t.timestamps null: true
48
- end
49
-
50
- create_table :widgets, force: true do |t|
51
- t.string :name
52
- t.text :a_text
53
- t.integer :an_integer
54
- t.float :a_float
55
- t.decimal :a_decimal, precision: 6, scale: 4
56
- t.datetime :a_datetime
57
- t.time :a_time
58
- t.date :a_date
59
- t.boolean :a_boolean
60
- t.string :type
61
- t.timestamps null: true
62
- end
63
-
64
- create_table :versions, versions_table_options do |t|
65
- t.string :item_type, item_type_options
66
- t.integer :item_id, null: false
67
- t.string :event, null: false
68
- t.string :whodunnit
69
- t.text :object, limit: TEXT_BYTES
70
- t.text :object_changes, limit: TEXT_BYTES
71
- t.integer :transaction_id
72
- t.datetime :created_at
73
-
74
- # Metadata columns.
75
- t.integer :answer
76
- t.string :action
77
- t.string :question
78
- t.integer :article_id
79
- t.string :title
80
-
81
- # Controller info columns.
82
- t.string :ip
83
- t.string :user_agent
84
- end
85
- add_index :versions, %i[item_type item_id]
86
-
87
- create_table :version_associations do |t|
88
- t.integer :version_id
89
- t.string :foreign_key_name, null: false
90
- t.integer :foreign_key_id
91
- end
92
- add_index :version_associations, [:version_id]
93
- add_index :version_associations,
94
- %i[foreign_key_name foreign_key_id],
95
- name: "index_version_associations_on_foreign_key"
96
-
97
- create_table :post_versions, force: true do |t|
98
- t.string :item_type, null: false
99
- t.integer :item_id, null: false
100
- t.string :event, null: false
101
- t.string :whodunnit
102
- t.text :object
103
- t.datetime :created_at
104
-
105
- # Controller info columns.
106
- t.string :ip
107
- t.string :user_agent
108
- end
109
- add_index :post_versions, %i[item_type item_id]
110
-
111
- if ENV["DB"] == "postgres" && ::ActiveRecord::VERSION::MAJOR >= 4
112
- create_table :json_versions, force: true do |t|
113
- t.string :item_type, null: false
114
- t.integer :item_id, null: false
115
- t.string :event, null: false
116
- t.string :whodunnit
117
- t.json :object
118
- t.json :object_changes
119
- t.datetime :created_at
120
- end
121
- add_index :json_versions, %i[item_type item_id]
122
- end
123
-
124
- create_table :not_on_updates, force: true do |t|
125
- t.timestamps null: true
126
- end
127
-
128
- create_table :bananas, force: true do |t|
129
- t.timestamps null: true
130
- end
131
-
132
- create_table :banana_versions, force: true do |t|
133
- t.string :item_type, null: false
134
- t.integer :item_id, null: false
135
- t.string :event, null: false
136
- t.string :whodunnit
137
- t.text :object
138
- t.datetime :created_at
139
- end
140
- add_index :banana_versions, %i[item_type item_id]
141
-
142
- create_table :wotsits, force: true do |t|
143
- t.integer :widget_id
144
- t.string :name
145
- t.timestamps null: true
146
- end
147
-
148
- create_table :fluxors, force: true do |t|
149
- t.integer :widget_id
150
- t.string :name
151
- end
152
-
153
- create_table :whatchamajiggers, force: true do |t|
154
- t.string :owner_type
155
- t.integer :owner_id
156
- t.string :name
157
- end
158
-
159
- create_table :articles, force: true do |t|
160
- t.string :title
161
- t.string :content
162
- t.string :abstract
163
- t.string :file_upload
164
- end
165
-
166
- create_table :books, force: true do |t|
167
- t.string :title
168
- end
169
-
170
- create_table :authorships, force: true do |t|
171
- t.integer :book_id
172
- t.integer :author_id
173
- end
174
-
175
- create_table :people, force: true do |t|
176
- t.string :name
177
- t.string :time_zone
178
- t.integer :mentor_id
179
- end
180
-
181
- create_table :editorships, force: true do |t|
182
- t.integer :book_id
183
- t.integer :editor_id
184
- end
185
-
186
- create_table :editors, force: true do |t|
187
- t.string :name
188
- end
189
-
190
- create_table :songs, force: true do |t|
191
- t.integer :length
192
- end
193
-
194
- create_table :posts, force: true do |t|
195
- t.string :title
196
- t.string :content
197
- end
198
-
199
- create_table :post_with_statuses, force: true do |t|
200
- t.integer :status
201
- t.timestamps null: false
202
- end
203
-
204
- create_table :animals, force: true do |t|
205
- t.string :name
206
- t.string :species # single table inheritance column
207
- end
208
-
209
- create_table :documents, force: true do |t|
210
- t.string :name
211
- end
212
-
213
- create_table :legacy_widgets, force: true do |t|
214
- t.string :name
215
- t.integer :version
216
- end
217
-
218
- create_table :things, force: true do |t|
219
- t.string :name
220
- end
221
-
222
- create_table :translations, force: true do |t|
223
- t.string :headline
224
- t.string :content
225
- t.string :language_code
226
- t.string :type
227
- end
228
-
229
- create_table :gadgets, force: true do |t|
230
- t.string :name
231
- t.string :brand
232
- t.timestamps null: true
233
- end
234
-
235
- create_table :customers, force: true do |t|
236
- t.string :name
237
- end
238
-
239
- create_table :orders, force: true do |t|
240
- t.integer :customer_id
241
- t.string :order_date
242
- end
243
-
244
- create_table :line_items, force: true do |t|
245
- t.integer :order_id
246
- t.string :product
247
- end
248
-
249
- create_table :fruits, force: true do |t|
250
- t.string :name
251
- t.string :color
252
- end
253
-
254
- create_table :boolits, force: true do |t|
255
- t.string :name
256
- t.boolean :scoped, default: true
257
- end
258
-
259
- create_table :callback_modifiers, force: true do |t|
260
- t.string :some_content
261
- t.boolean :deleted, default: false
262
- end
263
-
264
- create_table :chapters, force: true do |t|
265
- t.string :name
266
- end
267
-
268
- create_table :sections, force: true do |t|
269
- t.integer :chapter_id
270
- t.string :name
271
- end
272
-
273
- create_table :paragraphs, force: true do |t|
274
- t.integer :section_id
275
- t.string :name
276
- end
277
-
278
- create_table :quotations, force: true do |t|
279
- t.integer :chapter_id
280
- end
281
-
282
- create_table :citations, force: true do |t|
283
- t.integer :quotation_id
284
- end
285
-
286
- create_table :foo_habtms, force: true do |t|
287
- t.string :name
288
- end
289
-
290
- create_table :bar_habtms, force: true do |t|
291
- t.string :name
292
- end
293
-
294
- create_table :bar_habtms_foo_habtms, force: true, id: false do |t|
295
- t.integer :foo_habtm_id
296
- t.integer :bar_habtm_id
297
- end
298
- add_index :bar_habtms_foo_habtms, [:foo_habtm_id]
299
- add_index :bar_habtms_foo_habtms, [:bar_habtm_id]
300
-
301
- # custom_primary_key_records use a uuid column (string)
302
- create_table :custom_primary_key_records, id: false, force: true do |t|
303
- t.column :uuid, :string, primary_key: true
304
- t.string :name
305
- t.timestamps null: true
306
- end
307
-
308
- # and custom_primary_key_record_versions stores the uuid in item_id, a string
309
- create_table :custom_primary_key_record_versions, force: true do |t|
310
- t.string :item_type, null: false
311
- t.string :item_id, null: false
312
- t.string :event, null: false
313
- t.string :whodunnit
314
- t.text :object
315
- t.datetime :created_at
316
- end
317
- add_index :custom_primary_key_record_versions, %i[item_type item_id], name: "idx_cust_pk_item"
318
- end
319
-
320
- def down
321
- # Not actually irreversible, but there is no need to maintain this method.
322
- raise ActiveRecord::IrreversibleMigration
323
- end
324
-
325
- private
326
-
327
- def item_type_options
328
- opt = { null: false }
329
- opt[:limit] = 191 if mysql?
330
- opt
331
- end
332
-
333
- def mysql?
334
- MYSQL_ADAPTERS.include?(connection.class.name)
335
- end
336
-
337
- def versions_table_options
338
- if mysql?
339
- { options: "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci" }
340
- else
341
- {}
342
- end
343
- end
344
- end
@@ -1,298 +0,0 @@
1
- # This file is auto-generated from the current state of the database. Instead
2
- # of editing this file, please use the migrations feature of Active Record to
3
- # incrementally modify your database, and then regenerate this schema definition.
4
- #
5
- # Note that this schema.rb definition is the authoritative source for your
6
- # database schema. If you need to create the application database on another
7
- # system, you should be using db:schema:load, not running all the migrations
8
- # from scratch. The latter is a flawed and unsustainable approach (the more migrations
9
- # you'll amass, the slower it'll run and the greater likelihood for issues).
10
- #
11
- # It's strongly recommended that you check this file into your version control system.
12
-
13
- ActiveRecord::Schema.define(version: 20110208155312) do
14
-
15
- create_table "animals", force: :cascade do |t|
16
- t.string "name"
17
- t.string "species"
18
- end
19
-
20
- create_table "articles", force: :cascade do |t|
21
- t.string "title"
22
- t.string "content"
23
- t.string "abstract"
24
- t.string "file_upload"
25
- end
26
-
27
- create_table "authorships", force: :cascade do |t|
28
- t.integer "book_id"
29
- t.integer "author_id"
30
- end
31
-
32
- create_table "banana_versions", force: :cascade do |t|
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
- t.datetime "created_at"
39
- t.index ["item_type", "item_id"], name: "index_banana_versions_on_item_type_and_item_id"
40
- end
41
-
42
- create_table "bananas", force: :cascade do |t|
43
- t.datetime "created_at"
44
- t.datetime "updated_at"
45
- end
46
-
47
- create_table "bar_habtms", force: :cascade do |t|
48
- t.string "name"
49
- end
50
-
51
- create_table "bar_habtms_foo_habtms", id: false, force: :cascade do |t|
52
- t.integer "foo_habtm_id"
53
- t.integer "bar_habtm_id"
54
- t.index ["bar_habtm_id"], name: "index_bar_habtms_foo_habtms_on_bar_habtm_id"
55
- t.index ["foo_habtm_id"], name: "index_bar_habtms_foo_habtms_on_foo_habtm_id"
56
- end
57
-
58
- create_table "books", force: :cascade do |t|
59
- t.string "title"
60
- end
61
-
62
- create_table "boolits", force: :cascade do |t|
63
- t.string "name"
64
- t.boolean "scoped", default: true
65
- end
66
-
67
- create_table "callback_modifiers", force: :cascade do |t|
68
- t.string "some_content"
69
- t.boolean "deleted", default: false
70
- end
71
-
72
- create_table "chapters", force: :cascade do |t|
73
- t.string "name"
74
- end
75
-
76
- create_table "citations", force: :cascade do |t|
77
- t.integer "quotation_id"
78
- end
79
-
80
- create_table "custom_primary_key_record_versions", force: :cascade do |t|
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
- t.datetime "created_at"
87
- t.index ["item_type", "item_id"], name: "idx_cust_pk_item"
88
- end
89
-
90
- create_table "custom_primary_key_records", primary_key: "uuid", id: :string, force: :cascade do |t|
91
- t.string "name"
92
- t.datetime "created_at"
93
- t.datetime "updated_at"
94
- t.index ["uuid"], name: "sqlite_autoindex_custom_primary_key_records_1", unique: true
95
- end
96
-
97
- create_table "customers", force: :cascade do |t|
98
- t.string "name"
99
- end
100
-
101
- create_table "documents", force: :cascade do |t|
102
- t.string "name"
103
- end
104
-
105
- create_table "editors", force: :cascade do |t|
106
- t.string "name"
107
- end
108
-
109
- create_table "editorships", force: :cascade do |t|
110
- t.integer "book_id"
111
- t.integer "editor_id"
112
- end
113
-
114
- create_table "fluxors", force: :cascade do |t|
115
- t.integer "widget_id"
116
- t.string "name"
117
- end
118
-
119
- create_table "foo_habtms", force: :cascade do |t|
120
- t.string "name"
121
- end
122
-
123
- create_table "fruits", force: :cascade do |t|
124
- t.string "name"
125
- t.string "color"
126
- end
127
-
128
- create_table "gadgets", force: :cascade do |t|
129
- t.string "name"
130
- t.string "brand"
131
- t.datetime "created_at"
132
- t.datetime "updated_at"
133
- end
134
-
135
- create_table "legacy_widgets", force: :cascade do |t|
136
- t.string "name"
137
- t.integer "version"
138
- end
139
-
140
- create_table "line_items", force: :cascade do |t|
141
- t.integer "order_id"
142
- t.string "product"
143
- end
144
-
145
- create_table "not_on_updates", force: :cascade do |t|
146
- t.datetime "created_at"
147
- t.datetime "updated_at"
148
- end
149
-
150
- create_table "on_create", force: :cascade do |t|
151
- t.string "name", null: false
152
- end
153
-
154
- create_table "on_destroy", force: :cascade do |t|
155
- t.string "name", null: false
156
- end
157
-
158
- create_table "on_empty_array", force: :cascade do |t|
159
- t.string "name", null: false
160
- end
161
-
162
- create_table "on_update", force: :cascade do |t|
163
- t.string "name", null: false
164
- end
165
-
166
- create_table "orders", force: :cascade do |t|
167
- t.integer "customer_id"
168
- t.string "order_date"
169
- end
170
-
171
- create_table "paragraphs", force: :cascade do |t|
172
- t.integer "section_id"
173
- t.string "name"
174
- end
175
-
176
- create_table "people", force: :cascade do |t|
177
- t.string "name"
178
- t.string "time_zone"
179
- t.integer "mentor_id"
180
- end
181
-
182
- create_table "post_versions", force: :cascade do |t|
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
- t.datetime "created_at"
189
- t.string "ip"
190
- t.string "user_agent"
191
- t.index ["item_type", "item_id"], name: "index_post_versions_on_item_type_and_item_id"
192
- end
193
-
194
- create_table "post_with_statuses", force: :cascade do |t|
195
- t.integer "status"
196
- t.datetime "created_at", null: false
197
- t.datetime "updated_at", null: false
198
- end
199
-
200
- create_table "posts", force: :cascade do |t|
201
- t.string "title"
202
- t.string "content"
203
- end
204
-
205
- create_table "quotations", force: :cascade do |t|
206
- t.integer "chapter_id"
207
- end
208
-
209
- create_table "sections", force: :cascade do |t|
210
- t.integer "chapter_id"
211
- t.string "name"
212
- end
213
-
214
- create_table "skippers", force: :cascade do |t|
215
- t.string "name"
216
- t.datetime "another_timestamp"
217
- t.datetime "created_at"
218
- t.datetime "updated_at"
219
- end
220
-
221
- create_table "songs", force: :cascade do |t|
222
- t.integer "length"
223
- end
224
-
225
- create_table "things", force: :cascade do |t|
226
- t.string "name"
227
- end
228
-
229
- create_table "translations", force: :cascade do |t|
230
- t.string "headline"
231
- t.string "content"
232
- t.string "language_code"
233
- t.string "type"
234
- end
235
-
236
- create_table "vehicles", force: :cascade do |t|
237
- t.string "name", null: false
238
- t.string "type", null: false
239
- t.datetime "created_at", null: false
240
- t.datetime "updated_at", null: false
241
- end
242
-
243
- create_table "version_associations", force: :cascade do |t|
244
- t.integer "version_id"
245
- t.string "foreign_key_name", null: false
246
- t.integer "foreign_key_id"
247
- t.index ["foreign_key_name", "foreign_key_id"], name: "index_version_associations_on_foreign_key"
248
- t.index ["version_id"], name: "index_version_associations_on_version_id"
249
- end
250
-
251
- create_table "versions", force: :cascade do |t|
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
- t.datetime "created_at"
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
- t.index ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id"
268
- end
269
-
270
- create_table "whatchamajiggers", force: :cascade do |t|
271
- t.string "owner_type"
272
- t.integer "owner_id"
273
- t.string "name"
274
- end
275
-
276
- create_table "widgets", force: :cascade do |t|
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
- t.datetime "a_datetime"
283
- t.time "a_time"
284
- t.date "a_date"
285
- t.boolean "a_boolean"
286
- t.string "type"
287
- t.datetime "created_at"
288
- t.datetime "updated_at"
289
- end
290
-
291
- create_table "wotsits", force: :cascade do |t|
292
- t.integer "widget_id"
293
- t.string "name"
294
- t.datetime "created_at"
295
- t.datetime "updated_at"
296
- end
297
-
298
- end