1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Remove deprecation warnings from Action Pack.

This commit is contained in:
José Valim 2011-12-20 15:12:38 +01:00
parent cae1768c6a
commit 6c57177f2c
9 changed files with 6 additions and 108 deletions

View file

@ -22,31 +22,7 @@ module ActionDispatch
"application's log file and/or the web server's log file to find out what " <<
"went wrong.</body></html>"]]
class << self
def rescue_responses
ActiveSupport::Deprecation.warn "ActionDispatch::ShowExceptions.rescue_responses is deprecated. " \
"Please configure your exceptions using a railtie or in your application config instead."
ExceptionWrapper.rescue_responses
end
def rescue_templates
ActiveSupport::Deprecation.warn "ActionDispatch::ShowExceptions.rescue_templates is deprecated. " \
"Please configure your exceptions using a railtie or in your application config instead."
ExceptionWrapper.rescue_templates
end
end
def initialize(app, exceptions_app = nil)
if [true, false].include?(exceptions_app)
ActiveSupport::Deprecation.warn "Passing consider_all_requests_local option to ActionDispatch::ShowExceptions middleware no longer works"
exceptions_app = nil
end
if exceptions_app.nil?
raise ArgumentError, "You need to pass an exceptions_app when initializing ActionDispatch::ShowExceptions. " \
"In case you want to render pages from a public path, you can use ActionDispatch::PublicExceptions.new('path/to/public')"
end
def initialize(app, exceptions_app)
@app = app
@exceptions_app = exceptions_app
end

View file

@ -97,16 +97,7 @@ module ActionDispatch
} if String === path
block = path if path.respond_to? :call
# :FIXME: remove in Rails 4.0
if block && block.respond_to?(:arity) && block.arity < 2
msg = "redirect blocks with arity of #{block.arity} are deprecated. Your block must take 2 parameters: the environment, and a request object"
ActiveSupport::Deprecation.warn msg
block = lambda { |params, _| block.call(params) }
end
raise ArgumentError, "redirection argument not supported" unless block
Redirect.new status, block
end
end

View file

@ -1,7 +0,0 @@
ActiveSupport::Deprecation.warn "ActionView::Helpers::AssetPaths is deprecated. Please use ActionView::AssetPaths instead."
module ActionView
module Helpers
AssetPaths = ::ActionView::AssetPaths
end
end

View file

@ -151,14 +151,8 @@ module ActionView
# as well as incorrectly putting part of the path in the template
# name instead of the prefix.
def normalize_name(name, prefixes) #:nodoc:
name = name.to_s.sub(handlers_regexp) do |match|
ActiveSupport::Deprecation.warn "Passing a template handler in the template name is deprecated. " \
"You can simply remove the handler name or pass render :handlers => [:#{match[1..-1]}] instead.", caller
""
end
prefixes = nil if prefixes.blank?
parts = name.split('/')
parts = name.to_s.split('/')
name = parts.pop
return name, prefixes || [""] if parts.empty?
@ -168,10 +162,6 @@ module ActionView
return name, prefixes
end
def handlers_regexp #:nodoc:
@@handlers_regexp ||= /\.(?:#{default_handlers.join('|')})$/
end
end
include Accessors

View file

@ -22,18 +22,6 @@ module ActionView
details
end
def extract_format(value, details)
if value.is_a?(String) && value.sub!(formats_regexp, "")
ActiveSupport::Deprecation.warn "Passing the format in the template name is deprecated. " \
"Please pass render with :formats => [:#{$1}] instead.", caller
details[:formats] ||= [$1.to_sym]
end
end
def formats_regexp
@@formats_regexp ||= /\.(#{Mime::SET.symbols.join('|')})$/
end
def instrument(name, options={})
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options){ yield }
end

View file

@ -300,7 +300,6 @@ module ActionView
"and is followed by any combinations of letters, numbers, or underscores.")
end
extract_format(@path, @details)
self
end
@ -369,13 +368,7 @@ module ActionView
path = if object.respond_to?(:to_partial_path)
object.to_partial_path
else
klass = object.class
if klass.respond_to?(:model_name)
ActiveSupport::Deprecation.warn "ActiveModel-compatible objects whose classes return a #model_name that responds to #partial_path are deprecated. Please respond to #to_partial_path directly instead."
klass.model_name.partial_path
else
raise ArgumentError.new("'#{object.inspect}' is not an ActiveModel-compatible object that returns a valid partial path.")
end
raise ArgumentError.new("'#{object.inspect}' is not an ActiveModel-compatible object. It must implement :to_partial_path.")
end
@partial_names[path] ||= merge_prefix_into_object_path(@context_prefix, path.dup)

View file

@ -6,7 +6,6 @@ module ActionView
def render(context, options)
@view = context
@details = extract_details(options)
extract_format(options[:file] || options[:template], @details)
template = determine_template(options)
freeze_formats(template.formats, true)
render_template(template, options[:layout], options[:locals])

View file

@ -43,7 +43,7 @@ class TestController < ActionController::Base
end
def hello_world_file
render :file => File.expand_path("../../fixtures/hello.html", __FILE__)
render :file => File.expand_path("../../fixtures/hello", __FILE__), :formats => [:html]
end
def conditional_hello
@ -810,9 +810,7 @@ class RenderTest < ActionController::TestCase
end
def test_render_file
assert_deprecated do
get :hello_world_file
end
get :hello_world_file
assert_equal "Hello world!", @response.body
end

View file

@ -146,7 +146,7 @@ module RenderTestCases
@view.render(:partial => nil)
flunk "Render did not raise ArgumentError"
rescue ArgumentError => e
assert_equal "'#{nil.inspect}' is not an ActiveModel-compatible object that returns a valid partial path.", e.message
assert_equal "'#{nil.inspect}' is not an ActiveModel-compatible object. It must implement :to_partial_path.", e.message
end
def test_render_partial_with_errors
@ -243,36 +243,6 @@ module RenderTestCases
@controller_view.render(customers, :greeting => "Hello")
end
class CustomerWithDeprecatedPartialPath
attr_reader :name
def self.model_name
Struct.new(:partial_path).new("customers/customer")
end
def initialize(name)
@name = name
end
end
def test_render_partial_using_object_with_deprecated_partial_path
assert_deprecated(/#model_name.*#partial_path.*#to_partial_path/) do
assert_equal "Hello: nertzy",
@controller_view.render(CustomerWithDeprecatedPartialPath.new("nertzy"), :greeting => "Hello")
end
end
def test_render_partial_using_collection_with_deprecated_partial_path
assert_deprecated(/#model_name.*#partial_path.*#to_partial_path/) do
customers = [
CustomerWithDeprecatedPartialPath.new("nertzy"),
CustomerWithDeprecatedPartialPath.new("peeja")
]
assert_equal "Hello: nertzyHello: peeja",
@controller_view.render(customers, :greeting => "Hello")
end
end
# TODO: The reason for this test is unclear, improve documentation
def test_render_partial_and_fallback_to_layout
assert_equal "Before (Josh)\n\nAfter", @view.render(:partial => "test/layout_for_partial", :locals => { :name => "Josh" })