Releases: Shopify/liquid
Releases · Shopify/liquid
v5.7.3
v5.7.2
v5.7.1
v5.7.0
What's Changed
- Add
find,find_index,has, andrejectfilters to arrays by @karreiro in #1869 - Add the "Releasing" section to
CONTRIBUTING.mdby @karreiro in #1891 - Implement logic for stringify Hashes to keep compat with 3.4 by @ianks in #1892
- Allow for custom
< Hashclasses to override#to_sby @ianks in #1896 - Use
Liquid::Utils.to_sforjoinfilter by @ianks in #1897 - Ensure we use
InputIterator#eachwhen injoinfilter by @ianks in #1898 - Bump to 5.7.0 by @karreiro in #1894
Full Changelog: v5.6.4...v5.7.0
v5.6.4
What's Changed
Full Changelog: v5.6.3...v5.6.4
v5.6.3
v5.6.2
What's Changed
- float has to start with a digit by @ggmichaelgo in #1886
Full Changelog: v5.6.1...v5.6.2
v5.6.1
What's Changed
- Update README.md with default environment by @benstein in #1879
- Faster Expression parser / Tokenizer with StringScanner by @ggmichaelgo in #1844
New Contributors
Full Changelog: v5.6.0...v5.6.1
v5.6.0
Highlights
Architectural Changes
- Added new
Environmentclass to manage configuration and state that was previously stored inTemplate - Moved tag registration from
TemplatetoEnvironment - Removed
StrainerFactoryin favor ofEnvironment-based strainer creation - Consolidated standard tags into a new
Tagsmodule withSTANDARD_TAGSconstant
Performance Improvements
- Optimized
Lexerwith a newLexer2implementation using jump tables for faster tokenization, requires Ruby 3.4 - Improved variable rendering with specialized handling for different types
- Reduced array allocations by using frozen empty constants
API Changes
- Deprecated several
Templateclass methods in favor ofEnvironmentmethods - Added deprecation warnings system
- Changed how filters and tags are registered to use Environment
Bug Fixes:
- Fixed table row handling of break interrupts
- Improved variable output handling for arrays
PRs
- Add concept of
Liquid::Environmentby @ianks in #1815 - Handle interrupts in table row by @alexcoco in #1818
- Bump to v5.6.0.alpha by @ianks in #1819
- Speed up the lexer for Ruby 3.4+ by @ianks in #1832
- Update liquid docs for named parameters by @graygilmore in #1831
- Faster Variable BlockBody Matching by @ggmichaelgo in #1833
- fix lexer parsing comparison without whitespaces by @ggmichaelgo in #1837
- fix parsing Variable blockbody with multibyte character by @ggmichaelgo in #1835
- raise syntax error from lexer parser with UTF-8 character by @ggmichaelgo in #1839
- fix lexer parsing ID 'contains' as comparison by @ggmichaelgo in #1840
- fix parsing quirky incomplete expressions by @ggmichaelgo in #1838
- remove TagRegistry by @ggmichaelgo in #1845
- propagate Environment on new Context creation by @ggmichaelgo in #1846
- avoid allocating new empty array by @ggmichaelgo in #1843
- Remove
Liquid.cache_classesoption by @ianks in #1847 - clean up all warnings by using new Environment by @ggmichaelgo in #1848
- Update homepage url by @tjoyal in #1634
- Write one value at a time for array variables by @ianks in #1863
- Stop testing against
liquid-cby @ianks in #1868 - Fix bug in tokenizer with nil source value by @bahar-p in #1873
- Bump version patch by @bahar-p in #1874
- Bump to
v5.6.0by @ianks in #1876
New Contributors
- @alexcoco made their first contribution in #1818
- @graygilmore made their first contribution in #1831
- @bahar-p made their first contribution in #1873
Full Changelog: v5.5.1...v5.6.0
v5.6.0.rc1
What's Changed
- Add concept of
Liquid::Environmentby @ianks in #1815 - Handle interrupts in table row by @alexcoco in #1818
- Bump to v5.6.0.alpha by @ianks in #1819
- Speed up the lexer for Ruby 3.4+ by @ianks in #1832
- Update liquid docs for named parameters by @graygilmore in #1831
- Faster Variable BlockBody Matching by @ggmichaelgo in #1833
- fix lexer parsing comparison without whitespaces by @ggmichaelgo in #1837
- fix parsing Variable blockbody with multibyte character by @ggmichaelgo in #1835
- raise syntax error from lexer parser with UTF-8 character by @ggmichaelgo in #1839
- fix lexer parsing ID 'contains' as comparison by @ggmichaelgo in #1840
- fix parsing quirky incomplete expressions by @ggmichaelgo in #1838
- remove TagRegistry by @ggmichaelgo in #1845
- propagate Environment on new Context creation by @ggmichaelgo in #1846
- avoid allocating new empty array by @ggmichaelgo in #1843
- Remove
Liquid.cache_classesoption by @ianks in #1847 - clean up all warnings by using new Environment by @ggmichaelgo in #1848
New Contributors
- @alexcoco made their first contribution in #1818
- @graygilmore made their first contribution in #1831
Full Changelog: v5.5.1...v5.6.0.rc1