Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Aug 15, 2025

Bumps python-liquid from 1.13.0 to 2.1.0.

Release notes

Sourced from python-liquid's releases.

Version 2.1.0

Features

  • Added the escapejs filter for escaping characters for use in JavaScript string literals. Whereas the standard escape filter replaces &, <, >, ' and " with their equivalent HTML escape sequence, escapejs replaces control characters and potentially dangerous symbols with their corresponding Unicode escape sequences.

Docs

  • Improved documentation for HTML auto escaping and the escape filter.

Version 2.0.2

  • Fixed static analysis of filters in ternary expressions. See #180.
  • Fixed static analysis of macro blocks. Previously args and kwargs were considered "global". See #181.
  • Fixed looping over non-iterable objects with the {% for %} tag. We were raising a LiquidTypeError when we should have been defaulting to an empty iterable, as Shopify/liquid does.

Version 2.0.1

Fixes

  • Fixed bad imports from typing_extensions.

Version 2.0.0

This is a major release with several breaking changes. As well as API changes listed below, we:

  • Drop support for Python version 3.7 and 3.8.
  • Promote rendering behavior from liquid.future.Environment to be the default, so as to improve Shopify/liquid compatibility by default.
  • Fix variable/identifier/path parsing described in [issue #39](jg-rp/liquid#39).
  • Improve Liquid syntax error messages and exposes source index, line numbers and column numbers through methods on Liquid exceptions. See #53.
  • Change comment tag parsing to better match Shopify/Liquid. See #133.
  • Remove BoundTemplate.analyze_with_context(). Shout if you need contextual analysis and we'll restore this feature.
  • Remove the cache_size argument to liquid.Environment and liquid.Template. Template caching is now handled by template loaders.
  • Remove the expression_cache_size argument to liquid.Environment and liquid.Template. Environment-level expression caching is no longer available as it does not play nicely with detailed error messages. If you need to cache parsing of Liquid expressions, it is now recommended to implement a cache per tag, where it makes sense to do so for your use case.
  • Make markupsafe>=3 a dependency. Previously markupsafe was an optional dependency. Version 3 of markupsafe brings some subtle changes to the replace, replace_first and replace_last filters when they receive a "safe" string wrapped in Markup().
  • Add new filters reject, has, find and find_index.
  • Add the new doc tag.

API changes

Also see the migration guide.

Miscellaneous

  • Added liquid.parse(source), liquid.render(source, **data) and liquid.render_async(source, **data). These are shorthand functions that use liquid.DEFAULT_ENVIRONMENT.
  • Renamed liquid.Environment.parse to liquid.Environment._parse, which returns a list of nodes, not a template.
  • Aliased liquid.Environment.from_string as liquid.Environment.parse.
  • Added liquid.Environment.render(source, **data) and liquid.Environment.render_async(source, **data). These are convenience methods equivalent to liquid.Environment.from_string(source).render(**data).
  • Renamed liquid.Context to liquid.RenderContext.
  • Change the liquid.RenderContext constructor (previously liquid.Context) to require an instance of BoundTemplate as its only positional argument instead of an instance of Environment. All other arguments are now keyword only.
  • Renamed liquid.exceptions.Error to liquid.exceptions.LiquidError.
  • Renamed liquid.exceptions.TemplateNotFound to liquid.exceptions.TemplateNotFoundError.
  • Renamed liquid.exceptions.NoSuchFilterFunc to liquid.exceptions.UnknownFilterError.

... (truncated)

Changelog

Sourced from python-liquid's changelog.

Version 2.1.0

Features

  • Added the escapejs filter for escaping characters for use in JavaScript string literals. Whereas the standard escape filter replaces &, <, >, ' and " with their equivalent HTML escape sequence, escapejs replaces control characters and potentially dangerous symbols with their corresponding Unicode escape sequences.

Docs

  • Improved documentation for HTML auto escaping and the escape filter.

Version 2.0.2

  • Fixed static analysis of filters in ternary expressions. See #180.
  • Fixed static analysis of macro blocks. Previously args and kwargs were considered "global". See #181.
  • Fixed looping over non-iterable objects with the {% for %} tag. We were raising a LiquidTypeError when we should have been defaulting to an empty iterable, as Shopify/liquid does.

Version 2.0.1

  • Fixed bad imports from typing_extensions.

Version 2.0.0

This is a major release with several breaking changes. As well as API changes listed below, we:

  • Drop support for Python version 3.7 and 3.8.
  • Promote rendering behavior from liquid.future.Environment to be the default, so as to improve Shopify/liquid compatibility by default.
  • Fix variable/identifier/path parsing described in [issue #39](jg-rp/liquid#39).
  • Improve Liquid syntax error messages and exposes source index, line numbers and column numbers through methods on Liquid exceptions. See #53.
  • Change comment tag parsing to better match Shopify/Liquid. See #133.
  • Remove BoundTemplate.analyze_with_context(). Shout if you need contextual analysis and we'll restore this feature.
  • Remove the cache_size argument to liquid.Environment and liquid.Template. Template caching is now handled by template loaders.
  • Remove the expression_cache_size argument to liquid.Environment and liquid.Template. Environment-level expression caching is no longer available as it does not play nicely with detailed error messages. If you need to cache parsing of Liquid expressions, it is now recommended to implement a cache per tag, where it makes sense to do so for your use case.
  • Make markupsafe a dependency. Previously markupsafe was an optional dependency. Version 3 of markupsafe brings some subtle changes to the replace, replace_first and replace_last filters when they receive a "safe" string wrapped in Markup().
  • Add new filters reject, has, find and find_index. See [Shopify/liquid #1869](Shopify/liquid#1869).
  • Add the new doc tag. See [Shopify/liquid #1895](Shopify/liquid#1895).

API changes

Also see the migration guide.

Miscellaneous

  • Added liquid.parse(source), liquid.render(source, **data) and liquid.render_async(source, **data). These are shorthand functions that use liquid.DEFAULT_ENVIRONMENT.
  • Renamed liquid.Environment.parse to liquid.Environment._parse, which returns a list of nodes, not a template.
  • Aliased liquid.Environment.from_string as liquid.Environment.parse.
  • Added liquid.Environment.render(source, **data) and liquid.Environment.render_async(source, **data). These are convenience methods equivalent to liquid.Environment.from_string(source).render(**data).
  • Renamed liquid.Context to liquid.RenderContext.
  • Change the liquid.RenderContext constructor (previously liquid.Context) to require an instance of BoundTemplate as its only positional argument instead of an instance of Environment. All other arguments are now keyword only.
  • Renamed liquid.exceptions.Error to liquid.exceptions.LiquidError.
  • Renamed liquid.exceptions.TemplateNotFound to liquid.exceptions.TemplateNotFoundError.

... (truncated)

Commits
  • 491c8b1 Release version 2.1.0 [skip ci]
  • 8effde2 Merge pull request #187 from jg-rp/escapejs
  • 6aafce0 Merge branch 'escapejs' of github.com:jg-rp/liquid into escapejs
  • 80e761b Add "new in" to escapejs docs
  • a4d619a Mark the result of escapejs as safe or use in HTML
  • bece834 Update change log
  • 3536bbb Tweak docs
  • 5e64ff1 Rearrange filter reference docs
  • 8c0f911 Draft escapejs filter and improve docs
  • 13ccc9e Add related project to README.md
  • Additional commits viewable in compare view

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [python-liquid](https://github.com/jg-rp/liquid) from 1.13.0 to 2.1.0.
- [Release notes](https://github.com/jg-rp/liquid/releases)
- [Changelog](https://github.com/jg-rp/liquid/blob/main/CHANGES.md)
- [Commits](jg-rp/liquid@v1.13.0...v2.1.0)

---
updated-dependencies:
- dependency-name: python-liquid
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Aug 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant