Releases: squirrelphp/twig-php-syntax
Replace internal Twig class
More changes for Twig 3.21
Remove the use of deprecated methods and token types and increase minimum PHP version to 8.1 like Twig 3.21 did.
Fix incompatibility with Twig v3.21
Redefines ForeachTokenParser::parseAssignmentExpression slightly to account for new protected function of the same name in Twig. Thanks to @shyim for noticing and providing a pull request.
Avoid deprecation in Twig 3.19
Use the ForElseNode for our foreach construct to avoid a new deprecation notice in twig 3.19.
Avoid deprecations up to Twig 3.15
As Twig is preparing for v4.0 there are quite a few internal changes that affects this library slightly. This release fixes those up to the current Twig v3.15 version. We also require at least PHP 8.0.2 to match the identical requirements in Twig v3.15.
No new features were added, and no behavior change within the library.
Add YieldReady attributes
Avoid deprecations warnings in Twig >=3.9 by adding the YieldReady attributes to BreakNode and ContinueNode.
Make Twig 3.9 the minimum version for this version and upgrade dependencies and tests.
Add missing type hints
The missing type hints lead to deprecation notices about possibly upcoming type hints in Twig.
Avoid PHP warnings for break & continue
Our previous mechanism of doing a "lookbehind" with twig lead to array key notices/warnings. Instead we now look ahead, which is also valid from the perspective of twig, to determine if more loops are ending than closing, and for break if enough loops are ending to break out of.
v1.5.1: Check if loop exists for continue
Otherwise the variable might not be defined and lead to a PHP notice.
Lower minimum PHP version
Make this library work with PHP >= 7.2.5 instead of only supporting PHP 7.4 and higher.