* 3.x:
Reuse the template wrapper of an already loaded template
Stop the escaping safe analysis from retaining every analyzed node
Allow to call TemplateWrapper::unwrap() without arguments
Expose the escaping strategy a template was compiled with
Improve macro call performance
Fix IntlExtension inheriting values derived by ICU from a date formatter prototype
Fix array access with a Stringable key on subclasses of ArrayObject and ArrayIterator
Ignore the PHPUnit 10+ cache directory
Cover and document the matches operator throwing on an invalid UTF-8 subject
Report a clear error when a string cannot be split into characters
Deprecate cloning a Twig environment
Report the macro call parentheses deprecation once per call site and name the macro
Bump version
Prepare the 3.29.0 release
Update CHANGELOG
# Conflicts:
# .gitignore
# CHANGELOG
# doc/deprecated.rst
# src/Environment.php
# src/NodeVisitor/CorrectnessNodeVisitor.php
# src/NodeVisitor/SafeAnalysisNodeVisitor.php
# src/Template.php
# tests/Fixtures/macros/call_without_parentheses.legacy.test
# tests/ParserTest.php
# tests/TemplateTest.php
# tests/TwigMacroTest.php
* 3.x:
Update CHANGELOG
Fix accessing arrays with stringable objects as key
Update inky_to_html.rst: Updating link
Update replace.rst
[Doc] Tweaks in the escaping article
Compile 'index' with repr (not string) in EmbedNode
Introduce registerUndefinedTestCallback
Fix intl test
Bump minimum Commonmark requirement
Support two words test guard
Bump version
Improve documentation examples for `enum` and `enum_cases`
Avoid errors when failing to guess the template info for an error
Add note to format_datetime explaining how to install required extensions
Fix compatibility layer
* 3.x:
Fix version
Fix CS
Remove obsolete code
Use generics in ExpressionParsers
Fix precedence rules
Add deprecation notices in CHANGELOG and docs
Move Operators to ExpressionParsers, deprecate ExpressionParser
Add a script to update operator precedence documentation
Extract operators logic from ExpressionParser to their own classes
Introduce operator classes to describe operators provided by extensions instead of arrays
Bump version to 3.21
* 3.x:
Fixing minor typo in Update inline_css.rst
Ignore static properties when using the dot operator
Fix CS
Fix constant() behavior when used with ??
Finish the work
fix indentation
Apply suggestions from code review
typo
fix merge
docs and changelog
typehint instead of checkArrow
checkArrow, typehints
invoke filter
* 3.x:
Deprecate using the not unary operator without parenthesis
Deprecate using ?? without explicit parentheses
Add support for logical `xor` operator
Allow running CI on all branches
[Doc] Fix enum title
Document Twig vs PHP types
* 3.x:
Add start/end time accessors on Profile
Fix 'ignore missing' when used on an 'embed' tag
Fix the possibility to override an aliased block (via use)
Add test
Add hot cache reload for templates
Add RemovableCacheInterface
Add some tests
Optimize compiled code for "set" tag
Improve how trim behaves
Add more tests
Add return types in FileystemLoader
Add compile-time checks for the "matches" operator
* 3.x:
Remove obsolete code
Deprecate Environment::mergeGlobals()
Bump version
Prepare the 3.13.0 release
Fix wrong format of `Environment::VERSION_ID` constant
Fix minor things
Fix CS
Fix isset in ForLoopNode
Fix iterable return type
Improve exception expectations reliability
This PR was squashed before being merged into the 3.x branch.
Discussion
----------
Fix wrong format of `Environment::VERSION_ID` constant
It seems that format of `Environment::VERSION_ID` constant was (erroneously?) changed with Twig 3.10.0.
Commits
-------
a219d9e7 Fix wrong format of `Environment::VERSION_ID` constant