aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2015-10-29 15:40:18 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2015-10-29 15:40:18 -0700
commit9f93a5efbba3e1cbf0bfa700a17ec8d1ef60d7c6 (patch)
tree9c91fe67a742deb6ae7b5eb7a74dbfdedc4f8930 /actionpack
parent82328a563f24ff52ce2c5f9966fea9f38184820f (diff)
downloadrails-9f93a5efbba3e1cbf0bfa700a17ec8d1ef60d7c6.tar.gz
rails-9f93a5efbba3e1cbf0bfa700a17ec8d1ef60d7c6.tar.bz2
rails-9f93a5efbba3e1cbf0bfa700a17ec8d1ef60d7c6.zip
ActionController::Base#process() now only takes an action name
rather than an action name and *args. The *args were not being used in regular applications outside tests. This causes a backwards compatibility issue, but reduces array allocations for most users.
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/CHANGELOG.md4
-rw-r--r--actionpack/lib/abstract_controller/base.rb4
-rw-r--r--actionpack/test/abstract/callbacks_test.rb20
3 files changed, 6 insertions, 22 deletions
diff --git a/actionpack/CHANGELOG.md b/actionpack/CHANGELOG.md
index 4f95a9bab9..50b10e7460 100644
--- a/actionpack/CHANGELOG.md
+++ b/actionpack/CHANGELOG.md
@@ -1,3 +1,7 @@
+* ActionController::Base#process() now only takes an action name, rather
+ than an action name and *args. The *args were not being used in regular
+ applications outside tests.
+
* Catch invalid UTF-8 querystring values and respond with BadRequest
Check querystring params for invalid UTF-8 characters, and raise an
diff --git a/actionpack/lib/abstract_controller/base.rb b/actionpack/lib/abstract_controller/base.rb
index 4501202b8c..c27b7b3836 100644
--- a/actionpack/lib/abstract_controller/base.rb
+++ b/actionpack/lib/abstract_controller/base.rb
@@ -116,7 +116,7 @@ module AbstractController
#
# ==== Returns
# * <tt>self</tt>
- def process(action, *args)
+ def process(action)
@_action_name = action.to_s
unless action_name = _find_action_name(@_action_name)
@@ -125,7 +125,7 @@ module AbstractController
@_response_body = nil
- process_action(action_name, *args)
+ process_action(action_name)
end
# Delegates to the class' ::controller_path
diff --git a/actionpack/test/abstract/callbacks_test.rb b/actionpack/test/abstract/callbacks_test.rb
index 07571602e4..b47aeaa08f 100644
--- a/actionpack/test/abstract/callbacks_test.rb
+++ b/actionpack/test/abstract/callbacks_test.rb
@@ -246,26 +246,6 @@ module AbstractController
end
end
- class CallbacksWithArgs < ControllerWithCallbacks
- set_callback :process_action, :before, :first
-
- def first
- @text = "Hello world"
- end
-
- def index(text)
- self.response_body = @text + text
- end
- end
-
- class TestCallbacksWithArgs < ActiveSupport::TestCase
- test "callbacks still work when invoking process with multiple arguments" do
- controller = CallbacksWithArgs.new
- controller.process(:index, " Howdy!")
- assert_equal "Hello world Howdy!", controller.response_body
- end
- end
-
class AliasedCallbacks < ControllerWithCallbacks
ActiveSupport::Deprecation.silence do
before_filter :first