Commit Graph

77 Commits

Author SHA1 Message Date
Fabien Potencier 2171127676 Fix nested block() resolution when a directly rendered block calls parent() 2026-06-03 22:09:09 +02:00
Fabien Potencier 23eb6eb126 Fix sandbox filter/tag/function allow-list bypass when sandbox state changes between renders 2026-05-27 14:59:42 +02:00
Fabien Potencier 861215c507 Fix CS 2026-02-07 09:07:38 +01:00
Nicolas Grekas 85a4817128 CS fixes 2025-07-29 10:07:07 +02:00
Christian Flothmann 155d0faab4 reduce the number of deprecations being triggered
Triggering deprecations for specific arguments is not needed as the method
itself is deprecated as well.
2025-02-28 14:36:39 +01:00
Fabien Potencier 76b86aa9da Add missing @deprecated tag 2025-02-28 09:01:15 +01:00
Fabien Potencier d7702840da Remove $templateName from Template::loadTemplate() 2025-02-21 23:48:41 +01:00
Fabien Potencier 76062c8d51 Fix CS 2025-01-19 16:54:05 +01:00
Ruud Kamphuis 92e4989002 Add $this return type to Template::unwrap
See https://phpstan.org/writing-php-code/phpdoc-types#static-and-%24this

This way, PHPStan understands that the returned template is the exact same instance, and not just a Template.
2024-10-25 13:19:27 +02:00
Fabien Potencier 1105964873 Rework macros handling 2024-10-20 21:53:20 +02:00
Fabien Potencier a23cd9feeb Fix CS 2024-09-26 21:22:23 +02:00
Fabien Potencier f4b17ce8fa bug #4336 Fix template name in error for an unknown dynamic extends called from an include (fabpot)
This PR was merged into the 3.x branch.

Discussion
----------

Fix template name in error for an unknown dynamic extends called from an include

Closes #3265

The code was introduced in #1529, but removing it nowadays does not break any existing test.

Review ignoring whitespace.

Commits
-------

4824f2a4a3 Fix template name in error for an unknown dynamic extends called from an include
2024-09-26 20:59:11 +02:00
Fabien Potencier 955611d5bb Fix the possibility to override an aliased block (via use) 2024-09-25 22:08:16 +02:00
Fabien Potencier 4824f2a4a3 Fix template name in error for an unknown dynamic extends called from an include 2024-09-24 20:55:19 +02:00
Fabien Potencier b86575cfd6 Deprecate Environment::mergeGlobals() 2024-09-07 14:05:02 +02:00
Fabien Potencier 2ae0c0d38c Fix CS 2024-09-06 12:33:38 +02:00
Ruud Kamphuis 4cd8955f74 Fix iterable return type
Currently, the PHPDoc states that a string should be returned, but that's not correct.

It can be anything that is echo-able.

That means any scalar, Stringable and even null.
2024-09-05 09:24:38 +02:00
Fabien Potencier 938ee704b4 Fix CS 2024-08-30 16:22:35 +02:00
Ruud Kamphuis 7e52a68097 Add more types to Template class and compiled templates 2024-08-30 16:17:55 +02:00
Fabien Potencier 70b912fa10 minor #4228 Use CPP in full code base (andreybolonin)
This PR was squashed before being merged into the 3.x branch.

Discussion
----------

Use CPP in full code base

Commits
-------

28923f42 Use CPP in full code base
2024-08-29 19:29:42 +02:00
andreybolonin1989@gmail.com 28923f4269 Use CPP in full code base 2024-08-29 19:29:39 +02:00
Ruud Kamphuis bb8b9c197c Add return type isTraitable 2024-08-29 10:29:47 +02:00
Nicolas Grekas 5d1a19a80c Swap BC layer for yield-ready and reclaim perf loss 2024-08-19 17:31:12 +02:00
Fabien Potencier b63bde3063 Optimize sprintf() calls for PHP 8.4 2024-06-21 08:16:55 +02:00
Gildas de Cadoudal 6c6315263e fix: #4033 add missing unwrap call when a TemplateWrapper instance can be present 2024-04-18 11:47:39 +02:00
Fabien Potencier dbe9456f77 Fix incompatibility with old PHP versions 2024-04-14 11:16:06 +02:00
Fabien Potencier 61031d6cfa Deprecate passing a Template instance in Environment::resolveTemplate() and Template::loadTemplate() 2024-04-14 11:15:25 +02:00
Fabien Potencier 30b5658f89 Fix CS 2024-04-14 10:22:11 +02:00
Nicolas Grekas e70777405d Add #[YieldReady] to allow extensions to tell when they're ready for yielding 2024-02-15 10:27:26 +01:00
Fabien Potencier f7f11ea410 Fix CS 2024-02-10 09:52:03 +01:00
Fabien Potencier 0b9e30e3d2 Simplify code 2023-12-20 20:43:49 +01:00
Drew Richards 85bf01b4ab Catch errors thrown during template rendering 2023-10-26 17:55:48 -07:00
Fabien Potencier 13e360972a Merge branch '2.x' into 3.x
* 2.x:
  Fix CS
  Fix CS
  Migrate to the new PHP CS Fixer config file
  Fixing links
