Skip to content

Commit 03ffbf4

Browse files
Merge branch '5.4' into 6.4
* 5.4: [TwigBridge] Fix compat with Twig v3.9 [Mailer] Simplify fix
2 parents 8a274b5 + 14a73aa commit 03ffbf4

File tree

7 files changed

+16
-3
lines changed

7 files changed

+16
-3
lines changed

Node/DumpNode.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,14 @@
1111

1212
namespace Symfony\Bridge\Twig\Node;
1313

14+
use Twig\Attribute\YieldReady;
1415
use Twig\Compiler;
1516
use Twig\Node\Node;
1617

1718
/**
1819
* @author Julien Galenski <[email protected]>
1920
*/
21+
#[YieldReady]
2022
final class DumpNode extends Node
2123
{
2224
private string $varPrefix;

Node/FormThemeNode.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,14 @@
1212
namespace Symfony\Bridge\Twig\Node;
1313

1414
use Symfony\Component\Form\FormRenderer;
15+
use Twig\Attribute\YieldReady;
1516
use Twig\Compiler;
1617
use Twig\Node\Node;
1718

1819
/**
1920
* @author Fabien Potencier <[email protected]>
2021
*/
22+
#[YieldReady]
2123
final class FormThemeNode extends Node
2224
{
2325
public function __construct(Node $form, Node $resources, int $lineno, ?string $tag = null, bool $only = false)

Node/StopwatchNode.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
namespace Symfony\Bridge\Twig\Node;
1313

14+
use Twig\Attribute\YieldReady;
1415
use Twig\Compiler;
1516
use Twig\Node\Expression\AssignNameExpression;
1617
use Twig\Node\Node;
@@ -20,6 +21,7 @@
2021
*
2122
* @author Wouter J <[email protected]>
2223
*/
24+
#[YieldReady]
2325
final class StopwatchNode extends Node
2426
{
2527
public function __construct(Node $name, Node $body, AssignNameExpression $var, int $lineno = 0, ?string $tag = null)

Node/TransDefaultDomainNode.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,15 @@
1111

1212
namespace Symfony\Bridge\Twig\Node;
1313

14+
use Twig\Attribute\YieldReady;
1415
use Twig\Compiler;
1516
use Twig\Node\Expression\AbstractExpression;
1617
use Twig\Node\Node;
1718

1819
/**
1920
* @author Fabien Potencier <[email protected]>
2021
*/
22+
#[YieldReady]
2123
final class TransDefaultDomainNode extends Node
2224
{
2325
public function __construct(AbstractExpression $expr, int $lineno = 0, ?string $tag = null)

Node/TransNode.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
namespace Symfony\Bridge\Twig\Node;
1313

14+
use Twig\Attribute\YieldReady;
1415
use Twig\Compiler;
1516
use Twig\Node\Expression\AbstractExpression;
1617
use Twig\Node\Expression\ArrayExpression;
@@ -22,6 +23,7 @@
2223
/**
2324
* @author Fabien Potencier <[email protected]>
2425
*/
26+
#[YieldReady]
2527
final class TransNode extends Node
2628
{
2729
public function __construct(Node $body, ?Node $domain = null, ?AbstractExpression $count = null, ?AbstractExpression $vars = null, ?AbstractExpression $locale = null, int $lineno = 0, ?string $tag = null)
@@ -53,9 +55,10 @@ public function compile(Compiler $compiler): void
5355
$vars = null;
5456
}
5557
[$msg, $defaults] = $this->compileString($this->getNode('body'), $defaults, (bool) $vars);
58+
$display = class_exists(YieldReady::class) ? 'yield' : 'echo';
5659

5760
$compiler
58-
->write('echo $this->env->getExtension(\'Symfony\Bridge\Twig\Extension\TranslationExtension\')->trans(')
61+
->write($display.' $this->env->getExtension(\'Symfony\Bridge\Twig\Extension\TranslationExtension\')->trans(')
5962
->subcompile($msg)
6063
;
6164

Tests/Node/TransNodeTest.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
use PHPUnit\Framework\TestCase;
1515
use Symfony\Bridge\Twig\Node\TransNode;
16+
use Twig\Attribute\YieldReady;
1617
use Twig\Compiler;
1718
use Twig\Environment;
1819
use Twig\Loader\LoaderInterface;
@@ -35,7 +36,8 @@ public function testCompileStrict()
3536

3637
$this->assertEquals(
3738
sprintf(
38-
'echo $this->env->getExtension(\'Symfony\Bridge\Twig\Extension\TranslationExtension\')->trans("trans %%var%%", array_merge(["%%var%%" => %s], %s), "messages");',
39+
'%s $this->env->getExtension(\'Symfony\Bridge\Twig\Extension\TranslationExtension\')->trans("trans %%var%%", array_merge(["%%var%%" => %s], %s), "messages");',
40+
class_exists(YieldReady::class) ? 'yield' : 'echo',
3941
$this->getVariableGetterWithoutStrictCheck('var'),
4042
$this->getVariableGetterWithStrictCheck('foo')
4143
),

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"php": ">=8.1",
2020
"symfony/deprecation-contracts": "^2.5|^3",
2121
"symfony/translation-contracts": "^2.5|^3",
22-
"twig/twig": "^2.13|~3.8.0"
22+
"twig/twig": "^2.13|^3.0.4"
2323
},
2424
"require-dev": {
2525
"egulias/email-validator": "^2.1.10|^3|^4",

0 commit comments

Comments
 (0)