Use Twig 2.0

`mnapoli/piwik-twig-extension` locked Twig to the 1.10 version. The new version is compatible with Twig 2.0
This commit is contained in:
Jeremy Benoist 2019-06-21 12:46:53 +02:00
parent 0a01a5f195
commit a2f4efe6d2
No known key found for this signature in database
GPG key ID: BCA73962457ACC3C
6 changed files with 56 additions and 39 deletions

View file

@ -78,7 +78,7 @@
"guzzlehttp/guzzle": "^5.3.1", "guzzlehttp/guzzle": "^5.3.1",
"doctrine/doctrine-migrations-bundle": "^1.3", "doctrine/doctrine-migrations-bundle": "^1.3",
"craue/config-bundle": "dev-utf8mb4", "craue/config-bundle": "dev-utf8mb4",
"mnapoli/piwik-twig-extension": "^1.0", "mnapoli/piwik-twig-extension": "^2.0",
"ocramius/proxy-manager": "^2.1.1", "ocramius/proxy-manager": "^2.1.1",
"white-october/pagerfanta-bundle": "^1.1", "white-october/pagerfanta-bundle": "^1.1",
"php-amqplib/rabbitmq-bundle": "^1.14", "php-amqplib/rabbitmq-bundle": "^1.14",

49
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "7e872d70c69629db503d9b8ed18e0f40", "content-hash": "7b43c6d21bc5016660c4e95aa0fdbc12",
"packages": [ "packages": [
{ {
"name": "bdunogier/guzzle-site-authenticator", "name": "bdunogier/guzzle-site-authenticator",
@ -4783,24 +4783,25 @@
}, },
{ {
"name": "mnapoli/piwik-twig-extension", "name": "mnapoli/piwik-twig-extension",
"version": "1.0.0", "version": "2.0.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/mnapoli/PiwikTwigExtension.git", "url": "https://github.com/mnapoli/PiwikTwigExtension.git",
"reference": "5171ab7221830a9d377add03dd60dbe6bd7b331f" "reference": "95cafbaca13e436b1939fe0e70079f6db893fd51"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/mnapoli/PiwikTwigExtension/zipball/5171ab7221830a9d377add03dd60dbe6bd7b331f", "url": "https://api.github.com/repos/mnapoli/PiwikTwigExtension/zipball/95cafbaca13e436b1939fe0e70079f6db893fd51",
"reference": "5171ab7221830a9d377add03dd60dbe6bd7b331f", "reference": "95cafbaca13e436b1939fe0e70079f6db893fd51",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=5.4", "php": ">=7.0",
"twig/twig": "~1.10" "twig/twig": "~2.10"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "~4.0" "php-coveralls/php-coveralls": "^2.0",
"symfony/phpunit-bridge": "^4.2"
}, },
"type": "library", "type": "library",
"autoload": { "autoload": {
@ -4812,7 +4813,7 @@
"license": [ "license": [
"MIT" "MIT"
], ],
"time": "2014-09-16T06:51:19+00:00" "time": "2019-06-21T10:24:22+00:00"
}, },
{ {
"name": "monolog/monolog", "name": "monolog/monolog",
@ -8602,16 +8603,16 @@
}, },
{ {
"name": "symfony/swiftmailer-bundle", "name": "symfony/swiftmailer-bundle",
"version": "v3.2.6", "version": "v3.2.8",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/swiftmailer-bundle.git", "url": "https://github.com/symfony/swiftmailer-bundle.git",
"reference": "7a83160b50a2479d37eb74ba71577380b9afe4f5" "reference": "cb125b3648f132fb8070b55393f20cb310907d3b"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/7a83160b50a2479d37eb74ba71577380b9afe4f5", "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/cb125b3648f132fb8070b55393f20cb310907d3b",
"reference": "7a83160b50a2479d37eb74ba71577380b9afe4f5", "reference": "cb125b3648f132fb8070b55393f20cb310907d3b",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -8621,6 +8622,9 @@
"symfony/dependency-injection": "~2.7|~3.3|~4.0", "symfony/dependency-injection": "~2.7|~3.3|~4.0",
"symfony/http-kernel": "~2.7|~3.3|~4.0" "symfony/http-kernel": "~2.7|~3.3|~4.0"
}, },
"conflict": {
"twig/twig": "<1.41|<2.10"
},
"require-dev": { "require-dev": {
"symfony/console": "~2.7|~3.3|~4.0", "symfony/console": "~2.7|~3.3|~4.0",
"symfony/framework-bundle": "~2.7|~3.3|~4.0", "symfony/framework-bundle": "~2.7|~3.3|~4.0",
@ -8660,7 +8664,7 @@
], ],
"description": "Symfony SwiftmailerBundle", "description": "Symfony SwiftmailerBundle",
"homepage": "http://symfony.com", "homepage": "http://symfony.com",
"time": "2019-04-18T15:52:54+00:00" "time": "2019-06-18T15:27:04+00:00"
}, },
{ {
"name": "symfony/symfony", "name": "symfony/symfony",
@ -8920,21 +8924,22 @@
}, },
{ {
"name": "twig/twig", "name": "twig/twig",
"version": "v1.42.2", "version": "v2.11.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/twigphp/Twig.git", "url": "https://github.com/twigphp/Twig.git",
"reference": "21707d6ebd05476854805e4f91b836531941bcd4" "reference": "699ed2342557c88789a15402de5eb834dedd6792"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/21707d6ebd05476854805e4f91b836531941bcd4", "url": "https://api.github.com/repos/twigphp/Twig/zipball/699ed2342557c88789a15402de5eb834dedd6792",
"reference": "21707d6ebd05476854805e4f91b836531941bcd4", "reference": "699ed2342557c88789a15402de5eb834dedd6792",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=5.4.0", "php": "^7.0",
"symfony/polyfill-ctype": "^1.8" "symfony/polyfill-ctype": "^1.8",
"symfony/polyfill-mbstring": "^1.3"
}, },
"require-dev": { "require-dev": {
"psr/container": "^1.0", "psr/container": "^1.0",
@ -8944,7 +8949,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "1.42-dev" "dev-master": "2.11-dev"
} }
}, },
"autoload": { "autoload": {
@ -8982,7 +8987,7 @@
"keywords": [ "keywords": [
"templating" "templating"
], ],
"time": "2019-06-18T15:35:16+00:00" "time": "2019-06-18T15:37:11+00:00"
}, },
{ {
"name": "wallabag/php-mobi", "name": "wallabag/php-mobi",

View file

@ -176,7 +176,7 @@ class FeedController extends Controller
$pagerAdapter = new DoctrineORMAdapter($qb->getQuery(), true, false); $pagerAdapter = new DoctrineORMAdapter($qb->getQuery(), true, false);
$entries = new Pagerfanta($pagerAdapter); $entries = new Pagerfanta($pagerAdapter);
$perPage = $user->getConfig()->getFeedLimit() ?: $this->getParameter('wallabag_core.Feed_limit'); $perPage = $user->getConfig()->getFeedLimit() ?: $this->getParameter('wallabag_core.feed_limit');
$entries->setMaxPerPage($perPage); $entries->setMaxPerPage($perPage);
$url = $this->generateUrl( $url = $this->generateUrl(

View file

@ -4,10 +4,14 @@ namespace Wallabag\CoreBundle\Twig;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface; use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Translation\TranslatorInterface;
use Twig\Extension\AbstractExtension;
use Twig\Extension\GlobalsInterface;
use Twig\TwigFilter;
use Twig\TwigFunction;
use Wallabag\CoreBundle\Repository\EntryRepository; use Wallabag\CoreBundle\Repository\EntryRepository;
use Wallabag\CoreBundle\Repository\TagRepository; use Wallabag\CoreBundle\Repository\TagRepository;
class WallabagExtension extends \Twig_Extension implements \Twig_Extension_GlobalsInterface class WallabagExtension extends AbstractExtension implements GlobalsInterface
{ {
private $tokenStorage; private $tokenStorage;
private $entryRepository; private $entryRepository;
@ -24,21 +28,26 @@ class WallabagExtension extends \Twig_Extension implements \Twig_Extension_Globa
$this->translator = $translator; $this->translator = $translator;
} }
public function getGlobals()
{
return [];
}
public function getFilters() public function getFilters()
{ {
return [ return [
new \Twig_SimpleFilter('removeWww', [$this, 'removeWww']), new TwigFilter('removeWww', [$this, 'removeWww']),
new \Twig_SimpleFilter('removeScheme', [$this, 'removeScheme']), new TwigFilter('removeScheme', [$this, 'removeScheme']),
new \Twig_SimpleFilter('removeSchemeAndWww', [$this, 'removeSchemeAndWww']), new TwigFilter('removeSchemeAndWww', [$this, 'removeSchemeAndWww']),
]; ];
} }
public function getFunctions() public function getFunctions()
{ {
return [ return [
new \Twig_SimpleFunction('count_entries', [$this, 'countEntries']), new TwigFunction('count_entries', [$this, 'countEntries']),
new \Twig_SimpleFunction('count_tags', [$this, 'countTags']), new TwigFunction('count_tags', [$this, 'countTags']),
new \Twig_SimpleFunction('display_stats', [$this, 'displayStats']), new TwigFunction('display_stats', [$this, 'displayStats']),
]; ];
} }

View file

@ -4,6 +4,7 @@ namespace Wallabag\UserBundle\Mailer;
use Scheb\TwoFactorBundle\Mailer\AuthCodeMailerInterface; use Scheb\TwoFactorBundle\Mailer\AuthCodeMailerInterface;
use Scheb\TwoFactorBundle\Model\Email\TwoFactorInterface; use Scheb\TwoFactorBundle\Model\Email\TwoFactorInterface;
use Twig\Environment;
/** /**
* Custom mailer for TwoFactorBundle email. * Custom mailer for TwoFactorBundle email.
@ -56,14 +57,14 @@ class AuthCodeMailer implements AuthCodeMailerInterface
/** /**
* Initialize the auth code mailer with the SwiftMailer object. * Initialize the auth code mailer with the SwiftMailer object.
* *
* @param \Swift_Mailer $mailer * @param \Swift_Mailer $mailer
* @param \Twig_Environment $twig * @param Environment $twig
* @param string $senderEmail * @param string $senderEmail
* @param string $senderName * @param string $senderName
* @param string $supportUrl wallabag support url * @param string $supportUrl wallabag support url
* @param string $wallabagUrl wallabag instance url * @param string $wallabagUrl wallabag instance url
*/ */
public function __construct(\Swift_Mailer $mailer, \Twig_Environment $twig, $senderEmail, $senderName, $supportUrl, $wallabagUrl) public function __construct(\Swift_Mailer $mailer, Environment $twig, $senderEmail, $senderName, $supportUrl, $wallabagUrl)
{ {
$this->mailer = $mailer; $this->mailer = $mailer;
$this->twig = $twig; $this->twig = $twig;

View file

@ -3,6 +3,8 @@
namespace Tests\Wallabag\UserBundle\Mailer; namespace Tests\Wallabag\UserBundle\Mailer;
use PHPUnit\Framework\TestCase; use PHPUnit\Framework\TestCase;
use Twig\Environment;
use Twig\Loader\ArrayLoader;
use Wallabag\UserBundle\Entity\User; use Wallabag\UserBundle\Entity\User;
use Wallabag\UserBundle\Mailer\AuthCodeMailer; use Wallabag\UserBundle\Mailer\AuthCodeMailer;
@ -27,7 +29,7 @@ class AuthCodeMailerTest extends TestCase
{% block body_text %}text body {{ support_url }}{% endblock %} {% block body_text %}text body {{ support_url }}{% endblock %}
TWIG; TWIG;
$this->twig = new \Twig_Environment(new \Twig_Loader_Array(['WallabagUserBundle:TwoFactor:email_auth_code.html.twig' => $twigTemplate])); $this->twig = new Environment(new ArrayLoader(['WallabagUserBundle:TwoFactor:email_auth_code.html.twig' => $twigTemplate]));
} }
public function testSendEmail() public function testSendEmail()