data_migrate 5.0.2 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: c3db86bc3ba15d15bed751ad312b844a2644f61982085863fb5a25456c1f1bf6
4
- data.tar.gz: f5c22f029369bb4174c6f33020e5ff558b89ea9c2ade09cde3b9a22a96c22c67
2
+ SHA1:
3
+ metadata.gz: 374e93835d9a65e56af9ce534dd650c286a3dbcf
4
+ data.tar.gz: 48a7b7a1b7870b28f4cc34bff8468cc797649c8d
5
5
  SHA512:
6
- metadata.gz: ba1af7cfb8c5d7f3ce4c5f96e06c16e84598f7a436e7c75920889d1d9c5429ca8c97e29c5a6b012aaea556e8423ea039ba3917a0ae515371463d055d5a83d918
7
- data.tar.gz: e733b1743936438b68b1c8168fe4bb0305e2d960c5410588d3f15ab76cbf3c053beb2e86610b1e1f499b05381651eed799d820ac5c5dae5e57264f4a5fa80553
6
+ metadata.gz: 3b53c608118790f93587e29221f7d5aad40fcbe782f081f314d3955228f6ad45f2fbe90b565221aeb90fb38fe6642883f850b31ae7ec8d925b7b34c7a07cc2b7
7
+ data.tar.gz: 1500d7f084fcdc4b8f0a442925a695c90b495a148da5ba6021add79d432c8826c6bc2b965bc178595796d92fe8d990f931860f02e0fadcc68674546e366bf2bf
data/.gitignore CHANGED
@@ -4,6 +4,5 @@
4
4
  gemfiles/.bundle
5
5
  spec/db/test.db
6
6
  .vscode/
7
- tasks/databases.rake
8
7
  .DS_Store
9
8
  .idea/
data/.travis.yml CHANGED
@@ -1,16 +1,12 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.2.6
4
- - 2.3.4
3
+ - 2.2.9
4
+ - 2.3.7
5
+ - 2.4.4
6
+ - 2.5.1
5
7
  script: bundle exec rspec
6
8
  gemfile:
7
9
  - gemfiles/rails_4.2.gemfile
8
10
  - gemfiles/rails_5.0.gemfile
9
11
  - gemfiles/rails_5.1.gemfile
10
12
  - gemfiles/rails_5.2.gemfile