2021-05-12 09:45:40 +02:00
Fabien Potencier 2dd1d909b9 Fix CS 2021-05-12 09:37:17 +02:00
Fabien Potencier 1fb577363d Merge branch '2.x' into 3.x
* 2.x:
  Fix sandbox support when using include(template_from_string())
  Add test to verify that filter is not working when template_from_string is used.
  In |filter(), |map(), and |reduce(), throw a RuntimeError instead of a TypeError
2020-08-23 17:55:24 +02:00
Fabien Potencier ab6695b580 Merge branch '1.x' into 2.x
* 1.x:
  Fix sandbox support when using include(template_from_string())
  Add test to verify that filter is not working when template_from_string is used.
  In |filter(), |map(), and |reduce(), throw a RuntimeError instead of a TypeError
2020-08-23 17:55:14 +02:00
Fabien Potencier c7be1bb3c4 Fix sandbox support when using include(template_from_string()) 2020-08-23 17:48:34 +02:00
Fabien Potencier c83ede7fcd Merge branch '2.x' into 3.x
* 2.x:
  Fix CS
  Fix CS
2020-06-22 08:17:05 +02:00
Fabien Potencier c2019904bb Merge branch '1.x' into 2.x
* 1.x:
  Fix CS
2020-06-22 08:13:34 +02:00
Fabien Potencier e99363231b Fix CS 2020-06-22 08:11:03 +02:00
Matthias Pigulla 30feddef10 Replace strtolower() with strtr() when dealing with method names 2020-01-08 09:27:07 +01:00
Nicolas Grekas d0550b7a68 Fix using array_key_exists() on objects, it is deprecated in PHP 7.4 2019-08-01 16:18:22 +02:00
Fabien Potencier 17bf2f0bfc Merge branch '2.x' into 3.x
* 2.x:
  Don't clear PHP buffer when an error occurs with debug=true
  Remove duplicate phpdoc
2019-06-10 19:37:42 +02:00
Fabien Potencier b957ff6f29 Merge branch '1.x' into 2.x
* 1.x:
  Don't clear PHP buffer when an error occurs with debug=true
  Remove duplicate phpdoc
2019-06-10 19:37:27 +02:00
Grégoire Pineau c910e71f5a Don't clear PHP buffer when an error occurs with debug=true 2019-06-10 19:36:53 +02:00
Fabien Potencier 3d1b9a11d8 Merge branch '2.x' into 3.x
* 2.x:
  fixed CS
  added the key to the map and filter filters
  added support for iterators
  removed fn in front of arrow functions
  changed arrow syntax
  added "filter", "map", and "reduce" filters
  simplified code
  fixed CS
  bumped version to 2.10
  bumped version to 1.41
  fixed partial output leak when a PHP fatal error occurs
  fixed markup in docs
2019-05-09 13:29:19 +02:00
Fabien Potencier 5c484ce7eb Merge branch '1.x' into 2.x
* 1.x:
  added the key to the map and filter filters
  added support for iterators
  removed fn in front of arrow functions
  changed arrow syntax
  added "filter", "map", and "reduce" filters
  simplified code
  fixed CS
  fixed partial output leak when a PHP fatal error occurs
2019-05-09 13:25:49 +02:00
Fabien Potencier 6196fe5b40 fixed partial output leak when a PHP fatal error occurs 2019-05-03 08:42:27 +02:00
Fabien Potencier b3498de45c made Template::getSourceContext() abstract 2019-04-23 18:39:08 +02:00
Fabien Potencier 802646aa5e removed Template::__toString() 2019-04-23 18:29:40 +02:00