From f77846b6764e546e961c7f081652751e186b8aaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Jaussoin?= Date: Wed, 16 Sep 2020 12:28:48 +0200 Subject: [PATCH] Update from Laravel 6 to Laravel 8 Fix the related tests Add the Belledonne Communications copyright --- flexiapi/app/Account.php | 6 +- flexiapi/app/Admin.php | 20 + flexiapi/app/Alias.php | 17 + .../Console/Commands/ClearExpiredNonces.php | 23 +- .../Commands/RemoveUnconfirmedAccounts.php | 38 +- .../app/Console/Commands/SetAccountAdmin.php | 38 +- flexiapi/app/Device.php | 2 +- flexiapi/app/DigestNonce.php | 2 +- flexiapi/app/EmailChanged.php | 17 + flexiapi/app/Exceptions/Handler.php | 29 +- flexiapi/app/Helpers/Utils.php | 2 +- .../Account/AuthenticateController.php | 17 + .../Controllers/Account/DeviceController.php | 17 + .../Controllers/Account/EmailController.php | 17 + .../Account/PasswordController.php | 17 + .../Account/RegisterController.php | 17 + .../Http/Controllers/AccountController.php | 17 + .../Controllers/Admin/AccountController.php | 17 + .../app/Http/Controllers/AdminController.php | 10 - .../Controllers/Api/AccountController.php | 17 + .../Http/Controllers/Api/ApiController.php | 17 + .../Http/Controllers/Api/DeviceController.php | 2 +- .../Http/Controllers/Api/PingController.php | 17 + flexiapi/app/Http/Kernel.php | 2 +- .../Http/Middleware/AuthenticateDigest.php | 2 +- flexiapi/app/Libraries/FlexisipConnector.php | 2 +- flexiapi/app/Libraries/OvhSMS.php | 2 +- flexiapi/app/Mail/ChangedEmail.php | 17 + flexiapi/app/Mail/ChangingEmail.php | 17 + flexiapi/app/Mail/ConfirmedRegistration.php | 17 + flexiapi/app/Mail/NewsletterRegistration.php | 17 + flexiapi/app/Mail/PasswordAuthentication.php | 17 + flexiapi/app/Mail/RegisterConfirmation.php | 17 + flexiapi/app/Password.php | 5 +- flexiapi/app/Rules/SIP.php | 17 + flexiapi/app/Rules/WithoutSpaces.php | 17 + flexiapi/app/User.php | 4 +- flexiapi/composer.json | 10 +- flexiapi/composer.lock | 2210 +++++++++++------ flexiapi/config/database.php | 2 +- flexiapi/config/session.php | 2 +- .../database/factories/AccountFactory.php | 35 +- flexiapi/database/factories/AdminFactory.php | 26 +- .../database/factories/PasswordFactory.php | 68 +- flexiapi/database/factories/UserFactory.php | 31 +- ..._08_19_000000_create_failed_jobs_table.php | 17 + ...25119_create_accounts_passwords_tables.php | 2 +- ...1_28_100553_create_nonces_digest_table.php | 2 +- .../2020_04_29_131330_create_admins_table.php | 17 + ...0_09_14_120448_add_email_changed_table.php | 17 + flexiapi/phpunit.xml | 65 +- flexiapi/routes/api.php | 2 +- flexiapi/routes/web.php | 2 +- flexiapi/tests/CreatesApplication.php | 5 - flexiapi/tests/Feature/AccountApiTest.php | 32 +- .../tests/Feature/AuthenticateDigestTest.php | 24 +- flexiapi/tests/TestCase.php | 17 + src/api/account/create.php | 2 +- src/api/account/delete.php | 2 +- src/api/account/get.php | 2 +- src/api/account/list.php | 2 +- src/api/account/update.php | 2 +- src/config/config.php | 2 +- src/database/database.php | 2 +- src/misc/email.php | 2 +- src/misc/geoloc.php | 2 +- src/misc/logging.php | 2 +- src/misc/results_values.php | 2 +- src/misc/sms.php | 2 +- src/misc/utilities.php | 3 +- src/objects/account.php | 2 +- src/objects/alias.php | 2 +- src/objects/device.php | 2 +- src/objects/password.php | 2 +- src/objects/sms.php | 2 +- src/objects/user_info.php | 2 +- src/tools/create_tables.php | 2 +- src/tools/drop_tables.php | 2 +- src/tools/migrate_accounts.php | 2 +- src/xmlrpc/accounts.php | 2 +- src/xmlrpc/accounts_email.php | 2 +- src/xmlrpc/accounts_phone.php | 2 +- src/xmlrpc/activation.php | 2 +- src/xmlrpc/aliases.php | 2 +- src/xmlrpc/authentication.php | 2 +- src/xmlrpc/devices.php | 2 +- src/xmlrpc/inapp.php | 2 +- src/xmlrpc/liblinphone_tester.php | 2 +- src/xmlrpc/passwords.php | 2 +- src/xmlrpc/provisioning.php | 6 +- src/xmlrpc/user_info.php | 2 +- src/xmlrpc/xmlrpc.php | 2 +- 92 files changed, 2184 insertions(+), 1006 deletions(-) delete mode 100644 flexiapi/app/Http/Controllers/AdminController.php diff --git a/flexiapi/app/Account.php b/flexiapi/app/Account.php index 386d5af..29c071c 100644 --- a/flexiapi/app/Account.php +++ b/flexiapi/app/Account.php @@ -1,7 +1,7 @@ . +*/ namespace App; +use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Admin extends Model { + use HasFactory; + protected $connection = 'local'; protected $table = 'admins'; diff --git a/flexiapi/app/Alias.php b/flexiapi/app/Alias.php index f22cb27..f1ecadb 100644 --- a/flexiapi/app/Alias.php +++ b/flexiapi/app/Alias.php @@ -1,4 +1,21 @@ . +*/ namespace App; diff --git a/flexiapi/app/Console/Commands/ClearExpiredNonces.php b/flexiapi/app/Console/Commands/ClearExpiredNonces.php index 46d0ea7..93638e0 100644 --- a/flexiapi/app/Console/Commands/ClearExpiredNonces.php +++ b/flexiapi/app/Console/Commands/ClearExpiredNonces.php @@ -1,7 +1,7 @@ . +*/ namespace App\Console\Commands; @@ -9,35 +26,14 @@ use App\Account; class RemoveUnconfirmedAccounts extends Command { - /** - * The name and signature of the console command. - * - * @var string - */ protected $signature = 'accounts:clear-unconfirmed {days} {--apply}'; - - /** - * The console command description. - * - * @var string - */ protected $description = 'Clear unconfirmed accounts after n days'; - /** - * Create a new command instance. - * - * @return void - */ public function __construct() { parent::__construct(); } - /** - * Execute the console command. - * - * @return mixed - */ public function handle() { $accounts = Account::where('activated', false)->where('creation_time', '<', diff --git a/flexiapi/app/Console/Commands/SetAccountAdmin.php b/flexiapi/app/Console/Commands/SetAccountAdmin.php index 91bdc84..54b7a5b 100644 --- a/flexiapi/app/Console/Commands/SetAccountAdmin.php +++ b/flexiapi/app/Console/Commands/SetAccountAdmin.php @@ -1,4 +1,21 @@ . +*/ namespace App\Console\Commands; @@ -9,35 +26,14 @@ use App\Admin; class SetAccountAdmin extends Command { - /** - * The name and signature of the console command. - * - * @var string - */ protected $signature = 'accounts:set-admin {id}'; - - /** - * The console command description. - * - * @var string - */ protected $description = 'Give the admin role to an account'; - /** - * Create a new command instance. - * - * @return void - */ public function __construct() { parent::__construct(); } - /** - * Execute the console command. - * - * @return mixed - */ public function handle() { $account = Account::where('id', $this->argument('id'))->first(); diff --git a/flexiapi/app/Device.php b/flexiapi/app/Device.php index 255646e..6cbd158 100644 --- a/flexiapi/app/Device.php +++ b/flexiapi/app/Device.php @@ -1,7 +1,7 @@ . +*/ namespace App; diff --git a/flexiapi/app/Exceptions/Handler.php b/flexiapi/app/Exceptions/Handler.php index 043cad6..49b5d1e 100644 --- a/flexiapi/app/Exceptions/Handler.php +++ b/flexiapi/app/Exceptions/Handler.php @@ -2,49 +2,26 @@ namespace App\Exceptions; -use Exception; +use Throwable; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; class Handler extends ExceptionHandler { - /** - * A list of the exception types that are not reported. - * - * @var array - */ protected $dontReport = [ // ]; - /** - * A list of the inputs that are never flashed for validation exceptions. - * - * @var array - */ protected $dontFlash = [ 'password', 'password_confirmation', ]; - /** - * Report or log an exception. - * - * @param \Exception $exception - * @return void - */ - public function report(Exception $exception) + public function report(Throwable $exception) { parent::report($exception); } - /** - * Render an exception into an HTTP response. - * - * @param \Illuminate\Http\Request $request - * @param \Exception $exception - * @return \Illuminate\Http\Response - */ - public function render($request, Exception $exception) + public function render($request, Throwable $exception) { return parent::render($request, $exception); } diff --git a/flexiapi/app/Helpers/Utils.php b/flexiapi/app/Helpers/Utils.php index 3523283..1881a2b 100644 --- a/flexiapi/app/Helpers/Utils.php +++ b/flexiapi/app/Helpers/Utils.php @@ -1,7 +1,7 @@ . +*/ namespace App\Http\Controllers\Account; diff --git a/flexiapi/app/Http/Controllers/Account/DeviceController.php b/flexiapi/app/Http/Controllers/Account/DeviceController.php index 5b7ec1e..2871f6f 100644 --- a/flexiapi/app/Http/Controllers/Account/DeviceController.php +++ b/flexiapi/app/Http/Controllers/Account/DeviceController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Account; diff --git a/flexiapi/app/Http/Controllers/Account/EmailController.php b/flexiapi/app/Http/Controllers/Account/EmailController.php index a7cb917..528f04d 100644 --- a/flexiapi/app/Http/Controllers/Account/EmailController.php +++ b/flexiapi/app/Http/Controllers/Account/EmailController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Account; diff --git a/flexiapi/app/Http/Controllers/Account/PasswordController.php b/flexiapi/app/Http/Controllers/Account/PasswordController.php index bd75ae9..bb0ea79 100644 --- a/flexiapi/app/Http/Controllers/Account/PasswordController.php +++ b/flexiapi/app/Http/Controllers/Account/PasswordController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Account; diff --git a/flexiapi/app/Http/Controllers/Account/RegisterController.php b/flexiapi/app/Http/Controllers/Account/RegisterController.php index 72a6c00..82e3e07 100644 --- a/flexiapi/app/Http/Controllers/Account/RegisterController.php +++ b/flexiapi/app/Http/Controllers/Account/RegisterController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Account; diff --git a/flexiapi/app/Http/Controllers/AccountController.php b/flexiapi/app/Http/Controllers/AccountController.php index 41014a4..eadee7c 100644 --- a/flexiapi/app/Http/Controllers/AccountController.php +++ b/flexiapi/app/Http/Controllers/AccountController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers; diff --git a/flexiapi/app/Http/Controllers/Admin/AccountController.php b/flexiapi/app/Http/Controllers/Admin/AccountController.php index 5f68fb7..583e34b 100644 --- a/flexiapi/app/Http/Controllers/Admin/AccountController.php +++ b/flexiapi/app/Http/Controllers/Admin/AccountController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Admin; diff --git a/flexiapi/app/Http/Controllers/AdminController.php b/flexiapi/app/Http/Controllers/AdminController.php deleted file mode 100644 index a9fd75a..0000000 --- a/flexiapi/app/Http/Controllers/AdminController.php +++ /dev/null @@ -1,10 +0,0 @@ -. +*/ namespace App\Http\Controllers\Api; diff --git a/flexiapi/app/Http/Controllers/Api/ApiController.php b/flexiapi/app/Http/Controllers/Api/ApiController.php index 6a6d173..8a5f5ff 100644 --- a/flexiapi/app/Http/Controllers/Api/ApiController.php +++ b/flexiapi/app/Http/Controllers/Api/ApiController.php @@ -1,4 +1,21 @@ . +*/ namespace App\Http\Controllers\Api; diff --git a/flexiapi/app/Http/Controllers/Api/DeviceController.php b/flexiapi/app/Http/Controllers/Api/DeviceController.php index 7833835..93c2a11 100644 --- a/flexiapi/app/Http/Controllers/Api/DeviceController.php +++ b/flexiapi/app/Http/Controllers/Api/DeviceController.php @@ -1,7 +1,7 @@ . +*/ namespace App\Http\Controllers\Api; diff --git a/flexiapi/app/Http/Kernel.php b/flexiapi/app/Http/Kernel.php index f850220..704b630 100644 --- a/flexiapi/app/Http/Kernel.php +++ b/flexiapi/app/Http/Kernel.php @@ -1,7 +1,7 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Mail/ChangingEmail.php b/flexiapi/app/Mail/ChangingEmail.php index 57e50c4..146610c 100644 --- a/flexiapi/app/Mail/ChangingEmail.php +++ b/flexiapi/app/Mail/ChangingEmail.php @@ -1,4 +1,21 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Mail/ConfirmedRegistration.php b/flexiapi/app/Mail/ConfirmedRegistration.php index 5a6423d..29abf20 100644 --- a/flexiapi/app/Mail/ConfirmedRegistration.php +++ b/flexiapi/app/Mail/ConfirmedRegistration.php @@ -1,4 +1,21 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Mail/NewsletterRegistration.php b/flexiapi/app/Mail/NewsletterRegistration.php index 8f6e548..6bb4fac 100644 --- a/flexiapi/app/Mail/NewsletterRegistration.php +++ b/flexiapi/app/Mail/NewsletterRegistration.php @@ -1,4 +1,21 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Mail/PasswordAuthentication.php b/flexiapi/app/Mail/PasswordAuthentication.php index 0079f0c..2c8431f 100644 --- a/flexiapi/app/Mail/PasswordAuthentication.php +++ b/flexiapi/app/Mail/PasswordAuthentication.php @@ -1,4 +1,21 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Mail/RegisterConfirmation.php b/flexiapi/app/Mail/RegisterConfirmation.php index 8bf8847..80d9410 100644 --- a/flexiapi/app/Mail/RegisterConfirmation.php +++ b/flexiapi/app/Mail/RegisterConfirmation.php @@ -1,4 +1,21 @@ . +*/ namespace App\Mail; diff --git a/flexiapi/app/Password.php b/flexiapi/app/Password.php index 33f010a..fc510dc 100644 --- a/flexiapi/app/Password.php +++ b/flexiapi/app/Password.php @@ -1,7 +1,7 @@ . +*/ namespace App\Rules; diff --git a/flexiapi/app/Rules/WithoutSpaces.php b/flexiapi/app/Rules/WithoutSpaces.php index 68e96cd..eefa472 100644 --- a/flexiapi/app/Rules/WithoutSpaces.php +++ b/flexiapi/app/Rules/WithoutSpaces.php @@ -1,4 +1,21 @@ . +*/ namespace App\Rules; diff --git a/flexiapi/app/User.php b/flexiapi/app/User.php index 951c90c..a46fe4c 100644 --- a/flexiapi/app/User.php +++ b/flexiapi/app/User.php @@ -1,7 +1,7 @@ =7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "time": "2019-01-08T18:20:26+00:00" + }, { "name": "psr/http-message", "version": "1.0.1", @@ -2116,54 +2290,132 @@ "time": "2019-03-08T08:55:37+00:00" }, { - "name": "ramsey/uuid", - "version": "3.9.3", + "name": "ramsey/collection", + "version": "1.1.1", "source": { "type": "git", - "url": "https://github.com/ramsey/uuid.git", - "reference": "7e1633a6964b48589b142d60542f9ed31bd37a92" + "url": "https://github.com/ramsey/collection.git", + "reference": "24d93aefb2cd786b7edd9f45b554aea20b28b9b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/7e1633a6964b48589b142d60542f9ed31bd37a92", - "reference": "7e1633a6964b48589b142d60542f9ed31bd37a92", + "url": "https://api.github.com/repos/ramsey/collection/zipball/24d93aefb2cd786b7edd9f45b554aea20b28b9b1", + "reference": "24d93aefb2cd786b7edd9f45b554aea20b28b9b1", "shasum": "" }, "require": { + "php": "^7.2 || ^8" + }, + "require-dev": { + "captainhook/captainhook": "^5.3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "ergebnis/composer-normalize": "^2.6", + "fzaninotto/faker": "^1.5", + "hamcrest/hamcrest-php": "^2", + "jangregor/phpstan-prophecy": "^0.6", + "mockery/mockery": "^1.3", + "phpstan/extension-installer": "^1", + "phpstan/phpstan": "^0.12.32", + "phpstan/phpstan-mockery": "^0.12.5", + "phpstan/phpstan-phpunit": "^0.12.11", + "phpunit/phpunit": "^8.5", + "psy/psysh": "^0.10.4", + "slevomat/coding-standard": "^6.3", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^3.12.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Ramsey\\Collection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ben Ramsey", + "email": "ben@benramsey.com", + "homepage": "https://benramsey.com" + } + ], + "description": "A PHP 7.2+ library for representing and manipulating collections.", + "keywords": [ + "array", + "collection", + "hash", + "map", + "queue", + "set" + ], + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + } + ], + "time": "2020-09-10T20:58:17+00:00" + }, + { + "name": "ramsey/uuid", + "version": "4.1.1", + "source": { + "type": "git", + "url": "https://github.com/ramsey/uuid.git", + "reference": "cd4032040a750077205918c86049aa0f43d22947" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd4032040a750077205918c86049aa0f43d22947", + "reference": "cd4032040a750077205918c86049aa0f43d22947", + "shasum": "" + }, + "require": { + "brick/math": "^0.8 || ^0.9", "ext-json": "*", - "paragonie/random_compat": "^1 | ^2 | 9.99.99", - "php": "^5.4 | ^7 | ^8", + "php": "^7.2 || ^8", + "ramsey/collection": "^1.0", "symfony/polyfill-ctype": "^1.8" }, "replace": { "rhumsaa/uuid": "self.version" }, "require-dev": { - "codeception/aspect-mock": "^1 | ^2", - "doctrine/annotations": "^1.2", - "goaop/framework": "1.0.0-alpha.2 | ^1 | ^2.1", - "jakub-onderka/php-parallel-lint": "^1", - "mockery/mockery": "^0.9.11 | ^1", + "codeception/aspect-mock": "^3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7.0", + "doctrine/annotations": "^1.8", + "goaop/framework": "^2", + "mockery/mockery": "^1.3", "moontoast/math": "^1.1", "paragonie/random-lib": "^2", - "php-mock/php-mock-phpunit": "^0.3 | ^1.1", - "phpunit/phpunit": "^4.8 | ^5.4 | ^6.5", - "squizlabs/php_codesniffer": "^3.5" + "php-mock/php-mock-mockery": "^1.3", + "php-mock/php-mock-phpunit": "^2.5", + "php-parallel-lint/php-parallel-lint": "^1.1", + "phpbench/phpbench": "^0.17.1", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-mockery": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^8.5", + "psy/psysh": "^0.10.0", + "slevomat/coding-standard": "^6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "3.9.4" }, "suggest": { - "ext-ctype": "Provides support for PHP Ctype functions", - "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", - "ext-openssl": "Provides the OpenSSL extension for use with the OpenSslGenerator", - "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", - "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", + "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", + "ext-ctype": "Enables faster processing of character classification using ctype functions.", + "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", + "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", - "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.x-dev" + "dev-master": "4.x-dev" } }, "autoload": { @@ -2178,29 +2430,20 @@ "license": [ "MIT" ], - "authors": [ - { - "name": "Ben Ramsey", - "email": "ben@benramsey.com", - "homepage": "https://benramsey.com" - }, - { - "name": "Marijn Huizendveld", - "email": "marijn.huizendveld@gmail.com" - }, - { - "name": "Thibaud Fabre", - "email": "thibaud@aztech.io" - } - ], - "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", + "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", "homepage": "https://github.com/ramsey/uuid", "keywords": [ "guid", "identifier", "uuid" ], - "time": "2020-02-21T04:36:14+00:00" + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + } + ], + "time": "2020-08-18T17:17:46+00:00" }, { "name": "swiftmailer/swiftmailer", @@ -2266,42 +2509,44 @@ }, { "name": "symfony/console", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "b39fd99b9297b67fb7633b7d8083957a97e1e727" + "reference": "186f395b256065ba9b890c0a4e48a91d598fa2cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/b39fd99b9297b67fb7633b7d8083957a97e1e727", - "reference": "b39fd99b9297b67fb7633b7d8083957a97e1e727", + "url": "https://api.github.com/repos/symfony/console/zipball/186f395b256065ba9b890c0a4e48a91d598fa2cf", + "reference": "186f395b256065ba9b890c0a4e48a91d598fa2cf", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php73": "^1.8", "symfony/polyfill-php80": "^1.15", - "symfony/service-contracts": "^1.1|^2" + "symfony/service-contracts": "^1.1|^2", + "symfony/string": "^5.1" }, "conflict": { - "symfony/dependency-injection": "<3.4", - "symfony/event-dispatcher": "<4.3|>=5", + "symfony/dependency-injection": "<4.4", + "symfony/dotenv": "<5.1", + "symfony/event-dispatcher": "<4.4", "symfony/lock": "<4.4", - "symfony/process": "<3.3" + "symfony/process": "<4.4" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/event-dispatcher": "^4.3", + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/event-dispatcher": "^4.4|^5.0", "symfony/lock": "^4.4|^5.0", - "symfony/process": "^3.4|^4.0|^5.0", - "symfony/var-dumper": "^4.3|^5.0" + "symfony/process": "^4.4|^5.0", + "symfony/var-dumper": "^4.4|^5.0" }, "suggest": { "psr/log": "For using the console logger", @@ -2312,7 +2557,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2353,7 +2598,7 @@ "type": "tidelift" } ], - "time": "2020-09-02T07:07:21+00:00" + "time": "2020-09-02T07:07:40+00:00" }, { "name": "symfony/css-selector", @@ -2423,42 +2668,35 @@ "time": "2020-05-20T17:43:50+00:00" }, { - "name": "symfony/debug", - "version": "v4.4.13", + "name": "symfony/deprecation-contracts", + "version": "v2.2.0", "source": { "type": "git", - "url": "https://github.com/symfony/debug.git", - "reference": "aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e" + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e", - "reference": "aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665", "shasum": "" }, "require": { - "php": ">=7.1.3", - "psr/log": "~1.0", - "symfony/polyfill-php80": "^1.15" - }, - "conflict": { - "symfony/http-kernel": "<3.4" - }, - "require-dev": { - "symfony/http-kernel": "^3.4|^4.0|^5.0" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { - "psr-4": { - "Symfony\\Component\\Debug\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" + "files": [ + "function.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -2467,15 +2705,15 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Debug Component", + "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "funding": [ { @@ -2491,37 +2729,37 @@ "type": "tidelift" } ], - "time": "2020-08-10T07:47:39+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/error-handler", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "2434fb32851f252e4f27691eee0b77c16198db62" + "reference": "525636d4b84e06c6ca72d96b6856b5b169416e6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/2434fb32851f252e4f27691eee0b77c16198db62", - "reference": "2434fb32851f252e4f27691eee0b77c16198db62", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/525636d4b84e06c6ca72d96b6856b5b169416e6a", + "reference": "525636d4b84e06c6ca72d96b6856b5b169416e6a", "shasum": "" }, "require": { - "php": ">=7.1.3", - "psr/log": "~1.0", - "symfony/debug": "^4.4.5", + "php": ">=7.2.5", + "psr/log": "^1.0", "symfony/polyfill-php80": "^1.15", "symfony/var-dumper": "^4.4|^5.0" }, "require-dev": { + "symfony/deprecation-contracts": "^2.1", "symfony/http-kernel": "^4.4|^5.0", "symfony/serializer": "^4.4|^5.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2562,41 +2800,43 @@ "type": "tidelift" } ], - "time": "2020-08-17T09:56:45+00:00" + "time": "2020-08-17T10:01:29+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "3e8ea5ccddd00556b86d69d42f99f1061a704030" + "reference": "94871fc0a69c3c5da57764187724cdce0755899c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3e8ea5ccddd00556b86d69d42f99f1061a704030", - "reference": "3e8ea5ccddd00556b86d69d42f99f1061a704030", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/94871fc0a69c3c5da57764187724cdce0755899c", + "reference": "94871fc0a69c3c5da57764187724cdce0755899c", "shasum": "" }, "require": { - "php": ">=7.1.3", - "symfony/event-dispatcher-contracts": "^1.1" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/event-dispatcher-contracts": "^2", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/dependency-injection": "<3.4" + "symfony/dependency-injection": "<4.4" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "1.1" + "symfony/event-dispatcher-implementation": "2.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/expression-language": "^3.4|^4.0|^5.0", - "symfony/http-foundation": "^3.4|^4.0|^5.0", + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", "symfony/service-contracts": "^1.1|^2", - "symfony/stopwatch": "^3.4|^4.0|^5.0" + "symfony/stopwatch": "^4.4|^5.0" }, "suggest": { "symfony/dependency-injection": "", @@ -2605,7 +2845,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2646,33 +2886,33 @@ "type": "tidelift" } ], - "time": "2020-08-13T14:18:44+00:00" + "time": "2020-08-13T14:19:42+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v1.1.9", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7" + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/84e23fdcd2517bf37aecbd16967e83f0caee25a7", - "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2", + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5", + "psr/event-dispatcher": "^1" }, "suggest": { - "psr/event-dispatcher": "", "symfony/event-dispatcher-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -2722,29 +2962,29 @@ "type": "tidelift" } ], - "time": "2020-07-06T13:19:58+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/finder", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "2a78590b2c7e3de5c429628457c47541c58db9c7" + "reference": "2b765f0cf6612b3636e738c0689b29aa63088d5d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/2a78590b2c7e3de5c429628457c47541c58db9c7", - "reference": "2a78590b2c7e3de5c429628457c47541c58db9c7", + "url": "https://api.github.com/repos/symfony/finder/zipball/2b765f0cf6612b3636e738c0689b29aa63088d5d", + "reference": "2b765f0cf6612b3636e738c0689b29aa63088d5d", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2785,35 +3025,41 @@ "type": "tidelift" } ], - "time": "2020-08-17T09:56:45+00:00" + "time": "2020-08-17T10:01:29+00:00" }, { "name": "symfony/http-foundation", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "e3e5a62a6631a461954d471e7206e3750dbe8ee1" + "reference": "41a4647f12870e9d41d9a7d72ff0614a27208558" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e3e5a62a6631a461954d471e7206e3750dbe8ee1", - "reference": "e3e5a62a6631a461954d471e7206e3750dbe8ee1", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/41a4647f12870e9d41d9a7d72ff0614a27208558", + "reference": "41a4647f12870e9d41d9a7d72ff0614a27208558", "shasum": "" }, "require": { - "php": ">=7.1.3", - "symfony/mime": "^4.3|^5.0", - "symfony/polyfill-mbstring": "~1.1" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-mbstring": "~1.1", + "symfony/polyfill-php80": "^1.15" }, "require-dev": { "predis/predis": "~1.0", - "symfony/expression-language": "^3.4|^4.0|^5.0" + "symfony/cache": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/mime": "^4.4|^5.0" + }, + "suggest": { + "symfony/mime": "To use the file extension guesser" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2854,60 +3100,68 @@ "type": "tidelift" } ], - "time": "2020-08-17T07:39:58+00:00" + "time": "2020-08-17T07:48:54+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "2bb7b90ecdc79813c0bf237b7ff20e79062b5188" + "reference": "3e32676e6cb5d2081c91a56783471ff8a7f7110b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/2bb7b90ecdc79813c0bf237b7ff20e79062b5188", - "reference": "2bb7b90ecdc79813c0bf237b7ff20e79062b5188", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3e32676e6cb5d2081c91a56783471ff8a7f7110b", + "reference": "3e32676e6cb5d2081c91a56783471ff8a7f7110b", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "psr/log": "~1.0", - "symfony/error-handler": "^4.4", - "symfony/event-dispatcher": "^4.4", + "symfony/deprecation-contracts": "^2.1", + "symfony/error-handler": "^4.4|^5.0", + "symfony/event-dispatcher": "^5.0", "symfony/http-foundation": "^4.4|^5.0", "symfony/polyfill-ctype": "^1.8", "symfony/polyfill-php73": "^1.9", "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/browser-kit": "<4.3", - "symfony/config": "<3.4", - "symfony/console": ">=5", - "symfony/dependency-injection": "<4.3", - "symfony/translation": "<4.2", - "twig/twig": "<1.34|<2.4,>=2" + "symfony/browser-kit": "<4.4", + "symfony/cache": "<5.0", + "symfony/config": "<5.0", + "symfony/console": "<4.4", + "symfony/dependency-injection": "<4.4", + "symfony/doctrine-bridge": "<5.0", + "symfony/form": "<5.0", + "symfony/http-client": "<5.0", + "symfony/mailer": "<5.0", + "symfony/messenger": "<5.0", + "symfony/translation": "<5.0", + "symfony/twig-bridge": "<5.0", + "symfony/validator": "<5.0", + "twig/twig": "<2.4" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { "psr/cache": "~1.0", - "symfony/browser-kit": "^4.3|^5.0", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/console": "^3.4|^4.0", - "symfony/css-selector": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^4.3|^5.0", - "symfony/dom-crawler": "^3.4|^4.0|^5.0", - "symfony/expression-language": "^3.4|^4.0|^5.0", - "symfony/finder": "^3.4|^4.0|^5.0", - "symfony/process": "^3.4|^4.0|^5.0", - "symfony/routing": "^3.4|^4.0|^5.0", - "symfony/stopwatch": "^3.4|^4.0|^5.0", - "symfony/templating": "^3.4|^4.0|^5.0", - "symfony/translation": "^4.2|^5.0", + "symfony/browser-kit": "^4.4|^5.0", + "symfony/config": "^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/css-selector": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/dom-crawler": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "symfony/routing": "^4.4|^5.0", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", "symfony/translation-contracts": "^1.1|^2", - "twig/twig": "^1.34|^2.4|^3.0" + "twig/twig": "^2.4|^3.0" }, "suggest": { "symfony/browser-kit": "", @@ -2918,7 +3172,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2959,7 +3213,7 @@ "type": "tidelift" } ], - "time": "2020-09-02T08:09:29+00:00" + "time": "2020-09-02T08:15:18+00:00" }, { "name": "symfony/mime", @@ -3191,6 +3445,84 @@ ], "time": "2020-07-14T12:35:20+00:00" }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.18.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b740103edbdcc39602239ee8860f0f45a8eb9aa5", + "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.18-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "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 for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "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-07-14T12:35:20+00:00" + }, { "name": "symfony/polyfill-intl-idn", "version": "v1.18.1", @@ -3742,25 +4074,26 @@ }, { "name": "symfony/process", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "65e70bab62f3da7089a8d4591fb23fbacacb3479" + "reference": "1864216226af21eb76d9477f691e7cbf198e0402" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/65e70bab62f3da7089a8d4591fb23fbacacb3479", - "reference": "65e70bab62f3da7089a8d4591fb23fbacacb3479", + "url": "https://api.github.com/repos/symfony/process/zipball/1864216226af21eb76d9477f691e7cbf198e0402", + "reference": "1864216226af21eb76d9477f691e7cbf198e0402", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.15" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3801,38 +4134,40 @@ "type": "tidelift" } ], - "time": "2020-07-23T08:31:43+00:00" + "time": "2020-07-23T08:36:24+00:00" }, { "name": "symfony/routing", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "e3387963565da9bae51d1d3ab8041646cc93bd04" + "reference": "47b0218344cb6af25c93ca8ee1137fafbee5005d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/e3387963565da9bae51d1d3ab8041646cc93bd04", - "reference": "e3387963565da9bae51d1d3ab8041646cc93bd04", + "url": "https://api.github.com/repos/symfony/routing/zipball/47b0218344cb6af25c93ca8ee1137fafbee5005d", + "reference": "47b0218344cb6af25c93ca8ee1137fafbee5005d", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/config": "<4.2", - "symfony/dependency-injection": "<3.4", - "symfony/yaml": "<3.4" + "symfony/config": "<5.0", + "symfony/dependency-injection": "<4.4", + "symfony/yaml": "<4.4" }, "require-dev": { "doctrine/annotations": "~1.2", "psr/log": "~1.0", - "symfony/config": "^4.2|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/expression-language": "^3.4|^4.0|^5.0", - "symfony/http-foundation": "^3.4|^4.0|^5.0", - "symfony/yaml": "^3.4|^4.0|^5.0" + "symfony/config": "^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "doctrine/annotations": "For using the annotation loader", @@ -3844,7 +4179,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3891,7 +4226,7 @@ "type": "tidelift" } ], - "time": "2020-08-10T07:27:51+00:00" + "time": "2020-08-10T08:03:57+00:00" }, { "name": "symfony/service-contracts", @@ -3970,43 +4305,130 @@ "time": "2020-09-07T11:33:47+00:00" }, { - "name": "symfony/translation", - "version": "v4.4.13", + "name": "symfony/string", + "version": "v5.1.5", "source": { "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "700e6e50174b0cdcf0fa232773bec5c314680575" + "url": "https://github.com/symfony/string.git", + "reference": "0de4cc1e18bb596226c06a82e2e7e9bc6001a63a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/700e6e50174b0cdcf0fa232773bec5c314680575", - "reference": "700e6e50174b0cdcf0fa232773bec5c314680575", + "url": "https://api.github.com/repos/symfony/string/zipball/0de4cc1e18bb596226c06a82e2e7e9bc6001a63a", + "reference": "0de4cc1e18bb596226c06a82e2e7e9bc6001a63a", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^1.1.6|^2" + "symfony/polyfill-php80": "~1.15" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0", + "symfony/http-client": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "files": [ + "Resources/functions.php" + ], + "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": "Symfony String component", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "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-08-17T07:48:54+00:00" + }, + { + "name": "symfony/translation", + "version": "v5.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "917b02cdc5f33e0309b8e9d33ee1480b20687413" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/917b02cdc5f33e0309b8e9d33ee1480b20687413", + "reference": "917b02cdc5f33e0309b8e9d33ee1480b20687413", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "^1.15", + "symfony/translation-contracts": "^2" }, "conflict": { - "symfony/config": "<3.4", - "symfony/dependency-injection": "<3.4", - "symfony/http-kernel": "<4.4", - "symfony/yaml": "<3.4" + "symfony/config": "<4.4", + "symfony/dependency-injection": "<5.0", + "symfony/http-kernel": "<5.0", + "symfony/twig-bundle": "<5.0", + "symfony/yaml": "<4.4" }, "provide": { - "symfony/translation-implementation": "1.0" + "symfony/translation-implementation": "2.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/console": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/finder": "~2.8|~3.0|~4.0|^5.0", - "symfony/http-kernel": "^4.4", - "symfony/intl": "^3.4|^4.0|^5.0", + "symfony/config": "^4.4|^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/dependency-injection": "^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/http-kernel": "^5.0", + "symfony/intl": "^4.4|^5.0", "symfony/service-contracts": "^1.1.2|^2", - "symfony/yaml": "^3.4|^4.0|^5.0" + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "psr/log-implementation": "To use logging capability in translator", @@ -4016,7 +4438,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -4057,7 +4479,7 @@ "type": "tidelift" } ], - "time": "2020-08-17T09:56:45+00:00" + "time": "2020-08-17T10:01:29+00:00" }, { "name": "symfony/translation-contracts", @@ -4136,33 +4558,32 @@ }, { "name": "symfony/var-dumper", - "version": "v4.4.13", + "version": "v5.1.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "1bef32329f3166486ab7cb88599cae4875632b99" + "reference": "b43a3905262bcf97b2510f0621f859ca4f5287be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/1bef32329f3166486ab7cb88599cae4875632b99", - "reference": "1bef32329f3166486ab7cb88599cae4875632b99", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/b43a3905262bcf97b2510f0621f859ca4f5287be", + "reference": "b43a3905262bcf97b2510f0621f859ca4f5287be", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php72": "~1.5", "symfony/polyfill-php80": "^1.15" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/console": "<3.4" + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4" }, "require-dev": { "ext-iconv": "*", - "symfony/console": "^3.4|^4.0|^5.0", + "symfony/console": "^4.4|^5.0", "symfony/process": "^4.4|^5.0", - "twig/twig": "^1.34|^2.4|^3.0" + "twig/twig": "^2.4|^3.0" }, "suggest": { "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", @@ -4175,7 +4596,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -4223,7 +4644,7 @@ "type": "tidelift" } ], - "time": "2020-08-17T07:31:35+00:00" + "time": "2020-08-17T07:42:30+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -4276,36 +4697,39 @@ }, { "name": "vlucas/phpdotenv", - "version": "v3.6.7", + "version": "v5.2.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "2065beda6cbe75e2603686907b2e45f6f3a5ad82" + "reference": "fba64139db67123c7a57072e5f8d3db10d160b66" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/2065beda6cbe75e2603686907b2e45f6f3a5ad82", - "reference": "2065beda6cbe75e2603686907b2e45f6f3a5ad82", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/fba64139db67123c7a57072e5f8d3db10d160b66", + "reference": "fba64139db67123c7a57072e5f8d3db10d160b66", "shasum": "" }, "require": { - "php": "^5.4 || ^7.0 || ^8.0", - "phpoption/phpoption": "^1.5.2", - "symfony/polyfill-ctype": "^1.17" + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.1", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.7.4", + "symfony/polyfill-ctype": "^1.17", + "symfony/polyfill-mbstring": "^1.17", + "symfony/polyfill-php80": "^1.17" }, "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "ext-pcre": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0" + "phpunit/phpunit": "^7.5.20 || ^8.5.2 || ^9.0" }, "suggest": { - "ext-filter": "Required to use the boolean validator.", - "ext-pcre": "Required to use most of the library." + "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.6-dev" + "dev-master": "5.2-dev" } }, "autoload": { @@ -4345,7 +4769,77 @@ "type": "tidelift" } ], - "time": "2020-07-14T19:04:52+00:00" + "time": "2020-09-14T15:57:31+00:00" + }, + { + "name": "voku/portable-ascii", + "version": "1.5.3", + "source": { + "type": "git", + "url": "https://github.com/voku/portable-ascii.git", + "reference": "25bcbf01678930251fd572891447d9e318a6e2b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/25bcbf01678930251fd572891447d9e318a6e2b8", + "reference": "25bcbf01678930251fd572891447d9e318a6e2b8", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "type": "library", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "time": "2020-07-22T23:32:04+00:00" } ], "packages-dev": [ @@ -4483,43 +4977,44 @@ }, { "name": "facade/ignition", - "version": "1.16.3", + "version": "2.3.7", "source": { "type": "git", "url": "https://github.com/facade/ignition.git", - "reference": "19674150bb46a4de0ba138c747f538fe7be11dbc" + "reference": "b364db8860a63c1fb58b72b9718863c21df08762" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/ignition/zipball/19674150bb46a4de0ba138c747f538fe7be11dbc", - "reference": "19674150bb46a4de0ba138c747f538fe7be11dbc", + "url": "https://api.github.com/repos/facade/ignition/zipball/b364db8860a63c1fb58b72b9718863c21df08762", + "reference": "b364db8860a63c1fb58b72b9718863c21df08762", "shasum": "" }, "require": { "ext-json": "*", "ext-mbstring": "*", - "facade/flare-client-php": "^1.3", + "facade/flare-client-php": "^1.0", "facade/ignition-contracts": "^1.0", "filp/whoops": "^2.4", - "illuminate/support": "~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ^6.0", - "monolog/monolog": "^1.12 || ^2.0", - "php": "^7.1", + "illuminate/support": "^7.0|^8.0", + "monolog/monolog": "^2.0", + "php": "^7.2.5", "scrivo/highlight.php": "^9.15", - "symfony/console": "^3.4 || ^4.0", - "symfony/var-dumper": "^3.4 || ^4.0" + "symfony/console": "^5.0", + "symfony/var-dumper": "^5.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^2.14", - "mockery/mockery": "^1.2", - "orchestra/testbench": "^3.5 || ^3.6 || ^3.7 || ^3.8 || ^4.0" + "mockery/mockery": "^1.3", + "orchestra/testbench": "^5.0|^6.0", + "psalm/plugin-laravel": "^1.2" }, "suggest": { - "laravel/telescope": "^2.0" + "laravel/telescope": "^3.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "2.x-dev" }, "laravel": { "providers": [ @@ -4550,7 +5045,7 @@ "laravel", "page" ], - "time": "2020-07-13T15:54:05+00:00" + "time": "2020-09-06T19:26:27+00:00" }, { "name": "facade/ignition-contracts", @@ -4759,96 +5254,6 @@ ], "time": "2020-07-09T08:09:16+00:00" }, - { - "name": "jakub-onderka/php-console-color", - "version": "v0.2", - "source": { - "type": "git", - "url": "https://github.com/JakubOnderka/PHP-Console-Color.git", - "reference": "d5deaecff52a0d61ccb613bb3804088da0307191" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/d5deaecff52a0d61ccb613bb3804088da0307191", - "reference": "d5deaecff52a0d61ccb613bb3804088da0307191", - "shasum": "" - }, - "require": { - "php": ">=5.4.0" - }, - "require-dev": { - "jakub-onderka/php-code-style": "1.0", - "jakub-onderka/php-parallel-lint": "1.0", - "jakub-onderka/php-var-dump-check": "0.*", - "phpunit/phpunit": "~4.3", - "squizlabs/php_codesniffer": "1.*" - }, - "type": "library", - "autoload": { - "psr-4": { - "JakubOnderka\\PhpConsoleColor\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-2-Clause" - ], - "authors": [ - { - "name": "Jakub Onderka", - "email": "jakub.onderka@gmail.com" - } - ], - "abandoned": "php-parallel-lint/php-console-color", - "time": "2018-09-29T17:23:10+00:00" - }, - { - "name": "jakub-onderka/php-console-highlighter", - "version": "v0.4", - "source": { - "type": "git", - "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git", - "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/9f7a229a69d52506914b4bc61bfdb199d90c5547", - "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "jakub-onderka/php-console-color": "~0.2", - "php": ">=5.4.0" - }, - "require-dev": { - "jakub-onderka/php-code-style": "~1.0", - "jakub-onderka/php-parallel-lint": "~1.0", - "jakub-onderka/php-var-dump-check": "~0.1", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~1.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "JakubOnderka\\PhpConsoleHighlighter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jakub Onderka", - "email": "acci@acci.cz", - "homepage": "http://www.acci.cz/" - } - ], - "description": "Highlight PHP code in terminal", - "abandoned": "php-parallel-lint/php-console-highlighter", - "time": "2018-09-29T18:48:56+00:00" - }, { "name": "mockery/mockery", "version": "1.4.2", @@ -4973,29 +5378,35 @@ }, { "name": "nunomaduro/collision", - "version": "v3.0.1", + "version": "v5.0.2", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "af42d339fe2742295a54f6fdd42aaa6f8c4aca68" + "reference": "4a343299054e9368d0db4a982a780cc4ffa12707" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/af42d339fe2742295a54f6fdd42aaa6f8c4aca68", - "reference": "af42d339fe2742295a54f6fdd42aaa6f8c4aca68", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/4a343299054e9368d0db4a982a780cc4ffa12707", + "reference": "4a343299054e9368d0db4a982a780cc4ffa12707", "shasum": "" }, "require": { - "filp/whoops": "^2.1.4", - "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*", - "php": "^7.1", - "symfony/console": "~2.8|~3.3|~4.0" + "facade/ignition-contracts": "^1.0", + "filp/whoops": "^2.7.2", + "php": "^7.3", + "symfony/console": "^5.0" }, "require-dev": { - "laravel/framework": "5.8.*", - "nunomaduro/larastan": "^0.3.0", - "phpstan/phpstan": "^0.11", - "phpunit/phpunit": "~8.0" + "fideloper/proxy": "^4.4.0", + "friendsofphp/php-cs-fixer": "^2.16.4", + "fruitcake/laravel-cors": "^2.0.1", + "laravel/framework": "^8.0", + "laravel/tinker": "^2.4.1", + "nunomaduro/larastan": "^0.6.2", + "nunomaduro/mock-final-classes": "^1.0", + "orchestra/testbench": "^6.0", + "phpstan/phpstan": "^0.12.36", + "phpunit/phpunit": "^9.3.3" }, "type": "library", "extra": { @@ -5033,32 +5444,47 @@ "php", "symfony" ], - "time": "2019-03-07T21:35:13+00:00" + "funding": [ + { + "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://www.patreon.com/nunomaduro", + "type": "patreon" + } + ], + "time": "2020-08-27T18:58:22+00:00" }, { "name": "phar-io/manifest", - "version": "1.0.3", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/phar-io/manifest.git", - "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4" + "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", - "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", + "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", "shasum": "" }, "require": { "ext-dom": "*", "ext-phar": "*", - "phar-io/version": "^2.0", - "php": "^5.6 || ^7.0" + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -5088,24 +5514,24 @@ } ], "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "time": "2018-07-08T19:23:20+00:00" + "time": "2020-06-27T14:33:11+00:00" }, { "name": "phar-io/version", - "version": "2.0.1", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/phar-io/version.git", - "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6" + "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6", - "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6", + "url": "https://api.github.com/repos/phar-io/version/zipball/c6bb6825def89e0a32220f88337f8ceaf1975fa0", + "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "php": "^7.2 || ^8.0" }, "type": "library", "autoload": { @@ -5135,7 +5561,7 @@ } ], "description": "Library for handling version information and constraints", - "time": "2018-07-08T19:19:57+00:00" + "time": "2020-06-27T14:39:04+00:00" }, { "name": "phpdocumentor/reflection-common", @@ -5348,40 +5774,44 @@ }, { "name": "phpunit/php-code-coverage", - "version": "7.0.10", + "version": "9.1.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf" + "reference": "cf6582906d4b2502c5f4c6be6a3d0b4cd5b3ef7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf", - "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/cf6582906d4b2502c5f4c6be6a3d0b4cd5b3ef7f", + "reference": "cf6582906d4b2502c5f4c6be6a3d0b4cd5b3ef7f", "shasum": "" }, "require": { "ext-dom": "*", + "ext-libxml": "*", "ext-xmlwriter": "*", - "php": "^7.2", - "phpunit/php-file-iterator": "^2.0.2", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-token-stream": "^3.1.1", - "sebastian/code-unit-reverse-lookup": "^1.0.1", - "sebastian/environment": "^4.2.2", - "sebastian/version": "^2.0.1", - "theseer/tokenizer": "^1.1.3" + "nikic/php-parser": "^4.8", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.3", + "phpunit/php-text-template": "^2.0.2", + "sebastian/code-unit-reverse-lookup": "^2.0.2", + "sebastian/complexity": "^2.0", + "sebastian/environment": "^5.1.2", + "sebastian/lines-of-code": "^1.0", + "sebastian/version": "^3.0.1", + "theseer/tokenizer": "^1.2.0" }, "require-dev": { - "phpunit/phpunit": "^8.2.2" + "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-xdebug": "^2.7.2" + "ext-pcov": "*", + "ext-xdebug": "*" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "7.0-dev" + "dev-master": "9.1-dev" } }, "autoload": { @@ -5407,32 +5837,38 @@ "testing", "xunit" ], - "time": "2019-11-20T13:55:58+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-15T06:14:11+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "2.0.2", + "version": "3.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "050bedf145a257b1ff02746c31894800e5122946" + "reference": "25fefc5b19835ca653877fe081644a3f8c1d915e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946", - "reference": "050bedf145a257b1ff02746c31894800e5122946", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/25fefc5b19835ca653877fe081644a3f8c1d915e", + "reference": "25fefc5b19835ca653877fe081644a3f8c1d915e", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7.1" + "phpunit/phpunit": "^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -5457,26 +5893,99 @@ "filesystem", "iterator" ], - "time": "2018-09-13T20:33:42+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-07-11T05:18:21+00:00" }, { - "name": "phpunit/php-text-template", - "version": "1.2.1", + "name": "phpunit/php-invoker", + "version": "3.1.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "7a85b66acc48cacffdf87dadd3694e7123674298" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/7a85b66acc48cacffdf87dadd3694e7123674298", + "reference": "7a85b66acc48cacffdf87dadd3694e7123674298", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "ext-pcntl": "*", + "phpunit/phpunit": "^9.0" + }, + "suggest": { + "ext-pcntl": "*" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "process" + ], + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-08-06T07:04:15+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "6ff9c8ea4d3212b88fcf74e25e516e2c51c99324" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/6ff9c8ea4d3212b88fcf74e25e516e2c51c99324", + "reference": "6ff9c8ea4d3212b88fcf74e25e516e2c51c99324", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, "autoload": { "classmap": [ "src/" @@ -5498,32 +6007,38 @@ "keywords": [ "template" ], - "time": "2015-06-21T13:50:34+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T11:55:37+00:00" }, { "name": "phpunit/php-timer", - "version": "2.1.2", + "version": "5.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "1038454804406b0b5f5f520358e78c1c2f71501e" + "reference": "cc49734779cbb302bf51a44297dab8c4bbf941e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e", - "reference": "1038454804406b0b5f5f520358e78c1c2f71501e", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/cc49734779cbb302bf51a44297dab8c4bbf941e7", + "reference": "cc49734779cbb302bf51a44297dab8c4bbf941e7", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7.0" + "phpunit/phpunit": "^9.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -5547,106 +6062,65 @@ "keywords": [ "timer" ], - "time": "2019-06-07T04:22:29+00:00" - }, - { - "name": "phpunit/php-token-stream", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff", - "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": "^7.1" - }, - "require-dev": { - "phpunit/phpunit": "^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ + "funding": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "url": "https://github.com/sebastianbergmann", + "type": "github" } ], - "description": "Wrapper around PHP's tokenizer extension.", - "homepage": "https://github.com/sebastianbergmann/php-token-stream/", - "keywords": [ - "tokenizer" - ], - "abandoned": true, - "time": "2019-09-17T06:23:10+00:00" + "time": "2020-06-26T11:58:13+00:00" }, { "name": "phpunit/phpunit", - "version": "8.5.8", + "version": "9.3.10", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997" + "reference": "919333f2d046a89f9238f15d09f17a8f0baa5cc2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/34c18baa6a44f1d1fbf0338907139e9dce95b997", - "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/919333f2d046a89f9238f15d09f17a8f0baa5cc2", + "reference": "919333f2d046a89f9238f15d09f17a8f0baa5cc2", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.2.0", + "doctrine/instantiator": "^1.3.1", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.9.1", - "phar-io/manifest": "^1.0.3", - "phar-io/version": "^2.0.1", - "php": "^7.2", - "phpspec/prophecy": "^1.8.1", - "phpunit/php-code-coverage": "^7.0.7", - "phpunit/php-file-iterator": "^2.0.2", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-timer": "^2.1.2", - "sebastian/comparator": "^3.0.2", - "sebastian/diff": "^3.0.2", - "sebastian/environment": "^4.2.2", - "sebastian/exporter": "^3.1.1", - "sebastian/global-state": "^3.0.0", - "sebastian/object-enumerator": "^3.0.3", - "sebastian/resource-operations": "^2.0.1", - "sebastian/type": "^1.1.3", - "sebastian/version": "^2.0.1" + "myclabs/deep-copy": "^1.10.1", + "phar-io/manifest": "^2.0.1", + "phar-io/version": "^3.0.2", + "php": ">=7.3", + "phpspec/prophecy": "^1.11.1", + "phpunit/php-code-coverage": "^9.1.5", + "phpunit/php-file-iterator": "^3.0.4", + "phpunit/php-invoker": "^3.1", + "phpunit/php-text-template": "^2.0.2", + "phpunit/php-timer": "^5.0.1", + "sebastian/cli-parser": "^1.0", + "sebastian/code-unit": "^1.0.5", + "sebastian/comparator": "^4.0.3", + "sebastian/diff": "^4.0.2", + "sebastian/environment": "^5.1.2", + "sebastian/exporter": "^4.0.2", + "sebastian/global-state": "^5.0", + "sebastian/object-enumerator": "^4.0.2", + "sebastian/resource-operations": "^3.0.2", + "sebastian/type": "^2.2.1", + "sebastian/version": "^3.0.1" }, "require-dev": { - "ext-pdo": "*" + "ext-pdo": "*", + "phpspec/prophecy-phpunit": "^2.0.1" }, "suggest": { "ext-soap": "*", - "ext-xdebug": "*", - "phpunit/php-invoker": "^2.0.0" + "ext-xdebug": "*" }, "bin": [ "phpunit" @@ -5654,12 +6128,15 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "8.5-dev" + "dev-master": "9.3-dev" } }, "autoload": { "classmap": [ "src/" + ], + "files": [ + "src/Framework/Assert/Functions.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -5690,7 +6167,7 @@ "type": "github" } ], - "time": "2020-06-22T07:06:58+00:00" + "time": "2020-09-12T09:34:39+00:00" }, { "name": "scrivo/highlight.php", @@ -5768,29 +6245,133 @@ "time": "2020-08-27T03:24:44+00:00" }, { - "name": "sebastian/code-unit-reverse-lookup", - "version": "1.0.1", + "name": "sebastian/cli-parser", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "2a4a38c56e62f7295bedb8b1b7439ad523d4ea82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2a4a38c56e62f7295bedb8b1b7439ad523d4ea82", + "reference": "2a4a38c56e62f7295bedb8b1b7439ad523d4ea82", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.0" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for parsing CLI options", + "homepage": "https://github.com/sebastianbergmann/cli-parser", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-08-12T10:49:21+00:00" + }, + { + "name": "sebastian/code-unit", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit.git", + "reference": "c1e2df332c905079980b119c4db103117e5e5c90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/c1e2df332c905079980b119c4db103117e5e5c90", + "reference": "c1e2df332c905079980b119c4db103117e5e5c90", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the PHP code units", + "homepage": "https://github.com/sebastianbergmann/code-unit", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:50:45+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "ee51f9bb0c6d8a43337055db3120829fa14da819" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ee51f9bb0c6d8a43337055db3120829fa14da819", + "reference": "ee51f9bb0c6d8a43337055db3120829fa14da819", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" } }, "autoload": { @@ -5810,34 +6391,40 @@ ], "description": "Looks up which function or method a line of code belongs to", "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "time": "2017-03-04T06:30:41+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:04:00+00:00" }, { "name": "sebastian/comparator", - "version": "3.0.2", + "version": "4.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da" + "reference": "dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da", - "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f", + "reference": "dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f", "shasum": "" }, "require": { - "php": "^7.1", - "sebastian/diff": "^3.0", - "sebastian/exporter": "^3.1" + "php": "^7.3 || ^8.0", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" }, "require-dev": { - "phpunit/phpunit": "^7.1" + "phpunit/phpunit": "^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -5850,6 +6437,10 @@ "BSD-3-Clause" ], "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, { "name": "Jeff Welch", "email": "whatthejeff@gmail.com" @@ -5861,10 +6452,6 @@ { "name": "Bernhard Schussek", "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" } ], "description": "Provides the functionality to compare PHP values for equality", @@ -5874,33 +6461,39 @@ "compare", "equality" ], - "time": "2018-07-12T15:12:46+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:05:46+00:00" }, { - "name": "sebastian/diff", - "version": "3.0.2", + "name": "sebastian/complexity", + "version": "2.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29" + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "33fcd6a26656c6546f70871244ecba4b4dced097" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29", - "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/33fcd6a26656c6546f70871244ecba4b4dced097", + "reference": "33fcd6a26656c6546f70871244ecba4b4dced097", "shasum": "" }, "require": { - "php": "^7.1" + "nikic/php-parser": "^4.7", + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7.5 || ^8.0", - "symfony/process": "^2 || ^3.3 || ^4" + "phpunit/phpunit": "^9.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -5914,12 +6507,65 @@ ], "authors": [ { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for calculating the complexity of PHP code units", + "homepage": "https://github.com/sebastianbergmann/complexity", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-07-25T14:01:34+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113", + "reference": "1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ { "name": "Sebastian Bergmann", "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" } ], "description": "Diff implementation", @@ -5930,27 +6576,33 @@ "unidiff", "unified diff" ], - "time": "2019-02-04T06:01:07+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-30T04:46:02+00:00" }, { "name": "sebastian/environment", - "version": "4.2.3", + "version": "5.1.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368" + "reference": "0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368", - "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2", + "reference": "0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7.5" + "phpunit/phpunit": "^9.0" }, "suggest": { "ext-posix": "*" @@ -5958,7 +6610,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -5983,34 +6635,40 @@ "environment", "hhvm" ], - "time": "2019-11-20T08:46:58+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:07:24+00:00" }, { "name": "sebastian/exporter", - "version": "3.1.2", + "version": "4.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e" + "reference": "571d721db4aec847a0e59690b954af33ebf9f023" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e", - "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/571d721db4aec847a0e59690b954af33ebf9f023", + "reference": "571d721db4aec847a0e59690b954af33ebf9f023", "shasum": "" }, "require": { - "php": "^7.0", - "sebastian/recursion-context": "^3.0" + "php": "^7.3 || ^8.0", + "sebastian/recursion-context": "^4.0" }, "require-dev": { "ext-mbstring": "*", - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1.x-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -6050,30 +6708,36 @@ "export", "exporter" ], - "time": "2019-09-14T09:02:43+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:08:55+00:00" }, { "name": "sebastian/global-state", - "version": "3.0.0", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4" + "reference": "22ae663c951bdc39da96603edc3239ed3a299097" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", - "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/22ae663c951bdc39da96603edc3239ed3a299097", + "reference": "22ae663c951bdc39da96603edc3239ed3a299097", "shasum": "" }, "require": { - "php": "^7.2", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" + "php": "^7.3 || ^8.0", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^8.0" + "phpunit/phpunit": "^9.3" }, "suggest": { "ext-uopz": "*" @@ -6081,7 +6745,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -6104,34 +6768,93 @@ "keywords": [ "global state" ], - "time": "2019-02-01T05:30:01+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-08-07T04:09:03+00:00" }, { - "name": "sebastian/object-enumerator", - "version": "3.0.3", + "name": "sebastian/lines-of-code", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5" + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "e02bf626f404b5daec382a7b8a6a4456e49017e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e02bf626f404b5daec382a7b8a6a4456e49017e5", + "reference": "e02bf626f404b5daec382a7b8a6a4456e49017e5", "shasum": "" }, "require": { - "php": "^7.0", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" + "nikic/php-parser": "^4.6", + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for counting the lines of code in PHP source code", + "homepage": "https://github.com/sebastianbergmann/lines-of-code", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-07-22T18:33:42+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "074fed2d0a6d08e1677dd8ce9d32aecb384917b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/074fed2d0a6d08e1677dd8ce9d32aecb384917b8", + "reference": "074fed2d0a6d08e1677dd8ce9d32aecb384917b8", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" } }, "autoload": { @@ -6151,122 +6874,33 @@ ], "description": "Traverses array structures and object graphs to enumerate all referenced objects", "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "time": "2017-08-03T12:35:26+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:11:32+00:00" }, { "name": "sebastian/object-reflector", - "version": "1.1.1", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "773f97c67f28de00d397be301821b06708fca0be" + "reference": "127a46f6b057441b201253526f81d5406d6c7840" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be", - "reference": "773f97c67f28de00d397be301821b06708fca0be", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/127a46f6b057441b201253526f81d5406d6c7840", + "reference": "127a46f6b057441b201253526f81d5406d6c7840", "shasum": "" }, "require": { - "php": "^7.0" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "time": "2017-03-29T09:07:27+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2017-03-03T06:23:57+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9", - "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9", - "shasum": "" - }, - "require": { - "php": "^7.1" + "phpunit/phpunit": "^9.0" }, "type": "library", "extra": { @@ -6289,34 +6923,150 @@ "email": "sebastian@phpunit.de" } ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "time": "2018-10-04T04:07:39+00:00" + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:12:55+00:00" }, { - "name": "sebastian/type", - "version": "1.1.3", + "name": "sebastian/recursion-context", + "version": "4.0.2", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3" + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "062231bf61d2b9448c4fa5a7643b5e1829c11d63" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3", - "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/062231bf61d2b9448c4fa5a7643b5e1829c11d63", + "reference": "062231bf61d2b9448c4fa5a7643b5e1829c11d63", "shasum": "" }, "require": { - "php": "^7.2" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^8.2" + "phpunit/phpunit": "^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:14:17+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "0653718a5a629b065e91f774595267f8dc32e213" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0653718a5a629b065e91f774595267f8dc32e213", + "reference": "0653718a5a629b065e91f774595267f8dc32e213", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:16:22+00:00" + }, + { + "name": "sebastian/type", + "version": "2.2.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "86991e2b33446cd96e648c18bcdb1e95afb2c05a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/86991e2b33446cd96e648c18bcdb1e95afb2c05a", + "reference": "86991e2b33446cd96e648c18bcdb1e95afb2c05a", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" } }, "autoload": { @@ -6337,29 +7087,35 @@ ], "description": "Collection of value objects that represent the types of the PHP type system", "homepage": "https://github.com/sebastianbergmann/type", - "time": "2019-07-02T08:10:15+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-07-05T08:31:53+00:00" }, { "name": "sebastian/version", - "version": "2.0.1", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" + "reference": "626586115d0ed31cb71483be55beb759b5af5a3c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/626586115d0ed31cb71483be55beb759b5af5a3c", + "reference": "626586115d0ed31cb71483be55beb759b5af5a3c", "shasum": "" }, "require": { - "php": ">=5.6" + "php": "^7.3 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -6380,7 +7136,13 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", - "time": "2016-10-03T07:35:21+00:00" + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-26T12:18:43+00:00" }, { "name": "theseer/tokenizer", @@ -6484,7 +7246,7 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^7.2" + "php": "^7.3" }, "platform-dev": [], "plugin-api-version": "1.1.0" diff --git a/flexiapi/config/database.php b/flexiapi/config/database.php index 1918141..33179ee 100644 --- a/flexiapi/config/database.php +++ b/flexiapi/config/database.php @@ -1,7 +1,7 @@ env('SESSION_SECURE_COOKIE', false), + 'secure' => env('SESSION_SECURE_COOKIE', null), /* |-------------------------------------------------------------------------- diff --git a/flexiapi/database/factories/AccountFactory.php b/flexiapi/database/factories/AccountFactory.php index 07d5923..5b75dd2 100644 --- a/flexiapi/database/factories/AccountFactory.php +++ b/flexiapi/database/factories/AccountFactory.php @@ -1,7 +1,7 @@ . */ -use App\Account; -use Faker\Generator as Faker; +namespace Database\Factories; -$factory->define(Account::class, function (Faker $faker) { - return [ - 'username' => $faker->username, - 'domain' => $faker->domainName, - 'email' => $faker->email, - 'user_agent' => $faker->userAgent, - 'ip_address' => $faker->ipv4, - 'creation_time' => $faker->dateTime, - ]; -}); +use App\Account; +use Illuminate\Database\Eloquent\Factories\Factory; +use Illuminate\Support\Str; + +class AccountFactory extends Factory +{ + protected $model = Account::class; + + public function definition() + { + return [ + 'username' => $this->faker->username, + 'domain' => config('app.sip_domain'), + 'email' => $this->faker->email, + 'user_agent' => $this->faker->userAgent, + 'ip_address' => $this->faker->ipv4, + 'creation_time' => $this->faker->dateTime, + ]; + } +} diff --git a/flexiapi/database/factories/AdminFactory.php b/flexiapi/database/factories/AdminFactory.php index 3d482c7..02e92cc 100644 --- a/flexiapi/database/factories/AdminFactory.php +++ b/flexiapi/database/factories/AdminFactory.php @@ -1,7 +1,7 @@ . */ +namespace Database\Factories; + use App\Admin; -use Faker\Generator as Faker; +use App\Password; +use Illuminate\Database\Eloquent\Factories\Factory; +use Illuminate\Support\Str; -$factory->define(Admin::class, function (Faker $faker) use ($factory) { - $password = $factory->create(App\Password::class); +class AdminFactory extends Factory +{ + protected $model = Admin::class; - return [ - 'account_id' => $password->account_id, - ]; -}); + public function definition() + { + $password = Password::factory()->create(); + + return [ + 'account_id' => $password->account_id, + ]; + } +} diff --git a/flexiapi/database/factories/PasswordFactory.php b/flexiapi/database/factories/PasswordFactory.php index 68b605c..c1ecd04 100644 --- a/flexiapi/database/factories/PasswordFactory.php +++ b/flexiapi/database/factories/PasswordFactory.php @@ -1,7 +1,7 @@ . */ -use App\Password; +namespace Database\Factories; + use App\Account; -use Faker\Generator as Faker; +use App\Password; +use App\User; +use Illuminate\Database\Eloquent\Factories\Factory; +use Illuminate\Support\Str; +use Illuminate\Support\Facades\DB; -$factory->define(Password::class, function (Faker $faker) use ($factory) { - $account = $factory->create(App\Account::class); +class PasswordFactory extends Factory +{ + protected $model = Password::class; - return [ - 'password' => hash('md5', $account->username.':'.$account->domain.':testtest'), - 'account_id' => $account->id, - 'algorithm' => 'MD5', - ]; -}); + public function definition() + { + $account = Account::factory()->create(); -$factory->state(Password::class, 'sha256', function (Faker $faker) use ($factory) { - $account = $factory->create(App\Account::class); + return [ + 'account_id' => $account->id, + 'password' => hash('md5', $account->username.':'.$account->domain.':testtest'), + 'algorithm' => 'MD5', + ]; + } - return [ - 'password' => hash('sha256', $account->username.':'.$account->domain.':testtest'), - 'account_id' => $account->id, - 'algorithm' => 'SHA-256', - ]; -}); + public function sha256() + { + return $this->state(function (array $attributes) { + $account = Account::find($attributes['account_id']); -$factory->state(Password::class, 'clrtxt', function (Faker $faker) use ($factory) { - $account = $factory->create(App\Account::class); + return [ + 'password' => hash('sha256', $account->username.':'.$account->domain.':testtest'), + 'account_id' => $account->id, + 'algorithm' => 'SHA-256', + ]; + }); + } - return [ - 'password' => 'testtest', - 'account_id' => $account->id, - 'algorithm' => 'CLRTXT', - ]; -}); \ No newline at end of file + public function clrtxt() + { + return $this->state(function (array $attributes) { + return [ + 'password' => 'testtest', + 'algorithm' => 'CLRTXT', + ]; + }); + } +} diff --git a/flexiapi/database/factories/UserFactory.php b/flexiapi/database/factories/UserFactory.php index 5afd1a5..1335d38 100644 --- a/flexiapi/database/factories/UserFactory.php +++ b/flexiapi/database/factories/UserFactory.php @@ -1,7 +1,7 @@ . */ -use App\User; -use Faker\Generator as Faker; +namespace Database\Factories; + +use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Support\Str; -$factory->define(User::class, function (Faker $faker) { - return [ - 'name' => $faker->name, - 'email' => $faker->unique()->safeEmail, - 'email_verified_at' => now(), - 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password - 'remember_token' => Str::random(10), - ]; -}); +class UserFactory extends Factory +{ + protected $model = User::class; + + public function definition() + { + return [ + 'name' => $this->faker->name, + 'email' => $this->faker->unique()->safeEmail, + 'email_verified_at' => now(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; + } +} diff --git a/flexiapi/database/migrations/2019_08_19_000000_create_failed_jobs_table.php b/flexiapi/database/migrations/2019_08_19_000000_create_failed_jobs_table.php index 6ed8e32..b1b0871 100644 --- a/flexiapi/database/migrations/2019_08_19_000000_create_failed_jobs_table.php +++ b/flexiapi/database/migrations/2019_08_19_000000_create_failed_jobs_table.php @@ -1,4 +1,21 @@ . +*/ use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; diff --git a/flexiapi/database/migrations/2020_01_23_125119_create_accounts_passwords_tables.php b/flexiapi/database/migrations/2020_01_23_125119_create_accounts_passwords_tables.php index 087b964..dd60e3c 100644 --- a/flexiapi/database/migrations/2020_01_23_125119_create_accounts_passwords_tables.php +++ b/flexiapi/database/migrations/2020_01_23_125119_create_accounts_passwords_tables.php @@ -1,7 +1,7 @@ . +*/ use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; diff --git a/flexiapi/database/migrations/2020_09_14_120448_add_email_changed_table.php b/flexiapi/database/migrations/2020_09_14_120448_add_email_changed_table.php index 24ee7b6..a681d31 100644 --- a/flexiapi/database/migrations/2020_09_14_120448_add_email_changed_table.php +++ b/flexiapi/database/migrations/2020_09_14_120448_add_email_changed_table.php @@ -1,4 +1,21 @@ . +*/ use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; diff --git a/flexiapi/phpunit.xml b/flexiapi/phpunit.xml index 638fe8e..362b3c9 100644 --- a/flexiapi/phpunit.xml +++ b/flexiapi/phpunit.xml @@ -1,41 +1,28 @@ - - - - ./tests/Unit - - - - ./tests/Feature - - - - - ./app - - - - - - - - - - - - - - - - + + + + ./app + + + + + ./tests/Unit + + + ./tests/Feature + + + + + + + + + + + + + + diff --git a/flexiapi/routes/api.php b/flexiapi/routes/api.php index a818790..cecc695 100644 --- a/flexiapi/routes/api.php +++ b/flexiapi/routes/api.php @@ -1,7 +1,7 @@ . +*/ namespace Tests\Feature; use App\Password; +use App\Account; use App\Admin; +use App\User; use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Foundation\Testing\WithFaker; use Tests\TestCase; +use Illuminate\Support\Facades\DB; class AccountApiTest extends TestCase { @@ -18,14 +38,14 @@ class AccountApiTest extends TestCase public function testMandatoryFrom() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response = $this->json($this->method, $this->route); $response->assertStatus(422); } public function testNotAdminForbidden() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response0 = $this->generateFirstResponse($password); $response1 = $this->generateSecondResponse($password, $response0) ->json($this->method, $this->route); @@ -35,7 +55,7 @@ class AccountApiTest extends TestCase public function testAdminOk() { - $admin = factory(Admin::class)->create(); + $admin = Admin::factory()->create(); $password = $admin->account->passwords()->first(); $username = 'foobar'; @@ -57,7 +77,7 @@ class AccountApiTest extends TestCase public function testDomain() { - $admin = factory(Admin::class)->create(); + $admin = Admin::factory()->create(); $password = $admin->account->passwords()->first(); $username = 'foobar'; $domain = 'example.com'; @@ -82,7 +102,7 @@ class AccountApiTest extends TestCase public function testUsernameNoDomain() { - $admin = factory(Admin::class)->create(); + $admin = Admin::factory()->create(); $password = $admin->account->passwords()->first(); $username = 'username'; @@ -106,7 +126,7 @@ class AccountApiTest extends TestCase public function testUsernameEmpty() { - $admin = factory(Admin::class)->create(); + $admin = Admin::factory()->create(); $password = $admin->account->passwords()->first(); $username = 'username'; diff --git a/flexiapi/tests/Feature/AuthenticateDigestTest.php b/flexiapi/tests/Feature/AuthenticateDigestTest.php index a93bdf3..1e9347f 100644 --- a/flexiapi/tests/Feature/AuthenticateDigestTest.php +++ b/flexiapi/tests/Feature/AuthenticateDigestTest.php @@ -1,7 +1,7 @@ create(); + $password = Password::factory()->create(); $response = $this->json($this->method, $this->route); $response->assertStatus(422); } public function testWrongFrom() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response = $this->withHeaders([ 'From' => 'sip:missing@username', ])->json($this->method, $this->route); @@ -51,7 +51,7 @@ class AuthenticateDigestTest extends TestCase public function testAuthenticate() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response = $this->withHeaders([ 'From' => 'sip:'.$password->account->identifier, ])->json($this->method, $this->route); @@ -61,8 +61,8 @@ class AuthenticateDigestTest extends TestCase public function testMultiHash() { // Two password and we link the second to the first related account - $passwordMD5 = factory(Password::class)->create(); - $passwordSHA256 = factory(Password::class)->states('sha256')->make(); + $passwordMD5 = Password::factory()->create(); + $passwordSHA256 = Password::factory()->sha256()->make(); $passwordSHA256->account_id = $passwordMD5->account_id; $passwordSHA256->save(); @@ -78,7 +78,7 @@ class AuthenticateDigestTest extends TestCase public function testReplayNonce() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response0 = $this->generateFirstResponse($password); $response1 = $this->generateSecondResponse($password, $response0) ->json($this->method, $this->route); @@ -105,7 +105,7 @@ class AuthenticateDigestTest extends TestCase public function testClearedNonce() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response1 = $this->generateFirstResponse($password); $response2 = $this->withHeaders([ 'From' => 'sip:'.$password->account->identifier, @@ -129,7 +129,7 @@ class AuthenticateDigestTest extends TestCase public function testAuthenticationMD5() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response = $this->generateFirstResponse($password); $response = $this->generateSecondResponse($password, $response) ->json($this->method, $this->route); @@ -141,7 +141,7 @@ class AuthenticateDigestTest extends TestCase public function testAuthenticationSHA265() { - $password = factory(Password::class)->states('sha256')->create(); + $password = Password::factory()->sha256()->create(); $response = $this->generateFirstResponse($password); $response = $this->withHeaders([ 'From' => 'sip:'.$password->account->identifier, @@ -155,7 +155,7 @@ class AuthenticateDigestTest extends TestCase public function testAuthenticationSHA265FromCLRTXT() { - $password = factory(Password::class)->states('clrtxt')->create(); + $password = Password::factory()->clrtxt()->create(); $response = $this->generateFirstResponse($password);; // The server is generating all the available hash algorythms @@ -182,7 +182,7 @@ class AuthenticateDigestTest extends TestCase public function testAuthenticationBadPassword() { - $password = factory(Password::class)->create(); + $password = Password::factory()->create(); $response = $this->generateFirstResponse($password);; $password->password = 'wrong'; diff --git a/flexiapi/tests/TestCase.php b/flexiapi/tests/TestCase.php index 44a022c..154661a 100644 --- a/flexiapi/tests/TestCase.php +++ b/flexiapi/tests/TestCase.php @@ -1,4 +1,21 @@ . +*/ namespace Tests; diff --git a/src/api/account/create.php b/src/api/account/create.php index bc9384c..53114f5 100644 --- a/src/api/account/create.php +++ b/src/api/account/create.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/api/account/delete.php b/src/api/account/delete.php index 3e1977a..8a051c6 100644 --- a/src/api/account/delete.php +++ b/src/api/account/delete.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/api/account/get.php b/src/api/account/get.php index f25b314..1754d3f 100644 --- a/src/api/account/get.php +++ b/src/api/account/get.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/api/account/list.php b/src/api/account/list.php index 2b93682..b9cbc7e 100644 --- a/src/api/account/list.php +++ b/src/api/account/list.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/api/account/update.php b/src/api/account/update.php index dc97594..bfcc267 100644 --- a/src/api/account/update.php +++ b/src/api/account/update.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/config/config.php b/src/config/config.php index 59d244f..7ea6955 100644 --- a/src/config/config.php +++ b/src/config/config.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/database/database.php b/src/database/database.php index 8038140..56e0235 100644 --- a/src/database/database.php +++ b/src/database/database.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/email.php b/src/misc/email.php index 26211d8..1b98d62 100644 --- a/src/misc/email.php +++ b/src/misc/email.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/geoloc.php b/src/misc/geoloc.php index f107415..d5938d3 100644 --- a/src/misc/geoloc.php +++ b/src/misc/geoloc.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/logging.php b/src/misc/logging.php index 7abbab5..4518737 100644 --- a/src/misc/logging.php +++ b/src/misc/logging.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/results_values.php b/src/misc/results_values.php index 8b76ebf..034425e 100644 --- a/src/misc/results_values.php +++ b/src/misc/results_values.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/sms.php b/src/misc/sms.php index 0353c13..0589f3c 100644 --- a/src/misc/sms.php +++ b/src/misc/sms.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/misc/utilities.php b/src/misc/utilities.php index 22f7c19..01695b1 100644 --- a/src/misc/utilities.php +++ b/src/misc/utilities.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as @@ -197,4 +197,3 @@ function time_elapsed_as_string($secs) function get_config_value($param_name, $default_value) { return defined($param_name) ? constant($param_name) : $default_value; } - diff --git a/src/objects/account.php b/src/objects/account.php index 03987b0..dee6c19 100644 --- a/src/objects/account.php +++ b/src/objects/account.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/objects/alias.php b/src/objects/alias.php index d53dccd..bb7a333 100644 --- a/src/objects/alias.php +++ b/src/objects/alias.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/objects/device.php b/src/objects/device.php index 56dd56e..2be1748 100644 --- a/src/objects/device.php +++ b/src/objects/device.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/objects/password.php b/src/objects/password.php index 86574d0..fb52ca2 100644 --- a/src/objects/password.php +++ b/src/objects/password.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/objects/sms.php b/src/objects/sms.php index 8f3c822..1748775 100644 --- a/src/objects/sms.php +++ b/src/objects/sms.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/objects/user_info.php b/src/objects/user_info.php index 4a6eeec..edf4699 100644 --- a/src/objects/user_info.php +++ b/src/objects/user_info.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/tools/create_tables.php b/src/tools/create_tables.php index e563381..159959e 100644 --- a/src/tools/create_tables.php +++ b/src/tools/create_tables.php @@ -4,7 +4,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/tools/drop_tables.php b/src/tools/drop_tables.php index 8003755..c5a077f 100644 --- a/src/tools/drop_tables.php +++ b/src/tools/drop_tables.php @@ -4,7 +4,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/tools/migrate_accounts.php b/src/tools/migrate_accounts.php index 830d9ee..ba2a8ae 100644 --- a/src/tools/migrate_accounts.php +++ b/src/tools/migrate_accounts.php @@ -4,7 +4,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/accounts.php b/src/xmlrpc/accounts.php index 4973394..d979802 100644 --- a/src/xmlrpc/accounts.php +++ b/src/xmlrpc/accounts.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/accounts_email.php b/src/xmlrpc/accounts_email.php index 2433916..4075436 100644 --- a/src/xmlrpc/accounts_email.php +++ b/src/xmlrpc/accounts_email.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/accounts_phone.php b/src/xmlrpc/accounts_phone.php index 314cd9c..45cb3b4 100644 --- a/src/xmlrpc/accounts_phone.php +++ b/src/xmlrpc/accounts_phone.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/activation.php b/src/xmlrpc/activation.php index 7d4617a..009b013 100644 --- a/src/xmlrpc/activation.php +++ b/src/xmlrpc/activation.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/aliases.php b/src/xmlrpc/aliases.php index b3d2847..580edae 100644 --- a/src/xmlrpc/aliases.php +++ b/src/xmlrpc/aliases.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/authentication.php b/src/xmlrpc/authentication.php index 8123fb4..3f1b18b 100644 --- a/src/xmlrpc/authentication.php +++ b/src/xmlrpc/authentication.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/devices.php b/src/xmlrpc/devices.php index 49d9e40..5ebcebc 100644 --- a/src/xmlrpc/devices.php +++ b/src/xmlrpc/devices.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/inapp.php b/src/xmlrpc/inapp.php index 1f11ed0..b145386 100644 --- a/src/xmlrpc/inapp.php +++ b/src/xmlrpc/inapp.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/liblinphone_tester.php b/src/xmlrpc/liblinphone_tester.php index 157dcb8..6c5dce5 100644 --- a/src/xmlrpc/liblinphone_tester.php +++ b/src/xmlrpc/liblinphone_tester.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/passwords.php b/src/xmlrpc/passwords.php index 122fd20..493e9bd 100644 --- a/src/xmlrpc/passwords.php +++ b/src/xmlrpc/passwords.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/provisioning.php b/src/xmlrpc/provisioning.php index 41bcbb3..24b89ed 100644 --- a/src/xmlrpc/provisioning.php +++ b/src/xmlrpc/provisioning.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as @@ -32,7 +32,7 @@ $logger = Logger::getInstance(); if (REMOTE_PROVISIONING_USE_DIGEST_AUTH) { $headers = getallheaders(); $authorization = null; - + // Get authentication header if there is one if (!empty($headers['Auth-Digest'])) { $logger->debug("Auth-Digest = " . $headers['Auth-Digest']); @@ -131,7 +131,7 @@ if (!empty($username)) { $account = new Account($db); $account->username = $username; $account->domain = $domain; - + if ($account->getOne()) { if (!is_activated($account->activated)) { $password = new Password($db); diff --git a/src/xmlrpc/user_info.php b/src/xmlrpc/user_info.php index f501de5..db9e608 100644 --- a/src/xmlrpc/user_info.php +++ b/src/xmlrpc/user_info.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as diff --git a/src/xmlrpc/xmlrpc.php b/src/xmlrpc/xmlrpc.php index aba6550..a4fa4f0 100644 --- a/src/xmlrpc/xmlrpc.php +++ b/src/xmlrpc/xmlrpc.php @@ -2,7 +2,7 @@ /* Flexisip Account Manager is a set of tools to manage SIP accounts. - Copyright (C) 2019 Belledonne Communications SARL, All rights reserved. + Copyright (C) 2020 Belledonne Communications SARL, All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as