w naszej aktualnej wersji symfony (oraz twig) otrzymaliśmy możliwość tworzenia lazy-loaded twig extensions.
Szczegóły w dokumentacji SF: https://symfony.com/doc/3.4/templating/twig_extension.html#creating-lazy-loaded-twig-extensions
Ogólnie sprowadza się to do rozdzielnia extensiona na dwie klasy:
- FooExtension - zawierający jedynie listę dostępnych metod
- FooRuntime - zawierający logikę metod
Przykładowy jeden przerobiony extension znajdziecie w MR: http://gitlab.enp.me/mshp/adafir/-/merge_requests/67805