aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2019-01-23 15:50:48 -0800
committerAaron Patterson <aaron.patterson@gmail.com>2019-02-06 16:57:04 -0800
commit7d0ce785d4d0d3c8f31eb63b653d1c5d2a2bdad7 (patch)
treeec918feab4a273805f1a3e0a92443d8155a7b77d
parent5b4df9d0eb295d402489465f3600576038f5762d (diff)
downloadrails-7d0ce785d4d0d3c8f31eb63b653d1c5d2a2bdad7.tar.gz
rails-7d0ce785d4d0d3c8f31eb63b653d1c5d2a2bdad7.tar.bz2
rails-7d0ce785d4d0d3c8f31eb63b653d1c5d2a2bdad7.zip
Remove finalizer and configuration
-rw-r--r--actionview/lib/action_view/railtie.rb8
-rw-r--r--actionview/lib/action_view/template.rb15
-rw-r--r--guides/source/configuring.md7
-rw-r--r--railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt3
-rw-r--r--railties/test/application/configuration_test.rb17
5 files changed, 0 insertions, 50 deletions
diff --git a/actionview/lib/action_view/railtie.rb b/actionview/lib/action_view/railtie.rb
index 12d06bf376..12bdc642d4 100644
--- a/actionview/lib/action_view/railtie.rb
+++ b/actionview/lib/action_view/railtie.rb
@@ -10,7 +10,6 @@ module ActionView
config.action_view.embed_authenticity_token_in_remote_forms = nil
config.action_view.debug_missing_translation = true
config.action_view.default_enforce_utf8 = nil
- config.action_view.finalize_compiled_template_methods = true
config.eager_load_namespaces << ActionView
@@ -46,13 +45,6 @@ module ActionView
end
end
- initializer "action_view.finalize_compiled_template_methods" do |app|
- ActiveSupport.on_load(:action_view) do
- ActionView::Template.finalize_compiled_template_methods =
- app.config.action_view.delete(:finalize_compiled_template_methods)
- end
- end
-
initializer "action_view.logger" do
ActiveSupport.on_load(:action_view) { self.logger ||= Rails.logger }
end
diff --git a/actionview/lib/action_view/template.rb b/actionview/lib/action_view/template.rb
index 8a5407c622..69e28770eb 100644
--- a/actionview/lib/action_view/template.rb
+++ b/actionview/lib/action_view/template.rb
@@ -10,8 +10,6 @@ module ActionView
class Template
extend ActiveSupport::Autoload
- mattr_accessor :finalize_compiled_template_methods, default: true
-
# === Encodings in ActionView::Template
#
# ActionView::Template is one of a few sources of potential
@@ -118,16 +116,6 @@ module ActionView
attr_reader :source, :identifier, :handler, :original_encoding, :updated_at
- # This finalizer is needed (and exactly with a proc inside another proc)
- # otherwise templates leak in development.
- Finalizer = proc do |method_name, mod| # :nodoc:
- proc do
- mod.module_eval do
- remove_possible_method method_name
- end
- end
- end
-
attr_reader :variable
def initialize(source, identifier, handler, details)
@@ -337,9 +325,6 @@ module ActionView
end
mod.module_eval(source, identifier, 0)
- if finalize_compiled_template_methods
- ObjectSpace.define_finalizer(self, Finalizer[method_name, mod])
- end
end
def handle_render_error(view, e)
diff --git a/guides/source/configuring.md b/guides/source/configuring.md
index 2911b1f7c3..e7129dd274 100644
--- a/guides/source/configuring.md
+++ b/guides/source/configuring.md
@@ -590,13 +590,6 @@ Defaults to `'signed cookie'`.
* `config.action_view.default_enforce_utf8` determines whether forms are generated with a hidden tag that forces older versions of Internet Explorer to submit forms encoded in UTF-8. This defaults to `false`.
-* `config.action_view.finalize_compiled_template_methods` determines
- whether the methods on `ActionView::CompiledTemplates` that templates
- compile themselves to are removed when template instances are
- destroyed by the garbage collector. This helps prevent memory leaks in
- development mode, but for large test suites, disabling this option in
- the test environment can improve performance. This defaults to `true`.
-
### Configuring Action Mailbox
diff --git a/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt b/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
index 223aa56187..63ed3fa952 100644
--- a/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
+++ b/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
@@ -48,7 +48,4 @@ Rails.application.configure do
# Raises error for missing translations.
# config.action_view.raise_on_missing_translations = true
-
- # Prevent expensive template finalization at end of test suite runs.
- config.action_view.finalize_compiled_template_methods = false
end
diff --git a/railties/test/application/configuration_test.rb b/railties/test/application/configuration_test.rb
index 7006b0855f..79bf7e6fd0 100644
--- a/railties/test/application/configuration_test.rb
+++ b/railties/test/application/configuration_test.rb
@@ -2092,23 +2092,6 @@ module ApplicationTests
assert_equal true, ActionView::Helpers::FormTagHelper.default_enforce_utf8
end
- test "ActionView::Template.finalize_compiled_template_methods is true by default" do
- app "test"
- assert_equal true, ActionView::Template.finalize_compiled_template_methods
- end
-
- test "ActionView::Template.finalize_compiled_template_methods can be configured via config.action_view.finalize_compiled_template_methods" do
- app_file "config/environments/test.rb", <<-RUBY
- Rails.application.configure do
- config.action_view.finalize_compiled_template_methods = false
- end
- RUBY
-
- app "test"
-
- assert_equal false, ActionView::Template.finalize_compiled_template_methods
- end
-
test "ActiveJob::Base.return_false_on_aborted_enqueue is true by default" do
app "development"