Python-liquid

Latest version: v1.13.0

Safety actively analyzes 707299 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 23 of 23

0.3.0

**Breaking changes**

- Most built-in expression parsing functions/methods now expect the current `Environment` instance to be passed as the first argument.

**Fixes**

- Fixed `{% for %}` tag expressions with a comma between the iterable and `limit`, `offset` or `reversed`. Previously we were assuming a comma immediately following the iterable would mean we are iterating an array literal. We're also explicitly disallowing `limit`, `offset` and `reversed` arguments after an array literal.

**Features**

- Added optional filter argument validation at template parse time. ([docs](https://jg-rp.github.io/python-liquid2/custom_filters/#filter-argument-validation))
- Added lambda expressions as filter arguments. Both custom and built-in filters can accept arguments of the form `<identifier> => <boolean expression>` or `(<identifier>, <identifier>) => <boolean expression>`.
- Updated filters `map`, `where`, `sort`, `sort_natural`, `uniq`, `compact` and `sum` to accept lambda expression or string arguments.
- Added filters `reject`, `has`, `find` and `find_index`.

**Documentation**

- Added documentation for the `json` filter's optional `indent` argument.

0.3.0alpha.1

- Fixed line numbers in error messages involving tag expressions containing newlines.
- Improved `LiquidSyntaxError` messages.
- Error messages now include any offending operators rather than the name of the token that represents the operator.
- The template name and line number of the error is included. Previously this only happened for render-time errors.
- More efficient parsing of `liquid` tag expressions. The `TemplateParser` class now includes a `parseLiquid()` method that is similar to `parseBlock()`, but does not needlessly check an empty set for the name of an end tag.
- Added `toLiquidSync` to the drop protocol.

0.2.0

**Features**

- Added support for array literal syntax in `for` loop expressions. Previously array literals were only allowed in output statements and the `assign` tag. For example, `{% for x in some.thing, 42, true %}`.
- Add tokens for symbols `!` and `?`. These tokens are not used by any default Liquid expression, but can be used by custom tags.

0.2.0alpha.1

- New `FetchLoader`. A template loader for web browsers that uses the Fetch API to get templates.
- New `XMLHttpRequestLoader`. A template loader for web browsers that uses `XMLHttpRequest` to get templates.
- Move `src/builtin/loaders/choice.ts` to `src/builtin/loaders/choice_loader.ts`
- Move `src/builtin/loaders/file_system.ts` to `src/builtin/loaders/file_system_loader.ts`
- Change browser tests to use Mocha's "tdd" interface.


Python Liquid's change log has moved to `CHANGES.md <https://github.com/jg-rp/liquid/blob/main/CHANGES.md>`_.

Flask Liquid Change Log

0.1.0

Initial release. See [docs](https://jg-rp.github.io/python-liquid2/) and [migration guide](https://jg-rp.github.io/python-liquid2/migration/).


Liquid Change Log

0.0.1

**Features**

- New currency formatting filter ([docs](https://jg-rp.github.io/liquid/babel/filters#currency), [source](https://github.com/jg-rp/liquid-babel/blob/main/liquid_babel/filters/currency.py)).
- New convenience "money" filters. `money`, `money_with_currency`, `money_without_currency` and `money_without_trailing_zeros` behave similarly to Shopify's equivalents ([docs](https://jg-rp.github.io/liquid/babel/filters#money), [source](https://github.com/jg-rp/liquid-babel/blob/main/liquid_babel/filters/__init__.py)).
- New decimal formatting filter ([docs](https://jg-rp.github.io/liquid/babel/filters#decimal--number), [source](https://github.com/jg-rp/liquid-babel/blob/main/liquid_babel/filters/number.py)).

**Fixes**

- Currency string parsing. Allow an input locale to be set independently from the output locale.


LiquidScript Change Log

Page 23 of 23

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.