aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/CHANGELOG.md
diff options
context:
space:
mode:
authorJeremy Evans <code@jeremyevans.net>2017-01-20 15:02:34 -0800
committerJeremy Daer <jeremydaer@gmail.com>2017-01-25 01:41:27 -0700
commit7da8d76206271bdf200ea201f7e5a49afb9bc9e7 (patch)
treebb8763b3790f6d841327e4435d5b3a6e4e296be0 /actionview/CHANGELOG.md
parent72a869e626e2772733946483e21d65247864d856 (diff)
downloadrails-7da8d76206271bdf200ea201f7e5a49afb9bc9e7.tar.gz
rails-7da8d76206271bdf200ea201f7e5a49afb9bc9e7.tar.bz2
rails-7da8d76206271bdf200ea201f7e5a49afb9bc9e7.zip
Change ActionView ERB Handler from Erubis to Erubi
Erubi offers the following advantages for Rails: * Works with ruby's --enable-frozen-string-literal option * Has 88% smaller memory footprint * Does no freedom patching (Erubis adds a method to Kernel) * Has simpler internals (1 file, <150 lines of code) * Has an open development model (Erubis doesn't have a public source control repository or bug tracker) * Is not dead (Erubis hasn't been updated since 2011) Erubi is a simplified fork of Erubis that contains just the parts that are generally needed (which includes the parts that Rails uses). The only intentional difference in behavior is that it does not include support for <%=== tags for debug output. That could be added to the ActionView ERB handler if it is desired. The Erubis template handler remains in a deprecated state so that code that accesses it directly does not break. It can be removed after Rails 5.1.
Diffstat (limited to 'actionview/CHANGELOG.md')
-rw-r--r--actionview/CHANGELOG.md14
1 files changed, 14 insertions, 0 deletions
diff --git a/actionview/CHANGELOG.md b/actionview/CHANGELOG.md
index c12fb2e5ae..b071b260c9 100644
--- a/actionview/CHANGELOG.md
+++ b/actionview/CHANGELOG.md
@@ -1,3 +1,17 @@
+* Change the ERB handler from Erubis to Erubi.
+
+ Erubi is an Erubis fork that's svelte, simple, and currently maintained.
+ Plus it supports `--enable-frozen-string-literal` in Ruby 2.3+.
+
+ Compatibility: Drops support for `<%===` tags for debug output.
+ These were an unused, undocumented side effect of the Erubis
+ implementation.
+
+ Deprecation: The Erubis handler will be removed in Rails 5.2, for the
+ handful of folks using it directly.
+
+ *Jeremy Evans*
+
* Allow render locals to be assigned to instance variables in a view.
Fixes #27480.