This PR was merged into the 1.x branch.
Discussion
----------
Turned fatal error into exception when a previously generated cache prevents loading its newly compiled version
Not sure if this is testable, yet this should save some hours to people that end up in the same trap we did on our project.
It turned out we generated some twig template cache in two separate commands, in a situation where "index" tracking for embeds where lost.
This PR detects the situation and invites to clear the cache properly, because that's the only way to fix the issue.
It also fixes a mistake in the cache $key generation, that should not take $index into account.
Doing so were making offline cache warmup useless in some situations.
Commits
-------
95c10991 Turned fatal error into exception when a previously generated cache prevents loading its newly compiled version
This PR was submitted for the 2.x branch but it was merged into the 1.x branch instead (closes#2341).
Discussion
----------
feature #2045 Adds Twig_NodeCaptureInterface for nodes that capture all output
This implements the feature originally suggested by #2045, but specifically in the manner suggested by #2340, which I think is more consistent with existing Twig code.
Commits
-------
bc6a9133 feature #2045 Adds Twig_NodeCaptureInterface for nodes that capture all output
This PR was merged into the 1.x branch.
Discussion
----------
Delay marking the environment as initialized until it is done
This avoids breaking the symfony exception page rendering saying that filters are not available due to a partial initialization: https://github.com/symfony/symfony/issues/21212
It would report the initialization error instead.
Commits
-------
a33fb6ce Delay marking the environment as initialized until it is done
This PR was submitted for the master branch but it was merged into the 1.x branch instead (closes#2322).
Discussion
----------
Minor typo in class name
Commits
-------
ce90852 Minor typo in class name
This PR was squashed before being merged into the 1.x branch (closes#2265).
Discussion
----------
Optimize usage of Traversable/Iterator
Commits
-------
2bdcfb6 Optimize usage of Traversable/Iterator
This PR was merged into the 1.x branch.
Discussion
----------
fix C89 compat
@tucksaun @fabpot The extension did not compile anymore with old MSVC compilers. This PR contains the fix.
Commits
-------
c6be57f fix C89 compat
This PR was merged into the 1.x branch.
Discussion
----------
Add a simple Twig_RuntimeLoaderInterface implementation
Next to https://github.com/symfony/symfony/pull/21023
This is related to the BC break reported in symfony/symfony#21008 which has been introduced in symfony/symfony#20093 when decoupling extensions from definitions.
What I propose here is to ease the upgrade to symfony 3.2+ by adding a simple `Twig_RuntimeLoaderInterface` implementation here, useful only when using the twig-bridge outside of the symfony fullstack framework (with the Form component for instance).
Upgrading would be as simple as:
```diff
$twig = new Twig_Environment(...);
$rendererEngine = new TwigRendererEngine(array('form_div_layout.html.twig'), $twig);
- $twig->addExtension(new FormExtension(new TwigRenderer($rendererEngine, $csrfTokenManager)));
+ $twig->addExtension(new FormExtension());
+ $twig->addRuntimeLoader(new Twig_RuntimeLoader(array(TwigRenderer::class => new TwigRenderer($rendererEngine, $csrfTokenManager)));
```
Instead of having to write this runtime loader yourself.
Please see symfony/symfony#21008 for details and a concrete example of how this could help.
Commits
-------
91c8d59 Add a Twig_FactoryRuntimeLoader
This PR was merged into the 1.x branch.
Discussion
----------
add a comma to clarify the meaning
Without the comma you could understand that the "if" not only applied
to `-1`, but to `1` as well if you read too quickly.
Commits
-------
7cd3c9d add a comma to clarify the meaning
This PR was squashed before being merged into the 1.x branch (closes#2308).
Discussion
----------
added PHP CS Fixer config
Commits
-------
aa9604a added PHP CS Fixer config
aa71a65 fixed CS
This PR was merged into the 1.x branch.
Discussion
----------
deprecate function/test/filter/tag overriding
closes#2293
Commits
-------
7ffb188 deprecated function/test/filter/tag overriding
This PR was merged into the 1.x branch.
Discussion
----------
deprecate the "disable_c_ext" attribute on Twig_Node_Expression_GetAttr
Commits
-------
c215966 Sync PHP ext with PHP code to trigger deprecations
014ab1f deprecated the "disable_c_ext" attribute on Twig_Node_Expression_GetAttr
This PR was merged into the 1.x branch.
Discussion
----------
removed ltrim because $class variable already ltrim'ed
removed ltrim because $class variable already ltrim'ed
Commits
-------
3badb14 removed ltrim because $class variable already ltrim'ed