From 13e784978571b341a2783f95c1a26f4d2d4fd68e Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Fri, 11 Apr 2008 16:44:10 -0700 Subject: [PATCH 1/3] Ruby 1.9 compat: workaround module_eval issue --- actionpack/lib/action_controller/components.rb | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/actionpack/lib/action_controller/components.rb b/actionpack/lib/action_controller/components.rb index 7f7ecfff78..8275bd380a 100644 --- a/actionpack/lib/action_controller/components.rb +++ b/actionpack/lib/action_controller/components.rb @@ -39,12 +39,7 @@ module ActionController #:nodoc: base.class_eval do include InstanceMethods extend ClassMethods - - helper do - def render_component(options) - @controller.send!(:render_component_as_string, options) - end - end + helper HelperMethods # If this controller was instantiated to process a component request, # +parent_controller+ points to the instantiator of this controller. @@ -67,6 +62,12 @@ module ActionController #:nodoc: end end + module HelperMethods + def render_component(options) + @controller.send!(:render_component_as_string, options) + end + end + module InstanceMethods # Extracts the action_name from the request parameters and performs that action. def process_with_components(request, response, method = :perform_action, *arguments) #:nodoc: From 9a7ab8b05b748932d25d3e05a3d09600afa99f7b Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Fri, 11 Apr 2008 16:44:42 -0700 Subject: [PATCH 2/3] stub the instance method, there is no class method --- actionpack/test/controller/dispatcher_test.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/actionpack/test/controller/dispatcher_test.rb b/actionpack/test/controller/dispatcher_test.rb index 84a1c9aab9..9f90872734 100644 --- a/actionpack/test/controller/dispatcher_test.rb +++ b/actionpack/test/controller/dispatcher_test.rb @@ -41,7 +41,7 @@ class DispatcherTest < Test::Unit::TestCase CGI.expects(:new).raises('some multipart parsing failure') ActionController::Routing::Routes.stubs(:reload) - Dispatcher.stubs(:log_failsafe_exception) + Dispatcher.any_instance.stubs(:log_failsafe_exception) assert_nothing_raised { dispatch } From 6ed9e68e21b612d5f4d8d04439c165f0f28d111f Mon Sep 17 00:00:00 2001 From: Michael Koziarski Date: Sat, 12 Apr 2008 12:08:26 +1200 Subject: [PATCH 3/3] Allow freezing to specific releases with rake rails:freeze:edge RELEASE=1.2.0 per-release zip files are generated automatically by git-archive on dev.rubyonrails.org. --- railties/lib/tasks/framework.rake | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/railties/lib/tasks/framework.rake b/railties/lib/tasks/framework.rake index 7955ded898..71aea09867 100644 --- a/railties/lib/tasks/framework.rake +++ b/railties/lib/tasks/framework.rake @@ -38,14 +38,17 @@ namespace :rails do end end - desc 'Lock to latest Edge Rails' + desc 'Lock to latest Edge Rails, for a specific release use RELEASE=1.2.0' task :edge do require 'open-uri' + version = ENV["RELEASE"] || "edge" + target = "rails_#{version}.zip" + url = "http://dev.rubyonrails.org/archives/#{target}" chdir 'vendor' do - puts 'Downloading Rails' - File.open('rails_edge.zip', 'wb') do |dst| - open 'http://dev.rubyonrails.org/archives/rails_edge.zip' do |src| + puts "Downloading Rails from #{url}" + File.open('rails.zip', 'wb') do |dst| + open url do |src| while chunk = src.read(4096) dst << chunk end @@ -54,8 +57,8 @@ namespace :rails do puts 'Unpacking Rails' rm_rf 'rails' - `unzip rails_edge.zip` - %w(rails_edge.zip rails/Rakefile rails/cleanlogs.sh rails/pushgems.rb rails/release.rb).each do |goner| + `unzip rails.zip` + %w(rails.zip rails/Rakefile rails/cleanlogs.sh rails/pushgems.rb rails/release.rb).each do |goner| rm_f goner end end