aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuilherme Mansur <guilherme.mansur@shopify.com>2019-06-19 13:42:52 -0400
committerGuilherme Mansur <guilherme.mansur@shopify.com>2019-06-19 14:53:24 -0400
commit99e52ae7b1c621069f2971d2f352822f263efb49 (patch)
tree6cad6b4399e4298bbcc02117a0c7ea383a0b34c8
parentaae270de9e0862f31b14642908472d235a17936f (diff)
downloadrails-99e52ae7b1c621069f2971d2f352822f263efb49.tar.gz
rails-99e52ae7b1c621069f2971d2f352822f263efb49.tar.bz2
rails-99e52ae7b1c621069f2971d2f352822f263efb49.zip
Autoload SyntaxErrorInTemplate
When a SyntaxError is detected in a template we raise this exception. On a first request to the server the exception we get a NameError since the exception is not required from `active_view/template/error.rb` yet. However later on it gets required and a second request will succeed. On the first request we see the rails "Something Wen Wrong" page and not the expected syntax error in template error page with the webconsole and stacktrace. By autoloading the constant we fix this issue. Co-authored-by: Gannon McGibbon <gannon.mcgibbon@gmail.com>
-rw-r--r--actionview/CHANGELOG.md4
-rw-r--r--actionview/lib/action_view.rb1
2 files changed, 5 insertions, 0 deletions
diff --git a/actionview/CHANGELOG.md b/actionview/CHANGELOG.md
index c663ec3bbc..f2f57e6a36 100644
--- a/actionview/CHANGELOG.md
+++ b/actionview/CHANGELOG.md
@@ -1,3 +1,7 @@
+* Add autoload for SyntaxErrorInTemplate so syntax errors are correctly raised by DebugExceptions.
+
+ *Guilherme Mansur*, *Gannon McGibbon*
+
* `RenderingHelper` supports rendering objects that `respond_to?` `:render_in`
*Joel Hawksley*, *Natasha Umer*, *Aaron Patterson*, *Shawn Allen*, *Emily Plummer*, *Diana Mounter*, *John Hawthorn*, *Nathan Herald*, *Zaid Zawaideh*, *Zach Ahn*
diff --git a/actionview/lib/action_view.rb b/actionview/lib/action_view.rb
index 7f85bf2a5e..11b4563548 100644
--- a/actionview/lib/action_view.rb
+++ b/actionview/lib/action_view.rb
@@ -77,6 +77,7 @@ module ActionView
autoload :ActionViewError
autoload :EncodingError
autoload :TemplateError
+ autoload :SyntaxErrorInTemplate
autoload :WrongEncodingError
end
end