Liquid v5.0.0 Release Notes

Release Date: 2021-01-06 // over 3 years ago
  • ๐Ÿ”‹ Features

    • โž• Add new {% render %} tag (#1122) [Samuel Doiron]
    • โž• Add support for as in {% render %} and {% include %} (#1181) [Mike Angell]
    • โž• Add {% liquid %} and {% echo %} tags (#1086) [Justin Li]
    • โž• Add [usage tracking](README.md#usage-tracking) [Mike Angell]
    • โž• Add Tag.disable_tags for disabling tags that prepend Tag::Disableable at render time (#1162, #1274, #1275) [Mike Angell]
    • ๐Ÿ‘Œ Support using a profiler for multiple renders (#1365, #1366) [Dylan Thacker-Smith]

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix catastrophic backtracking in RANGES_REGEX regular expression (#1357) [Dylan Thacker-Smith]
    • ๐Ÿ‘‰ Make sure the for tag's limit and offset are integers (#1094) [David Cornu]
    • Invokable methods for enumerable reject include (#1151) [Thierry Joyal]
    • ๐Ÿ‘ Allow default filter to handle false as value (#1144) [Mike Angell]
    • ๐Ÿ›  Fix render length resource limit so it doesn't multiply nested output (#1285) [Dylan Thacker-Smith]
    • ๐Ÿ›  Fix duplication of text in raw tags (#1304) [Peter Zhu]
    • ๐Ÿ›  Fix strict parsing of find variable with a name expression (#1317) [Dylan Thacker-Smith]
    • ๐Ÿ‘‰ Use monotonic time to measure durations in Liquid::Profiler (#1362) [Dylan Thacker-Smith]

    ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿ’Ž Require Ruby >= 2.5 (#1131, #1310) [Mike Angell, Dylan Thacker-Smith]
    • โœ‚ Remove support for taint checking (#1268) [Dylan Thacker-Smith]
    • Split Strainer class into StrainerFactory and StrainerTemplate (#1208) [Thierry Joyal]
    • โœ‚ Remove handling of a nil context in the Strainer class (#1218) [Thierry Joyal]
    • ๐Ÿ“œ Handle BlockBody#blank? at parse time (#1287) [Dylan Thacker-Smith]
    • Pass the tag markup and tokenizer to Document#unknown_tag (#1290) [Dylan Thacker-Smith]
    • And several internal changes

    ๐ŸŽ Performance Improvements

    • โฌ‡๏ธ Reduce allocations (#1073, #1091, #1115, #1099, #1117, #1141, #1322, #1341) [Richard Monette, Florian Weingarten, Ashwin Maroli]
    • ๐Ÿ‘Œ Improve resources limits performance (#1093, #1323) [Florian Weingarten, Dylan Thacker-Smith]