From f8a3574d4402e3c54e85b3513ea493f378539dcf Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 12:31:26 +0200 Subject: [PATCH 01/11] Update to patches all dependencies with security vulnerabilites --- composer.json | 3 --- composer.lock | 67 +++++++++++++++++++++++++++++---------------------- 2 files changed, 38 insertions(+), 32 deletions(-) diff --git a/composer.json b/composer.json index e218476..0634d70 100644 --- a/composer.json +++ b/composer.json @@ -65,9 +65,6 @@ ], "post-install-cmd": [ "@symfony-scripts" - ], - "post-update-cmd": [ - "@symfony-scripts" ] }, "extra": { diff --git a/composer.lock b/composer.lock index 68f6866..8c6068b 100644 --- a/composer.lock +++ b/composer.lock @@ -1094,16 +1094,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.9.0", + "version": "1.9.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318" + "reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", - "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/e4490cabc77465aaee90b20cfc9a770f8c04be6b", + "reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b", "shasum": "" }, "require": { @@ -1122,11 +1122,6 @@ "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.9-dev" - } - }, "autoload": { "files": [ "src/functions_include.php" @@ -1184,7 +1179,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/1.9.0" + "source": "https://github.com/guzzle/psr7/tree/1.9.1" }, "funding": [ { @@ -1200,7 +1195,7 @@ "type": "tidelift" } ], - "time": "2022-06-20T21:43:03+00:00" + "time": "2023-04-17T16:00:37+00:00" }, { "name": "incenteev/composer-parameter-handler", @@ -2542,16 +2537,16 @@ }, { "name": "smarty/smarty", - "version": "v3.1.47", + "version": "v3.1.48", "source": { "type": "git", "url": "https://github.com/smarty-php/smarty.git", - "reference": "a09364fe1706cb465e910eb040e592053d7effb8" + "reference": "2fc443806cdcaee4441be4d0bb09f8fa56a17f2c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/smarty-php/smarty/zipball/a09364fe1706cb465e910eb040e592053d7effb8", - "reference": "a09364fe1706cb465e910eb040e592053d7effb8", + "url": "https://api.github.com/repos/smarty-php/smarty/zipball/2fc443806cdcaee4441be4d0bb09f8fa56a17f2c", + "reference": "2fc443806cdcaee4441be4d0bb09f8fa56a17f2c", "shasum": "" }, "require": { @@ -2599,9 +2594,9 @@ "forum": "http://www.smarty.net/forums/", "irc": "irc://irc.freenode.org/smarty", "issues": "https://github.com/smarty-php/smarty/issues", - "source": "https://github.com/smarty-php/smarty/tree/v3.1.47" + "source": "https://github.com/smarty-php/smarty/tree/v3.1.48" }, - "time": "2022-09-14T11:29:00+00:00" + "time": "2023-03-28T19:45:54+00:00" }, { "name": "swiftmailer/swiftmailer", @@ -3646,12 +3641,12 @@ }, "autoload": { "psr-4": { - "Symfony\\Bridge\\Doctrine\\": "src/Symfony/Bridge/Doctrine/", - "Symfony\\Bridge\\Monolog\\": "src/Symfony/Bridge/Monolog/", - "Symfony\\Bridge\\ProxyManager\\": "src/Symfony/Bridge/ProxyManager/", - "Symfony\\Bridge\\Twig\\": "src/Symfony/Bridge/Twig/", "Symfony\\Bundle\\": "src/Symfony/Bundle/", - "Symfony\\Component\\": "src/Symfony/Component/" + "Symfony\\Component\\": "src/Symfony/Component/", + "Symfony\\Bridge\\Twig\\": "src/Symfony/Bridge/Twig/", + "Symfony\\Bridge\\Monolog\\": "src/Symfony/Bridge/Monolog/", + "Symfony\\Bridge\\Doctrine\\": "src/Symfony/Bridge/Doctrine/", + "Symfony\\Bridge\\ProxyManager\\": "src/Symfony/Bridge/ProxyManager/" }, "classmap": [ "src/Symfony/Component/Intl/Resources/stubs" @@ -3701,20 +3696,20 @@ }, { "name": "twig/twig", - "version": "v1.43.1", + "version": "v1.44.7", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "2311602f6a208715252febe682fa7c38e56a3373" + "reference": "0887422319889e442458e48e2f3d9add1a172ad5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/2311602f6a208715252febe682fa7c38e56a3373", - "reference": "2311602f6a208715252febe682fa7c38e56a3373", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/0887422319889e442458e48e2f3d9add1a172ad5", + "reference": "0887422319889e442458e48e2f3d9add1a172ad5", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "symfony/polyfill-ctype": "^1.8" }, "require-dev": { @@ -3724,7 +3719,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.43-dev" + "dev-master": "1.44-dev" } }, "autoload": { @@ -3761,7 +3756,21 @@ "keywords": [ "templating" ], - "time": "2020-08-05T15:05:05+00:00" + "support": { + "issues": "https://github.com/twigphp/Twig/issues", + "source": "https://github.com/twigphp/Twig/tree/v1.44.7" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/twig/twig", + "type": "tidelift" + } + ], + "time": "2022-09-28T08:38:36+00:00" } ], "packages-dev": [ From 0487cb68287047a9ae45a2de22c816f7f51a6d1a Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 12:41:51 +0200 Subject: [PATCH 02/11] Update Symfony to version 4.4 --- composer.json | 36 +- composer.lock | 1123 +++++++++++++++++++++++++------------------------ 2 files changed, 594 insertions(+), 565 deletions(-) diff --git a/composer.json b/composer.json index 0634d70..883d6e6 100644 --- a/composer.json +++ b/composer.json @@ -23,33 +23,32 @@ "require": { "php": ">=7.1", "ext-mbstring": "*", - "symfony/debug-bundle": "^3.4", - "symfony/framework-bundle": "^3.4", - "symfony/web-profiler-bundle": "^3.4", - "symfony/security-bundle": "^3.4", - "symfony/twig-bundle": "^3.4", - "symfony/asset": "^3.4", - "symfony/console": "^3.4", - "symfony/symfony": "^3.4.26", - "symfony/templating": "^3.4", - "symfony/translation": "^3.4", - "symfony/validator": "^3.4", - "symfony/swiftmailer-bundle": "^3.1", + "symfony/debug-bundle": "^4.4", + "symfony/framework-bundle": "^4.4", + "symfony/web-profiler-bundle": "^4.4", + "symfony/security-bundle": "^4.4", + "symfony/twig-bundle": "^4.4", + "symfony/asset": "^4.4", + "symfony/console": "^4.4", + "symfony/symfony": "^4.4", + "symfony/templating": "^4.4", + "symfony/translation": "^4.4", + "symfony/validator": "^4.4", + "symfony/swiftmailer-bundle": "^3.2", "symfony/monolog-bundle": "^3.2", "symfony/polyfill-apcu": "^1.0", - "sensio/distribution-bundle": "^5.0", - "sensio/framework-extra-bundle": "^3.0.2", + "sensio/framework-extra-bundle": "^6.2", "incenteev/composer-parameter-handler": "^2.0", "knplabs/github-api": "^2.0", "php-http/guzzle6-adapter": "^1.0", - "prestashop/translationtools-bundle": "^4.0", + "prestashop/translationtools-bundle": "^5.0", "prestashop/github-webhook-parser": "^0.1.0", "twig/twig": "^1.38.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^2.0", - "symfony/phpunit-bridge": "^3.4", - "symfony/browser-kit": "^3.4", + "symfony/phpunit-bridge": "^4.4", + "symfony/browser-kit": "^4.4", "phpstan/phpstan": "^0.12" }, "scripts": { @@ -65,6 +64,9 @@ ], "post-install-cmd": [ "@symfony-scripts" + ], + "post-update-cmd": [ + "@symfony-scripts" ] }, "extra": { diff --git a/composer.lock b/composer.lock index 8c6068b..9ae96f7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ab8de3cf425d6b26bc767243e91efe2c", + "content-hash": "86c947a4d4e5551fddbdcbe40c22c6c5", "packages": [ { "name": "clue/stream-filter", @@ -58,62 +58,6 @@ ], "time": "2019-04-09T12:31:48+00:00" }, - { - "name": "composer/ca-bundle", - "version": "1.1.4", - "source": { - "type": "git", - "url": "https://github.com/composer/ca-bundle.git", - "reference": "558f321c52faeb4828c03e7dc0cfe39a09e09a2d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/558f321c52faeb4828c03e7dc0cfe39a09e09a2d", - "reference": "558f321c52faeb4828c03e7dc0cfe39a09e09a2d", - "shasum": "" - }, - "require": { - "ext-openssl": "*", - "ext-pcre": "*", - "php": "^5.3.2 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5", - "psr/log": "^1.0", - "symfony/process": "^2.5 || ^3.0 || ^4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\CaBundle\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", - "keywords": [ - "cabundle", - "cacert", - "certificate", - "ssl", - "tls" - ], - "time": "2019-01-28T09:30:10+00:00" - }, { "name": "doctrine/annotations", "version": "v1.8.0", @@ -331,89 +275,6 @@ ], "time": "2017-07-22T10:37:32+00:00" }, - { - "name": "doctrine/common", - "version": "2.12.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/common.git", - "reference": "2053eafdf60c2172ee1373d1b9289ba1db7f1fc6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/2053eafdf60c2172ee1373d1b9289ba1db7f1fc6", - "reference": "2053eafdf60c2172ee1373d1b9289ba1db7f1fc6", - "shasum": "" - }, - "require": { - "doctrine/annotations": "^1.0", - "doctrine/cache": "^1.0", - "doctrine/collections": "^1.0", - "doctrine/event-manager": "^1.0", - "doctrine/inflector": "^1.0", - "doctrine/lexer": "^1.0", - "doctrine/persistence": "^1.1", - "doctrine/reflection": "^1.0", - "php": "^7.1" - }, - "require-dev": { - "doctrine/coding-standard": "^1.0", - "phpstan/phpstan": "^0.11", - "phpstan/phpstan-phpunit": "^0.11", - "phpunit/phpunit": "^7.0", - "squizlabs/php_codesniffer": "^3.0", - "symfony/phpunit-bridge": "^4.0.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.11.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\": "lib/Doctrine/Common" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - }, - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - } - ], - "description": "PHP Doctrine Common project is a library that provides additional functionality that other Doctrine projects depend on such as better reflection support, persistence interfaces, proxies, event system and much more.", - "homepage": "https://www.doctrine-project.org/projects/common.html", - "keywords": [ - "common", - "doctrine", - "php" - ], - "time": "2020-01-10T15:49:25+00:00" - }, { "name": "doctrine/event-manager", "version": "1.1.0", @@ -490,73 +351,6 @@ ], "time": "2019-11-10T09:48:07+00:00" }, - { - "name": "doctrine/inflector", - "version": "1.3.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/ec3a55242203ffa6a4b27c58176da97ff0a7aec1", - "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "require-dev": { - "phpunit/phpunit": "^6.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Common String Manipulations with regard to casing and singular/plural rules.", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "inflection", - "pluralize", - "singularize", - "string" - ], - "time": "2019-10-30T19:59:35+00:00" - }, { "name": "doctrine/lexer", "version": "1.0.2", @@ -837,39 +631,45 @@ "time": "2018-12-04T22:38:24+00:00" }, { - "name": "fig/link-util", - "version": "1.1.0", + "name": "friendsofphp/proxy-manager-lts", + "version": "v1.0.16", "source": { "type": "git", - "url": "https://github.com/php-fig/link-util.git", - "reference": "47f55860678a9e202206047bc02767556d298106" + "url": "https://github.com/FriendsOfPHP/proxy-manager-lts.git", + "reference": "ecadbdc9052e4ad08c60c8a02268712e50427f7c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/link-util/zipball/47f55860678a9e202206047bc02767556d298106", - "reference": "47f55860678a9e202206047bc02767556d298106", + "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/ecadbdc9052e4ad08c60c8a02268712e50427f7c", + "reference": "ecadbdc9052e4ad08c60c8a02268712e50427f7c", "shasum": "" }, "require": { - "php": ">=5.5.0", - "psr/link": "~1.0@dev" + "laminas/laminas-code": "~3.4.1|^4.0", + "php": ">=7.1", + "symfony/filesystem": "^4.4.17|^5.0|^6.0|^7.0" }, - "provide": { - "psr/link-implementation": "1.0" + "conflict": { + "laminas/laminas-stdlib": "<3.2.1", + "zendframework/zend-stdlib": "<3.2.1" + }, + "replace": { + "ocramius/proxy-manager": "^2.1" }, "require-dev": { - "phpunit/phpunit": "^5.1", - "squizlabs/php_codesniffer": "^2.3.1" + "ext-phar": "*", + "symfony/phpunit-bridge": "^5.4|^6.0|^7.0" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" + "thanks": { + "name": "ocramius/proxy-manager", + "url": "https://github.com/Ocramius/ProxyManager" } }, "autoload": { "psr-4": { - "Fig\\Link\\": "src/" + "ProxyManager\\": "src/ProxyManager" } }, "notification-url": "https://packagist.org/downloads/", @@ -878,20 +678,39 @@ ], "authors": [ { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" } ], - "description": "Common utility implementations for HTTP links", + "description": "Adding support for a wider range of PHP versions to ocramius/proxy-manager", + "homepage": "https://github.com/FriendsOfPHP/proxy-manager-lts", "keywords": [ - "http", - "http-link", - "link", - "psr", - "psr-13", - "rest" + "aop", + "lazy loading", + "proxy", + "proxy pattern", + "service proxies" + ], + "support": { + "issues": "https://github.com/FriendsOfPHP/proxy-manager-lts/issues", + "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.16" + }, + "funding": [ + { + "url": "https://github.com/Ocramius", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ocramius/proxy-manager", + "type": "tidelift" + } ], - "time": "2019-12-18T15:40:05+00:00" + "time": "2023-05-24T07:17:17+00:00" }, { "name": "guzzlehttp/guzzle", @@ -1315,6 +1134,72 @@ ], "time": "2019-01-28T19:31:35+00:00" }, + { + "name": "laminas/laminas-code", + "version": "4.7.1", + "source": { + "type": "git", + "url": "https://github.com/laminas/laminas-code.git", + "reference": "91aabc066d5620428120800c0eafc0411e441a62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laminas/laminas-code/zipball/91aabc066d5620428120800c0eafc0411e441a62", + "reference": "91aabc066d5620428120800c0eafc0411e441a62", + "shasum": "" + }, + "require": { + "php": ">=7.4, <8.2" + }, + "require-dev": { + "doctrine/annotations": "^1.13.2", + "ext-phar": "*", + "laminas/laminas-coding-standard": "^2.3.0", + "laminas/laminas-stdlib": "^3.6.1", + "phpunit/phpunit": "^9.5.10", + "psalm/plugin-phpunit": "^0.17.0", + "vimeo/psalm": "^4.13.1" + }, + "suggest": { + "doctrine/annotations": "Doctrine\\Common\\Annotations >=1.0 for annotation features", + "laminas/laminas-stdlib": "Laminas\\Stdlib component" + }, + "type": "library", + "autoload": { + "files": [ + "polyfill/ReflectionEnumPolyfill.php" + ], + "psr-4": { + "Laminas\\Code\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Extensions to the PHP Reflection API, static code scanning, and code generation", + "homepage": "https://laminas.dev", + "keywords": [ + "code", + "laminas", + "laminasframework" + ], + "support": { + "chat": "https://laminas.dev/chat", + "docs": "https://docs.laminas.dev/laminas-code/", + "forum": "https://discourse.laminas.dev", + "issues": "https://github.com/laminas/laminas-code/issues", + "rss": "https://github.com/laminas/laminas-code/releases.atom", + "source": "https://github.com/laminas/laminas-code" + }, + "funding": [ + { + "url": "https://funding.communitybridge.org/projects/laminas-project", + "type": "community_bridge" + } + ], + "time": "2022-11-21T01:32:31+00:00" + }, { "name": "monolog/monolog", "version": "1.24.0", @@ -1972,30 +1857,33 @@ }, { "name": "prestashop/translationtools-bundle", - "version": "v4.0.3", + "version": "v5.0.4", "source": { "type": "git", "url": "https://github.com/PrestaShop/TranslationToolsBundle.git", - "reference": "ba663b159bd560a2b570766ff5610c81f2462035" + "reference": "4aaef89ee0b4913157a76559bed52f4f35b2fb70" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PrestaShop/TranslationToolsBundle/zipball/ba663b159bd560a2b570766ff5610c81f2462035", - "reference": "ba663b159bd560a2b570766ff5610c81f2462035", + "url": "https://api.github.com/repos/PrestaShop/TranslationToolsBundle/zipball/4aaef89ee0b4913157a76559bed52f4f35b2fb70", + "reference": "4aaef89ee0b4913157a76559bed52f4f35b2fb70", "shasum": "" }, "require": { "nikic/php-parser": "^4", - "php": ">=7.1", - "smarty/smarty": "^3.1", - "symfony/twig-bridge": "^3.4", - "twig/twig": "^1.34|^2.4" + "php": ">=7.2", + "smarty/smarty": "^3.1 || ^4.0", + "symfony/twig-bridge": "^3.4 || ^4.4 || ^5.0", + "twig/twig": "^1.38 || ^2.7 || ^3.0" }, "require-dev": { - "doctrine/common": "~2.10.0", - "phpunit/phpunit": "^5.7", - "symfony/framework-bundle": "^3.4", - "symfony/translation": "^3.4" + "doctrine/common": "^2.10.0", + "friendsofphp/php-cs-fixer": "^3.2", + "phpunit/phpunit": "^7.5 || ^8.5", + "symfony/framework-bundle": "^3.4 || ^4.4 || ^5.0", + "symfony/symfony": "^4", + "symfony/translation": "^3.4 || ^4.4 || ^5.0", + "symfony/twig-bundle": "^4" }, "type": "bundle", "autoload": { @@ -2009,16 +1897,12 @@ ], "authors": [ { - "name": "Mickaël Andrieu", - "email": "andrieu.travail@gmail.com" - }, - { - "name": "Nawo Mbechezi", - "email": "mlanawo.mbechezi@ikimea.com" + "name": "PrestaShop SA", + "email": "contact@prestashop.com" }, { - "name": "Jérémie Tabet", - "email": "master@jeremietabet.com" + "name": "PrestaShop Community", + "homepage": "https://contributors.prestashop.com/" } ], "description": "Translation tools for PrestaShop", @@ -2027,7 +1911,11 @@ "prestashop", "translation" ], - "time": "2019-09-30T14:09:36+00:00" + "support": { + "issues": "https://github.com/PrestaShop/TranslationToolsBundle/issues", + "source": "https://github.com/PrestaShop/TranslationToolsBundle/tree/v5.0.4" + }, + "time": "2022-09-01T08:33:26+00:00" }, { "name": "psr/cache", @@ -2274,32 +2162,31 @@ "time": "2019-11-01T11:05:21+00:00" }, { - "name": "psr/simple-cache", - "version": "1.0.1", + "name": "ralouphie/getallheaders", + "version": "3.0.3", "source": { "type": "git", - "url": "https://github.com/php-fig/simple-cache.git", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", - "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=5.6" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" }, + "type": "library", "autoload": { - "psr-4": { - "Psr\\SimpleCache\\": "src/" - } + "files": [ + "src/getallheaders.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2307,55 +2194,8 @@ ], "authors": [ { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interfaces for simple caching", - "keywords": [ - "cache", - "caching", - "psr", - "psr-16", - "simple-cache" - ], - "time": "2017-10-23T01:57:42+00:00" - }, - { - "name": "ralouphie/getallheaders", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" - }, - "type": "library", - "autoload": { - "files": [ - "src/getallheaders.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ralph Khattar", - "email": "ralph.khattar@gmail.com" + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" } ], "description": "A polyfill for getallheaders.", @@ -2365,111 +2205,62 @@ }, "time": "2019-03-08T08:55:37+00:00" }, - { - "name": "sensio/distribution-bundle", - "version": "v5.0.24", - "source": { - "type": "git", - "url": "https://github.com/sensiolabs/SensioDistributionBundle.git", - "reference": "59eac70f15f97ee945924948a6f5e2f6f86b7a4b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/59eac70f15f97ee945924948a6f5e2f6f86b7a4b", - "reference": "59eac70f15f97ee945924948a6f5e2f6f86b7a4b", - "shasum": "" - }, - "require": { - "php": ">=5.3.9", - "sensiolabs/security-checker": "~5.0", - "symfony/class-loader": "~2.3|~3.0", - "symfony/config": "~2.3|~3.0", - "symfony/dependency-injection": "~2.3|~3.0", - "symfony/filesystem": "~2.3|~3.0", - "symfony/http-kernel": "~2.3|~3.0", - "symfony/process": "~2.3|~3.0" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "5.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Sensio\\Bundle\\DistributionBundle\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Base bundle for Symfony Distributions", - "keywords": [ - "configuration", - "distribution" - ], - "abandoned": true, - "time": "2018-12-14T17:36:15+00:00" - }, { "name": "sensio/framework-extra-bundle", - "version": "v3.0.29", + "version": "v6.2.10", "source": { "type": "git", "url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git", - "reference": "bb907234df776b68922eb4b25bfa061683597b6a" + "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/bb907234df776b68922eb4b25bfa061683597b6a", - "reference": "bb907234df776b68922eb4b25bfa061683597b6a", + "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/2f886f4b31f23c76496901acaedfedb6936ba61f", + "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f", "shasum": "" }, "require": { - "doctrine/common": "~2.2", - "symfony/dependency-injection": "~2.3|~3.0", - "symfony/framework-bundle": "~2.3|~3.0|~4.0" + "doctrine/annotations": "^1.0|^2.0", + "php": ">=7.2.5", + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/framework-bundle": "^4.4|^5.0|^6.0", + "symfony/http-kernel": "^4.4|^5.0|^6.0" }, - "require-dev": { - "doctrine/doctrine-bundle": "~1.5", - "doctrine/orm": "~2.4,>=2.4.5", - "symfony/asset": "~2.7|~3.0|~4.0", - "symfony/browser-kit": "~2.3|~3.0|~4.0", - "symfony/dom-crawler": "~2.3|~3.0|~4.0", - "symfony/expression-language": "~2.4|~3.0|~4.0", - "symfony/finder": "~2.3|~3.0|~4.0", - "symfony/phpunit-bridge": "~3.2|~4.0", - "symfony/psr-http-message-bridge": "^0.3|^1.0", - "symfony/security-bundle": "~2.4|~3.0|~4.0", - "symfony/templating": "~2.3|~3.0|~4.0", - "symfony/translation": "~2.3|~3.0|~4.0", - "symfony/twig-bundle": "~2.3|~3.0|~4.0", - "symfony/yaml": "~2.3|~3.0|~4.0", - "twig/twig": "~1.12|~2.0", - "zendframework/zend-diactoros": "^1.3" + "conflict": { + "doctrine/doctrine-cache-bundle": "<1.3.1", + "doctrine/persistence": "<1.3" }, - "suggest": { - "symfony/expression-language": "", - "symfony/psr-http-message-bridge": "To use the PSR-7 converters", - "symfony/security-bundle": "" + "require-dev": { + "doctrine/dbal": "^2.10|^3.0", + "doctrine/doctrine-bundle": "^1.11|^2.0", + "doctrine/orm": "^2.5", + "symfony/browser-kit": "^4.4|^5.0|^6.0", + "symfony/doctrine-bridge": "^4.4|^5.0|^6.0", + "symfony/dom-crawler": "^4.4|^5.0|^6.0", + "symfony/expression-language": "^4.4|^5.0|^6.0", + "symfony/finder": "^4.4|^5.0|^6.0", + "symfony/monolog-bridge": "^4.0|^5.0|^6.0", + "symfony/monolog-bundle": "^3.2", + "symfony/phpunit-bridge": "^4.4.9|^5.0.9|^6.0", + "symfony/security-bundle": "^4.4|^5.0|^6.0", + "symfony/twig-bundle": "^4.4|^5.0|^6.0", + "symfony/yaml": "^4.4|^5.0|^6.0", + "twig/twig": "^1.34|^2.4|^3.0" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "6.1.x-dev" } }, "autoload": { "psr-4": { - "Sensio\\Bundle\\FrameworkExtraBundle\\": "" - } + "Sensio\\Bundle\\FrameworkExtraBundle\\": "src/" + }, + "exclude-from-classmap": [ + "/tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2486,54 +2277,11 @@ "annotations", "controllers" ], - "time": "2017-12-14T19:03:23+00:00" - }, - { - "name": "sensiolabs/security-checker", - "version": "v5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sensiolabs/security-checker.git", - "reference": "46be3f58adac13084497961e10eed9a7fb4d44d1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/security-checker/zipball/46be3f58adac13084497961e10eed9a7fb4d44d1", - "reference": "46be3f58adac13084497961e10eed9a7fb4d44d1", - "shasum": "" - }, - "require": { - "composer/ca-bundle": "^1.0", - "php": ">=5.5.9", - "symfony/console": "~2.7|~3.0|~4.0" - }, - "bin": [ - "security-checker" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "psr-4": { - "SensioLabs\\Security\\": "SensioLabs/Security" - } + "support": { + "source": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/tree/v6.2.10" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien.potencier@gmail.com" - } - ], - "description": "A security checker for your composer.lock", - "abandoned": "https://github.com/fabpot/local-php-security-checker", - "time": "2018-12-19T17:14:59+00:00" + "abandoned": "Symfony", + "time": "2023-02-24T14:57:12+00:00" }, { "name": "smarty/smarty", @@ -2660,6 +2408,100 @@ ], "time": "2019-03-10T07:52:41+00:00" }, + { + "name": "symfony/contracts", + "version": "v1.1.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/contracts.git", + "reference": "9e27f5c175ecbd6fff554d839ff4a432da797168" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/contracts/zipball/9e27f5c175ecbd6fff554d839ff4a432da797168", + "reference": "9e27f5c175ecbd6fff554d839ff4a432da797168", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/cache": "^1.0|^2.0|^3.0", + "psr/container": "^1.0" + }, + "replace": { + "symfony/cache-contracts": "self.version", + "symfony/event-dispatcher-contracts": "self.version", + "symfony/http-client-contracts": "self.version", + "symfony/service-contracts": "self.version", + "symfony/translation-contracts": "self.version" + }, + "require-dev": { + "symfony/polyfill-intl-idn": "^1.10" + }, + "suggest": { + "psr/event-dispatcher": "When using the EventDispatcher contracts", + "symfony/cache-implementation": "", + "symfony/event-dispatcher-implementation": "", + "symfony/http-client-implementation": "", + "symfony/service-implementation": "", + "symfony/translation-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\": "" + }, + "exclude-from-classmap": [ + "**/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A set of abstractions extracted out of the Symfony components", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/contracts/tree/v1.1.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-06-27T13:16:42+00:00" + }, { "name": "symfony/monolog-bundle", "version": "v3.3.1", @@ -3209,36 +3051,39 @@ "time": "2022-05-24T11:49:31+00:00" }, { - "name": "symfony/polyfill-php56", - "version": "v1.14.0", + "name": "symfony/polyfill-php72", + "version": "v1.26.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "16ec91cb06998b609501b55b7177b7d7c02badb3" + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/16ec91cb06998b609501b55b7177b7d7c02badb3", - "reference": "16ec91cb06998b609501b55b7177b7d7c02badb3", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", + "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/polyfill-util": "~1.0" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.14-dev" + "dev-main": "1.26-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php56\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Php72\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3254,7 +3099,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 5.6+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -3262,35 +3107,63 @@ "portable", "shim" ], - "time": "2020-01-13T11:15:53+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-05-24T11:49:31+00:00" }, { - "name": "symfony/polyfill-php70", - "version": "v1.20.0", + "name": "symfony/polyfill-php73", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644" + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/5f03a781d984aae42cebd18e7912fa80f02ee644", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", "shasum": "" }, "require": { "php": ">=7.1" }, - "type": "metapackage", + "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" } }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -3305,7 +3178,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -3314,7 +3187,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php70/tree/v1.20.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" }, "funding": [ { @@ -3330,20 +3203,20 @@ "type": "tidelift" } ], - "time": "2020-10-23T14:02:19+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { - "name": "symfony/polyfill-php72", - "version": "v1.26.0", + "name": "symfony/polyfill-php80", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -3352,7 +3225,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3364,14 +3237,21 @@ "bootstrap.php" ], "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - } + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, { "name": "Nicolas Grekas", "email": "p@tchwork.com" @@ -3381,7 +3261,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -3390,7 +3270,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -3406,35 +3286,45 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { - "name": "symfony/polyfill-util", - "version": "v1.14.0", + "name": "symfony/polyfill-php81", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-util.git", - "reference": "ba3cfcea6d0192cae46c62041f61cbb704b526d3" + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/ba3cfcea6d0192cae46c62041f61cbb704b526d3", - "reference": "ba3cfcea6d0192cae46c62041f61cbb704b526d3", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.14-dev" + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { + "files": [ + "bootstrap.php" + ], "psr-4": { - "Symfony\\Polyfill\\Util\\": "" - } + "Symfony\\Polyfill\\Php81\\": "" + }, + "classmap": [ + "Resources/stubs" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3450,15 +3340,32 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony utilities for portability of PHP codes", + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ - "compat", "compatibility", "polyfill", + "portable", "shim" ], - "time": "2020-01-13T11:15:53+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/swiftmailer-bundle", @@ -3524,53 +3431,70 @@ }, { "name": "symfony/symfony", - "version": "v3.4.49", + "version": "v4.4.50", "source": { "type": "git", "url": "https://github.com/symfony/symfony.git", - "reference": "ba0e346e3ad11de4a307fe4fa2452a3656dcc17b" + "reference": "6bc1c2e2506327daa9a2359ec45f7098ca947728" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/symfony/zipball/ba0e346e3ad11de4a307fe4fa2452a3656dcc17b", - "reference": "ba0e346e3ad11de4a307fe4fa2452a3656dcc17b", + "url": "https://api.github.com/repos/symfony/symfony/zipball/6bc1c2e2506327daa9a2359ec45f7098ca947728", + "reference": "6bc1c2e2506327daa9a2359ec45f7098ca947728", "shasum": "" }, "require": { - "doctrine/common": "~2.4", + "doctrine/event-manager": "~1.0", + "doctrine/persistence": "^1.3|^2|^3", "ext-xml": "*", - "fig/link-util": "^1.0", - "php": "^5.5.9|>=7.0.8", - "psr/cache": "~1.0", + "friendsofphp/proxy-manager-lts": "^1.0.2", + "php": ">=7.1.3", + "psr/cache": "^1.0|^2.0", "psr/container": "^1.0", "psr/link": "^1.0", - "psr/log": "~1.0", - "psr/simple-cache": "^1.0", - "symfony/polyfill-apcu": "~1.1", + "psr/log": "^1|^2", + "symfony/contracts": "^1.1.8", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-icu": "~1.0", + "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php56": "~1.0", - "symfony/polyfill-php70": "~1.6", - "twig/twig": "^1.41|^2.10" + "symfony/polyfill-php72": "~1.5", + "symfony/polyfill-php73": "^1.11", + "symfony/polyfill-php80": "^1.16", + "symfony/polyfill-php81": "^1.22", + "twig/twig": "^1.43|^2.13|^3.0.4" }, "conflict": { + "doctrine/dbal": "<2.7", + "egulias/email-validator": "~3.0.0", + "masterminds/html5": "<2.6", "monolog/monolog": ">=2", - "phpdocumentor/reflection-docblock": "<3.0||>=3.2.0,<3.2.2", - "phpdocumentor/type-resolver": "<0.3.0", - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" + "ocramius/proxy-manager": "<2.1", + "phpdocumentor/reflection-docblock": "<3.0|>=3.2.0,<3.2.2", + "phpdocumentor/type-resolver": "<0.3.0|1.3.*", + "phpunit/phpunit": "<5.4.3" }, "provide": { - "psr/cache-implementation": "1.0", + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/cache-implementation": "1.0|2.0", "psr/container-implementation": "1.0", - "psr/log-implementation": "1.0", - "psr/simple-cache-implementation": "1.0" + "psr/event-dispatcher-implementation": "1.0", + "psr/http-client-implementation": "1.0", + "psr/link-implementation": "1.0", + "psr/log-implementation": "1.0|2.0", + "psr/simple-cache-implementation": "1.0|2.0", + "symfony/cache-implementation": "1.0|2.0", + "symfony/event-dispatcher-implementation": "1.1", + "symfony/http-client-implementation": "1.1|2.0", + "symfony/service-implementation": "1.0|2.0", + "symfony/translation-implementation": "1.0|2.0" }, "replace": { + "symfony/amazon-mailer": "self.version", "symfony/asset": "self.version", "symfony/browser-kit": "self.version", "symfony/cache": "self.version", - "symfony/class-loader": "self.version", "symfony/config": "self.version", "symfony/console": "self.version", "symfony/css-selector": "self.version", @@ -3580,20 +3504,29 @@ "symfony/doctrine-bridge": "self.version", "symfony/dom-crawler": "self.version", "symfony/dotenv": "self.version", + "symfony/error-handler": "self.version", "symfony/event-dispatcher": "self.version", "symfony/expression-language": "self.version", "symfony/filesystem": "self.version", "symfony/finder": "self.version", "symfony/form": "self.version", "symfony/framework-bundle": "self.version", + "symfony/google-mailer": "self.version", + "symfony/http-client": "self.version", "symfony/http-foundation": "self.version", "symfony/http-kernel": "self.version", "symfony/inflector": "self.version", "symfony/intl": "self.version", "symfony/ldap": "self.version", "symfony/lock": "self.version", + "symfony/mailchimp-mailer": "self.version", + "symfony/mailer": "self.version", + "symfony/mailgun-mailer": "self.version", + "symfony/messenger": "self.version", + "symfony/mime": "self.version", "symfony/monolog-bridge": "self.version", "symfony/options-resolver": "self.version", + "symfony/postmark-mailer": "self.version", "symfony/process": "self.version", "symfony/property-access": "self.version", "symfony/property-info": "self.version", @@ -3605,6 +3538,7 @@ "symfony/security-csrf": "self.version", "symfony/security-guard": "self.version", "symfony/security-http": "self.version", + "symfony/sendgrid-mailer": "self.version", "symfony/serializer": "self.version", "symfony/stopwatch": "self.version", "symfony/templating": "self.version", @@ -3613,6 +3547,7 @@ "symfony/twig-bundle": "self.version", "symfony/validator": "self.version", "symfony/var-dumper": "self.version", + "symfony/var-exporter": "self.version", "symfony/web-link": "self.version", "symfony/web-profiler-bundle": "self.version", "symfony/web-server-bundle": "self.version", @@ -3621,24 +3556,31 @@ }, "require-dev": { "cache/integration-tests": "dev-master", - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.6", + "composer/package-versions-deprecated": "^1.8", + "doctrine/annotations": "^1.10.4", + "doctrine/cache": "^1.6|^2.0", + "doctrine/collections": "~1.0", "doctrine/data-fixtures": "^1.1", - "doctrine/dbal": "~2.4", - "doctrine/doctrine-bundle": "~1.4", - "doctrine/orm": "~2.4,>=2.4.5", - "egulias/email-validator": "~1.2,>=1.2.8|~2.0", - "monolog/monolog": "~1.11", - "ocramius/proxy-manager": "~0.4|~1.0|~2.0", - "phpdocumentor/reflection-docblock": "^3.0|^4.0", - "predis/predis": "~1.0", + "doctrine/dbal": "^2.7|^3.0", + "doctrine/orm": "^2.6.3", + "egulias/email-validator": "^2.1.10|^3.1", + "guzzlehttp/promises": "^1.4", + "masterminds/html5": "^2.6", + "monolog/monolog": "^1.25.1", + "nyholm/psr7": "^1.0", + "paragonie/sodium_compat": "^1.8", + "php-http/httplug": "^1.0|^2.0", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "predis/predis": "~1.1", + "psr/http-client": "^1.0", + "psr/simple-cache": "^1.0|^2.0", "symfony/phpunit-bridge": "^5.2", - "symfony/security-acl": "~2.8|~3.0" + "symfony/security-acl": "~2.8|~3.0", + "twig/cssinliner-extra": "^2.12|^3", + "twig/inky-extra": "^2.12|^3", + "twig/markdown-extra": "^2.12|^3" }, "type": "library", - "extra": { - "branch-version": "3.4" - }, "autoload": { "psr-4": { "Symfony\\Bundle\\": "src/Symfony/Bundle/", @@ -3676,7 +3618,7 @@ ], "support": { "issues": "https://github.com/symfony/symfony/issues", - "source": "https://github.com/symfony/symfony/tree/v3.4.49" + "source": "https://github.com/symfony/symfony/tree/v4.4.50" }, "funding": [ { @@ -3692,7 +3634,7 @@ "type": "tidelift" } ], - "time": "2021-05-19T12:07:19+00:00" + "time": "2023-02-01T08:01:44+00:00" }, { "name": "twig/twig", @@ -4074,35 +4016,35 @@ }, { "name": "symfony/phpunit-bridge", - "version": "v3.4.31", + "version": "v4.4.49", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "028617b04ae19d99d89089626ac969d161244ebc" + "reference": "b3378a7d305666a69e08457b65af8bca179fbbbb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/028617b04ae19d99d89089626ac969d161244ebc", - "reference": "028617b04ae19d99d89089626ac969d161244ebc", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/b3378a7d305666a69e08457b65af8bca179fbbbb", + "reference": "b3378a7d305666a69e08457b65af8bca179fbbbb", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.5.9" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0|<6.4,>=6.0|9.1.2" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0" }, "suggest": { - "symfony/debug": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" + "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" }, "bin": [ "bin/simple-phpunit" ], "type": "symfony-bridge", "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - }, "thanks": { "name": "phpunit/phpunit", "url": "https://github.com/sebastianbergmann/phpunit" @@ -4133,9 +4075,94 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony PHPUnit Bridge", + "description": "Provides utilities for PHPUnit, especially user deprecation notices management", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/phpunit-bridge/tree/v4.4.49" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-08T14:39:54+00:00" + }, + { + "name": "symfony/polyfill-php70", + "version": "v1.20.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php70.git", + "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/5f03a781d984aae42cebd18e7912fa80f02ee644", + "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "metapackage", + "extra": { + "branch-alias": { + "dev-main": "1.20-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", "homepage": "https://symfony.com", - "time": "2019-08-20T13:31:17+00:00" + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php70/tree/v1.20.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" } ], "aliases": [], From 611b4a6b8a34f02a3d7c7e49c543eda7a2148b85 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:07:05 +0200 Subject: [PATCH 03/11] Fix errors related to depracted code, tests and app can only be run with PHP 7.4 now --- .dockerignore | 1 - .github/workflows/php.yml | 2 +- .gitignore | 1 + app/AppKernel.php | 1 - bin/symfony_requirements | 146 ---- composer.json | 7 +- .../Controller/WebhookController.php | 4 +- src/AppBundle/Event/GitHubEvent.php | 2 +- tests/AppBundle/Comments/CommentApiTest.php | 4 +- .../Controller/MinimalControllerTest.php | 2 +- tests/AppBundle/Diff/DiffTest.php | 2 +- .../Event/GitHubEventResolverTest.php | 2 +- .../AppBundle/Issues/CachedLabelsApiTest.php | 2 +- tests/AppBundle/Issues/IssueListenerTest.php | 2 +- tests/AppBundle/Issues/StatusApiTest.php | 2 +- .../AppBundle/PullRequests/BodyParserTest.php | 2 +- .../PullRequests/CommitParserTest.php | 2 +- tests/AppBundle/PullRequests/ListenerTest.php | 2 +- tests/AppBundle/PullRequests/ReporterTest.php | 2 +- .../AppBundle/PullRequests/RepositoryTest.php | 14 +- tests/AppBundle/Search/RepositoryTest.php | 4 +- .../Security/SignatureValidatorTest.php | 2 +- var/SymfonyRequirements.php | 810 ------------------ 23 files changed, 33 insertions(+), 985 deletions(-) delete mode 100755 bin/symfony_requirements delete mode 100644 var/SymfonyRequirements.php diff --git a/.dockerignore b/.dockerignore index 344e108..91fdf69 100644 --- a/.dockerignore +++ b/.dockerignore @@ -21,7 +21,6 @@ .php_cs.cache .travis.yml app/config/parameters.yml -bin/symfony_requirements build/ composer.phar docker-compose.override.yml diff --git a/.github/workflows/php.yml b/.github/workflows/php.yml index 316077c..573df25 100644 --- a/.github/workflows/php.yml +++ b/.github/workflows/php.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - php-versions: ['7.1', '7.2', '7.3'] + php-versions: ['7.4'] steps: - name: Setup PHP uses: shivammathur/setup-php@v2 diff --git a/.gitignore b/.gitignore index 633d321..f09dbe9 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ var/SymfonyRequirements.php .idea/* .env security-checker +.phpunit.result.cache diff --git a/app/AppKernel.php b/app/AppKernel.php index 62bc232..4784111 100644 --- a/app/AppKernel.php +++ b/app/AppKernel.php @@ -23,7 +23,6 @@ public function registerBundles() if (in_array($this->getEnvironment(), ['dev', 'test'], true)) { $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle(); $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); - $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle(); } return $bundles; diff --git a/bin/symfony_requirements b/bin/symfony_requirements deleted file mode 100755 index a7bf65a..0000000 --- a/bin/symfony_requirements +++ /dev/null @@ -1,146 +0,0 @@ -#!/usr/bin/env php -getPhpIniConfigPath(); - -echo_title('Symfony Requirements Checker'); - -echo '> PHP is using the following php.ini file:'.PHP_EOL; -if ($iniPath) { - echo_style('green', ' '.$iniPath); -} else { - echo_style('yellow', ' WARNING: No configuration file (php.ini) used by PHP!'); -} - -echo PHP_EOL.PHP_EOL; - -echo '> Checking Symfony requirements:'.PHP_EOL.' '; - -$messages = array(); -foreach ($symfonyRequirements->getRequirements() as $req) { - if ($helpText = get_error_message($req, $lineSize)) { - echo_style('red', 'E'); - $messages['error'][] = $helpText; - } else { - echo_style('green', '.'); - } -} - -$checkPassed = empty($messages['error']); - -foreach ($symfonyRequirements->getRecommendations() as $req) { - if ($helpText = get_error_message($req, $lineSize)) { - echo_style('yellow', 'W'); - $messages['warning'][] = $helpText; - } else { - echo_style('green', '.'); - } -} - -if ($checkPassed) { - echo_block('success', 'OK', 'Your system is ready to run Symfony projects'); -} else { - echo_block('error', 'ERROR', 'Your system is not ready to run Symfony projects'); - - echo_title('Fix the following mandatory requirements', 'red'); - - foreach ($messages['error'] as $helpText) { - echo ' * '.$helpText.PHP_EOL; - } -} - -if (!empty($messages['warning'])) { - echo_title('Optional recommendations to improve your setup', 'yellow'); - - foreach ($messages['warning'] as $helpText) { - echo ' * '.$helpText.PHP_EOL; - } -} - -echo PHP_EOL; -echo_style('title', 'Note'); -echo ' The command console could use a different php.ini file'.PHP_EOL; -echo_style('title', '~~~~'); -echo ' than the one used with your web server. To be on the'.PHP_EOL; -echo ' safe side, please check the requirements from your web'.PHP_EOL; -echo ' server using the '; -echo_style('yellow', 'web/config.php'); -echo ' script.'.PHP_EOL; -echo PHP_EOL; - -exit($checkPassed ? 0 : 1); - -function get_error_message(Requirement $requirement, $lineSize) -{ - if ($requirement->isFulfilled()) { - return; - } - - $errorMessage = wordwrap($requirement->getTestMessage(), $lineSize - 3, PHP_EOL.' ').PHP_EOL; - $errorMessage .= ' > '.wordwrap($requirement->getHelpText(), $lineSize - 5, PHP_EOL.' > ').PHP_EOL; - - return $errorMessage; -} - -function echo_title($title, $style = null) -{ - $style = $style ?: 'title'; - - echo PHP_EOL; - echo_style($style, $title.PHP_EOL); - echo_style($style, str_repeat('~', strlen($title)).PHP_EOL); - echo PHP_EOL; -} - -function echo_style($style, $message) -{ - // ANSI color codes - $styles = array( - 'reset' => "\033[0m", - 'red' => "\033[31m", - 'green' => "\033[32m", - 'yellow' => "\033[33m", - 'error' => "\033[37;41m", - 'success' => "\033[37;42m", - 'title' => "\033[34m", - ); - $supports = has_color_support(); - - echo($supports ? $styles[$style] : '').$message.($supports ? $styles['reset'] : ''); -} - -function echo_block($style, $title, $message) -{ - $message = ' '.trim($message).' '; - $width = strlen($message); - - echo PHP_EOL.PHP_EOL; - - echo_style($style, str_repeat(' ', $width)); - echo PHP_EOL; - echo_style($style, str_pad(' ['.$title.']', $width, ' ', STR_PAD_RIGHT)); - echo PHP_EOL; - echo_style($style, $message); - echo PHP_EOL; - echo_style($style, str_repeat(' ', $width)); - echo PHP_EOL; -} - -function has_color_support() -{ - static $support; - - if (null === $support) { - if (DIRECTORY_SEPARATOR == '\\') { - $support = false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI'); - } else { - $support = function_exists('posix_isatty') && @posix_isatty(STDOUT); - } - } - - return $support; -} diff --git a/composer.json b/composer.json index 883d6e6..734c09b 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,7 @@ "psr-4": { "Tests\\": "tests/" } }, "require": { - "php": ">=7.1", + "php": ">=7.4", "ext-mbstring": "*", "symfony/debug-bundle": "^4.4", "symfony/framework-bundle": "^4.4", @@ -51,6 +51,11 @@ "symfony/browser-kit": "^4.4", "phpstan/phpstan": "^0.12" }, + "config": { + "platform": { + "php": "7.4.0" + } + }, "scripts": { "phpstan": "@php ./vendor/bin/phpstan analyse src tests -c phpstan.neon -l 1", "cs-fix": "@php ./vendor/bin/php-cs-fixer fix", diff --git a/src/AppBundle/Controller/WebhookController.php b/src/AppBundle/Controller/WebhookController.php index 7c40377..486d78b 100644 --- a/src/AppBundle/Controller/WebhookController.php +++ b/src/AppBundle/Controller/WebhookController.php @@ -7,8 +7,8 @@ use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; -use Symfony\Component\EventDispatcher\EventDispatcherInterface; use Symfony\Component\HttpFoundation\JsonResponse; +use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; class WebhookController extends AbstractController { @@ -29,7 +29,7 @@ public function githubAction(?GitHubEvent $event, LoggerInterface $logger, Event $event->getEvent()->getAction() )); - $eventDispatcher->dispatch($eventName, $event); + $eventDispatcher->dispatch($event, $eventName); return new JsonResponse($event->getStatuses()); } diff --git a/src/AppBundle/Event/GitHubEvent.php b/src/AppBundle/Event/GitHubEvent.php index 4682a03..ddafb36 100644 --- a/src/AppBundle/Event/GitHubEvent.php +++ b/src/AppBundle/Event/GitHubEvent.php @@ -4,7 +4,7 @@ use PrestaShop\Github\Entity\PullRequest; use PrestaShop\Github\Event\GithubEventInterface; -use Symfony\Component\EventDispatcher\Event; +use Symfony\Contracts\EventDispatcher\Event; /** * Every event returned by GitHub is stored as a GitHubEvent instance. diff --git a/tests/AppBundle/Comments/CommentApiTest.php b/tests/AppBundle/Comments/CommentApiTest.php index 78f05e5..0819360 100644 --- a/tests/AppBundle/Comments/CommentApiTest.php +++ b/tests/AppBundle/Comments/CommentApiTest.php @@ -17,7 +17,7 @@ class CommentApiTest extends TestCase private $pullRequest; private $twig; - public function setUp() + public function setUp(): void { $this->twig = $this->createMock('Twig\Environment'); @@ -37,7 +37,7 @@ public function setUp() $this->pullRequest ->method('getNumber') - ->willReturn('42') + ->willReturn(42) ; } diff --git a/tests/AppBundle/Controller/MinimalControllerTest.php b/tests/AppBundle/Controller/MinimalControllerTest.php index 6bec632..20e96e3 100644 --- a/tests/AppBundle/Controller/MinimalControllerTest.php +++ b/tests/AppBundle/Controller/MinimalControllerTest.php @@ -15,7 +15,7 @@ class MinimalControllerTest extends WebTestCase */ private $client; - protected function setUp() + protected function setUp(): void { $this->client = static::createClient(); } diff --git a/tests/AppBundle/Diff/DiffTest.php b/tests/AppBundle/Diff/DiffTest.php index 5843399..20f383f 100644 --- a/tests/AppBundle/Diff/DiffTest.php +++ b/tests/AppBundle/Diff/DiffTest.php @@ -18,7 +18,7 @@ class DiffTest extends TestCase private $pullRequest; private $webhookHandler; - protected function setUp() + protected function setUp(): void { $this->webhookHandler = new WebhookHandler(); $webhookResponse = file_get_contents(__DIR__.'/../webhook_examples/pull_request_opened_wording.json'); diff --git a/tests/AppBundle/Event/GitHubEventResolverTest.php b/tests/AppBundle/Event/GitHubEventResolverTest.php index c867f53..ec54515 100644 --- a/tests/AppBundle/Event/GitHubEventResolverTest.php +++ b/tests/AppBundle/Event/GitHubEventResolverTest.php @@ -29,7 +29,7 @@ class GitHubEventResolverTest extends TestCase */ private $logger; - public function setUp() + public function setUp(): void { $this->logger = $this->createMock(LoggerInterface::class); $this->webhookHandler = new WebhookHandler(); diff --git a/tests/AppBundle/Issues/CachedLabelsApiTest.php b/tests/AppBundle/Issues/CachedLabelsApiTest.php index 737083e..e1220aa 100644 --- a/tests/AppBundle/Issues/CachedLabelsApiTest.php +++ b/tests/AppBundle/Issues/CachedLabelsApiTest.php @@ -25,7 +25,7 @@ class CachedLabelsApiTest extends TestCase */ private $api; - protected function setUp() + protected function setUp(): void { $this->backendApi = $this->getMockBuilder('Github\Api\Issue\Labels') ->disableOriginalConstructor() diff --git a/tests/AppBundle/Issues/IssueListenerTest.php b/tests/AppBundle/Issues/IssueListenerTest.php index b7d8104..55ef741 100644 --- a/tests/AppBundle/Issues/IssueListenerTest.php +++ b/tests/AppBundle/Issues/IssueListenerTest.php @@ -23,7 +23,7 @@ class IssueListenerTest extends TestCase */ private $listener; - protected function setUp() + protected function setUp(): void { $this->statusApi = $this->createMock('AppBundle\Issues\StatusApi'); $this->listener = new Listener($this->statusApi, new NullLogger()); diff --git a/tests/AppBundle/Issues/StatusApiTest.php b/tests/AppBundle/Issues/StatusApiTest.php index ba9c8e2..e6f6446 100644 --- a/tests/AppBundle/Issues/StatusApiTest.php +++ b/tests/AppBundle/Issues/StatusApiTest.php @@ -26,7 +26,7 @@ class StatusApiTest extends TestCase */ private $api; - protected function setUp() + protected function setUp(): void { $this->labelsApi = $this->getMockBuilder('AppBundle\Issues\CachedLabelsApi') ->disableOriginalConstructor() diff --git a/tests/AppBundle/PullRequests/BodyParserTest.php b/tests/AppBundle/PullRequests/BodyParserTest.php index 2451bcc..3f4ed57 100644 --- a/tests/AppBundle/PullRequests/BodyParserTest.php +++ b/tests/AppBundle/PullRequests/BodyParserTest.php @@ -12,7 +12,7 @@ class BodyParserTest extends TestCase { private $bodyParser; - protected function setUp() + protected function setUp(): void { $this->bodyParser = new BodyParser(file_get_contents(__DIR__.'/../../Resources/PullRequestBody/feature.txt')); } diff --git a/tests/AppBundle/PullRequests/CommitParserTest.php b/tests/AppBundle/PullRequests/CommitParserTest.php index 63e4f9d..385562f 100644 --- a/tests/AppBundle/PullRequests/CommitParserTest.php +++ b/tests/AppBundle/PullRequests/CommitParserTest.php @@ -14,7 +14,7 @@ class CommitParserTest extends WebTestCase public static $kernel; public static $pullRequest; - public function setUp() + public function setUp(): void { $kernel = self::getKernelClass(); diff --git a/tests/AppBundle/PullRequests/ListenerTest.php b/tests/AppBundle/PullRequests/ListenerTest.php index c76fbe0..b237114 100644 --- a/tests/AppBundle/PullRequests/ListenerTest.php +++ b/tests/AppBundle/PullRequests/ListenerTest.php @@ -41,7 +41,7 @@ class ListenerTest extends TestCase */ private $repositoryMock; - public function setUp() + public function setUp(): void { $this->validator = (new ValidatorBuilder()) ->enableAnnotationMapping() diff --git a/tests/AppBundle/PullRequests/ReporterTest.php b/tests/AppBundle/PullRequests/ReporterTest.php index 8cdb607..d6f4d12 100644 --- a/tests/AppBundle/PullRequests/ReporterTest.php +++ b/tests/AppBundle/PullRequests/ReporterTest.php @@ -17,7 +17,7 @@ class ReporterTest extends TestCase private $repositoryMock; - public function setUp() + public function setUp(): void { $this->repositoryMock = $this->createMock('AppBundle\PullRequests\Repository'); diff --git a/tests/AppBundle/PullRequests/RepositoryTest.php b/tests/AppBundle/PullRequests/RepositoryTest.php index b845ca9..bb06c0f 100644 --- a/tests/AppBundle/PullRequests/RepositoryTest.php +++ b/tests/AppBundle/PullRequests/RepositoryTest.php @@ -19,7 +19,7 @@ class RepositoryTest extends TestCase private $pullRequestMock; private $repository; - public function setUp() + public function setUp(): void { $searchMock = $this->createMock('AppBundle\Search\Repository'); $this->commentsApiMock = $this->createMock('Github\Api\Issue\Comments'); @@ -40,7 +40,7 @@ public function setUp() $this->pullRequestMock ->method('getNumber') - ->willReturn('123') + ->willReturn(123) ; $this->repository = new Repository( @@ -51,7 +51,7 @@ public function setUp() ); } - public function tearDown() + public function tearDown(): void { $this->repository = null; } @@ -95,7 +95,7 @@ public function testFindAllWithLabel() public function testGetComments() { $comments = $this->repository->getComments($this->pullRequestMock); - $this->assertInternalType('array', $comments); + $this->assertIsArray($comments); $firstComment = $comments[0]; $this->assertInstanceOf(Comment::class, $firstComment); $this->assertSame('mickaelandrieu', $firstComment->getUser()->getLogin()); @@ -112,7 +112,7 @@ public function testGetCommentsByExpressionFromMatch() $user ); - $this->assertInternalType('array', $comments); + $this->assertIsArray($comments); $firstComment = $comments[0]; $this->assertInstanceOf(Comment::class, $firstComment); $this->assertSame('Shudrum', $firstComment->getUser()->getLogin()); @@ -129,7 +129,7 @@ public function testGetCommentsByExpressionFromNotMatch() $user ); - $this->assertInternalType('array', $comments); + $this->assertIsArray($comments); $this->assertEmpty($comments); } @@ -148,7 +148,7 @@ public function testRemoveCommentsIfExists() private function minimalTests($pullRequests) { - $this->assertInternalType('array', $pullRequests); + $this->assertIsArray($pullRequests); $this->assertInstanceOf(PullRequest::class, $pullRequests[0]); } } diff --git a/tests/AppBundle/Search/RepositoryTest.php b/tests/AppBundle/Search/RepositoryTest.php index 514210f..d998625 100644 --- a/tests/AppBundle/Search/RepositoryTest.php +++ b/tests/AppBundle/Search/RepositoryTest.php @@ -14,13 +14,13 @@ class RepositoryTest extends TestCase private $repository; private $searchApiMock; - public function setUp() + public function setUp(): void { $this->searchApiMock = $this->createMock(Search::class); $this->repository = new Repository($this->searchApiMock, 'fakeUsername', 'fakeName'); } - public function tearDown() + public function tearDown(): void { $this->repository = null; $this->searchApiMock = null; diff --git a/tests/AppBundle/Security/SignatureValidatorTest.php b/tests/AppBundle/Security/SignatureValidatorTest.php index b975027..e5021a9 100644 --- a/tests/AppBundle/Security/SignatureValidatorTest.php +++ b/tests/AppBundle/Security/SignatureValidatorTest.php @@ -17,7 +17,7 @@ class SignatureValidatorTest extends TestCase const SECRET = 'MyDirtySecret'; private $signatureValidator; - protected function setUp() + protected function setUp(): void { $this->signatureValidator = new SignatureValidator(); } diff --git a/var/SymfonyRequirements.php b/var/SymfonyRequirements.php deleted file mode 100644 index 4a1fcc6..0000000 --- a/var/SymfonyRequirements.php +++ /dev/null @@ -1,810 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -/* - * Users of PHP 5.2 should be able to run the requirements checks. - * This is why the file and all classes must be compatible with PHP 5.2+ - * (e.g. not using namespaces and closures). - * - * ************** CAUTION ************** - * - * DO NOT EDIT THIS FILE as it will be overridden by Composer as part of - * the installation/update process. The original file resides in the - * SensioDistributionBundle. - * - * ************** CAUTION ************** - */ - -/** - * Represents a single PHP requirement, e.g. an installed extension. - * It can be a mandatory requirement or an optional recommendation. - * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration. - * - * @author Tobias Schultze - */ -class Requirement -{ - private $fulfilled; - private $testMessage; - private $helpText; - private $helpHtml; - private $optional; - - /** - * Constructor that initializes the requirement. - * - * @param bool $fulfilled Whether the requirement is fulfilled - * @param string $testMessage The message for testing the requirement - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - * @param bool $optional Whether this is only an optional recommendation not a mandatory requirement - */ - public function __construct($fulfilled, $testMessage, $helpHtml, $helpText = null, $optional = false) - { - $this->fulfilled = (bool) $fulfilled; - $this->testMessage = (string) $testMessage; - $this->helpHtml = (string) $helpHtml; - $this->helpText = null === $helpText ? strip_tags($this->helpHtml) : (string) $helpText; - $this->optional = (bool) $optional; - } - - /** - * Returns whether the requirement is fulfilled. - * - * @return bool true if fulfilled, otherwise false - */ - public function isFulfilled() - { - return $this->fulfilled; - } - - /** - * Returns the message for testing the requirement. - * - * @return string The test message - */ - public function getTestMessage() - { - return $this->testMessage; - } - - /** - * Returns the help text for resolving the problem. - * - * @return string The help text - */ - public function getHelpText() - { - return $this->helpText; - } - - /** - * Returns the help text formatted in HTML. - * - * @return string The HTML help - */ - public function getHelpHtml() - { - return $this->helpHtml; - } - - /** - * Returns whether this is only an optional recommendation and not a mandatory requirement. - * - * @return bool true if optional, false if mandatory - */ - public function isOptional() - { - return $this->optional; - } -} - -/** - * Represents a PHP requirement in form of a php.ini configuration. - * - * @author Tobias Schultze - */ -class PhpIniRequirement extends Requirement -{ - /** - * Constructor that initializes the requirement. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - * or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - * This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - * Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string|null $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string|null $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - * @param bool $optional Whether this is only an optional recommendation not a mandatory requirement - */ - public function __construct($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null, $optional = false) - { - $cfgValue = ini_get($cfgName); - - if (is_callable($evaluation)) { - if (null === $testMessage || null === $helpHtml) { - throw new InvalidArgumentException('You must provide the parameters testMessage and helpHtml for a callback evaluation.'); - } - - $fulfilled = call_user_func($evaluation, $cfgValue); - } else { - if (null === $testMessage) { - $testMessage = sprintf('%s %s be %s in php.ini', - $cfgName, - $optional ? 'should' : 'must', - $evaluation ? 'enabled' : 'disabled' - ); - } - - if (null === $helpHtml) { - $helpHtml = sprintf('Set %s to %s in php.ini*.', - $cfgName, - $evaluation ? 'on' : 'off' - ); - } - - $fulfilled = $evaluation == $cfgValue; - } - - parent::__construct($fulfilled || ($approveCfgAbsence && false === $cfgValue), $testMessage, $helpHtml, $helpText, $optional); - } -} - -/** - * A RequirementCollection represents a set of Requirement instances. - * - * @author Tobias Schultze - */ -class RequirementCollection implements IteratorAggregate -{ - /** - * @var Requirement[] - */ - private $requirements = array(); - - /** - * Gets the current RequirementCollection as an Iterator. - * - * @return Traversable A Traversable interface - */ - public function getIterator() - { - return new ArrayIterator($this->requirements); - } - - /** - * Adds a Requirement. - * - * @param Requirement $requirement A Requirement instance - */ - public function add(Requirement $requirement) - { - $this->requirements[] = $requirement; - } - - /** - * Adds a mandatory requirement. - * - * @param bool $fulfilled Whether the requirement is fulfilled - * @param string $testMessage The message for testing the requirement - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addRequirement($fulfilled, $testMessage, $helpHtml, $helpText = null) - { - $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, false)); - } - - /** - * Adds an optional recommendation. - * - * @param bool $fulfilled Whether the recommendation is fulfilled - * @param string $testMessage The message for testing the recommendation - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addRecommendation($fulfilled, $testMessage, $helpHtml, $helpText = null) - { - $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, true)); - } - - /** - * Adds a mandatory requirement in form of a php.ini configuration. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - * or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - * This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - * Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addPhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null) - { - $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, false)); - } - - /** - * Adds an optional recommendation in form of a php.ini configuration. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - * or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - * This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - * Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addPhpIniRecommendation($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null) - { - $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, true)); - } - - /** - * Adds a requirement collection to the current set of requirements. - * - * @param RequirementCollection $collection A RequirementCollection instance - */ - public function addCollection(RequirementCollection $collection) - { - $this->requirements = array_merge($this->requirements, $collection->all()); - } - - /** - * Returns both requirements and recommendations. - * - * @return Requirement[] - */ - public function all() - { - return $this->requirements; - } - - /** - * Returns all mandatory requirements. - * - * @return Requirement[] - */ - public function getRequirements() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns the mandatory requirements that were not met. - * - * @return Requirement[] - */ - public function getFailedRequirements() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && !$req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns all optional recommendations. - * - * @return Requirement[] - */ - public function getRecommendations() - { - $array = array(); - foreach ($this->requirements as $req) { - if ($req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns the recommendations that were not met. - * - * @return Requirement[] - */ - public function getFailedRecommendations() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && $req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns whether a php.ini configuration is not correct. - * - * @return bool php.ini configuration problem? - */ - public function hasPhpIniConfigIssue() - { - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && $req instanceof PhpIniRequirement) { - return true; - } - } - - return false; - } - - /** - * Returns the PHP configuration file (php.ini) path. - * - * @return string|false php.ini file path - */ - public function getPhpIniConfigPath() - { - return get_cfg_var('cfg_file_path'); - } -} - -/** - * This class specifies all requirements and optional recommendations that - * are necessary to run the Symfony Standard Edition. - * - * @author Tobias Schultze - * @author Fabien Potencier - */ -class SymfonyRequirements extends RequirementCollection -{ - const LEGACY_REQUIRED_PHP_VERSION = '5.3.3'; - const REQUIRED_PHP_VERSION = '5.5.9'; - - /** - * Constructor that initializes the requirements. - */ - public function __construct() - { - /* mandatory requirements follow */ - - $installedPhpVersion = PHP_VERSION; - $requiredPhpVersion = $this->getPhpRequiredVersion(); - - $this->addRecommendation( - $requiredPhpVersion, - 'Vendors should be installed in order to check all requirements.', - 'Run the composer install command.', - 'Run the "composer install" command.' - ); - - if (false !== $requiredPhpVersion) { - $this->addRequirement( - version_compare($installedPhpVersion, $requiredPhpVersion, '>='), - sprintf('PHP version must be at least %s (%s installed)', $requiredPhpVersion, $installedPhpVersion), - sprintf('You are running PHP version "%s", but Symfony needs at least PHP "%s" to run. - Before using Symfony, upgrade your PHP installation, preferably to the latest version.', - $installedPhpVersion, $requiredPhpVersion), - sprintf('Install PHP %s or newer (installed version is %s)', $requiredPhpVersion, $installedPhpVersion) - ); - } - - $this->addRequirement( - version_compare($installedPhpVersion, '5.3.16', '!='), - 'PHP version must not be 5.3.16 as Symfony won\'t work properly with it', - 'Install PHP 5.3.17 or newer (or downgrade to an earlier PHP version)' - ); - - $this->addRequirement( - is_dir(__DIR__.'/../vendor/composer'), - 'Vendor libraries must be installed', - 'Vendor libraries are missing. Install composer following instructions from http://getcomposer.org/. '. - 'Then run "php composer.phar install" to install them.' - ); - - $cacheDir = is_dir(__DIR__.'/../var/cache') ? __DIR__.'/../var/cache' : __DIR__.'/cache'; - - $this->addRequirement( - is_writable($cacheDir), - 'app/cache/ or var/cache/ directory must be writable', - 'Change the permissions of either "app/cache/" or "var/cache/" directory so that the web server can write into it.' - ); - - $logsDir = is_dir(__DIR__.'/../var/logs') ? __DIR__.'/../var/logs' : __DIR__.'/logs'; - - $this->addRequirement( - is_writable($logsDir), - 'app/logs/ or var/logs/ directory must be writable', - 'Change the permissions of either "app/logs/" or "var/logs/" directory so that the web server can write into it.' - ); - - if (version_compare($installedPhpVersion, '7.0.0', '<')) { - $this->addPhpIniRequirement( - 'date.timezone', true, false, - 'date.timezone setting must be set', - 'Set the "date.timezone" setting in php.ini* (like Europe/Paris).' - ); - } - - if (false !== $requiredPhpVersion && version_compare($installedPhpVersion, $requiredPhpVersion, '>=')) { - $this->addRequirement( - in_array(@date_default_timezone_get(), DateTimeZone::listIdentifiers(), true), - sprintf('Configured default timezone "%s" must be supported by your installation of PHP', @date_default_timezone_get()), - 'Your default timezone is not supported by PHP. Check for typos in your php.ini file and have a look at the list of deprecated timezones at http://php.net/manual/en/timezones.others.php.' - ); - } - - $this->addRequirement( - function_exists('iconv'), - 'iconv() must be available', - 'Install and enable the iconv extension.' - ); - - $this->addRequirement( - function_exists('json_encode'), - 'json_encode() must be available', - 'Install and enable the JSON extension.' - ); - - $this->addRequirement( - function_exists('session_start'), - 'session_start() must be available', - 'Install and enable the session extension.' - ); - - $this->addRequirement( - function_exists('ctype_alpha'), - 'ctype_alpha() must be available', - 'Install and enable the ctype extension.' - ); - - $this->addRequirement( - function_exists('token_get_all'), - 'token_get_all() must be available', - 'Install and enable the Tokenizer extension.' - ); - - $this->addRequirement( - function_exists('simplexml_import_dom'), - 'simplexml_import_dom() must be available', - 'Install and enable the SimpleXML extension.' - ); - - if (function_exists('apc_store') && ini_get('apc.enabled')) { - if (version_compare($installedPhpVersion, '5.4.0', '>=')) { - $this->addRequirement( - version_compare(phpversion('apc'), '3.1.13', '>='), - 'APC version must be at least 3.1.13 when using PHP 5.4', - 'Upgrade your APC extension (3.1.13+).' - ); - } else { - $this->addRequirement( - version_compare(phpversion('apc'), '3.0.17', '>='), - 'APC version must be at least 3.0.17', - 'Upgrade your APC extension (3.0.17+).' - ); - } - } - - $this->addPhpIniRequirement('detect_unicode', false); - - if (extension_loaded('suhosin')) { - $this->addPhpIniRequirement( - 'suhosin.executor.include.whitelist', - create_function('$cfgValue', 'return false !== stripos($cfgValue, "phar");'), - false, - 'suhosin.executor.include.whitelist must be configured correctly in php.ini', - 'Add "phar" to suhosin.executor.include.whitelist in php.ini*.' - ); - } - - if (extension_loaded('xdebug')) { - $this->addPhpIniRequirement( - 'xdebug.show_exception_trace', false, true - ); - - $this->addPhpIniRequirement( - 'xdebug.scream', false, true - ); - - $this->addPhpIniRecommendation( - 'xdebug.max_nesting_level', - create_function('$cfgValue', 'return $cfgValue > 100;'), - true, - 'xdebug.max_nesting_level should be above 100 in php.ini', - 'Set "xdebug.max_nesting_level" to e.g. "250" in php.ini* to stop Xdebug\'s infinite recursion protection erroneously throwing a fatal error in your project.' - ); - } - - $pcreVersion = defined('PCRE_VERSION') ? (float) PCRE_VERSION : null; - - $this->addRequirement( - null !== $pcreVersion, - 'PCRE extension must be available', - 'Install the PCRE extension (version 8.0+).' - ); - - if (extension_loaded('mbstring')) { - $this->addPhpIniRequirement( - 'mbstring.func_overload', - create_function('$cfgValue', 'return (int) $cfgValue === 0;'), - true, - 'string functions should not be overloaded', - 'Set "mbstring.func_overload" to 0 in php.ini* to disable function overloading by the mbstring extension.' - ); - } - - /* optional recommendations follow */ - - if (file_exists(__DIR__.'/../vendor/composer')) { - require_once __DIR__.'/../vendor/autoload.php'; - - try { - $r = new ReflectionClass('Sensio\Bundle\DistributionBundle\SensioDistributionBundle'); - - $contents = file_get_contents(dirname($r->getFileName()).'/Resources/skeleton/app/SymfonyRequirements.php'); - } catch (ReflectionException $e) { - $contents = ''; - } - $this->addRecommendation( - file_get_contents(__FILE__) === $contents, - 'Requirements file should be up-to-date', - 'Your requirements file is outdated. Run composer install and re-check your configuration.' - ); - } - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.3.4', '>='), - 'You should use at least PHP 5.3.4 due to PHP bug #52083 in earlier versions', - 'Your project might malfunction randomly due to PHP bug #52083 ("Notice: Trying to get property of non-object"). Install PHP 5.3.4 or newer.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.3.8', '>='), - 'When using annotations you should have at least PHP 5.3.8 due to PHP bug #55156', - 'Install PHP 5.3.8 or newer if your project uses annotations.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.4.0', '!='), - 'You should not use PHP 5.4.0 due to the PHP bug #61453', - 'Your project might not work properly due to the PHP bug #61453 ("Cannot dump definitions which have method calls"). Install PHP 5.4.1 or newer.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.4.11', '>='), - 'When using the logout handler from the Symfony Security Component, you should have at least PHP 5.4.11 due to PHP bug #63379 (as a workaround, you can also set invalidate_session to false in the security logout handler configuration)', - 'Install PHP 5.4.11 or newer if your project uses the logout handler from the Symfony Security Component.' - ); - - $this->addRecommendation( - (version_compare($installedPhpVersion, '5.3.18', '>=') && version_compare($installedPhpVersion, '5.4.0', '<')) - || - version_compare($installedPhpVersion, '5.4.8', '>='), - 'You should use PHP 5.3.18+ or PHP 5.4.8+ to always get nice error messages for fatal errors in the development environment due to PHP bug #61767/#60909', - 'Install PHP 5.3.18+ or PHP 5.4.8+ if you want nice error messages for all fatal errors in the development environment.' - ); - - if (null !== $pcreVersion) { - $this->addRecommendation( - $pcreVersion >= 8.0, - sprintf('PCRE extension should be at least version 8.0 (%s installed)', $pcreVersion), - 'PCRE 8.0+ is preconfigured in PHP since 5.3.2 but you are using an outdated version of it. Symfony probably works anyway but it is recommended to upgrade your PCRE extension.' - ); - } - - $this->addRecommendation( - class_exists('DomDocument'), - 'PHP-DOM and PHP-XML modules should be installed', - 'Install and enable the PHP-DOM and the PHP-XML modules.' - ); - - $this->addRecommendation( - function_exists('mb_strlen'), - 'mb_strlen() should be available', - 'Install and enable the mbstring extension.' - ); - - $this->addRecommendation( - function_exists('utf8_decode'), - 'utf8_decode() should be available', - 'Install and enable the XML extension.' - ); - - $this->addRecommendation( - function_exists('filter_var'), - 'filter_var() should be available', - 'Install and enable the filter extension.' - ); - - if (!defined('PHP_WINDOWS_VERSION_BUILD')) { - $this->addRecommendation( - function_exists('posix_isatty'), - 'posix_isatty() should be available', - 'Install and enable the php_posix extension (used to colorize the CLI output).' - ); - } - - $this->addRecommendation( - extension_loaded('intl'), - 'intl extension should be available', - 'Install and enable the intl extension (used for validators).' - ); - - if (extension_loaded('intl')) { - // in some WAMP server installations, new Collator() returns null - $this->addRecommendation( - null !== new Collator('fr_FR'), - 'intl extension should be correctly configured', - 'The intl extension does not behave properly. This problem is typical on PHP 5.3.X x64 WIN builds.' - ); - - // check for compatible ICU versions (only done when you have the intl extension) - if (defined('INTL_ICU_VERSION')) { - $version = INTL_ICU_VERSION; - } else { - $reflector = new ReflectionExtension('intl'); - - ob_start(); - $reflector->info(); - $output = strip_tags(ob_get_clean()); - - preg_match('/^ICU version +(?:=> )?(.*)$/m', $output, $matches); - $version = $matches[1]; - } - - $this->addRecommendation( - version_compare($version, '4.0', '>='), - 'intl ICU version should be at least 4+', - 'Upgrade your intl extension with a newer ICU version (4+).' - ); - - if (class_exists('Symfony\Component\Intl\Intl')) { - $this->addRecommendation( - \Symfony\Component\Intl\Intl::getIcuDataVersion() <= \Symfony\Component\Intl\Intl::getIcuVersion(), - sprintf('intl ICU version installed on your system is outdated (%s) and does not match the ICU data bundled with Symfony (%s)', \Symfony\Component\Intl\Intl::getIcuVersion(), \Symfony\Component\Intl\Intl::getIcuDataVersion()), - 'To get the latest internationalization data upgrade the ICU system package and the intl PHP extension.' - ); - if (\Symfony\Component\Intl\Intl::getIcuDataVersion() <= \Symfony\Component\Intl\Intl::getIcuVersion()) { - $this->addRecommendation( - \Symfony\Component\Intl\Intl::getIcuDataVersion() === \Symfony\Component\Intl\Intl::getIcuVersion(), - sprintf('intl ICU version installed on your system (%s) does not match the ICU data bundled with Symfony (%s)', \Symfony\Component\Intl\Intl::getIcuVersion(), \Symfony\Component\Intl\Intl::getIcuDataVersion()), - 'To avoid internationalization data inconsistencies upgrade the symfony/intl component.' - ); - } - } - - $this->addPhpIniRecommendation( - 'intl.error_level', - create_function('$cfgValue', 'return (int) $cfgValue === 0;'), - true, - 'intl.error_level should be 0 in php.ini', - 'Set "intl.error_level" to "0" in php.ini* to inhibit the messages when an error occurs in ICU functions.' - ); - } - - $accelerator = - (extension_loaded('eaccelerator') && ini_get('eaccelerator.enable')) - || - (extension_loaded('apc') && ini_get('apc.enabled')) - || - (extension_loaded('Zend Optimizer+') && ini_get('zend_optimizerplus.enable')) - || - (extension_loaded('Zend OPcache') && ini_get('opcache.enable')) - || - (extension_loaded('xcache') && ini_get('xcache.cacher')) - || - (extension_loaded('wincache') && ini_get('wincache.ocenabled')) - ; - - $this->addRecommendation( - $accelerator, - 'a PHP accelerator should be installed', - 'Install and/or enable a PHP accelerator (highly recommended).' - ); - - if ('WIN' === strtoupper(substr(PHP_OS, 0, 3))) { - $this->addRecommendation( - $this->getRealpathCacheSize() >= 5 * 1024 * 1024, - 'realpath_cache_size should be at least 5M in php.ini', - 'Setting "realpath_cache_size" to e.g. "5242880" or "5M" in php.ini* may improve performance on Windows significantly in some cases.' - ); - } - - $this->addPhpIniRecommendation('short_open_tag', false); - - $this->addPhpIniRecommendation('magic_quotes_gpc', false, true); - - $this->addPhpIniRecommendation('register_globals', false, true); - - $this->addPhpIniRecommendation('session.auto_start', false); - - $this->addRecommendation( - class_exists('PDO'), - 'PDO should be installed', - 'Install PDO (mandatory for Doctrine).' - ); - - if (class_exists('PDO')) { - $drivers = PDO::getAvailableDrivers(); - $this->addRecommendation( - count($drivers) > 0, - sprintf('PDO should have some drivers installed (currently available: %s)', count($drivers) ? implode(', ', $drivers) : 'none'), - 'Install PDO drivers (mandatory for Doctrine).' - ); - } - } - - /** - * Loads realpath_cache_size from php.ini and converts it to int. - * - * (e.g. 16k is converted to 16384 int) - * - * @return int - */ - protected function getRealpathCacheSize() - { - $size = ini_get('realpath_cache_size'); - $size = trim($size); - $unit = ''; - if (!ctype_digit($size)) { - $unit = strtolower(substr($size, -1, 1)); - $size = (int) substr($size, 0, -1); - } - switch ($unit) { - case 'g': - return $size * 1024 * 1024 * 1024; - case 'm': - return $size * 1024 * 1024; - case 'k': - return $size * 1024; - default: - return (int) $size; - } - } - - /** - * Defines PHP required version from Symfony version. - * - * @return string|false The PHP required version or false if it could not be guessed - */ - protected function getPhpRequiredVersion() - { - if (!file_exists($path = __DIR__.'/../composer.lock')) { - return false; - } - - $composerLock = json_decode(file_get_contents($path), true); - foreach ($composerLock['packages'] as $package) { - $name = $package['name']; - if ('symfony/symfony' !== $name && 'symfony/http-kernel' !== $name) { - continue; - } - - return (int) $package['version'][1] > 2 ? self::REQUIRED_PHP_VERSION : self::LEGACY_REQUIRED_PHP_VERSION; - } - - return false; - } -} From 75604ffbfaf798fd452e2d4ced021abd593bd85e Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:27:35 +0200 Subject: [PATCH 04/11] Fix more deprecations --- app/config/config.yml | 3 +-- app/config/security.yml | 1 - composer.json | 7 +------ src/AppBundle/Command/SendPullRequestReportCommand.php | 4 ++++ src/AppBundle/Twig/Extension/AppExtension.php | 10 ++-------- 5 files changed, 8 insertions(+), 17 deletions(-) diff --git a/app/config/config.yml b/app/config/config.yml index 305d7ac..98ea3c0 100644 --- a/app/config/config.yml +++ b/app/config/config.yml @@ -21,8 +21,6 @@ framework: csrf_protection: false validation: { enable_annotations: true } #serializer: { enable_annotations: true } - templating: - engines: ['twig'] default_locale: "%locale%" trusted_hosts: ~ session: @@ -41,6 +39,7 @@ framework: twig: debug: "%kernel.debug%" strict_variables: "%kernel.debug%" + exception_controller: null # Swiftmailer Configuration swiftmailer: diff --git a/app/config/security.yml b/app/config/security.yml index a7b8c37..a187595 100644 --- a/app/config/security.yml +++ b/app/config/security.yml @@ -11,4 +11,3 @@ security: main: anonymous: ~ - logout_on_user_change: true diff --git a/composer.json b/composer.json index 734c09b..d6a79bf 100644 --- a/composer.json +++ b/composer.json @@ -60,12 +60,7 @@ "phpstan": "@php ./vendor/bin/phpstan analyse src tests -c phpstan.neon -l 1", "cs-fix": "@php ./vendor/bin/php-cs-fixer fix", "symfony-scripts": [ - "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters", - "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", - "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", - "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", - "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile", - "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget" + "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters" ], "post-install-cmd": [ "@symfony-scripts" diff --git a/src/AppBundle/Command/SendPullRequestReportCommand.php b/src/AppBundle/Command/SendPullRequestReportCommand.php index fbcaa62..cd8b34c 100644 --- a/src/AppBundle/Command/SendPullRequestReportCommand.php +++ b/src/AppBundle/Command/SendPullRequestReportCommand.php @@ -94,9 +94,13 @@ protected function execute(InputInterface $input, OutputInterface $output) } } catch (\Exception $e) { $io->error($e->getMessage()); + + return 1; } $io->success($nbMails.' mails successfuly sent !'); + + return 0; } /** diff --git a/src/AppBundle/Twig/Extension/AppExtension.php b/src/AppBundle/Twig/Extension/AppExtension.php index 67c981e..c904968 100644 --- a/src/AppBundle/Twig/Extension/AppExtension.php +++ b/src/AppBundle/Twig/Extension/AppExtension.php @@ -4,19 +4,13 @@ use Twig\Environment; use Twig\Extension\AbstractExtension; -use Twig\TwigFilter; -use Twig\TwigFunction; class AppExtension extends AbstractExtension { public function __construct(Environment $environment) { - $environment->registerUndefinedFunctionCallback(function ($name) { - return new TwigFunction($name, [$this, 'doNothing']); - }); - $environment->registerUndefinedFilterCallback(function ($name) { - return new TwigFilter($name, [$this, 'doNothing']); - }); + $environment->registerUndefinedFunctionCallback(function () {}); + $environment->registerUndefinedFilterCallback(function () {}); } public function doNothing() From e67fa5cb5dda62e3824301a4ac99e8f2452a3f56 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:30:27 +0200 Subject: [PATCH 05/11] Move templates into appropriate folder --- {app/Resources/views => templates}/base.html.twig | 0 {app/Resources/views => templates}/default/homepage.html.twig | 0 {app/Resources/views => templates}/macros.html.twig | 0 .../views => templates}/mail/pr_sumup_for_mail.html.twig | 0 .../views => templates}/markdown/pr_missing_milestone.md.twig | 0 .../Resources/views => templates}/markdown/pr_need_rebase.md.twig | 0 .../views => templates}/markdown/pr_table_errors.md.twig | 0 {app/Resources/views => templates}/markdown/pr_tests_nok.md.twig | 0 {app/Resources/views => templates}/markdown/welcome.md.twig | 0 {app/Resources/views => templates}/markdown/wordings.md.twig | 0 10 files changed, 0 insertions(+), 0 deletions(-) rename {app/Resources/views => templates}/base.html.twig (100%) rename {app/Resources/views => templates}/default/homepage.html.twig (100%) rename {app/Resources/views => templates}/macros.html.twig (100%) rename {app/Resources/views => templates}/mail/pr_sumup_for_mail.html.twig (100%) rename {app/Resources/views => templates}/markdown/pr_missing_milestone.md.twig (100%) rename {app/Resources/views => templates}/markdown/pr_need_rebase.md.twig (100%) rename {app/Resources/views => templates}/markdown/pr_table_errors.md.twig (100%) rename {app/Resources/views => templates}/markdown/pr_tests_nok.md.twig (100%) rename {app/Resources/views => templates}/markdown/welcome.md.twig (100%) rename {app/Resources/views => templates}/markdown/wordings.md.twig (100%) diff --git a/app/Resources/views/base.html.twig b/templates/base.html.twig similarity index 100% rename from app/Resources/views/base.html.twig rename to templates/base.html.twig diff --git a/app/Resources/views/default/homepage.html.twig b/templates/default/homepage.html.twig similarity index 100% rename from app/Resources/views/default/homepage.html.twig rename to templates/default/homepage.html.twig diff --git a/app/Resources/views/macros.html.twig b/templates/macros.html.twig similarity index 100% rename from app/Resources/views/macros.html.twig rename to templates/macros.html.twig diff --git a/app/Resources/views/mail/pr_sumup_for_mail.html.twig b/templates/mail/pr_sumup_for_mail.html.twig similarity index 100% rename from app/Resources/views/mail/pr_sumup_for_mail.html.twig rename to templates/mail/pr_sumup_for_mail.html.twig diff --git a/app/Resources/views/markdown/pr_missing_milestone.md.twig b/templates/markdown/pr_missing_milestone.md.twig similarity index 100% rename from app/Resources/views/markdown/pr_missing_milestone.md.twig rename to templates/markdown/pr_missing_milestone.md.twig diff --git a/app/Resources/views/markdown/pr_need_rebase.md.twig b/templates/markdown/pr_need_rebase.md.twig similarity index 100% rename from app/Resources/views/markdown/pr_need_rebase.md.twig rename to templates/markdown/pr_need_rebase.md.twig diff --git a/app/Resources/views/markdown/pr_table_errors.md.twig b/templates/markdown/pr_table_errors.md.twig similarity index 100% rename from app/Resources/views/markdown/pr_table_errors.md.twig rename to templates/markdown/pr_table_errors.md.twig diff --git a/app/Resources/views/markdown/pr_tests_nok.md.twig b/templates/markdown/pr_tests_nok.md.twig similarity index 100% rename from app/Resources/views/markdown/pr_tests_nok.md.twig rename to templates/markdown/pr_tests_nok.md.twig diff --git a/app/Resources/views/markdown/welcome.md.twig b/templates/markdown/welcome.md.twig similarity index 100% rename from app/Resources/views/markdown/welcome.md.twig rename to templates/markdown/welcome.md.twig diff --git a/app/Resources/views/markdown/wordings.md.twig b/templates/markdown/wordings.md.twig similarity index 100% rename from app/Resources/views/markdown/wordings.md.twig rename to templates/markdown/wordings.md.twig From 718ac077f736753ee3ed145f11309bd098b1ab16 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:36:06 +0200 Subject: [PATCH 06/11] Replace usage of sension extra bundle that can now be removed --- app/AppKernel.php | 1 - composer.json | 1 - composer.lock | 85 ++----------------- src/AppBundle/Controller/HomeController.php | 2 +- .../Controller/VersionNumberController.php | 2 +- .../Controller/WebhookController.php | 6 +- 6 files changed, 9 insertions(+), 88 deletions(-) diff --git a/app/AppKernel.php b/app/AppKernel.php index 4784111..81ff152 100644 --- a/app/AppKernel.php +++ b/app/AppKernel.php @@ -15,7 +15,6 @@ public function registerBundles() new Symfony\Bundle\TwigBundle\TwigBundle(), new Symfony\Bundle\MonologBundle\MonologBundle(), new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(), - new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(), new PrestaShop\TranslationToolsBundle\TranslationToolsBundle(), new AppBundle\AppBundle(), ]; diff --git a/composer.json b/composer.json index d6a79bf..923e7a1 100644 --- a/composer.json +++ b/composer.json @@ -37,7 +37,6 @@ "symfony/swiftmailer-bundle": "^3.2", "symfony/monolog-bundle": "^3.2", "symfony/polyfill-apcu": "^1.0", - "sensio/framework-extra-bundle": "^6.2", "incenteev/composer-parameter-handler": "^2.0", "knplabs/github-api": "^2.0", "php-http/guzzle6-adapter": "^1.0", diff --git a/composer.lock b/composer.lock index 9ae96f7..2eecfb6 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "86c947a4d4e5551fddbdcbe40c22c6c5", + "content-hash": "739cbfd3d32b388cfc88d24f844d43f3", "packages": [ { "name": "clue/stream-filter", @@ -2205,84 +2205,6 @@ }, "time": "2019-03-08T08:55:37+00:00" }, - { - "name": "sensio/framework-extra-bundle", - "version": "v6.2.10", - "source": { - "type": "git", - "url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git", - "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/2f886f4b31f23c76496901acaedfedb6936ba61f", - "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f", - "shasum": "" - }, - "require": { - "doctrine/annotations": "^1.0|^2.0", - "php": ">=7.2.5", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/framework-bundle": "^4.4|^5.0|^6.0", - "symfony/http-kernel": "^4.4|^5.0|^6.0" - }, - "conflict": { - "doctrine/doctrine-cache-bundle": "<1.3.1", - "doctrine/persistence": "<1.3" - }, - "require-dev": { - "doctrine/dbal": "^2.10|^3.0", - "doctrine/doctrine-bundle": "^1.11|^2.0", - "doctrine/orm": "^2.5", - "symfony/browser-kit": "^4.4|^5.0|^6.0", - "symfony/doctrine-bridge": "^4.4|^5.0|^6.0", - "symfony/dom-crawler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/finder": "^4.4|^5.0|^6.0", - "symfony/monolog-bridge": "^4.0|^5.0|^6.0", - "symfony/monolog-bundle": "^3.2", - "symfony/phpunit-bridge": "^4.4.9|^5.0.9|^6.0", - "symfony/security-bundle": "^4.4|^5.0|^6.0", - "symfony/twig-bundle": "^4.4|^5.0|^6.0", - "symfony/yaml": "^4.4|^5.0|^6.0", - "twig/twig": "^1.34|^2.4|^3.0" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "6.1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Sensio\\Bundle\\FrameworkExtraBundle\\": "src/" - }, - "exclude-from-classmap": [ - "/tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "This bundle provides a way to configure your controllers with annotations", - "keywords": [ - "annotations", - "controllers" - ], - "support": { - "source": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/tree/v6.2.10" - }, - "abandoned": "Symfony", - "time": "2023-02-24T14:57:12+00:00" - }, { "name": "smarty/smarty", "version": "v3.1.48", @@ -4171,9 +4093,12 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=7.1", + "php": ">=7.4", "ext-mbstring": "*" }, "platform-dev": [], + "platform-overrides": { + "php": "7.4.0" + }, "plugin-api-version": "2.3.0" } diff --git a/src/AppBundle/Controller/HomeController.php b/src/AppBundle/Controller/HomeController.php index e8de429..96966d4 100644 --- a/src/AppBundle/Controller/HomeController.php +++ b/src/AppBundle/Controller/HomeController.php @@ -3,8 +3,8 @@ namespace AppBundle\Controller; use AppBundle\Issues\StatusApi; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; +use Symfony\Component\Routing\Annotation\Route; class HomeController extends AbstractController { diff --git a/src/AppBundle/Controller/VersionNumberController.php b/src/AppBundle/Controller/VersionNumberController.php index 4a5eaae..fa45fe4 100644 --- a/src/AppBundle/Controller/VersionNumberController.php +++ b/src/AppBundle/Controller/VersionNumberController.php @@ -2,8 +2,8 @@ namespace AppBundle\Controller; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Component\HttpFoundation\JsonResponse; +use Symfony\Component\Routing\Annotation\Route; class VersionNumberController { diff --git a/src/AppBundle/Controller/WebhookController.php b/src/AppBundle/Controller/WebhookController.php index 486d78b..a7b9ffd 100644 --- a/src/AppBundle/Controller/WebhookController.php +++ b/src/AppBundle/Controller/WebhookController.php @@ -4,17 +4,15 @@ use AppBundle\Event\GitHubEvent; use Psr\Log\LoggerInterface; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\JsonResponse; +use Symfony\Component\Routing\Annotation\Route; use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; class WebhookController extends AbstractController { /** - * @Route("/webhooks/github", name="webhooks_github") - * @Method("POST") + * @Route("/webhooks/github", name="webhooks_github", methods={"POST"}) */ public function githubAction(?GitHubEvent $event, LoggerInterface $logger, EventDispatcherInterface $eventDispatcher): JsonResponse { From ac1d7b0358add169355c1205aaa22035fb215ed5 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:46:44 +0200 Subject: [PATCH 07/11] Rewrite factory service definitions with new syntax --- app/config/services.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/config/services.yml b/app/config/services.yml index 2589456..361a901 100644 --- a/app/config/services.yml +++ b/app/config/services.yml @@ -38,30 +38,30 @@ services: # GitHub API Github\Api\Issue: - factory: 'Github\Client:api' + factory: ['@Github\Client', 'api'] arguments: [issue] Github\Api\Issue\Comments: - factory: 'Github\Api\Issue:comments' + factory: ['@Github\Api\Issue', 'comments'] Github\Api\PullRequest: - factory: 'Github\Client:api' + factory: ['@Github\Client', 'api'] arguments: [pull_request] Github\Api\Repo: - factory: 'Github\Client:api' + factory: ['@Github\Client', 'api'] arguments: [repository] Github\Api\Organization: - factory: 'Github\Client:api' + factory: ['@Github\Client', 'api'] arguments: [organization] Github\Api\Search: - factory: 'Github\Client:api' + factory: ['@Github\Client', 'api'] arguments: [search] Github\Api\Issue\Labels: - factory: 'Github\Api\Issue:labels' + factory: ['@Github\Api\Issue', 'labels'] Github\Api\Repository\Contents: - factory: 'Github\Api\Repo:contents' + factory: ['@Github\Api\Repo', 'contents'] From 9f57815bdb0be705c9e9397b9b6308bf39217cc4 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 13:50:22 +0200 Subject: [PATCH 08/11] Fix Twig Ci --- .github/workflows/php.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/php.yml b/.github/workflows/php.yml index 573df25..b92ada7 100644 --- a/.github/workflows/php.yml +++ b/.github/workflows/php.yml @@ -45,7 +45,7 @@ jobs: run: ./vendor/bin/php-cs-fixer fix --config=.php_cs -v --dry-run - name: Lint TWIG - run: ./bin/console lint:twig app/Resources + run: ./bin/console lint:twig templates - name: Lint YAML run: ./bin/console lint:yaml app/config From 8dacae79a14d3aec24a3d6a035078360a3580cc9 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 14:08:31 +0200 Subject: [PATCH 09/11] Bump PHP version in Docker file --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 5b7b38a..ae0ae77 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM php:7.1-fpm-alpine +FROM php:7.4-fpm-alpine RUN apk add --no-cache --virtual .persistent-deps \ git \ From b09f936b991b9cea0370cb9ee142bc2c966c6902 Mon Sep 17 00:00:00 2001 From: Jonathan Lelievre Date: Mon, 3 Jul 2023 14:17:22 +0200 Subject: [PATCH 10/11] Use PHP 7.4 for prod docker --- Dockerfile.prod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile.prod b/Dockerfile.prod index 12b071c..dc59e92 100644 --- a/Dockerfile.prod +++ b/Dockerfile.prod @@ -1,4 +1,4 @@ -FROM php:7.3-apache +FROM php:7.4-apache ARG GH_SECURED_TOKEN ENV GH_SECURED_TOKEN $GH_SECURED_TOKEN From 2e3b2b6bcd70c86783a61655f0157a8cb543669d Mon Sep 17 00:00:00 2001 From: Joseph Morin <109518167+JMorinPS@users.noreply.github.com> Date: Mon, 3 Jul 2023 15:14:58 +0200 Subject: [PATCH 11/11] Update .dockerignore Removed old entry on .dockerignore --- .dockerignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.dockerignore b/.dockerignore index 91fdf69..ce954d4 100644 --- a/.dockerignore +++ b/.dockerignore @@ -27,6 +27,5 @@ docker-compose.override.yml docker-compose.yml docker/db/data/ vendor/ -web/index.php web/bundles/ terraform/