11
- matrix:
12
- exclude:
13
- - rvm: 2.0.0-p648
14
- gemfile: gemfiles/rails_5.0.gemfile
15
- - rvm: 2.1.10
16
- gemfile: gemfiles/rails_5.0.gemfile
data/Changelog.md CHANGED
@@ -1,6 +1,9 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ ## 5.1.0
5
+ Fixes to `db:schema:load:with_data` + `db:structure:load:with_data` definition, thanks to [craineum](https://github.com/craineum)
6
+
4
7
  ## 5.0.0
5
8
 
6
9
  Remove support for legacy migrations (from v2).
data/README.md CHANGED
@@ -131,7 +131,8 @@ You can generate a data migration as you would a schema migration:
131
131
  rake db:migrate:up:with_data # Runs the "up" for a given migration VERSION
132
132
  rake db:migrate:with_data # Migrate the database data and schema (options: VERSION=x, VERBOSE=false)
133
133
  rake db:rollback:with_data # Rolls the schema back to the previous version (specify steps w/ STEP=n)
134
- rake db:schema:load:with_data # Load both schema.rb and data_schema.rb file into the database
134
+ rake db:schema:load:with_data # Load both schema.rb and data_schema.rb files into the database
135
+ rake db:structure:load:with_data # Load both structure.sql and data_schema.rb files into the database
135
136
  rake db:version:with_data # Retrieves the current schema version numbers for data and schema migrations
136
137
 
137
138
  Tasks work as they would with the 'vanilla' db version. The 'with_data' addition to the 'db' tasks will run the task in the context of both the data and schema migrations. That is, rake db:rollback:with_data will check to see if it was a schema or data migration invoked last, and do that. Tasks invoked in that space also have an additional line of output, indicating if the action is performed on data or schema.
@@ -7,6 +7,7 @@ module DataMigrate
7
7
  self.migrations_paths = ["db/data"]
8
8
 
9
9
  def self.assure_data_schema_table
10
+ ActiveRecord::Base.establish_connection(db_config)
10
11
  DataMigrate::DataSchemaMigration.create_table
11
12
  end
12
13
 
@@ -41,6 +42,13 @@ module DataMigrate
41
42
  /(\d{14})_(.+)\.rb/.match(filename)
42
43
  end
43
44
 
45
+ ##
46
+ # Provides the full migrations_path filepath
47
+ # @return (String)
48
+ def full_migrations_path
49
+ File.join(Rails.root, *migrations_paths.split(File::SEPARATOR))
50
+ end
51
+
44
52
  def migrations_status
45
53
  DataMigrate::MigrationContext.new(migrations_paths).migrations_status
46
54
  end
@@ -58,6 +66,11 @@ module DataMigrate
58
66
  def rollback(migrations_path, steps)
59
67
  DataMigrate::MigrationContext.new(migrations_path).rollback(steps)
60
68
  end
69
+
70
+ def db_config
71
+ ActiveRecord::Base.configurations[Rails.env || "development"] ||
72
+ ENV["DATABASE_URL"]
73
+ end
61
74
  end
62
75
 
63
76
  private
@@ -2,11 +2,12 @@
2
2
 
3
3
  module DataMigrate
4
4
  ##
5
- # This class extends DatabaseTasks to add a data_schema_file method.
5
+ # This class extends DatabaseTasks to add a schema_file method.
6
6
  class DatabaseTasks
7
7
  extend ActiveRecord::Tasks::DatabaseTasks
8
8
 
9
- def self.data_schema_file
9
+ # This overrides ActiveRecord::Tasks::DatabaseTasks
10
+ def self.schema_file(_format = nil)
10
11
  File.join(db_dir, "data_schema.rb")
11
12
  end
12
13
 
@@ -1,3 +1,3 @@
1
1
  module DataMigrate
2
- VERSION = "5.0.2".freeze
2
+ VERSION = "5.1.0".freeze
3
3
  end
@@ -31,8 +31,6 @@ describe DataMigrate::Data do
31
31
  before do
32
32
  allow(DataMigrate::DataMigrator).
33
33
  to receive(:db_config) { db_config }
34
- ActiveRecord::Base.establish_connection(db_config)
35
- ActiveRecord::SchemaMigration.create_table
36
34
  end
37
35
 
38
36
  after do
@@ -48,9 +48,9 @@ describe DataMigrate::DatabaseTasks do
48
48
  ActiveRecord::Base.establish_connection(db_config)
49
49
  end
50
50
 
51
- describe :data_schema_file do
51
+ describe :schema_file do
52
52
  it "returns the correct data schema file path" do
53
- expect(subject.data_schema_file).to eq "db/data_schema.rb"
53
+ expect(subject.schema_file(nil)).to eq "db/data_schema.rb"
54
54
  end
55
55
  end
56
56
 
data/spec/spec_helper.rb CHANGED
@@ -7,3 +7,9 @@ require 'timecop'
7
7
  if Rails::VERSION::MAJOR == 5 && Rails::VERSION::MINOR == 2
8
8
  DataMigrate::DataMigrator.migrations_paths = ["spec/db/data"]
9
9
  end
10
+
11
+ RSpec.configure do |config|
12
+ config.mock_with :rspec do |mocks|
13
+ mocks.verify_partial_doubles = true
14
+ end
15
+ end
@@ -0,0 +1,391 @@
1
+ require 'data_migrate/tasks/data_migrate_tasks'
2
+
3
+ namespace :db do
4
+ namespace :migrate do
5
+ desc "Migrate the database data and schema (options: VERSION=x, VERBOSE=false)."
6
+ task :with_data => :environment do
7
+ assure_data_schema_table
8
+
9
+ ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
10
+ target_version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
11
+ migrations = []
12
+
13
+ if target_version.nil?
14
+ migrations = pending_migrations.map{ |m| m.merge(:direction =>:up) }
15
+ else
16
+ current_schema_version = ActiveRecord::Migrator.current_version
17
+ schema_migrations = if target_version > current_schema_version
18
+ pending_schema_migrations.keep_if{ |m| m[:version] <= target_version }.map{ |m| m.merge(:direction =>:up) }
19
+ elsif target_version < current_schema_version
20
+ past_migrations.keep_if{ |m| m[:version] > target_version }.map{ |m| m.merge(:direction =>:down) }
21
+ else # ==
22
+ []
23
+ end
24
+
25
+ current_data_version = ActiveRecord::Migrator.current_version
26
+ data_migrations = if target_version > current_data_version
27
+ pending_data_migrations.keep_if{ |m| m[:version] <= target_version }.map{ |m| m.merge(:direction =>:up) }
28
+ elsif target_version < current_data_version
29
+ past_migrations.keep_if{ |m| m[:version] > target_version }.map{ |m| m.merge(:direction =>:down) }
30
+ else # ==
31
+ []
32
+ end
33
+ migrations = if schema_migrations.empty?
34
+ data_migrations
35
+ elsif data_migrations.empty?
36
+ schema_migrations
37
+ elsif target_version > current_data_version && target_version > current_schema_version
38
+ sort_migrations data_migrations, schema_migrations
39
+ elsif target_version < current_data_version && target_version < current_schema_version
40
+ sort_migrations(data_migrations, schema_migrations).reverse
41
+ elsif target_version > current_data_version && target_version < current_schema_version
42
+ schema_migrations + data_migrations
43
+ elsif target_version < current_data_version && target_version > current_schema_version
44
+ schema_migrations + data_migrations
45
+ end
46
+ end
47
+
48
+ migrations.each do |migration|
49
+ if migration[:kind] == :data
50
+ ActiveRecord::Migration.write("== %s %s" % ['Data', "=" * 71])
51
+ DataMigrate::DataMigrator.run(migration[:direction], "db/data/", migration[:version])
52
+ else
53
+ ActiveRecord::Migration.write("== %s %s" % ['Schema', "=" * 69])
54
+ DataMigrate::SchemaMigration.run(
55
+ migration[:direction],
56
+ Rails.application.config.paths["db/migrate"],
57
+ migration[:version]
58
+ )
59
+ end
60
+ end
61
+
62
+ Rake::Task["db:_dump"].invoke
63
+ Rake::Task["data:dump"].invoke
64
+ end
65
+
66
+ namespace :redo do
67
+ desc 'Rollbacks the database one migration and re migrate up (options: STEP=x, VERSION=x).'
68
+ task :with_data => :environment do
69
+ assure_data_schema_table
70
+ if ENV["VERSION"]
71
+ Rake::Task["db:migrate:down:with_data"].invoke
72
+ Rake::Task["db:migrate:up:with_data"].invoke
73
+ else
74
+ Rake::Task["db:rollback:with_data"].invoke
75
+ Rake::Task["db:migrate:with_data"].invoke
76
+ end
77
+ end
78
+ end
79
+
80
+ namespace :up do
81
+ desc 'Runs the "up" for a given migration VERSION. (options both=false)'
82
+ task :with_data => :environment do
83
+ version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
84
+ raise "VERSION is required" unless version
85
+ assure_data_schema_table
86
+ run_both = ENV["BOTH"] == "true"
87
+ migrations = pending_migrations.keep_if{|m| m[:version] == version}
88
+
89
+ unless run_both || migrations.size < 2
90
+ migrations = migrations.slice(0,1)
91
+ end
92
+
93
+ migrations.each do |migration|
94
+ if migration[:kind] == :data
95
+ ActiveRecord::Migration.write("== %s %s" % ['Data', "=" * 71])
96
+ DataMigrate::DataMigrator.run(:up, "db/data/", migration[:version])
97
+ else
98
+ ActiveRecord::Migration.write("== %s %s" % ['Schema', "=" * 69])
99
+ DataMigrate::SchemaMigration.run(:up, "db/migrate/", migration[:version])
100
+ end
101
+ end
102
+
103
+ Rake::Task["db:_dump"].invoke
104
+ Rake::Task["data:dump"].invoke
105
+ end
106
+ end
107
+
108
+ namespace :down do
109
+ desc 'Runs the "down" for a given migration VERSION. (option BOTH=false)'
110
+ task :with_data => :environment do
111
+ version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
112
+ raise "VERSION is required" unless version
113
+ assure_data_schema_table
114
+ run_both = ENV["BOTH"] == "true"
115
+ migrations = past_migrations.keep_if{|m| m[:version] == version}
116
+
117
+ unless run_both || migrations.size < 2
118
+ migrations = migrations.slice(0,1)
119
+ end
120
+
121
+ migrations.each do |migration|
122
+ if migration[:kind] == :data
123
+ ActiveRecord::Migration.write("== %s %s" % ['Data', "=" * 71])
124
+ DataMigrate::DataMigrator.run(:down, "db/data/", migration[:version])
125
+ else
126
+ ActiveRecord::Migration.write("== %s %s" % ['Schema', "=" * 69])
127
+ DataMigrate::SchemaMigration.run(:down, "db/migrate/", migration[:version])
128
+ end
129
+ end
130
+
131
+ Rake::Task["db:_dump"].invoke
132
+ Rake::Task["data:dump"].invoke
133
+ end
134
+ end
135
+
136
+ namespace :status do
137
+ desc "Display status of data and schema migrations"
138
+ task :with_data => :environment do
139
+ config = connect_to_database
140
+ next unless config
141
+
142
+ db_list_data = ActiveRecord::Base.connection.select_values(
143
+ "SELECT version FROM #{DataMigrate::DataSchemaMigration.table_name}"
144
+ )
145
+ db_list_schema = ActiveRecord::Base.connection.select_values(
146
+ "SELECT version FROM #{ActiveRecord::SchemaMigration.schema_migrations_table_name}"
147
+ )
148
+ file_list = []
149
+
150
+ Dir.foreach(File.join(Rails.root, 'db', 'data')) do |file|
151
+ # only files matching "20091231235959_some_name.rb" pattern
152
+ if match_data = /(\d{14})_(.+)\.rb/.match(file)
153
+ status = db_list_data.delete(match_data[1]) ? 'up' : 'down'
154
+ file_list << [status, match_data[1], match_data[2], 'data']
155
+ end
156
+ end
157
+
158
+ Dir.foreach(File.join(Rails.root, 'db', 'migrate')) do |file|
159
+ # only files matching "20091231235959_some_name.rb" pattern
160
+ if match_data = /(\d{14})_(.+)\.rb/.match(file)
161
+ status = db_list_schema.delete(match_data[1]) ? 'up' : 'down'
162
+ file_list << [status, match_data[1], match_data[2], 'schema']
163
+ end
164
+ end
165
+
166
+ file_list.sort!{|a,b| "#{a[1]}_#{a[3] == 'data' ? 1 : 0}" <=> "#{b[1]}_#{b[3] == 'data' ? 1 : 0}" }
167
+
168
+ # output
169
+ puts "\ndatabase: #{config['database']}\n\n"
170
+ puts "#{"Status".center(8)} #{"Type".center(8)} #{"Migration ID".ljust(14)} Migration Name"
171
+ puts "-" * 60
172
+ file_list.each do |file|
173
+ puts "#{file[0].center(8)} #{file[3].center(8)} #{file[1].ljust(14)} #{file[2].humanize}"
174
+ end
175
+ db_list_schema.each do |version|
176
+ puts "#{'up'.center(8)} #{version.ljust(14)} *** NO SCHEMA FILE ***"
177
+ end
178
+ db_list_data.each do |version|
179
+ puts "#{'up'.center(8)} #{version.ljust(14)} *** NO DATA FILE ***"
180
+ end
181
+ puts
182
+ end
183
+ end
184
+ end # END OF MIGRATE NAME SPACE
185
+
186
+ namespace :rollback do
187
+ desc 'Rolls the schema back to the previous version (specify steps w/ STEP=n).'
188
+ task :with_data => :environment do
189
+ step = ENV['STEP'] ? ENV['STEP'].to_i : 1
190
+ assure_data_schema_table
191
+ past_migrations[0..(step - 1)].each do | past_migration |
192
+ if past_migration[:kind] == :data
193
+ ActiveRecord::Migration.write("== %s %s" % ['Data', "=" * 71])
194
+ DataMigrate::DataMigrator.run(:down, "db/data/", past_migration[:version])
195
+ elsif past_migration[:kind] == :schema
196
+ ActiveRecord::Migration.write("== %s %s" % ['Schema', "=" * 69])
197
+ ActiveRecord::Migrator.run(:down, "db/migrate/", past_migration[:version])
198
+ end
199
+ end
200
+
201
+ Rake::Task["db:_dump"].invoke
202
+ Rake::Task["data:dump"].invoke
203
+ end
204
+ end
205
+
206
+ namespace :forward do
207
+ desc 'Pushes the schema to the next version (specify steps w/ STEP=n).'
208
+ task :with_data => :environment do
209
+ assure_data_schema_table
210
+ step = ENV['STEP'] ? ENV['STEP'].to_i : 1
211
+ DataMigrate::DatabaseTasks.forward(step)
212
+ Rake::Task["db:_dump"].invoke
213
+ Rake::Task["data:dump"].invoke
214
+ end
215
+ end
216
+
217
+ namespace :version do
218
+ desc "Retrieves the current schema version numbers for data and schema migrations"
219
+ task :with_data => :environment do
220
+ assure_data_schema_table
221
+ puts "Current Schema version: #{ActiveRecord::Migrator.current_version}"
222
+ puts "Current Data version: #{DataMigrate::DataMigrator.current_version}"
223
+ end
224
+ end
225
+
226
+ namespace :schema do
227
+ namespace :load do
228
+ desc "Load both schema.rb and data_schema.rb file into the database"
229
+ task with_data: :environment do
230
+ Rake::Task["db:schema:load"].invoke
231
+
232
+ DataMigrate::DatabaseTasks.load_schema_current(
233
+ :ruby,
234
+ ENV["DATA_SCHEMA"]
235
+ )
236
+ end
237
+ end
238
+ end
239
+
240
+ namespace :structure do
241
+ namespace :load do
242
+ desc "Load both structure.sql and data_schema.rb file into the database"
243
+ task with_data: :environment do
244
+ Rake::Task["db:structure:load"].invoke
245
+
246
+ DataMigrate::DatabaseTasks.load_schema_current(
247
+ :ruby,
248
+ ENV["DATA_SCHEMA"]
249
+ )
250
+ end
251
+ end
252
+ end
253
+ end
254
+
255
+ namespace :data do
256
+ desc 'Migrate data migrations (options: VERSION=x, VERBOSE=false)'
257
+ task :migrate => :environment do
258
+ DataMigrate::Tasks::DataMigrateTasks.migrate
259
+ Rake::Task["data:dump"].invoke
260
+ end
261
+
262
+ namespace :migrate do
263
+ desc 'Rollbacks the database one migration and re migrate up (options: STEP=x, VERSION=x).'
264
+ task :redo => :environment do
265
+ assure_data_schema_table
266
+ if ENV["VERSION"]
267
+ Rake::Task["data:migrate:down"].invoke
268
+ Rake::Task["data:migrate:up"].invoke
269
+ else
270
+ Rake::Task["data:rollback"].invoke
271
+ Rake::Task["data:migrate"].invoke
272
+ end
273
+ end
274
+
275
+ desc 'Runs the "up" for a given migration VERSION.'
276
+ task :up => :environment do
277
+ assure_data_schema_table
278
+ version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
279
+ raise "VERSION is required" unless version
280
+ DataMigrate::DataMigrator.run(:up, "db/data/", version)
281
+ Rake::Task["data:dump"].invoke
282
+ end
283
+
284
+ desc 'Runs the "down" for a given migration VERSION.'
285
+ task :down => :environment do
286
+ version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
287
+ raise "VERSION is required" unless version
288
+ assure_data_schema_table
289
+ DataMigrate::DataMigrator.run(:down, "db/data/", version)
290
+ Rake::Task["data:dump"].invoke
291
+ end
292
+
293
+ desc "Display status of data migrations"
294
+ task :status => :environment do
295
+ config = ActiveRecord::Base.configurations[Rails.env || 'development']
296
+ ActiveRecord::Base.establish_connection(config)
297
+ connection = ActiveRecord::Base.connection
298
+ puts "\ndatabase: #{config['database']}\n\n"
299
+ DataMigrate::StatusService.dump(connection)
300
+ end
301
+ end
302
+
303
+ desc 'Rolls the schema back to the previous version (specify steps w/ STEP=n).'
304
+ task :rollback => :environment do
305
+ assure_data_schema_table
306
+ step = ENV['STEP'] ? ENV['STEP'].to_i : 1
307
+ DataMigrate::DataMigrator.rollback('db/data/', step)
308
+ Rake::Task["data:dump"].invoke
309
+ end
310
+
311
+ desc 'Pushes the schema to the next version (specify steps w/ STEP=n).'
312
+ task :forward => :environment do
313
+ assure_data_schema_table
314
+ step = ENV['STEP'] ? ENV['STEP'].to_i : 1
315
+ # TODO: No worky for .forward
316
+ # DataMigrate::DataMigrator.forward('db/data/', step)
317
+ migrations = pending_data_migrations.reverse.pop(step).reverse
318
+ migrations.each do | pending_migration |
319
+ DataMigrate::DataMigrator.run(:up, "db/data/", pending_migration[:version])
320
+ end
321
+ Rake::Task["data:dump"].invoke
322
+ end
323
+
324
+ desc "Retrieves the current schema version number for data migrations"
325
+ task :version => :environment do
326
+ assure_data_schema_table
327
+ puts "Current data version: #{DataMigrate::DataMigrator.current_version}"
328
+ end
329
+
330
+ desc "Create a db/data_schema.rb file that stores the current data version"
331
+ task dump: :environment do
332
+ if ActiveRecord::Base.dump_schema_after_migration
333
+ filename = DataMigrate::DatabaseTasks.schema_file
334
+ File.open(filename, "w:utf-8") do |file|
335
+ DataMigrate::SchemaDumper.dump(ActiveRecord::Base.connection, file)
336
+ end
337
+ end
338
+
339
+ # Allow this task to be called as many times as required. An example
340
+ # is the migrate:redo task, which calls other two internally
341
+ # that depend on this one.
342
+ Rake::Task["data:dump"].reenable
343
+ end
344
+ end
345
+
346
+ def pending_migrations
347
+ DataMigrate::DatabaseTasks.sort_migrations(
348
+ DataMigrate::DatabaseTasks.pending_schema_migrations,
349
+ DataMigrate::DatabaseTasks.pending_data_migrations
350
+ )
351
+ end
352
+
353
+ def pending_data_migrations
354
+ DataMigrate::DatabaseTasks.pending_data_migrations
355
+ end
356
+
357
+ def pending_schema_migrations
358
+ DataMigrate::DatabaseTasks.pending_schema_migrations
359
+ end
360
+
361
+ def sort_migrations set_1, set_2=nil
362
+ migrations = set_1 + (set_2 || [])
363
+ migrations.sort{|a,b| sort_string(a) <=> sort_string(b)}
364
+ end
365
+
366
+ def sort_string migration
367
+ "#{migration[:version]}_#{migration[:kind] == :data ? 1 : 0}"
368
+ end
369
+
370
+ def connect_to_database
371
+ config = ActiveRecord::Base.configurations[Rails.env || 'development']
372
+ ActiveRecord::Base.establish_connection(config)
373
+
374
+ unless DataMigrate::DataSchemaMigration.table_exists?
375
+ puts 'Data migrations table does not exist yet.'
376
+ config = nil
377
+ end
378
+ unless ActiveRecord::SchemaMigration.table_exists?
379
+ puts 'Schema migrations table does not exist yet.'
380
+ config = nil
381
+ end
382
+ config
383
+ end
384
+
385
+ def past_migrations(sort=nil)
386
+ DataMigrate::DatabaseTasks.past_migrations(sort)
387
+ end
388
+
389
+ def assure_data_schema_table
390
+ DataMigrate::DataMigrator.assure_data_schema_table
391
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: data_migrate
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.2
4
+ version: 5.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew J Vargo
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-08-22 00:00:00.000000000 Z
13
+ date: 2018-09-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
@@ -275,7 +275,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
275
275
  version: '0'
276
276
  requirements: []
277
277
  rubyforge_project: data_migrate
278
- rubygems_version: 2.7.4
278
+ rubygems_version: 2.6.13
279
279
  signing_key:
280
280
  specification_version: 4
281
281
  summary: Rake tasks to migrate data alongside schema changes.