Liquid v4.0.0 Release Notes
Release Date: 2016-12-14 // over 7 years ago-
๐ Changed
- 0๏ธโฃ Render an opaque internal error by default for non-Liquid::Error (#835) [Dylan Thacker-Smith]
- ๐ Ruby 2.0 support dropped (#832) [Dylan Thacker-Smith]
- โ Add to_number Drop method to allow custom drops to work with number filters (#731)
- Add strict_variables and strict_filters options to detect undefined references (#691)
- ๐ Improve loop performance (#681) [Florian Weingarten]
- Rename Drop method
before_method
toliquid_method_missing
(#661) [Thierry Joyal] - Add url_decode filter to invert url_encode (#645) [Larry Archer]
- โ Add global_filter to apply a filter to all output (#610) [Loren Hale]
- โ Add compact filter (#600) [Carson Reinke]
- Rename deprecated "has_key?" and "has_interrupt?" methods (#593) [Florian Weingarten]
- Include template name with line numbers in render errors (574) [Dylan Thacker-Smith]
- โ Add sort_natural filter (#554) [Martin Hanzel]
- โ Add forloop.parentloop as a reference to the parent loop (#520) [Justin Li]
- ๐ Block parsing moved to BlockBody class (#458) [Dylan Thacker-Smith]
- โ Add concat filter to concatenate arrays (#429) [Diogo Beato]
- ๐ Ruby 1.9 support dropped (#491) [Justin Li]
- Liquid::Template.file_system's read_template_file method is no longer passed the context. (#441) [James Reid-Smith]
- โ Remove
liquid_methods
(See https://github.com/Shopify/liquid/pull/568 for replacement) - Liquid::Template.register_filter raises when the module overrides registered public methods as private or protected (#705) [Gaurav Chande]
๐ Fixed
- ๐ Fix variable names being detected as an operator when starting with contains (#788) [Michael Angell]
- ๐ Fix include tag used with strict_variables (#828) [QuickPay]
- ๐ Fix map filter when value is a Proc (#672) [Guillaume Malette]
- ๐ Fix truncate filter when value is not a string (#672) [Guillaume Malette]
- ๐ Fix behaviour of escape filter when input is nil (#665) [Tanel Jakobsoo]
- ๐ Fix sort filter behaviour with empty array input (#652) [Marcel Cary]
- ๐ Fix test failure under certain timezones (#631) [Dylan Thacker-Smith]
- ๐ Fix bug in uniq filter (#595) [Florian Weingarten]
- ๐ Fix bug when "blank" and "empty" are used as variable names (#592) [Florian Weingarten]
- ๐ Fix condition parse order in strict mode (#569) [Justin Li]
- ๐ Fix naming of the "context variable" when dynamically including a template (#559) [Justin Li]
- Gracefully accept empty strings in the date filter (#555) [Loren Hale]
- ๐ Fix capturing into variables with a hyphen in the name (#505) [Florian Weingarten]
- ๐ Fix case sensitivity regression in date standard filter (#499) [Kelley Reynolds]
- Disallow filters with no variable in strict mode (#475) [Justin Li]
- ๐ Disallow variable names in the strict parser that are not valid in the lax parser (#463) [Justin Li]
- ๐ Fix BlockBody#warnings taking exponential time to compute (#486) [Justin Li]