This PR was merged into the 3.x branch.
Discussion
----------
Remove template source from Template::loadTemplate()
Closes#3266
The first commit supports string and Source. But I think we don't even need to pass anything (that's the other commits).
Commits
-------
d7702840da Remove $templateName from Template::loadTemplate()
This PR was merged into the 3.x branch.
Discussion
----------
Make `in_array()` calls strict
I propose to add `strict: true` to all calls to `in_array()`, making the calls faster.
Commits
-------
9c6b95f2a6 Make `in_array()` calls strict
This PR was merged into the 3.x branch.
Discussion
----------
Make the defined test implementation more generic
Commits
-------
2d84abfd08 Make the defined test implementation more generic
This PR was squashed before being merged into the 3.x branch.
Discussion
----------
Fix timezone conversion on strings
When setting a default application timezone, and a display timezone:
```php
date_default_timezone_set('UTC');
$twig->getExtension(\Twig\Extension\CoreExtension::class)->setTimezone('Europe/Paris');
```
Date objects get converted, but strings don't. See #4545.
For most other paths in `convertDate`, the dateTime object is initialized, and afterwards the timezone gets set. For strings, the timezone is passed as a constructor argument before having the timezone set again, losing its converting behaviour. This makes the convertDate method work identical for DateTime objects as strings. This different behaviour was already spotted in #3568.
Fixes#4545#3568#2819
Commits
-------
f69531fa00 Fix timezone conversion on strings
This PR was merged into the 3.x branch.
Discussion
----------
Fix Token::__toString()
Broken by #4554
Commits
-------
11535e9058 Fix Token::__toString()