Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

deprecate the block argument to Migrator#migrate

  • Loading branch information...
commit 5e616379ccabce7196820ff517d34ed56ef2a160 1 parent 280e4cb
Aaron Patterson tenderlove authored
Showing with 19 additions and 8 deletions.
  1. +19 −8 activerecord/lib/active_record/migration.rb
27 activerecord/lib/active_record/migration.rb
View
@@ -566,12 +566,18 @@ def forward(migrations_paths, steps=1)
move(:up, migrations_paths, steps)
end
- def up(migrations_paths, target_version = nil, &block)
- self.new(:up, migrations(migrations_paths), target_version).migrate(&block)
+ def up(migrations_paths, target_version = nil)
+ migrations = migrations(migrations_paths)
+ migrations.select! { |m| yield m } if block_given?
+
+ self.new(:up, migrations, target_version).migrate
end
def down(migrations_paths, target_version = nil, &block)
- self.new(:down, migrations(migrations_paths), target_version).migrate(&block)
+ migrations = migrations(migrations_paths)
+ migrations.select! { |m| yield m } if block_given?
+
+ self.new(:down, migrations, target_version).migrate
end
def run(direction, migrations_paths, target_version)
@@ -681,16 +687,21 @@ def run
end
end
- def migrate(&block)
+ def migrate
if !target && @target_version && @target_version > 0
raise UnknownMigrationVersionError.new(@target_version)
end
- runnable.each do |migration|
- if block && !block.call(migration)
- next
- end
+ running = runnable
+
+ if block_given?
+ ActiveSupport::Deprecation.warn(<<-eomsg)
+block argument to migrate is deprecated, please filter migrations before constructing the migrator
+ eomsg
+ running.select! { |m| yield m }
+ end
+ running.each do |migration|
Base.logger.info "Migrating to #{migration.name} (#{migration.version})" if Base.logger
begin
Please sign in to comment.
Something went wrong with that request. Please try again.