├── .gitignore ├── README.md ├── bareback-cover.png ├── composer.json ├── composer.lock ├── phpunit.xml.dist ├── src ├── TestCase.php └── TestFrameworkRunner.php └── tests ├── NoFrameworkByDefaultTest.php ├── NoFrameworkTest.php ├── TestCaseTest.php ├── TestFrameworkRunnerTest.php └── WithFrameworkTest.php /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | vendor/ 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Bareback - selectively turn off Laravel in your test suite](bareback-cover.png) 2 | 3 | # Bareback 4 | 5 | Bareback is a Laravel package that makes it easy to selectively choose which tests run with the framework loaded. 6 | 7 | ### Why would I want to run tests without the framework? 8 | 9 | Running tests without loading the Laravel framework is much faster, typically anywhere from 50% to 70%. 10 | It's often a good idea to try and implement core business logic with as little dependencies as possible. However, creating an entire test suite 11 | for an application with no with no framework dependencies isn't practical or pragmatic. This package allows you to switch off the framework 12 | when testing core business logic in "unit" tests, and switch it on when running end to end or "integration" tests. 13 | 14 | ## Installation 15 | 16 | ```bash 17 | composer require "spacegrass/bareback" 18 | ``` 19 | 20 | ## Usage 21 | First you need to extend the base TestCase, which in turn extends the Laravel TestCase: 22 | 23 | ```php 24 | 25 | use Spacegrass\Bareback\TestCase as BaseTestCase; 26 | 27 | class TestCase extends BaseTestCase 28 | { 29 | // 30 | } 31 | ``` 32 | 33 | To stop the framework from loading, simply add the `@withoutFramework` annotation to your test method: 34 | ```php 35 | /** 36 | * @withoutFramework 37 | */ 38 | public function test_something_quickly() 39 | { 40 | // 41 | } 42 | ``` 43 | 44 | or alternatively, add the annotation to the class itself, and every test method therein will not load the framework by default. 45 | If you would like to turn on the framework, add the `@withFramework` annotation to any test method, and it that test method alone 46 | will load the framework. 47 | ```php 48 | /** 49 | * @withoutFramework 50 | */ 51 | class FastTests extends TestCase 52 | { 53 | public function test_something_without_framework_by_default() 54 | { 55 | // 56 | } 57 | 58 | /** 59 | * @withFramework 60 | */ 61 | public function test_something_with_the_framework_for_some_reason() 62 | { 63 | // 64 | } 65 | }] 66 | ``` 67 | 68 | You can add set up specifically for when the framework is loaded or not loaded by adding the `noFrameworkSetup` and `frameworkSetup` methods to 69 | your test case. 70 | 71 | ```php 72 | class SometimesRunningWithFrameworkTestCase extends TestCase 73 | { 74 | public function noFrameworkSetup() 75 | { 76 | // register fake repositories or mock something out, for example 77 | } 78 | 79 | public function frameworkSetup() 80 | { 81 | // perhaps add something specific to your database migrations or anything else 82 | // the is dependent on the framework 83 | } 84 | ``` 85 | 86 | If you wish to run all your tests without the framework by default, and force an 'opt-in' approach when running tests with the framework, 87 | simply add the `withFramework` property: 88 | 89 | ```php 90 | class RunTestsWithoutFrameworkByDefaultTestCase extends TestCase 91 | { 92 | 93 | protected $withFramework = false; 94 | 95 | public function test_runs_with_out_framework() 96 | { 97 | // 98 | } 99 | 100 | /** 101 | * @withFramework 102 | */ 103 | public function test_requires_opt_in_to_use_framework 104 | { 105 | // 106 | } 107 | } 108 | ``` 109 | -------------------------------------------------------------------------------- /bareback-cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dallincoons/laravel-bareback/5ca8d198e0ed509af2e170bff454efcefcd65e14/bareback-cover.png -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "spacegrass/bareback", 3 | "description": "Selectively use the Laravel framework when running tests", 4 | "type": "library", 5 | "license": "MIT", 6 | "authors": [ 7 | { 8 | "name": "Dallin", 9 | "email": "dallincoons@gmail.com" 10 | } 11 | ], 12 | "require": {}, 13 | "autoload": { 14 | "psr-4": { 15 | "Spacegrass\\Bareback\\": "src/" 16 | } 17 | }, 18 | "autoload-dev": { 19 | "psr-4": { 20 | "Spacegrass\\Bareback\\Tests\\": "tests" 21 | } 22 | }, 23 | "require-dev": { 24 | "phpunit/phpunit": "^9.1", 25 | "orchestra/testbench": "^5.1" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "67c562094e953aa40167bfc9d6cbb7e9", 8 | "packages": [], 9 | "packages-dev": [ 10 | { 11 | "name": "brick/math", 12 | "version": "0.8.14", 13 | "source": { 14 | "type": "git", 15 | "url": "https://github.com/brick/math.git", 16 | "reference": "6f7a46b5c3d487b277f38fbd17df57d348cace8a" 17 | }, 18 | "dist": { 19 | "type": "zip", 20 | "url": "https://api.github.com/repos/brick/math/zipball/6f7a46b5c3d487b277f38fbd17df57d348cace8a", 21 | "reference": "6f7a46b5c3d487b277f38fbd17df57d348cace8a", 22 | "shasum": "" 23 | }, 24 | "require": { 25 | "php": ">=7.1" 26 | }, 27 | "require-dev": { 28 | "php-coveralls/php-coveralls": "2.*", 29 | "phpunit/phpunit": "7.*", 30 | "vimeo/psalm": "3.*" 31 | }, 32 | "type": "library", 33 | "autoload": { 34 | "psr-4": { 35 | "Brick\\Math\\": "src/" 36 | } 37 | }, 38 | "notification-url": "https://packagist.org/downloads/", 39 | "license": [ 40 | "MIT" 41 | ], 42 | "description": "Arbitrary-precision arithmetic library", 43 | "keywords": [ 44 | "Arbitrary-precision", 45 | "BigInteger", 46 | "BigRational", 47 | "arithmetic", 48 | "bigdecimal", 49 | "bignum", 50 | "brick", 51 | "math" 52 | ], 53 | "time": "2020-02-17T13:57:43+00:00" 54 | }, 55 | { 56 | "name": "doctrine/inflector", 57 | "version": "1.3.1", 58 | "source": { 59 | "type": "git", 60 | "url": "https://github.com/doctrine/inflector.git", 61 | "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1" 62 | }, 63 | "dist": { 64 | "type": "zip", 65 | "url": "https://api.github.com/repos/doctrine/inflector/zipball/ec3a55242203ffa6a4b27c58176da97ff0a7aec1", 66 | "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1", 67 | "shasum": "" 68 | }, 69 | "require": { 70 | "php": "^7.1" 71 | }, 72 | "require-dev": { 73 | "phpunit/phpunit": "^6.2" 74 | }, 75 | "type": "library", 76 | "extra": { 77 | "branch-alias": { 78 | "dev-master": "1.3.x-dev" 79 | } 80 | }, 81 | "autoload": { 82 | "psr-4": { 83 | "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" 84 | } 85 | }, 86 | "notification-url": "https://packagist.org/downloads/", 87 | "license": [ 88 | "MIT" 89 | ], 90 | "authors": [ 91 | { 92 | "name": "Guilherme Blanco", 93 | "email": "guilhermeblanco@gmail.com" 94 | }, 95 | { 96 | "name": "Roman Borschel", 97 | "email": "roman@code-factory.org" 98 | }, 99 | { 100 | "name": "Benjamin Eberlei", 101 | "email": "kontakt@beberlei.de" 102 | }, 103 | { 104 | "name": "Jonathan Wage", 105 | "email": "jonwage@gmail.com" 106 | }, 107 | { 108 | "name": "Johannes Schmitt", 109 | "email": "schmittjoh@gmail.com" 110 | } 111 | ], 112 | "description": "Common String Manipulations with regard to casing and singular/plural rules.", 113 | "homepage": "http://www.doctrine-project.org", 114 | "keywords": [ 115 | "inflection", 116 | "pluralize", 117 | "singularize", 118 | "string" 119 | ], 120 | "time": "2019-10-30T19:59:35+00:00" 121 | }, 122 | { 123 | "name": "doctrine/instantiator", 124 | "version": "1.3.0", 125 | "source": { 126 | "type": "git", 127 | "url": "https://github.com/doctrine/instantiator.git", 128 | "reference": "ae466f726242e637cebdd526a7d991b9433bacf1" 129 | }, 130 | "dist": { 131 | "type": "zip", 132 | "url": "https://api.github.com/repos/doctrine/instantiator/zipball/ae466f726242e637cebdd526a7d991b9433bacf1", 133 | "reference": "ae466f726242e637cebdd526a7d991b9433bacf1", 134 | "shasum": "" 135 | }, 136 | "require": { 137 | "php": "^7.1" 138 | }, 139 | "require-dev": { 140 | "doctrine/coding-standard": "^6.0", 141 | "ext-pdo": "*", 142 | "ext-phar": "*", 143 | "phpbench/phpbench": "^0.13", 144 | "phpstan/phpstan-phpunit": "^0.11", 145 | "phpstan/phpstan-shim": "^0.11", 146 | "phpunit/phpunit": "^7.0" 147 | }, 148 | "type": "library", 149 | "extra": { 150 | "branch-alias": { 151 | "dev-master": "1.2.x-dev" 152 | } 153 | }, 154 | "autoload": { 155 | "psr-4": { 156 | "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" 157 | } 158 | }, 159 | "notification-url": "https://packagist.org/downloads/", 160 | "license": [ 161 | "MIT" 162 | ], 163 | "authors": [ 164 | { 165 | "name": "Marco Pivetta", 166 | "email": "ocramius@gmail.com", 167 | "homepage": "http://ocramius.github.com/" 168 | } 169 | ], 170 | "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", 171 | "homepage": "https://www.doctrine-project.org/projects/instantiator.html", 172 | "keywords": [ 173 | "constructor", 174 | "instantiate" 175 | ], 176 | "time": "2019-10-21T16:45:58+00:00" 177 | }, 178 | { 179 | "name": "doctrine/lexer", 180 | "version": "1.2.0", 181 | "source": { 182 | "type": "git", 183 | "url": "https://github.com/doctrine/lexer.git", 184 | "reference": "5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6" 185 | }, 186 | "dist": { 187 | "type": "zip", 188 | "url": "https://api.github.com/repos/doctrine/lexer/zipball/5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6", 189 | "reference": "5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6", 190 | "shasum": "" 191 | }, 192 | "require": { 193 | "php": "^7.2" 194 | }, 195 | "require-dev": { 196 | "doctrine/coding-standard": "^6.0", 197 | "phpstan/phpstan": "^0.11.8", 198 | "phpunit/phpunit": "^8.2" 199 | }, 200 | "type": "library", 201 | "extra": { 202 | "branch-alias": { 203 | "dev-master": "1.2.x-dev" 204 | } 205 | }, 206 | "autoload": { 207 | "psr-4": { 208 | "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" 209 | } 210 | }, 211 | "notification-url": "https://packagist.org/downloads/", 212 | "license": [ 213 | "MIT" 214 | ], 215 | "authors": [ 216 | { 217 | "name": "Guilherme Blanco", 218 | "email": "guilhermeblanco@gmail.com" 219 | }, 220 | { 221 | "name": "Roman Borschel", 222 | "email": "roman@code-factory.org" 223 | }, 224 | { 225 | "name": "Johannes Schmitt", 226 | "email": "schmittjoh@gmail.com" 227 | } 228 | ], 229 | "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", 230 | "homepage": "https://www.doctrine-project.org/projects/lexer.html", 231 | "keywords": [ 232 | "annotations", 233 | "docblock", 234 | "lexer", 235 | "parser", 236 | "php" 237 | ], 238 | "time": "2019-10-30T14:39:59+00:00" 239 | }, 240 | { 241 | "name": "dragonmantank/cron-expression", 242 | "version": "v2.3.0", 243 | "source": { 244 | "type": "git", 245 | "url": "https://github.com/dragonmantank/cron-expression.git", 246 | "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27" 247 | }, 248 | "dist": { 249 | "type": "zip", 250 | "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/72b6fbf76adb3cf5bc0db68559b33d41219aba27", 251 | "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27", 252 | "shasum": "" 253 | }, 254 | "require": { 255 | "php": "^7.0" 256 | }, 257 | "require-dev": { 258 | "phpunit/phpunit": "^6.4|^7.0" 259 | }, 260 | "type": "library", 261 | "extra": { 262 | "branch-alias": { 263 | "dev-master": "2.3-dev" 264 | } 265 | }, 266 | "autoload": { 267 | "psr-4": { 268 | "Cron\\": "src/Cron/" 269 | } 270 | }, 271 | "notification-url": "https://packagist.org/downloads/", 272 | "license": [ 273 | "MIT" 274 | ], 275 | "authors": [ 276 | { 277 | "name": "Michael Dowling", 278 | "email": "mtdowling@gmail.com", 279 | "homepage": "https://github.com/mtdowling" 280 | }, 281 | { 282 | "name": "Chris Tankersley", 283 | "email": "chris@ctankersley.com", 284 | "homepage": "https://github.com/dragonmantank" 285 | } 286 | ], 287 | "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", 288 | "keywords": [ 289 | "cron", 290 | "schedule" 291 | ], 292 | "time": "2019-03-31T00:38:28+00:00" 293 | }, 294 | { 295 | "name": "egulias/email-validator", 296 | "version": "2.1.17", 297 | "source": { 298 | "type": "git", 299 | "url": "https://github.com/egulias/EmailValidator.git", 300 | "reference": "ade6887fd9bd74177769645ab5c474824f8a418a" 301 | }, 302 | "dist": { 303 | "type": "zip", 304 | "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ade6887fd9bd74177769645ab5c474824f8a418a", 305 | "reference": "ade6887fd9bd74177769645ab5c474824f8a418a", 306 | "shasum": "" 307 | }, 308 | "require": { 309 | "doctrine/lexer": "^1.0.1", 310 | "php": ">=5.5", 311 | "symfony/polyfill-intl-idn": "^1.10" 312 | }, 313 | "require-dev": { 314 | "dominicsayers/isemail": "^3.0.7", 315 | "phpunit/phpunit": "^4.8.36|^7.5.15", 316 | "satooshi/php-coveralls": "^1.0.1" 317 | }, 318 | "suggest": { 319 | "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" 320 | }, 321 | "type": "library", 322 | "extra": { 323 | "branch-alias": { 324 | "dev-master": "2.1.x-dev" 325 | } 326 | }, 327 | "autoload": { 328 | "psr-4": { 329 | "Egulias\\EmailValidator\\": "EmailValidator" 330 | } 331 | }, 332 | "notification-url": "https://packagist.org/downloads/", 333 | "license": [ 334 | "MIT" 335 | ], 336 | "authors": [ 337 | { 338 | "name": "Eduardo Gulias Davis" 339 | } 340 | ], 341 | "description": "A library for validating emails against several RFCs", 342 | "homepage": "https://github.com/egulias/EmailValidator", 343 | "keywords": [ 344 | "email", 345 | "emailvalidation", 346 | "emailvalidator", 347 | "validation", 348 | "validator" 349 | ], 350 | "time": "2020-02-13T22:36:52+00:00" 351 | }, 352 | { 353 | "name": "fzaninotto/faker", 354 | "version": "v1.9.1", 355 | "source": { 356 | "type": "git", 357 | "url": "https://github.com/fzaninotto/Faker.git", 358 | "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f" 359 | }, 360 | "dist": { 361 | "type": "zip", 362 | "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f", 363 | "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f", 364 | "shasum": "" 365 | }, 366 | "require": { 367 | "php": "^5.3.3 || ^7.0" 368 | }, 369 | "require-dev": { 370 | "ext-intl": "*", 371 | "phpunit/phpunit": "^4.8.35 || ^5.7", 372 | "squizlabs/php_codesniffer": "^2.9.2" 373 | }, 374 | "type": "library", 375 | "extra": { 376 | "branch-alias": { 377 | "dev-master": "1.9-dev" 378 | } 379 | }, 380 | "autoload": { 381 | "psr-4": { 382 | "Faker\\": "src/Faker/" 383 | } 384 | }, 385 | "notification-url": "https://packagist.org/downloads/", 386 | "license": [ 387 | "MIT" 388 | ], 389 | "authors": [ 390 | { 391 | "name": "François Zaninotto" 392 | } 393 | ], 394 | "description": "Faker is a PHP library that generates fake data for you.", 395 | "keywords": [ 396 | "data", 397 | "faker", 398 | "fixtures" 399 | ], 400 | "time": "2019-12-12T13:22:17+00:00" 401 | }, 402 | { 403 | "name": "hamcrest/hamcrest-php", 404 | "version": "v2.0.0", 405 | "source": { 406 | "type": "git", 407 | "url": "https://github.com/hamcrest/hamcrest-php.git", 408 | "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad" 409 | }, 410 | "dist": { 411 | "type": "zip", 412 | "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/776503d3a8e85d4f9a1148614f95b7a608b046ad", 413 | "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad", 414 | "shasum": "" 415 | }, 416 | "require": { 417 | "php": "^5.3|^7.0" 418 | }, 419 | "replace": { 420 | "cordoval/hamcrest-php": "*", 421 | "davedevelopment/hamcrest-php": "*", 422 | "kodova/hamcrest-php": "*" 423 | }, 424 | "require-dev": { 425 | "phpunit/php-file-iterator": "1.3.3", 426 | "phpunit/phpunit": "~4.0", 427 | "satooshi/php-coveralls": "^1.0" 428 | }, 429 | "type": "library", 430 | "extra": { 431 | "branch-alias": { 432 | "dev-master": "2.0-dev" 433 | } 434 | }, 435 | "autoload": { 436 | "classmap": [ 437 | "hamcrest" 438 | ] 439 | }, 440 | "notification-url": "https://packagist.org/downloads/", 441 | "license": [ 442 | "BSD" 443 | ], 444 | "description": "This is the PHP port of Hamcrest Matchers", 445 | "keywords": [ 446 | "test" 447 | ], 448 | "time": "2016-01-20T08:20:44+00:00" 449 | }, 450 | { 451 | "name": "laravel/framework", 452 | "version": "v7.5.0", 453 | "source": { 454 | "type": "git", 455 | "url": "https://github.com/laravel/framework.git", 456 | "reference": "0e71d781854723d9428e1ae921a7edfe0a10c8ec" 457 | }, 458 | "dist": { 459 | "type": "zip", 460 | "url": "https://api.github.com/repos/laravel/framework/zipball/0e71d781854723d9428e1ae921a7edfe0a10c8ec", 461 | "reference": "0e71d781854723d9428e1ae921a7edfe0a10c8ec", 462 | "shasum": "" 463 | }, 464 | "require": { 465 | "doctrine/inflector": "^1.1", 466 | "dragonmantank/cron-expression": "^2.0", 467 | "egulias/email-validator": "^2.1.10", 468 | "ext-json": "*", 469 | "ext-mbstring": "*", 470 | "ext-openssl": "*", 471 | "league/commonmark": "^1.3", 472 | "league/flysystem": "^1.0.8", 473 | "monolog/monolog": "^2.0", 474 | "nesbot/carbon": "^2.17", 475 | "opis/closure": "^3.1", 476 | "php": "^7.2.5", 477 | "psr/container": "^1.0", 478 | "psr/simple-cache": "^1.0", 479 | "ramsey/uuid": "^3.7|^4.0", 480 | "swiftmailer/swiftmailer": "^6.0", 481 | "symfony/console": "^5.0", 482 | "symfony/error-handler": "^5.0", 483 | "symfony/finder": "^5.0", 484 | "symfony/http-foundation": "^5.0", 485 | "symfony/http-kernel": "^5.0", 486 | "symfony/mime": "^5.0", 487 | "symfony/process": "^5.0", 488 | "symfony/routing": "^5.0", 489 | "symfony/var-dumper": "^5.0", 490 | "tijsverkoyen/css-to-inline-styles": "^2.2.2", 491 | "vlucas/phpdotenv": "^4.0", 492 | "voku/portable-ascii": "^1.4.8" 493 | }, 494 | "conflict": { 495 | "tightenco/collect": "<5.5.33" 496 | }, 497 | "replace": { 498 | "illuminate/auth": "self.version", 499 | "illuminate/broadcasting": "self.version", 500 | "illuminate/bus": "self.version", 501 | "illuminate/cache": "self.version", 502 | "illuminate/config": "self.version", 503 | "illuminate/console": "self.version", 504 | "illuminate/container": "self.version", 505 | "illuminate/contracts": "self.version", 506 | "illuminate/cookie": "self.version", 507 | "illuminate/database": "self.version", 508 | "illuminate/encryption": "self.version", 509 | "illuminate/events": "self.version", 510 | "illuminate/filesystem": "self.version", 511 | "illuminate/hashing": "self.version", 512 | "illuminate/http": "self.version", 513 | "illuminate/log": "self.version", 514 | "illuminate/mail": "self.version", 515 | "illuminate/notifications": "self.version", 516 | "illuminate/pagination": "self.version", 517 | "illuminate/pipeline": "self.version", 518 | "illuminate/queue": "self.version", 519 | "illuminate/redis": "self.version", 520 | "illuminate/routing": "self.version", 521 | "illuminate/session": "self.version", 522 | "illuminate/support": "self.version", 523 | "illuminate/testing": "self.version", 524 | "illuminate/translation": "self.version", 525 | "illuminate/validation": "self.version", 526 | "illuminate/view": "self.version" 527 | }, 528 | "require-dev": { 529 | "aws/aws-sdk-php": "^3.0", 530 | "doctrine/dbal": "^2.6", 531 | "filp/whoops": "^2.4", 532 | "guzzlehttp/guzzle": "^6.3.1|^7.0", 533 | "league/flysystem-cached-adapter": "^1.0", 534 | "mockery/mockery": "^1.3.1", 535 | "moontoast/math": "^1.1", 536 | "orchestra/testbench-core": "^5.0", 537 | "pda/pheanstalk": "^4.0", 538 | "phpunit/phpunit": "^8.4|^9.0", 539 | "predis/predis": "^1.1.1", 540 | "symfony/cache": "^5.0" 541 | }, 542 | "suggest": { 543 | "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.0).", 544 | "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6).", 545 | "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", 546 | "ext-memcached": "Required to use the memcache cache driver.", 547 | "ext-pcntl": "Required to use all features of the queue worker.", 548 | "ext-posix": "Required to use all features of the queue worker.", 549 | "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", 550 | "filp/whoops": "Required for friendly error pages in development (^2.4).", 551 | "fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).", 552 | "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.3.1|^7.0).", 553 | "laravel/tinker": "Required to use the tinker console command (^2.0).", 554 | "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", 555 | "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", 556 | "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", 557 | "mockery/mockery": "Required to use mocking (^1.3.1).", 558 | "moontoast/math": "Required to use ordered UUIDs (^1.1).", 559 | "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", 560 | "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", 561 | "phpunit/phpunit": "Required to use assertions and run tests (^8.4|^9.0).", 562 | "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", 563 | "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0).", 564 | "symfony/cache": "Required to PSR-6 cache bridge (^5.0).", 565 | "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).", 566 | "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." 567 | }, 568 | "type": "library", 569 | "extra": { 570 | "branch-alias": { 571 | "dev-master": "7.x-dev" 572 | } 573 | }, 574 | "autoload": { 575 | "files": [ 576 | "src/Illuminate/Foundation/helpers.php", 577 | "src/Illuminate/Support/helpers.php" 578 | ], 579 | "psr-4": { 580 | "Illuminate\\": "src/Illuminate/" 581 | } 582 | }, 583 | "notification-url": "https://packagist.org/downloads/", 584 | "license": [ 585 | "MIT" 586 | ], 587 | "authors": [ 588 | { 589 | "name": "Taylor Otwell", 590 | "email": "taylor@laravel.com" 591 | } 592 | ], 593 | "description": "The Laravel Framework.", 594 | "homepage": "https://laravel.com", 595 | "keywords": [ 596 | "framework", 597 | "laravel" 598 | ], 599 | "time": "2020-04-07T14:47:48+00:00" 600 | }, 601 | { 602 | "name": "league/commonmark", 603 | "version": "1.3.3", 604 | "source": { 605 | "type": "git", 606 | "url": "https://github.com/thephpleague/commonmark.git", 607 | "reference": "5a67afc2572ec6d430526cdc9c637ef124812389" 608 | }, 609 | "dist": { 610 | "type": "zip", 611 | "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/5a67afc2572ec6d430526cdc9c637ef124812389", 612 | "reference": "5a67afc2572ec6d430526cdc9c637ef124812389", 613 | "shasum": "" 614 | }, 615 | "require": { 616 | "ext-mbstring": "*", 617 | "php": "^7.1" 618 | }, 619 | "conflict": { 620 | "scrutinizer/ocular": "1.7.*" 621 | }, 622 | "require-dev": { 623 | "cebe/markdown": "~1.0", 624 | "commonmark/commonmark.js": "0.29.1", 625 | "erusev/parsedown": "~1.0", 626 | "ext-json": "*", 627 | "github/gfm": "0.29.0", 628 | "michelf/php-markdown": "~1.4", 629 | "mikehaertl/php-shellcommand": "^1.4", 630 | "phpstan/phpstan-shim": "^0.11.5", 631 | "phpunit/phpunit": "^7.5", 632 | "scrutinizer/ocular": "^1.5", 633 | "symfony/finder": "^4.2" 634 | }, 635 | "bin": [ 636 | "bin/commonmark" 637 | ], 638 | "type": "library", 639 | "extra": { 640 | "branch-alias": { 641 | "dev-master": "1.4-dev" 642 | } 643 | }, 644 | "autoload": { 645 | "psr-4": { 646 | "League\\CommonMark\\": "src" 647 | } 648 | }, 649 | "notification-url": "https://packagist.org/downloads/", 650 | "license": [ 651 | "BSD-3-Clause" 652 | ], 653 | "authors": [ 654 | { 655 | "name": "Colin O'Dell", 656 | "email": "colinodell@gmail.com", 657 | "homepage": "https://www.colinodell.com", 658 | "role": "Lead Developer" 659 | } 660 | ], 661 | "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", 662 | "homepage": "https://commonmark.thephpleague.com", 663 | "keywords": [ 664 | "commonmark", 665 | "flavored", 666 | "gfm", 667 | "github", 668 | "github-flavored", 669 | "markdown", 670 | "md", 671 | "parser" 672 | ], 673 | "time": "2020-04-05T16:01:48+00:00" 674 | }, 675 | { 676 | "name": "league/flysystem", 677 | "version": "1.0.66", 678 | "source": { 679 | "type": "git", 680 | "url": "https://github.com/thephpleague/flysystem.git", 681 | "reference": "021569195e15f8209b1c4bebb78bd66aa4f08c21" 682 | }, 683 | "dist": { 684 | "type": "zip", 685 | "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/021569195e15f8209b1c4bebb78bd66aa4f08c21", 686 | "reference": "021569195e15f8209b1c4bebb78bd66aa4f08c21", 687 | "shasum": "" 688 | }, 689 | "require": { 690 | "ext-fileinfo": "*", 691 | "php": ">=5.5.9" 692 | }, 693 | "conflict": { 694 | "league/flysystem-sftp": "<1.0.6" 695 | }, 696 | "require-dev": { 697 | "phpspec/phpspec": "^3.4", 698 | "phpunit/phpunit": "^5.7.26" 699 | }, 700 | "suggest": { 701 | "ext-fileinfo": "Required for MimeType", 702 | "ext-ftp": "Allows you to use FTP server storage", 703 | "ext-openssl": "Allows you to use FTPS server storage", 704 | "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", 705 | "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", 706 | "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", 707 | "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", 708 | "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", 709 | "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", 710 | "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", 711 | "league/flysystem-webdav": "Allows you to use WebDAV storage", 712 | "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", 713 | "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", 714 | "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" 715 | }, 716 | "type": "library", 717 | "extra": { 718 | "branch-alias": { 719 | "dev-master": "1.1-dev" 720 | } 721 | }, 722 | "autoload": { 723 | "psr-4": { 724 | "League\\Flysystem\\": "src/" 725 | } 726 | }, 727 | "notification-url": "https://packagist.org/downloads/", 728 | "license": [ 729 | "MIT" 730 | ], 731 | "authors": [ 732 | { 733 | "name": "Frank de Jonge", 734 | "email": "info@frenky.net" 735 | } 736 | ], 737 | "description": "Filesystem abstraction: Many filesystems, one API.", 738 | "keywords": [ 739 | "Cloud Files", 740 | "WebDAV", 741 | "abstraction", 742 | "aws", 743 | "cloud", 744 | "copy.com", 745 | "dropbox", 746 | "file systems", 747 | "files", 748 | "filesystem", 749 | "filesystems", 750 | "ftp", 751 | "rackspace", 752 | "remote", 753 | "s3", 754 | "sftp", 755 | "storage" 756 | ], 757 | "time": "2020-03-17T18:58:12+00:00" 758 | }, 759 | { 760 | "name": "mockery/mockery", 761 | "version": "1.3.1", 762 | "source": { 763 | "type": "git", 764 | "url": "https://github.com/mockery/mockery.git", 765 | "reference": "f69bbde7d7a75d6b2862d9ca8fab1cd28014b4be" 766 | }, 767 | "dist": { 768 | "type": "zip", 769 | "url": "https://api.github.com/repos/mockery/mockery/zipball/f69bbde7d7a75d6b2862d9ca8fab1cd28014b4be", 770 | "reference": "f69bbde7d7a75d6b2862d9ca8fab1cd28014b4be", 771 | "shasum": "" 772 | }, 773 | "require": { 774 | "hamcrest/hamcrest-php": "~2.0", 775 | "lib-pcre": ">=7.0", 776 | "php": ">=5.6.0" 777 | }, 778 | "require-dev": { 779 | "phpunit/phpunit": "~5.7.10|~6.5|~7.0|~8.0" 780 | }, 781 | "type": "library", 782 | "extra": { 783 | "branch-alias": { 784 | "dev-master": "1.3.x-dev" 785 | } 786 | }, 787 | "autoload": { 788 | "psr-0": { 789 | "Mockery": "library/" 790 | } 791 | }, 792 | "notification-url": "https://packagist.org/downloads/", 793 | "license": [ 794 | "BSD-3-Clause" 795 | ], 796 | "authors": [ 797 | { 798 | "name": "Pádraic Brady", 799 | "email": "padraic.brady@gmail.com", 800 | "homepage": "http://blog.astrumfutura.com" 801 | }, 802 | { 803 | "name": "Dave Marshall", 804 | "email": "dave.marshall@atstsolutions.co.uk", 805 | "homepage": "http://davedevelopment.co.uk" 806 | } 807 | ], 808 | "description": "Mockery is a simple yet flexible PHP mock object framework", 809 | "homepage": "https://github.com/mockery/mockery", 810 | "keywords": [ 811 | "BDD", 812 | "TDD", 813 | "library", 814 | "mock", 815 | "mock objects", 816 | "mockery", 817 | "stub", 818 | "test", 819 | "test double", 820 | "testing" 821 | ], 822 | "time": "2019-12-26T09:49:15+00:00" 823 | }, 824 | { 825 | "name": "monolog/monolog", 826 | "version": "2.0.2", 827 | "source": { 828 | "type": "git", 829 | "url": "https://github.com/Seldaek/monolog.git", 830 | "reference": "c861fcba2ca29404dc9e617eedd9eff4616986b8" 831 | }, 832 | "dist": { 833 | "type": "zip", 834 | "url": "https://api.github.com/repos/Seldaek/monolog/zipball/c861fcba2ca29404dc9e617eedd9eff4616986b8", 835 | "reference": "c861fcba2ca29404dc9e617eedd9eff4616986b8", 836 | "shasum": "" 837 | }, 838 | "require": { 839 | "php": "^7.2", 840 | "psr/log": "^1.0.1" 841 | }, 842 | "provide": { 843 | "psr/log-implementation": "1.0.0" 844 | }, 845 | "require-dev": { 846 | "aws/aws-sdk-php": "^2.4.9 || ^3.0", 847 | "doctrine/couchdb": "~1.0@dev", 848 | "elasticsearch/elasticsearch": "^6.0", 849 | "graylog2/gelf-php": "^1.4.2", 850 | "jakub-onderka/php-parallel-lint": "^0.9", 851 | "php-amqplib/php-amqplib": "~2.4", 852 | "php-console/php-console": "^3.1.3", 853 | "phpspec/prophecy": "^1.6.1", 854 | "phpunit/phpunit": "^8.3", 855 | "predis/predis": "^1.1", 856 | "rollbar/rollbar": "^1.3", 857 | "ruflin/elastica": ">=0.90 <3.0", 858 | "swiftmailer/swiftmailer": "^5.3|^6.0" 859 | }, 860 | "suggest": { 861 | "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", 862 | "doctrine/couchdb": "Allow sending log messages to a CouchDB server", 863 | "elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client", 864 | "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", 865 | "ext-mbstring": "Allow to work properly with unicode symbols", 866 | "ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)", 867 | "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", 868 | "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", 869 | "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", 870 | "php-console/php-console": "Allow sending log messages to Google Chrome", 871 | "rollbar/rollbar": "Allow sending log messages to Rollbar", 872 | "ruflin/elastica": "Allow sending log messages to an Elastic Search server" 873 | }, 874 | "type": "library", 875 | "extra": { 876 | "branch-alias": { 877 | "dev-master": "2.x-dev" 878 | } 879 | }, 880 | "autoload": { 881 | "psr-4": { 882 | "Monolog\\": "src/Monolog" 883 | } 884 | }, 885 | "notification-url": "https://packagist.org/downloads/", 886 | "license": [ 887 | "MIT" 888 | ], 889 | "authors": [ 890 | { 891 | "name": "Jordi Boggiano", 892 | "email": "j.boggiano@seld.be", 893 | "homepage": "http://seld.be" 894 | } 895 | ], 896 | "description": "Sends your logs to files, sockets, inboxes, databases and various web services", 897 | "homepage": "http://github.com/Seldaek/monolog", 898 | "keywords": [ 899 | "log", 900 | "logging", 901 | "psr-3" 902 | ], 903 | "time": "2019-12-20T14:22:59+00:00" 904 | }, 905 | { 906 | "name": "myclabs/deep-copy", 907 | "version": "1.9.5", 908 | "source": { 909 | "type": "git", 910 | "url": "https://github.com/myclabs/DeepCopy.git", 911 | "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef" 912 | }, 913 | "dist": { 914 | "type": "zip", 915 | "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef", 916 | "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef", 917 | "shasum": "" 918 | }, 919 | "require": { 920 | "php": "^7.1" 921 | }, 922 | "replace": { 923 | "myclabs/deep-copy": "self.version" 924 | }, 925 | "require-dev": { 926 | "doctrine/collections": "^1.0", 927 | "doctrine/common": "^2.6", 928 | "phpunit/phpunit": "^7.1" 929 | }, 930 | "type": "library", 931 | "autoload": { 932 | "psr-4": { 933 | "DeepCopy\\": "src/DeepCopy/" 934 | }, 935 | "files": [ 936 | "src/DeepCopy/deep_copy.php" 937 | ] 938 | }, 939 | "notification-url": "https://packagist.org/downloads/", 940 | "license": [ 941 | "MIT" 942 | ], 943 | "description": "Create deep copies (clones) of your objects", 944 | "keywords": [ 945 | "clone", 946 | "copy", 947 | "duplicate", 948 | "object", 949 | "object graph" 950 | ], 951 | "time": "2020-01-17T21:11:47+00:00" 952 | }, 953 | { 954 | "name": "nesbot/carbon", 955 | "version": "2.32.2", 956 | "source": { 957 | "type": "git", 958 | "url": "https://github.com/briannesbitt/Carbon.git", 959 | "reference": "f10e22cf546704fab1db4ad4b9dedbc5c797a0dc" 960 | }, 961 | "dist": { 962 | "type": "zip", 963 | "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/f10e22cf546704fab1db4ad4b9dedbc5c797a0dc", 964 | "reference": "f10e22cf546704fab1db4ad4b9dedbc5c797a0dc", 965 | "shasum": "" 966 | }, 967 | "require": { 968 | "ext-json": "*", 969 | "php": "^7.1.8 || ^8.0", 970 | "symfony/translation": "^3.4 || ^4.0 || ^5.0" 971 | }, 972 | "require-dev": { 973 | "doctrine/orm": "^2.7", 974 | "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", 975 | "kylekatarnls/multi-tester": "^1.1", 976 | "phpmd/phpmd": "^2.8", 977 | "phpstan/phpstan": "^0.11", 978 | "phpunit/phpunit": "^7.5 || ^8.0", 979 | "squizlabs/php_codesniffer": "^3.4" 980 | }, 981 | "bin": [ 982 | "bin/carbon" 983 | ], 984 | "type": "library", 985 | "extra": { 986 | "branch-alias": { 987 | "dev-master": "2.x-dev" 988 | }, 989 | "laravel": { 990 | "providers": [ 991 | "Carbon\\Laravel\\ServiceProvider" 992 | ] 993 | } 994 | }, 995 | "autoload": { 996 | "psr-4": { 997 | "Carbon\\": "src/Carbon/" 998 | } 999 | }, 1000 | "notification-url": "https://packagist.org/downloads/", 1001 | "license": [ 1002 | "MIT" 1003 | ], 1004 | "authors": [ 1005 | { 1006 | "name": "Brian Nesbitt", 1007 | "email": "brian@nesbot.com", 1008 | "homepage": "http://nesbot.com" 1009 | }, 1010 | { 1011 | "name": "kylekatarnls", 1012 | "homepage": "http://github.com/kylekatarnls" 1013 | } 1014 | ], 1015 | "description": "An API extension for DateTime that supports 281 different languages.", 1016 | "homepage": "http://carbon.nesbot.com", 1017 | "keywords": [ 1018 | "date", 1019 | "datetime", 1020 | "time" 1021 | ], 1022 | "time": "2020-03-31T13:43:19+00:00" 1023 | }, 1024 | { 1025 | "name": "opis/closure", 1026 | "version": "3.5.1", 1027 | "source": { 1028 | "type": "git", 1029 | "url": "https://github.com/opis/closure.git", 1030 | "reference": "93ebc5712cdad8d5f489b500c59d122df2e53969" 1031 | }, 1032 | "dist": { 1033 | "type": "zip", 1034 | "url": "https://api.github.com/repos/opis/closure/zipball/93ebc5712cdad8d5f489b500c59d122df2e53969", 1035 | "reference": "93ebc5712cdad8d5f489b500c59d122df2e53969", 1036 | "shasum": "" 1037 | }, 1038 | "require": { 1039 | "php": "^5.4 || ^7.0" 1040 | }, 1041 | "require-dev": { 1042 | "jeremeamia/superclosure": "^2.0", 1043 | "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" 1044 | }, 1045 | "type": "library", 1046 | "extra": { 1047 | "branch-alias": { 1048 | "dev-master": "3.5.x-dev" 1049 | } 1050 | }, 1051 | "autoload": { 1052 | "psr-4": { 1053 | "Opis\\Closure\\": "src/" 1054 | }, 1055 | "files": [ 1056 | "functions.php" 1057 | ] 1058 | }, 1059 | "notification-url": "https://packagist.org/downloads/", 1060 | "license": [ 1061 | "MIT" 1062 | ], 1063 | "authors": [ 1064 | { 1065 | "name": "Marius Sarca", 1066 | "email": "marius.sarca@gmail.com" 1067 | }, 1068 | { 1069 | "name": "Sorin Sarca", 1070 | "email": "sarca_sorin@hotmail.com" 1071 | } 1072 | ], 1073 | "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", 1074 | "homepage": "https://opis.io/closure", 1075 | "keywords": [ 1076 | "anonymous functions", 1077 | "closure", 1078 | "function", 1079 | "serializable", 1080 | "serialization", 1081 | "serialize" 1082 | ], 1083 | "time": "2019-11-29T22:36:02+00:00" 1084 | }, 1085 | { 1086 | "name": "orchestra/testbench", 1087 | "version": "v5.1.0", 1088 | "source": { 1089 | "type": "git", 1090 | "url": "https://github.com/orchestral/testbench.git", 1091 | "reference": "e36bdb5fc599495f46a8b2fd3a5e6ffed044e095" 1092 | }, 1093 | "dist": { 1094 | "type": "zip", 1095 | "url": "https://api.github.com/repos/orchestral/testbench/zipball/e36bdb5fc599495f46a8b2fd3a5e6ffed044e095", 1096 | "reference": "e36bdb5fc599495f46a8b2fd3a5e6ffed044e095", 1097 | "shasum": "" 1098 | }, 1099 | "require": { 1100 | "laravel/framework": "^7.1", 1101 | "mockery/mockery": "^1.3.1", 1102 | "orchestra/testbench-core": "^5.1", 1103 | "php": ">=7.2.5", 1104 | "phpunit/phpunit": "^8.4 || ^9.0" 1105 | }, 1106 | "type": "library", 1107 | "extra": { 1108 | "branch-alias": { 1109 | "dev-master": "6.0-dev" 1110 | } 1111 | }, 1112 | "notification-url": "https://packagist.org/downloads/", 1113 | "license": [ 1114 | "MIT" 1115 | ], 1116 | "authors": [ 1117 | { 1118 | "name": "Mior Muhammad Zaki", 1119 | "email": "crynobone@gmail.com", 1120 | "homepage": "https://github.com/crynobone" 1121 | } 1122 | ], 1123 | "description": "Laravel Testing Helper for Packages Development", 1124 | "homepage": "http://orchestraplatform.com/docs/latest/components/testbench/", 1125 | "keywords": [ 1126 | "BDD", 1127 | "TDD", 1128 | "laravel", 1129 | "orchestra-platform", 1130 | "orchestral", 1131 | "testing" 1132 | ], 1133 | "time": "2020-03-10T17:14:11+00:00" 1134 | }, 1135 | { 1136 | "name": "orchestra/testbench-core", 1137 | "version": "v5.1.2", 1138 | "source": { 1139 | "type": "git", 1140 | "url": "https://github.com/orchestral/testbench-core.git", 1141 | "reference": "ca909601ac743dbdf6807608bcb33e78a0c3f80a" 1142 | }, 1143 | "dist": { 1144 | "type": "zip", 1145 | "url": "https://api.github.com/repos/orchestral/testbench-core/zipball/ca909601ac743dbdf6807608bcb33e78a0c3f80a", 1146 | "reference": "ca909601ac743dbdf6807608bcb33e78a0c3f80a", 1147 | "shasum": "" 1148 | }, 1149 | "require": { 1150 | "fzaninotto/faker": "^1.9.1", 1151 | "php": ">=7.2.5" 1152 | }, 1153 | "require-dev": { 1154 | "laravel/framework": "^7.1", 1155 | "laravel/laravel": "dev-master", 1156 | "mockery/mockery": "^1.3.1", 1157 | "orchestra/canvas": "^5.0", 1158 | "phpunit/phpunit": "^8.4 || ^9.0" 1159 | }, 1160 | "suggest": { 1161 | "laravel/framework": "Required for testing (^7.1).", 1162 | "mockery/mockery": "Allow using Mockery for testing (^1.3.1).", 1163 | "orchestra/testbench-browser-kit": "Allow using legacy Laravel BrowserKit for testing (^5.0).", 1164 | "orchestra/testbench-dusk": "Allow using Laravel Dusk for testing (^5.0).", 1165 | "phpunit/phpunit": "Allow using PHPUnit for testing (^8.4 || ^9.0)." 1166 | }, 1167 | "type": "library", 1168 | "extra": { 1169 | "branch-alias": { 1170 | "dev-master": "5.0-dev" 1171 | } 1172 | }, 1173 | "autoload": { 1174 | "psr-4": { 1175 | "Orchestra\\Testbench\\": "src/" 1176 | } 1177 | }, 1178 | "notification-url": "https://packagist.org/downloads/", 1179 | "license": [ 1180 | "MIT" 1181 | ], 1182 | "authors": [ 1183 | { 1184 | "name": "Mior Muhammad Zaki", 1185 | "email": "crynobone@gmail.com", 1186 | "homepage": "https://github.com/crynobone" 1187 | } 1188 | ], 1189 | "description": "Testing Helper for Laravel Development", 1190 | "homepage": "http://orchestraplatform.com/docs/latest/components/testbench/", 1191 | "keywords": [ 1192 | "BDD", 1193 | "TDD", 1194 | "laravel", 1195 | "orchestra-platform", 1196 | "orchestral", 1197 | "testing" 1198 | ], 1199 | "time": "2020-03-31T01:45:21+00:00" 1200 | }, 1201 | { 1202 | "name": "phar-io/manifest", 1203 | "version": "1.0.3", 1204 | "source": { 1205 | "type": "git", 1206 | "url": "https://github.com/phar-io/manifest.git", 1207 | "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4" 1208 | }, 1209 | "dist": { 1210 | "type": "zip", 1211 | "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", 1212 | "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", 1213 | "shasum": "" 1214 | }, 1215 | "require": { 1216 | "ext-dom": "*", 1217 | "ext-phar": "*", 1218 | "phar-io/version": "^2.0", 1219 | "php": "^5.6 || ^7.0" 1220 | }, 1221 | "type": "library", 1222 | "extra": { 1223 | "branch-alias": { 1224 | "dev-master": "1.0.x-dev" 1225 | } 1226 | }, 1227 | "autoload": { 1228 | "classmap": [ 1229 | "src/" 1230 | ] 1231 | }, 1232 | "notification-url": "https://packagist.org/downloads/", 1233 | "license": [ 1234 | "BSD-3-Clause" 1235 | ], 1236 | "authors": [ 1237 | { 1238 | "name": "Arne Blankerts", 1239 | "email": "arne@blankerts.de", 1240 | "role": "Developer" 1241 | }, 1242 | { 1243 | "name": "Sebastian Heuer", 1244 | "email": "sebastian@phpeople.de", 1245 | "role": "Developer" 1246 | }, 1247 | { 1248 | "name": "Sebastian Bergmann", 1249 | "email": "sebastian@phpunit.de", 1250 | "role": "Developer" 1251 | } 1252 | ], 1253 | "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", 1254 | "time": "2018-07-08T19:23:20+00:00" 1255 | }, 1256 | { 1257 | "name": "phar-io/version", 1258 | "version": "2.0.1", 1259 | "source": { 1260 | "type": "git", 1261 | "url": "https://github.com/phar-io/version.git", 1262 | "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6" 1263 | }, 1264 | "dist": { 1265 | "type": "zip", 1266 | "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6", 1267 | "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6", 1268 | "shasum": "" 1269 | }, 1270 | "require": { 1271 | "php": "^5.6 || ^7.0" 1272 | }, 1273 | "type": "library", 1274 | "autoload": { 1275 | "classmap": [ 1276 | "src/" 1277 | ] 1278 | }, 1279 | "notification-url": "https://packagist.org/downloads/", 1280 | "license": [ 1281 | "BSD-3-Clause" 1282 | ], 1283 | "authors": [ 1284 | { 1285 | "name": "Arne Blankerts", 1286 | "email": "arne@blankerts.de", 1287 | "role": "Developer" 1288 | }, 1289 | { 1290 | "name": "Sebastian Heuer", 1291 | "email": "sebastian@phpeople.de", 1292 | "role": "Developer" 1293 | }, 1294 | { 1295 | "name": "Sebastian Bergmann", 1296 | "email": "sebastian@phpunit.de", 1297 | "role": "Developer" 1298 | } 1299 | ], 1300 | "description": "Library for handling version information and constraints", 1301 | "time": "2018-07-08T19:19:57+00:00" 1302 | }, 1303 | { 1304 | "name": "phpdocumentor/reflection-common", 1305 | "version": "2.0.0", 1306 | "source": { 1307 | "type": "git", 1308 | "url": "https://github.com/phpDocumentor/ReflectionCommon.git", 1309 | "reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a" 1310 | }, 1311 | "dist": { 1312 | "type": "zip", 1313 | "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/63a995caa1ca9e5590304cd845c15ad6d482a62a", 1314 | "reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a", 1315 | "shasum": "" 1316 | }, 1317 | "require": { 1318 | "php": ">=7.1" 1319 | }, 1320 | "require-dev": { 1321 | "phpunit/phpunit": "~6" 1322 | }, 1323 | "type": "library", 1324 | "extra": { 1325 | "branch-alias": { 1326 | "dev-master": "2.x-dev" 1327 | } 1328 | }, 1329 | "autoload": { 1330 | "psr-4": { 1331 | "phpDocumentor\\Reflection\\": "src/" 1332 | } 1333 | }, 1334 | "notification-url": "https://packagist.org/downloads/", 1335 | "license": [ 1336 | "MIT" 1337 | ], 1338 | "authors": [ 1339 | { 1340 | "name": "Jaap van Otterdijk", 1341 | "email": "opensource@ijaap.nl" 1342 | } 1343 | ], 1344 | "description": "Common reflection classes used by phpdocumentor to reflect the code structure", 1345 | "homepage": "http://www.phpdoc.org", 1346 | "keywords": [ 1347 | "FQSEN", 1348 | "phpDocumentor", 1349 | "phpdoc", 1350 | "reflection", 1351 | "static analysis" 1352 | ], 1353 | "time": "2018-08-07T13:53:10+00:00" 1354 | }, 1355 | { 1356 | "name": "phpdocumentor/reflection-docblock", 1357 | "version": "5.1.0", 1358 | "source": { 1359 | "type": "git", 1360 | "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", 1361 | "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e" 1362 | }, 1363 | "dist": { 1364 | "type": "zip", 1365 | "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", 1366 | "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", 1367 | "shasum": "" 1368 | }, 1369 | "require": { 1370 | "ext-filter": "^7.1", 1371 | "php": "^7.2", 1372 | "phpdocumentor/reflection-common": "^2.0", 1373 | "phpdocumentor/type-resolver": "^1.0", 1374 | "webmozart/assert": "^1" 1375 | }, 1376 | "require-dev": { 1377 | "doctrine/instantiator": "^1", 1378 | "mockery/mockery": "^1" 1379 | }, 1380 | "type": "library", 1381 | "extra": { 1382 | "branch-alias": { 1383 | "dev-master": "5.x-dev" 1384 | } 1385 | }, 1386 | "autoload": { 1387 | "psr-4": { 1388 | "phpDocumentor\\Reflection\\": "src" 1389 | } 1390 | }, 1391 | "notification-url": "https://packagist.org/downloads/", 1392 | "license": [ 1393 | "MIT" 1394 | ], 1395 | "authors": [ 1396 | { 1397 | "name": "Mike van Riel", 1398 | "email": "me@mikevanriel.com" 1399 | }, 1400 | { 1401 | "name": "Jaap van Otterdijk", 1402 | "email": "account@ijaap.nl" 1403 | } 1404 | ], 1405 | "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", 1406 | "time": "2020-02-22T12:28:44+00:00" 1407 | }, 1408 | { 1409 | "name": "phpdocumentor/type-resolver", 1410 | "version": "1.1.0", 1411 | "source": { 1412 | "type": "git", 1413 | "url": "https://github.com/phpDocumentor/TypeResolver.git", 1414 | "reference": "7462d5f123dfc080dfdf26897032a6513644fc95" 1415 | }, 1416 | "dist": { 1417 | "type": "zip", 1418 | "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95", 1419 | "reference": "7462d5f123dfc080dfdf26897032a6513644fc95", 1420 | "shasum": "" 1421 | }, 1422 | "require": { 1423 | "php": "^7.2", 1424 | "phpdocumentor/reflection-common": "^2.0" 1425 | }, 1426 | "require-dev": { 1427 | "ext-tokenizer": "^7.2", 1428 | "mockery/mockery": "~1" 1429 | }, 1430 | "type": "library", 1431 | "extra": { 1432 | "branch-alias": { 1433 | "dev-master": "1.x-dev" 1434 | } 1435 | }, 1436 | "autoload": { 1437 | "psr-4": { 1438 | "phpDocumentor\\Reflection\\": "src" 1439 | } 1440 | }, 1441 | "notification-url": "https://packagist.org/downloads/", 1442 | "license": [ 1443 | "MIT" 1444 | ], 1445 | "authors": [ 1446 | { 1447 | "name": "Mike van Riel", 1448 | "email": "me@mikevanriel.com" 1449 | } 1450 | ], 1451 | "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", 1452 | "time": "2020-02-18T18:59:58+00:00" 1453 | }, 1454 | { 1455 | "name": "phpoption/phpoption", 1456 | "version": "1.7.3", 1457 | "source": { 1458 | "type": "git", 1459 | "url": "https://github.com/schmittjoh/php-option.git", 1460 | "reference": "4acfd6a4b33a509d8c88f50e5222f734b6aeebae" 1461 | }, 1462 | "dist": { 1463 | "type": "zip", 1464 | "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/4acfd6a4b33a509d8c88f50e5222f734b6aeebae", 1465 | "reference": "4acfd6a4b33a509d8c88f50e5222f734b6aeebae", 1466 | "shasum": "" 1467 | }, 1468 | "require": { 1469 | "php": "^5.5.9 || ^7.0 || ^8.0" 1470 | }, 1471 | "require-dev": { 1472 | "bamarni/composer-bin-plugin": "^1.3", 1473 | "phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0" 1474 | }, 1475 | "type": "library", 1476 | "extra": { 1477 | "branch-alias": { 1478 | "dev-master": "1.7-dev" 1479 | } 1480 | }, 1481 | "autoload": { 1482 | "psr-4": { 1483 | "PhpOption\\": "src/PhpOption/" 1484 | } 1485 | }, 1486 | "notification-url": "https://packagist.org/downloads/", 1487 | "license": [ 1488 | "Apache-2.0" 1489 | ], 1490 | "authors": [ 1491 | { 1492 | "name": "Johannes M. Schmitt", 1493 | "email": "schmittjoh@gmail.com" 1494 | }, 1495 | { 1496 | "name": "Graham Campbell", 1497 | "email": "graham@alt-three.com" 1498 | } 1499 | ], 1500 | "description": "Option Type for PHP", 1501 | "keywords": [ 1502 | "language", 1503 | "option", 1504 | "php", 1505 | "type" 1506 | ], 1507 | "time": "2020-03-21T18:07:53+00:00" 1508 | }, 1509 | { 1510 | "name": "phpspec/prophecy", 1511 | "version": "v1.10.3", 1512 | "source": { 1513 | "type": "git", 1514 | "url": "https://github.com/phpspec/prophecy.git", 1515 | "reference": "451c3cd1418cf640de218914901e51b064abb093" 1516 | }, 1517 | "dist": { 1518 | "type": "zip", 1519 | "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093", 1520 | "reference": "451c3cd1418cf640de218914901e51b064abb093", 1521 | "shasum": "" 1522 | }, 1523 | "require": { 1524 | "doctrine/instantiator": "^1.0.2", 1525 | "php": "^5.3|^7.0", 1526 | "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0", 1527 | "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0", 1528 | "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0" 1529 | }, 1530 | "require-dev": { 1531 | "phpspec/phpspec": "^2.5 || ^3.2", 1532 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1" 1533 | }, 1534 | "type": "library", 1535 | "extra": { 1536 | "branch-alias": { 1537 | "dev-master": "1.10.x-dev" 1538 | } 1539 | }, 1540 | "autoload": { 1541 | "psr-4": { 1542 | "Prophecy\\": "src/Prophecy" 1543 | } 1544 | }, 1545 | "notification-url": "https://packagist.org/downloads/", 1546 | "license": [ 1547 | "MIT" 1548 | ], 1549 | "authors": [ 1550 | { 1551 | "name": "Konstantin Kudryashov", 1552 | "email": "ever.zet@gmail.com", 1553 | "homepage": "http://everzet.com" 1554 | }, 1555 | { 1556 | "name": "Marcello Duarte", 1557 | "email": "marcello.duarte@gmail.com" 1558 | } 1559 | ], 1560 | "description": "Highly opinionated mocking framework for PHP 5.3+", 1561 | "homepage": "https://github.com/phpspec/prophecy", 1562 | "keywords": [ 1563 | "Double", 1564 | "Dummy", 1565 | "fake", 1566 | "mock", 1567 | "spy", 1568 | "stub" 1569 | ], 1570 | "time": "2020-03-05T15:02:03+00:00" 1571 | }, 1572 | { 1573 | "name": "phpunit/php-code-coverage", 1574 | "version": "8.0.1", 1575 | "source": { 1576 | "type": "git", 1577 | "url": "https://github.com/sebastianbergmann/php-code-coverage.git", 1578 | "reference": "31e94ccc084025d6abee0585df533eb3a792b96a" 1579 | }, 1580 | "dist": { 1581 | "type": "zip", 1582 | "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/31e94ccc084025d6abee0585df533eb3a792b96a", 1583 | "reference": "31e94ccc084025d6abee0585df533eb3a792b96a", 1584 | "shasum": "" 1585 | }, 1586 | "require": { 1587 | "ext-dom": "*", 1588 | "ext-xmlwriter": "*", 1589 | "php": "^7.3", 1590 | "phpunit/php-file-iterator": "^3.0", 1591 | "phpunit/php-text-template": "^2.0", 1592 | "phpunit/php-token-stream": "^4.0", 1593 | "sebastian/code-unit-reverse-lookup": "^2.0", 1594 | "sebastian/environment": "^5.0", 1595 | "sebastian/version": "^3.0", 1596 | "theseer/tokenizer": "^1.1.3" 1597 | }, 1598 | "require-dev": { 1599 | "phpunit/phpunit": "^9.0" 1600 | }, 1601 | "suggest": { 1602 | "ext-pcov": "*", 1603 | "ext-xdebug": "*" 1604 | }, 1605 | "type": "library", 1606 | "extra": { 1607 | "branch-alias": { 1608 | "dev-master": "8.0-dev" 1609 | } 1610 | }, 1611 | "autoload": { 1612 | "classmap": [ 1613 | "src/" 1614 | ] 1615 | }, 1616 | "notification-url": "https://packagist.org/downloads/", 1617 | "license": [ 1618 | "BSD-3-Clause" 1619 | ], 1620 | "authors": [ 1621 | { 1622 | "name": "Sebastian Bergmann", 1623 | "email": "sebastian@phpunit.de", 1624 | "role": "lead" 1625 | } 1626 | ], 1627 | "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", 1628 | "homepage": "https://github.com/sebastianbergmann/php-code-coverage", 1629 | "keywords": [ 1630 | "coverage", 1631 | "testing", 1632 | "xunit" 1633 | ], 1634 | "time": "2020-02-19T13:41:19+00:00" 1635 | }, 1636 | { 1637 | "name": "phpunit/php-file-iterator", 1638 | "version": "3.0.0", 1639 | "source": { 1640 | "type": "git", 1641 | "url": "https://github.com/sebastianbergmann/php-file-iterator.git", 1642 | "reference": "354d4a5faa7449a377a18b94a2026ca3415e3d7a" 1643 | }, 1644 | "dist": { 1645 | "type": "zip", 1646 | "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/354d4a5faa7449a377a18b94a2026ca3415e3d7a", 1647 | "reference": "354d4a5faa7449a377a18b94a2026ca3415e3d7a", 1648 | "shasum": "" 1649 | }, 1650 | "require": { 1651 | "php": "^7.3" 1652 | }, 1653 | "require-dev": { 1654 | "phpunit/phpunit": "^9.0" 1655 | }, 1656 | "type": "library", 1657 | "extra": { 1658 | "branch-alias": { 1659 | "dev-master": "3.0-dev" 1660 | } 1661 | }, 1662 | "autoload": { 1663 | "classmap": [ 1664 | "src/" 1665 | ] 1666 | }, 1667 | "notification-url": "https://packagist.org/downloads/", 1668 | "license": [ 1669 | "BSD-3-Clause" 1670 | ], 1671 | "authors": [ 1672 | { 1673 | "name": "Sebastian Bergmann", 1674 | "email": "sebastian@phpunit.de", 1675 | "role": "lead" 1676 | } 1677 | ], 1678 | "description": "FilterIterator implementation that filters files based on a list of suffixes.", 1679 | "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", 1680 | "keywords": [ 1681 | "filesystem", 1682 | "iterator" 1683 | ], 1684 | "time": "2020-02-07T06:05:22+00:00" 1685 | }, 1686 | { 1687 | "name": "phpunit/php-invoker", 1688 | "version": "3.0.0", 1689 | "source": { 1690 | "type": "git", 1691 | "url": "https://github.com/sebastianbergmann/php-invoker.git", 1692 | "reference": "7579d5a1ba7f3ac11c80004d205877911315ae7a" 1693 | }, 1694 | "dist": { 1695 | "type": "zip", 1696 | "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/7579d5a1ba7f3ac11c80004d205877911315ae7a", 1697 | "reference": "7579d5a1ba7f3ac11c80004d205877911315ae7a", 1698 | "shasum": "" 1699 | }, 1700 | "require": { 1701 | "php": "^7.3" 1702 | }, 1703 | "require-dev": { 1704 | "ext-pcntl": "*", 1705 | "phpunit/phpunit": "^9.0" 1706 | }, 1707 | "suggest": { 1708 | "ext-pcntl": "*" 1709 | }, 1710 | "type": "library", 1711 | "extra": { 1712 | "branch-alias": { 1713 | "dev-master": "3.0-dev" 1714 | } 1715 | }, 1716 | "autoload": { 1717 | "classmap": [ 1718 | "src/" 1719 | ] 1720 | }, 1721 | "notification-url": "https://packagist.org/downloads/", 1722 | "license": [ 1723 | "BSD-3-Clause" 1724 | ], 1725 | "authors": [ 1726 | { 1727 | "name": "Sebastian Bergmann", 1728 | "email": "sebastian@phpunit.de", 1729 | "role": "lead" 1730 | } 1731 | ], 1732 | "description": "Invoke callables with a timeout", 1733 | "homepage": "https://github.com/sebastianbergmann/php-invoker/", 1734 | "keywords": [ 1735 | "process" 1736 | ], 1737 | "time": "2020-02-07T06:06:11+00:00" 1738 | }, 1739 | { 1740 | "name": "phpunit/php-text-template", 1741 | "version": "2.0.0", 1742 | "source": { 1743 | "type": "git", 1744 | "url": "https://github.com/sebastianbergmann/php-text-template.git", 1745 | "reference": "526dc996cc0ebdfa428cd2dfccd79b7b53fee346" 1746 | }, 1747 | "dist": { 1748 | "type": "zip", 1749 | "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/526dc996cc0ebdfa428cd2dfccd79b7b53fee346", 1750 | "reference": "526dc996cc0ebdfa428cd2dfccd79b7b53fee346", 1751 | "shasum": "" 1752 | }, 1753 | "require": { 1754 | "php": "^7.3" 1755 | }, 1756 | "type": "library", 1757 | "extra": { 1758 | "branch-alias": { 1759 | "dev-master": "2.0-dev" 1760 | } 1761 | }, 1762 | "autoload": { 1763 | "classmap": [ 1764 | "src/" 1765 | ] 1766 | }, 1767 | "notification-url": "https://packagist.org/downloads/", 1768 | "license": [ 1769 | "BSD-3-Clause" 1770 | ], 1771 | "authors": [ 1772 | { 1773 | "name": "Sebastian Bergmann", 1774 | "email": "sebastian@phpunit.de", 1775 | "role": "lead" 1776 | } 1777 | ], 1778 | "description": "Simple template engine.", 1779 | "homepage": "https://github.com/sebastianbergmann/php-text-template/", 1780 | "keywords": [ 1781 | "template" 1782 | ], 1783 | "time": "2020-02-01T07:43:44+00:00" 1784 | }, 1785 | { 1786 | "name": "phpunit/php-timer", 1787 | "version": "3.0.0", 1788 | "source": { 1789 | "type": "git", 1790 | "url": "https://github.com/sebastianbergmann/php-timer.git", 1791 | "reference": "4118013a4d0f97356eae8e7fb2f6c6472575d1df" 1792 | }, 1793 | "dist": { 1794 | "type": "zip", 1795 | "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/4118013a4d0f97356eae8e7fb2f6c6472575d1df", 1796 | "reference": "4118013a4d0f97356eae8e7fb2f6c6472575d1df", 1797 | "shasum": "" 1798 | }, 1799 | "require": { 1800 | "php": "^7.3" 1801 | }, 1802 | "require-dev": { 1803 | "phpunit/phpunit": "^9.0" 1804 | }, 1805 | "type": "library", 1806 | "extra": { 1807 | "branch-alias": { 1808 | "dev-master": "3.0-dev" 1809 | } 1810 | }, 1811 | "autoload": { 1812 | "classmap": [ 1813 | "src/" 1814 | ] 1815 | }, 1816 | "notification-url": "https://packagist.org/downloads/", 1817 | "license": [ 1818 | "BSD-3-Clause" 1819 | ], 1820 | "authors": [ 1821 | { 1822 | "name": "Sebastian Bergmann", 1823 | "email": "sebastian@phpunit.de", 1824 | "role": "lead" 1825 | } 1826 | ], 1827 | "description": "Utility class for timing", 1828 | "homepage": "https://github.com/sebastianbergmann/php-timer/", 1829 | "keywords": [ 1830 | "timer" 1831 | ], 1832 | "time": "2020-02-07T06:08:11+00:00" 1833 | }, 1834 | { 1835 | "name": "phpunit/php-token-stream", 1836 | "version": "4.0.0", 1837 | "source": { 1838 | "type": "git", 1839 | "url": "https://github.com/sebastianbergmann/php-token-stream.git", 1840 | "reference": "b2560a0c33f7710e4d7f8780964193e8e8f8effe" 1841 | }, 1842 | "dist": { 1843 | "type": "zip", 1844 | "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/b2560a0c33f7710e4d7f8780964193e8e8f8effe", 1845 | "reference": "b2560a0c33f7710e4d7f8780964193e8e8f8effe", 1846 | "shasum": "" 1847 | }, 1848 | "require": { 1849 | "ext-tokenizer": "*", 1850 | "php": "^7.3" 1851 | }, 1852 | "require-dev": { 1853 | "phpunit/phpunit": "^9.0" 1854 | }, 1855 | "type": "library", 1856 | "extra": { 1857 | "branch-alias": { 1858 | "dev-master": "4.0-dev" 1859 | } 1860 | }, 1861 | "autoload": { 1862 | "classmap": [ 1863 | "src/" 1864 | ] 1865 | }, 1866 | "notification-url": "https://packagist.org/downloads/", 1867 | "license": [ 1868 | "BSD-3-Clause" 1869 | ], 1870 | "authors": [ 1871 | { 1872 | "name": "Sebastian Bergmann", 1873 | "email": "sebastian@phpunit.de" 1874 | } 1875 | ], 1876 | "description": "Wrapper around PHP's tokenizer extension.", 1877 | "homepage": "https://github.com/sebastianbergmann/php-token-stream/", 1878 | "keywords": [ 1879 | "tokenizer" 1880 | ], 1881 | "time": "2020-02-07T06:19:00+00:00" 1882 | }, 1883 | { 1884 | "name": "phpunit/phpunit", 1885 | "version": "9.1.1", 1886 | "source": { 1887 | "type": "git", 1888 | "url": "https://github.com/sebastianbergmann/phpunit.git", 1889 | "reference": "848f6521c906500e66229668768576d35de0227e" 1890 | }, 1891 | "dist": { 1892 | "type": "zip", 1893 | "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/848f6521c906500e66229668768576d35de0227e", 1894 | "reference": "848f6521c906500e66229668768576d35de0227e", 1895 | "shasum": "" 1896 | }, 1897 | "require": { 1898 | "doctrine/instantiator": "^1.2.0", 1899 | "ext-dom": "*", 1900 | "ext-json": "*", 1901 | "ext-libxml": "*", 1902 | "ext-mbstring": "*", 1903 | "ext-xml": "*", 1904 | "ext-xmlwriter": "*", 1905 | "myclabs/deep-copy": "^1.9.1", 1906 | "phar-io/manifest": "^1.0.3", 1907 | "phar-io/version": "^2.0.1", 1908 | "php": "^7.3", 1909 | "phpspec/prophecy": "^1.8.1", 1910 | "phpunit/php-code-coverage": "^8.0.1", 1911 | "phpunit/php-file-iterator": "^3.0", 1912 | "phpunit/php-invoker": "^3.0", 1913 | "phpunit/php-text-template": "^2.0", 1914 | "phpunit/php-timer": "^3.0", 1915 | "sebastian/code-unit": "^1.0", 1916 | "sebastian/comparator": "^4.0", 1917 | "sebastian/diff": "^4.0", 1918 | "sebastian/environment": "^5.0.1", 1919 | "sebastian/exporter": "^4.0", 1920 | "sebastian/global-state": "^4.0", 1921 | "sebastian/object-enumerator": "^4.0", 1922 | "sebastian/resource-operations": "^3.0", 1923 | "sebastian/type": "^2.0", 1924 | "sebastian/version": "^3.0" 1925 | }, 1926 | "require-dev": { 1927 | "ext-pdo": "*" 1928 | }, 1929 | "suggest": { 1930 | "ext-soap": "*", 1931 | "ext-xdebug": "*" 1932 | }, 1933 | "bin": [ 1934 | "phpunit" 1935 | ], 1936 | "type": "library", 1937 | "extra": { 1938 | "branch-alias": { 1939 | "dev-master": "9.1-dev" 1940 | } 1941 | }, 1942 | "autoload": { 1943 | "classmap": [ 1944 | "src/" 1945 | ], 1946 | "files": [ 1947 | "src/Framework/Assert/Functions.php" 1948 | ] 1949 | }, 1950 | "notification-url": "https://packagist.org/downloads/", 1951 | "license": [ 1952 | "BSD-3-Clause" 1953 | ], 1954 | "authors": [ 1955 | { 1956 | "name": "Sebastian Bergmann", 1957 | "email": "sebastian@phpunit.de", 1958 | "role": "lead" 1959 | } 1960 | ], 1961 | "description": "The PHP Unit Testing framework.", 1962 | "homepage": "https://phpunit.de/", 1963 | "keywords": [ 1964 | "phpunit", 1965 | "testing", 1966 | "xunit" 1967 | ], 1968 | "time": "2020-04-03T14:40:04+00:00" 1969 | }, 1970 | { 1971 | "name": "psr/container", 1972 | "version": "1.0.0", 1973 | "source": { 1974 | "type": "git", 1975 | "url": "https://github.com/php-fig/container.git", 1976 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" 1977 | }, 1978 | "dist": { 1979 | "type": "zip", 1980 | "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 1981 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 1982 | "shasum": "" 1983 | }, 1984 | "require": { 1985 | "php": ">=5.3.0" 1986 | }, 1987 | "type": "library", 1988 | "extra": { 1989 | "branch-alias": { 1990 | "dev-master": "1.0.x-dev" 1991 | } 1992 | }, 1993 | "autoload": { 1994 | "psr-4": { 1995 | "Psr\\Container\\": "src/" 1996 | } 1997 | }, 1998 | "notification-url": "https://packagist.org/downloads/", 1999 | "license": [ 2000 | "MIT" 2001 | ], 2002 | "authors": [ 2003 | { 2004 | "name": "PHP-FIG", 2005 | "homepage": "http://www.php-fig.org/" 2006 | } 2007 | ], 2008 | "description": "Common Container Interface (PHP FIG PSR-11)", 2009 | "homepage": "https://github.com/php-fig/container", 2010 | "keywords": [ 2011 | "PSR-11", 2012 | "container", 2013 | "container-interface", 2014 | "container-interop", 2015 | "psr" 2016 | ], 2017 | "time": "2017-02-14T16:28:37+00:00" 2018 | }, 2019 | { 2020 | "name": "psr/event-dispatcher", 2021 | "version": "1.0.0", 2022 | "source": { 2023 | "type": "git", 2024 | "url": "https://github.com/php-fig/event-dispatcher.git", 2025 | "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" 2026 | }, 2027 | "dist": { 2028 | "type": "zip", 2029 | "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", 2030 | "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", 2031 | "shasum": "" 2032 | }, 2033 | "require": { 2034 | "php": ">=7.2.0" 2035 | }, 2036 | "type": "library", 2037 | "extra": { 2038 | "branch-alias": { 2039 | "dev-master": "1.0.x-dev" 2040 | } 2041 | }, 2042 | "autoload": { 2043 | "psr-4": { 2044 | "Psr\\EventDispatcher\\": "src/" 2045 | } 2046 | }, 2047 | "notification-url": "https://packagist.org/downloads/", 2048 | "license": [ 2049 | "MIT" 2050 | ], 2051 | "authors": [ 2052 | { 2053 | "name": "PHP-FIG", 2054 | "homepage": "http://www.php-fig.org/" 2055 | } 2056 | ], 2057 | "description": "Standard interfaces for event handling.", 2058 | "keywords": [ 2059 | "events", 2060 | "psr", 2061 | "psr-14" 2062 | ], 2063 | "time": "2019-01-08T18:20:26+00:00" 2064 | }, 2065 | { 2066 | "name": "psr/log", 2067 | "version": "1.1.3", 2068 | "source": { 2069 | "type": "git", 2070 | "url": "https://github.com/php-fig/log.git", 2071 | "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc" 2072 | }, 2073 | "dist": { 2074 | "type": "zip", 2075 | "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc", 2076 | "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc", 2077 | "shasum": "" 2078 | }, 2079 | "require": { 2080 | "php": ">=5.3.0" 2081 | }, 2082 | "type": "library", 2083 | "extra": { 2084 | "branch-alias": { 2085 | "dev-master": "1.1.x-dev" 2086 | } 2087 | }, 2088 | "autoload": { 2089 | "psr-4": { 2090 | "Psr\\Log\\": "Psr/Log/" 2091 | } 2092 | }, 2093 | "notification-url": "https://packagist.org/downloads/", 2094 | "license": [ 2095 | "MIT" 2096 | ], 2097 | "authors": [ 2098 | { 2099 | "name": "PHP-FIG", 2100 | "homepage": "http://www.php-fig.org/" 2101 | } 2102 | ], 2103 | "description": "Common interface for logging libraries", 2104 | "homepage": "https://github.com/php-fig/log", 2105 | "keywords": [ 2106 | "log", 2107 | "psr", 2108 | "psr-3" 2109 | ], 2110 | "time": "2020-03-23T09:12:05+00:00" 2111 | }, 2112 | { 2113 | "name": "psr/simple-cache", 2114 | "version": "1.0.1", 2115 | "source": { 2116 | "type": "git", 2117 | "url": "https://github.com/php-fig/simple-cache.git", 2118 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" 2119 | }, 2120 | "dist": { 2121 | "type": "zip", 2122 | "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 2123 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 2124 | "shasum": "" 2125 | }, 2126 | "require": { 2127 | "php": ">=5.3.0" 2128 | }, 2129 | "type": "library", 2130 | "extra": { 2131 | "branch-alias": { 2132 | "dev-master": "1.0.x-dev" 2133 | } 2134 | }, 2135 | "autoload": { 2136 | "psr-4": { 2137 | "Psr\\SimpleCache\\": "src/" 2138 | } 2139 | }, 2140 | "notification-url": "https://packagist.org/downloads/", 2141 | "license": [ 2142 | "MIT" 2143 | ], 2144 | "authors": [ 2145 | { 2146 | "name": "PHP-FIG", 2147 | "homepage": "http://www.php-fig.org/" 2148 | } 2149 | ], 2150 | "description": "Common interfaces for simple caching", 2151 | "keywords": [ 2152 | "cache", 2153 | "caching", 2154 | "psr", 2155 | "psr-16", 2156 | "simple-cache" 2157 | ], 2158 | "time": "2017-10-23T01:57:42+00:00" 2159 | }, 2160 | { 2161 | "name": "ramsey/collection", 2162 | "version": "1.0.1", 2163 | "source": { 2164 | "type": "git", 2165 | "url": "https://github.com/ramsey/collection.git", 2166 | "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca" 2167 | }, 2168 | "dist": { 2169 | "type": "zip", 2170 | "url": "https://api.github.com/repos/ramsey/collection/zipball/925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", 2171 | "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", 2172 | "shasum": "" 2173 | }, 2174 | "require": { 2175 | "php": "^7.2" 2176 | }, 2177 | "require-dev": { 2178 | "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0", 2179 | "fzaninotto/faker": "^1.5", 2180 | "jakub-onderka/php-parallel-lint": "^1", 2181 | "jangregor/phpstan-prophecy": "^0.6", 2182 | "mockery/mockery": "^1.3", 2183 | "phpstan/extension-installer": "^1", 2184 | "phpstan/phpdoc-parser": "0.4.1", 2185 | "phpstan/phpstan": "^0.12", 2186 | "phpstan/phpstan-mockery": "^0.12", 2187 | "phpstan/phpstan-phpunit": "^0.12", 2188 | "phpunit/phpunit": "^8.5", 2189 | "slevomat/coding-standard": "^6.0", 2190 | "squizlabs/php_codesniffer": "^3.5" 2191 | }, 2192 | "type": "library", 2193 | "autoload": { 2194 | "psr-4": { 2195 | "Ramsey\\Collection\\": "src/" 2196 | } 2197 | }, 2198 | "notification-url": "https://packagist.org/downloads/", 2199 | "license": [ 2200 | "MIT" 2201 | ], 2202 | "authors": [ 2203 | { 2204 | "name": "Ben Ramsey", 2205 | "email": "ben@benramsey.com", 2206 | "homepage": "https://benramsey.com" 2207 | } 2208 | ], 2209 | "description": "A PHP 7.2+ library for representing and manipulating collections.", 2210 | "homepage": "https://github.com/ramsey/collection", 2211 | "keywords": [ 2212 | "array", 2213 | "collection", 2214 | "hash", 2215 | "map", 2216 | "queue", 2217 | "set" 2218 | ], 2219 | "time": "2020-01-05T00:22:59+00:00" 2220 | }, 2221 | { 2222 | "name": "ramsey/uuid", 2223 | "version": "4.0.1", 2224 | "source": { 2225 | "type": "git", 2226 | "url": "https://github.com/ramsey/uuid.git", 2227 | "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d" 2228 | }, 2229 | "dist": { 2230 | "type": "zip", 2231 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", 2232 | "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", 2233 | "shasum": "" 2234 | }, 2235 | "require": { 2236 | "brick/math": "^0.8", 2237 | "ext-json": "*", 2238 | "php": "^7.2 || ^8", 2239 | "ramsey/collection": "^1.0", 2240 | "symfony/polyfill-ctype": "^1.8" 2241 | }, 2242 | "replace": { 2243 | "rhumsaa/uuid": "self.version" 2244 | }, 2245 | "require-dev": { 2246 | "codeception/aspect-mock": "^3", 2247 | "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2", 2248 | "doctrine/annotations": "^1.8", 2249 | "goaop/framework": "^2", 2250 | "mockery/mockery": "^1.3", 2251 | "moontoast/math": "^1.1", 2252 | "paragonie/random-lib": "^2", 2253 | "php-mock/php-mock-mockery": "^1.3", 2254 | "php-mock/php-mock-phpunit": "^2.5", 2255 | "php-parallel-lint/php-parallel-lint": "^1.1", 2256 | "phpstan/extension-installer": "^1.0", 2257 | "phpstan/phpdoc-parser": "0.4.3", 2258 | "phpstan/phpstan": "^0.12", 2259 | "phpstan/phpstan-mockery": "^0.12", 2260 | "phpstan/phpstan-phpunit": "^0.12", 2261 | "phpunit/phpunit": "^8.5", 2262 | "psy/psysh": "^0.10.0", 2263 | "slevomat/coding-standard": "^6.0", 2264 | "squizlabs/php_codesniffer": "^3.5", 2265 | "vimeo/psalm": "3.9.4" 2266 | }, 2267 | "suggest": { 2268 | "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", 2269 | "ext-ctype": "Enables faster processing of character classification using ctype functions.", 2270 | "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", 2271 | "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", 2272 | "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", 2273 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." 2274 | }, 2275 | "type": "library", 2276 | "extra": { 2277 | "branch-alias": { 2278 | "dev-master": "4.x-dev" 2279 | } 2280 | }, 2281 | "autoload": { 2282 | "psr-4": { 2283 | "Ramsey\\Uuid\\": "src/" 2284 | }, 2285 | "files": [ 2286 | "src/functions.php" 2287 | ] 2288 | }, 2289 | "notification-url": "https://packagist.org/downloads/", 2290 | "license": [ 2291 | "MIT" 2292 | ], 2293 | "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", 2294 | "homepage": "https://github.com/ramsey/uuid", 2295 | "keywords": [ 2296 | "guid", 2297 | "identifier", 2298 | "uuid" 2299 | ], 2300 | "time": "2020-03-29T20:13:32+00:00" 2301 | }, 2302 | { 2303 | "name": "sebastian/code-unit", 2304 | "version": "1.0.0", 2305 | "source": { 2306 | "type": "git", 2307 | "url": "https://github.com/sebastianbergmann/code-unit.git", 2308 | "reference": "8d8f09bd47c75159921e6e84fdef146343962866" 2309 | }, 2310 | "dist": { 2311 | "type": "zip", 2312 | "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/8d8f09bd47c75159921e6e84fdef146343962866", 2313 | "reference": "8d8f09bd47c75159921e6e84fdef146343962866", 2314 | "shasum": "" 2315 | }, 2316 | "require": { 2317 | "php": "^7.3" 2318 | }, 2319 | "require-dev": { 2320 | "phpunit/phpunit": "^9.0" 2321 | }, 2322 | "type": "library", 2323 | "extra": { 2324 | "branch-alias": { 2325 | "dev-master": "1.0-dev" 2326 | } 2327 | }, 2328 | "autoload": { 2329 | "classmap": [ 2330 | "src/" 2331 | ] 2332 | }, 2333 | "notification-url": "https://packagist.org/downloads/", 2334 | "license": [ 2335 | "BSD-3-Clause" 2336 | ], 2337 | "authors": [ 2338 | { 2339 | "name": "Sebastian Bergmann", 2340 | "email": "sebastian@phpunit.de", 2341 | "role": "lead" 2342 | } 2343 | ], 2344 | "description": "Collection of value objects that represent the PHP code units", 2345 | "homepage": "https://github.com/sebastianbergmann/code-unit", 2346 | "time": "2020-03-30T11:59:20+00:00" 2347 | }, 2348 | { 2349 | "name": "sebastian/code-unit-reverse-lookup", 2350 | "version": "2.0.0", 2351 | "source": { 2352 | "type": "git", 2353 | "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", 2354 | "reference": "5b5dbe0044085ac41df47e79d34911a15b96d82e" 2355 | }, 2356 | "dist": { 2357 | "type": "zip", 2358 | "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5b5dbe0044085ac41df47e79d34911a15b96d82e", 2359 | "reference": "5b5dbe0044085ac41df47e79d34911a15b96d82e", 2360 | "shasum": "" 2361 | }, 2362 | "require": { 2363 | "php": "^7.3" 2364 | }, 2365 | "require-dev": { 2366 | "phpunit/phpunit": "^9.0" 2367 | }, 2368 | "type": "library", 2369 | "extra": { 2370 | "branch-alias": { 2371 | "dev-master": "2.0-dev" 2372 | } 2373 | }, 2374 | "autoload": { 2375 | "classmap": [ 2376 | "src/" 2377 | ] 2378 | }, 2379 | "notification-url": "https://packagist.org/downloads/", 2380 | "license": [ 2381 | "BSD-3-Clause" 2382 | ], 2383 | "authors": [ 2384 | { 2385 | "name": "Sebastian Bergmann", 2386 | "email": "sebastian@phpunit.de" 2387 | } 2388 | ], 2389 | "description": "Looks up which function or method a line of code belongs to", 2390 | "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", 2391 | "time": "2020-02-07T06:20:13+00:00" 2392 | }, 2393 | { 2394 | "name": "sebastian/comparator", 2395 | "version": "4.0.0", 2396 | "source": { 2397 | "type": "git", 2398 | "url": "https://github.com/sebastianbergmann/comparator.git", 2399 | "reference": "85b3435da967696ed618ff745f32be3ff4a2b8e8" 2400 | }, 2401 | "dist": { 2402 | "type": "zip", 2403 | "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/85b3435da967696ed618ff745f32be3ff4a2b8e8", 2404 | "reference": "85b3435da967696ed618ff745f32be3ff4a2b8e8", 2405 | "shasum": "" 2406 | }, 2407 | "require": { 2408 | "php": "^7.3", 2409 | "sebastian/diff": "^4.0", 2410 | "sebastian/exporter": "^4.0" 2411 | }, 2412 | "require-dev": { 2413 | "phpunit/phpunit": "^9.0" 2414 | }, 2415 | "type": "library", 2416 | "extra": { 2417 | "branch-alias": { 2418 | "dev-master": "4.0-dev" 2419 | } 2420 | }, 2421 | "autoload": { 2422 | "classmap": [ 2423 | "src/" 2424 | ] 2425 | }, 2426 | "notification-url": "https://packagist.org/downloads/", 2427 | "license": [ 2428 | "BSD-3-Clause" 2429 | ], 2430 | "authors": [ 2431 | { 2432 | "name": "Sebastian Bergmann", 2433 | "email": "sebastian@phpunit.de" 2434 | }, 2435 | { 2436 | "name": "Jeff Welch", 2437 | "email": "whatthejeff@gmail.com" 2438 | }, 2439 | { 2440 | "name": "Volker Dusch", 2441 | "email": "github@wallbash.com" 2442 | }, 2443 | { 2444 | "name": "Bernhard Schussek", 2445 | "email": "bschussek@2bepublished.at" 2446 | } 2447 | ], 2448 | "description": "Provides the functionality to compare PHP values for equality", 2449 | "homepage": "https://github.com/sebastianbergmann/comparator", 2450 | "keywords": [ 2451 | "comparator", 2452 | "compare", 2453 | "equality" 2454 | ], 2455 | "time": "2020-02-07T06:08:51+00:00" 2456 | }, 2457 | { 2458 | "name": "sebastian/diff", 2459 | "version": "4.0.0", 2460 | "source": { 2461 | "type": "git", 2462 | "url": "https://github.com/sebastianbergmann/diff.git", 2463 | "reference": "c0c26c9188b538bfa985ae10c9f05d278f12060d" 2464 | }, 2465 | "dist": { 2466 | "type": "zip", 2467 | "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c0c26c9188b538bfa985ae10c9f05d278f12060d", 2468 | "reference": "c0c26c9188b538bfa985ae10c9f05d278f12060d", 2469 | "shasum": "" 2470 | }, 2471 | "require": { 2472 | "php": "^7.3" 2473 | }, 2474 | "require-dev": { 2475 | "phpunit/phpunit": "^9.0", 2476 | "symfony/process": "^4 || ^5" 2477 | }, 2478 | "type": "library", 2479 | "extra": { 2480 | "branch-alias": { 2481 | "dev-master": "4.0-dev" 2482 | } 2483 | }, 2484 | "autoload": { 2485 | "classmap": [ 2486 | "src/" 2487 | ] 2488 | }, 2489 | "notification-url": "https://packagist.org/downloads/", 2490 | "license": [ 2491 | "BSD-3-Clause" 2492 | ], 2493 | "authors": [ 2494 | { 2495 | "name": "Sebastian Bergmann", 2496 | "email": "sebastian@phpunit.de" 2497 | }, 2498 | { 2499 | "name": "Kore Nordmann", 2500 | "email": "mail@kore-nordmann.de" 2501 | } 2502 | ], 2503 | "description": "Diff implementation", 2504 | "homepage": "https://github.com/sebastianbergmann/diff", 2505 | "keywords": [ 2506 | "diff", 2507 | "udiff", 2508 | "unidiff", 2509 | "unified diff" 2510 | ], 2511 | "time": "2020-02-07T06:09:38+00:00" 2512 | }, 2513 | { 2514 | "name": "sebastian/environment", 2515 | "version": "5.0.2", 2516 | "source": { 2517 | "type": "git", 2518 | "url": "https://github.com/sebastianbergmann/environment.git", 2519 | "reference": "c39c1db0a5cffc98173f3de5a17d489d1043fd7b" 2520 | }, 2521 | "dist": { 2522 | "type": "zip", 2523 | "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/c39c1db0a5cffc98173f3de5a17d489d1043fd7b", 2524 | "reference": "c39c1db0a5cffc98173f3de5a17d489d1043fd7b", 2525 | "shasum": "" 2526 | }, 2527 | "require": { 2528 | "php": "^7.3" 2529 | }, 2530 | "require-dev": { 2531 | "phpunit/phpunit": "^9.0" 2532 | }, 2533 | "suggest": { 2534 | "ext-posix": "*" 2535 | }, 2536 | "type": "library", 2537 | "extra": { 2538 | "branch-alias": { 2539 | "dev-master": "5.0-dev" 2540 | } 2541 | }, 2542 | "autoload": { 2543 | "classmap": [ 2544 | "src/" 2545 | ] 2546 | }, 2547 | "notification-url": "https://packagist.org/downloads/", 2548 | "license": [ 2549 | "BSD-3-Clause" 2550 | ], 2551 | "authors": [ 2552 | { 2553 | "name": "Sebastian Bergmann", 2554 | "email": "sebastian@phpunit.de" 2555 | } 2556 | ], 2557 | "description": "Provides functionality to handle HHVM/PHP environments", 2558 | "homepage": "http://www.github.com/sebastianbergmann/environment", 2559 | "keywords": [ 2560 | "Xdebug", 2561 | "environment", 2562 | "hhvm" 2563 | ], 2564 | "time": "2020-03-31T12:14:15+00:00" 2565 | }, 2566 | { 2567 | "name": "sebastian/exporter", 2568 | "version": "4.0.0", 2569 | "source": { 2570 | "type": "git", 2571 | "url": "https://github.com/sebastianbergmann/exporter.git", 2572 | "reference": "80c26562e964016538f832f305b2286e1ec29566" 2573 | }, 2574 | "dist": { 2575 | "type": "zip", 2576 | "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/80c26562e964016538f832f305b2286e1ec29566", 2577 | "reference": "80c26562e964016538f832f305b2286e1ec29566", 2578 | "shasum": "" 2579 | }, 2580 | "require": { 2581 | "php": "^7.3", 2582 | "sebastian/recursion-context": "^4.0" 2583 | }, 2584 | "require-dev": { 2585 | "ext-mbstring": "*", 2586 | "phpunit/phpunit": "^9.0" 2587 | }, 2588 | "type": "library", 2589 | "extra": { 2590 | "branch-alias": { 2591 | "dev-master": "4.0-dev" 2592 | } 2593 | }, 2594 | "autoload": { 2595 | "classmap": [ 2596 | "src/" 2597 | ] 2598 | }, 2599 | "notification-url": "https://packagist.org/downloads/", 2600 | "license": [ 2601 | "BSD-3-Clause" 2602 | ], 2603 | "authors": [ 2604 | { 2605 | "name": "Sebastian Bergmann", 2606 | "email": "sebastian@phpunit.de" 2607 | }, 2608 | { 2609 | "name": "Jeff Welch", 2610 | "email": "whatthejeff@gmail.com" 2611 | }, 2612 | { 2613 | "name": "Volker Dusch", 2614 | "email": "github@wallbash.com" 2615 | }, 2616 | { 2617 | "name": "Adam Harvey", 2618 | "email": "aharvey@php.net" 2619 | }, 2620 | { 2621 | "name": "Bernhard Schussek", 2622 | "email": "bschussek@gmail.com" 2623 | } 2624 | ], 2625 | "description": "Provides the functionality to export PHP variables for visualization", 2626 | "homepage": "http://www.github.com/sebastianbergmann/exporter", 2627 | "keywords": [ 2628 | "export", 2629 | "exporter" 2630 | ], 2631 | "time": "2020-02-07T06:10:52+00:00" 2632 | }, 2633 | { 2634 | "name": "sebastian/global-state", 2635 | "version": "4.0.0", 2636 | "source": { 2637 | "type": "git", 2638 | "url": "https://github.com/sebastianbergmann/global-state.git", 2639 | "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72" 2640 | }, 2641 | "dist": { 2642 | "type": "zip", 2643 | "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bdb1e7c79e592b8c82cb1699be3c8743119b8a72", 2644 | "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72", 2645 | "shasum": "" 2646 | }, 2647 | "require": { 2648 | "php": "^7.3", 2649 | "sebastian/object-reflector": "^2.0", 2650 | "sebastian/recursion-context": "^4.0" 2651 | }, 2652 | "require-dev": { 2653 | "ext-dom": "*", 2654 | "phpunit/phpunit": "^9.0" 2655 | }, 2656 | "suggest": { 2657 | "ext-uopz": "*" 2658 | }, 2659 | "type": "library", 2660 | "extra": { 2661 | "branch-alias": { 2662 | "dev-master": "4.0-dev" 2663 | } 2664 | }, 2665 | "autoload": { 2666 | "classmap": [ 2667 | "src/" 2668 | ] 2669 | }, 2670 | "notification-url": "https://packagist.org/downloads/", 2671 | "license": [ 2672 | "BSD-3-Clause" 2673 | ], 2674 | "authors": [ 2675 | { 2676 | "name": "Sebastian Bergmann", 2677 | "email": "sebastian@phpunit.de" 2678 | } 2679 | ], 2680 | "description": "Snapshotting of global state", 2681 | "homepage": "http://www.github.com/sebastianbergmann/global-state", 2682 | "keywords": [ 2683 | "global state" 2684 | ], 2685 | "time": "2020-02-07T06:11:37+00:00" 2686 | }, 2687 | { 2688 | "name": "sebastian/object-enumerator", 2689 | "version": "4.0.0", 2690 | "source": { 2691 | "type": "git", 2692 | "url": "https://github.com/sebastianbergmann/object-enumerator.git", 2693 | "reference": "e67516b175550abad905dc952f43285957ef4363" 2694 | }, 2695 | "dist": { 2696 | "type": "zip", 2697 | "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/e67516b175550abad905dc952f43285957ef4363", 2698 | "reference": "e67516b175550abad905dc952f43285957ef4363", 2699 | "shasum": "" 2700 | }, 2701 | "require": { 2702 | "php": "^7.3", 2703 | "sebastian/object-reflector": "^2.0", 2704 | "sebastian/recursion-context": "^4.0" 2705 | }, 2706 | "require-dev": { 2707 | "phpunit/phpunit": "^9.0" 2708 | }, 2709 | "type": "library", 2710 | "extra": { 2711 | "branch-alias": { 2712 | "dev-master": "4.0-dev" 2713 | } 2714 | }, 2715 | "autoload": { 2716 | "classmap": [ 2717 | "src/" 2718 | ] 2719 | }, 2720 | "notification-url": "https://packagist.org/downloads/", 2721 | "license": [ 2722 | "BSD-3-Clause" 2723 | ], 2724 | "authors": [ 2725 | { 2726 | "name": "Sebastian Bergmann", 2727 | "email": "sebastian@phpunit.de" 2728 | } 2729 | ], 2730 | "description": "Traverses array structures and object graphs to enumerate all referenced objects", 2731 | "homepage": "https://github.com/sebastianbergmann/object-enumerator/", 2732 | "time": "2020-02-07T06:12:23+00:00" 2733 | }, 2734 | { 2735 | "name": "sebastian/object-reflector", 2736 | "version": "2.0.0", 2737 | "source": { 2738 | "type": "git", 2739 | "url": "https://github.com/sebastianbergmann/object-reflector.git", 2740 | "reference": "f4fd0835cabb0d4a6546d9fe291e5740037aa1e7" 2741 | }, 2742 | "dist": { 2743 | "type": "zip", 2744 | "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/f4fd0835cabb0d4a6546d9fe291e5740037aa1e7", 2745 | "reference": "f4fd0835cabb0d4a6546d9fe291e5740037aa1e7", 2746 | "shasum": "" 2747 | }, 2748 | "require": { 2749 | "php": "^7.3" 2750 | }, 2751 | "require-dev": { 2752 | "phpunit/phpunit": "^9.0" 2753 | }, 2754 | "type": "library", 2755 | "extra": { 2756 | "branch-alias": { 2757 | "dev-master": "2.0-dev" 2758 | } 2759 | }, 2760 | "autoload": { 2761 | "classmap": [ 2762 | "src/" 2763 | ] 2764 | }, 2765 | "notification-url": "https://packagist.org/downloads/", 2766 | "license": [ 2767 | "BSD-3-Clause" 2768 | ], 2769 | "authors": [ 2770 | { 2771 | "name": "Sebastian Bergmann", 2772 | "email": "sebastian@phpunit.de" 2773 | } 2774 | ], 2775 | "description": "Allows reflection of object attributes, including inherited and non-public ones", 2776 | "homepage": "https://github.com/sebastianbergmann/object-reflector/", 2777 | "time": "2020-02-07T06:19:40+00:00" 2778 | }, 2779 | { 2780 | "name": "sebastian/recursion-context", 2781 | "version": "4.0.0", 2782 | "source": { 2783 | "type": "git", 2784 | "url": "https://github.com/sebastianbergmann/recursion-context.git", 2785 | "reference": "cdd86616411fc3062368b720b0425de10bd3d579" 2786 | }, 2787 | "dist": { 2788 | "type": "zip", 2789 | "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cdd86616411fc3062368b720b0425de10bd3d579", 2790 | "reference": "cdd86616411fc3062368b720b0425de10bd3d579", 2791 | "shasum": "" 2792 | }, 2793 | "require": { 2794 | "php": "^7.3" 2795 | }, 2796 | "require-dev": { 2797 | "phpunit/phpunit": "^9.0" 2798 | }, 2799 | "type": "library", 2800 | "extra": { 2801 | "branch-alias": { 2802 | "dev-master": "4.0-dev" 2803 | } 2804 | }, 2805 | "autoload": { 2806 | "classmap": [ 2807 | "src/" 2808 | ] 2809 | }, 2810 | "notification-url": "https://packagist.org/downloads/", 2811 | "license": [ 2812 | "BSD-3-Clause" 2813 | ], 2814 | "authors": [ 2815 | { 2816 | "name": "Sebastian Bergmann", 2817 | "email": "sebastian@phpunit.de" 2818 | }, 2819 | { 2820 | "name": "Jeff Welch", 2821 | "email": "whatthejeff@gmail.com" 2822 | }, 2823 | { 2824 | "name": "Adam Harvey", 2825 | "email": "aharvey@php.net" 2826 | } 2827 | ], 2828 | "description": "Provides functionality to recursively process PHP variables", 2829 | "homepage": "http://www.github.com/sebastianbergmann/recursion-context", 2830 | "time": "2020-02-07T06:18:20+00:00" 2831 | }, 2832 | { 2833 | "name": "sebastian/resource-operations", 2834 | "version": "3.0.0", 2835 | "source": { 2836 | "type": "git", 2837 | "url": "https://github.com/sebastianbergmann/resource-operations.git", 2838 | "reference": "8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98" 2839 | }, 2840 | "dist": { 2841 | "type": "zip", 2842 | "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98", 2843 | "reference": "8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98", 2844 | "shasum": "" 2845 | }, 2846 | "require": { 2847 | "php": "^7.3" 2848 | }, 2849 | "require-dev": { 2850 | "phpunit/phpunit": "^9.0" 2851 | }, 2852 | "type": "library", 2853 | "extra": { 2854 | "branch-alias": { 2855 | "dev-master": "3.0-dev" 2856 | } 2857 | }, 2858 | "autoload": { 2859 | "classmap": [ 2860 | "src/" 2861 | ] 2862 | }, 2863 | "notification-url": "https://packagist.org/downloads/", 2864 | "license": [ 2865 | "BSD-3-Clause" 2866 | ], 2867 | "authors": [ 2868 | { 2869 | "name": "Sebastian Bergmann", 2870 | "email": "sebastian@phpunit.de" 2871 | } 2872 | ], 2873 | "description": "Provides a list of PHP built-in functions that operate on resources", 2874 | "homepage": "https://www.github.com/sebastianbergmann/resource-operations", 2875 | "time": "2020-02-07T06:13:02+00:00" 2876 | }, 2877 | { 2878 | "name": "sebastian/type", 2879 | "version": "2.0.0", 2880 | "source": { 2881 | "type": "git", 2882 | "url": "https://github.com/sebastianbergmann/type.git", 2883 | "reference": "9e8f42f740afdea51f5f4e8cec2035580e797ee1" 2884 | }, 2885 | "dist": { 2886 | "type": "zip", 2887 | "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/9e8f42f740afdea51f5f4e8cec2035580e797ee1", 2888 | "reference": "9e8f42f740afdea51f5f4e8cec2035580e797ee1", 2889 | "shasum": "" 2890 | }, 2891 | "require": { 2892 | "php": "^7.3" 2893 | }, 2894 | "require-dev": { 2895 | "phpunit/phpunit": "^9.0" 2896 | }, 2897 | "type": "library", 2898 | "extra": { 2899 | "branch-alias": { 2900 | "dev-master": "2.0-dev" 2901 | } 2902 | }, 2903 | "autoload": { 2904 | "classmap": [ 2905 | "src/" 2906 | ] 2907 | }, 2908 | "notification-url": "https://packagist.org/downloads/", 2909 | "license": [ 2910 | "BSD-3-Clause" 2911 | ], 2912 | "authors": [ 2913 | { 2914 | "name": "Sebastian Bergmann", 2915 | "email": "sebastian@phpunit.de", 2916 | "role": "lead" 2917 | } 2918 | ], 2919 | "description": "Collection of value objects that represent the types of the PHP type system", 2920 | "homepage": "https://github.com/sebastianbergmann/type", 2921 | "time": "2020-02-07T06:13:43+00:00" 2922 | }, 2923 | { 2924 | "name": "sebastian/version", 2925 | "version": "3.0.0", 2926 | "source": { 2927 | "type": "git", 2928 | "url": "https://github.com/sebastianbergmann/version.git", 2929 | "reference": "0411bde656dce64202b39c2f4473993a9081d39e" 2930 | }, 2931 | "dist": { 2932 | "type": "zip", 2933 | "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/0411bde656dce64202b39c2f4473993a9081d39e", 2934 | "reference": "0411bde656dce64202b39c2f4473993a9081d39e", 2935 | "shasum": "" 2936 | }, 2937 | "require": { 2938 | "php": "^7.3" 2939 | }, 2940 | "type": "library", 2941 | "extra": { 2942 | "branch-alias": { 2943 | "dev-master": "3.0-dev" 2944 | } 2945 | }, 2946 | "autoload": { 2947 | "classmap": [ 2948 | "src/" 2949 | ] 2950 | }, 2951 | "notification-url": "https://packagist.org/downloads/", 2952 | "license": [ 2953 | "BSD-3-Clause" 2954 | ], 2955 | "authors": [ 2956 | { 2957 | "name": "Sebastian Bergmann", 2958 | "email": "sebastian@phpunit.de", 2959 | "role": "lead" 2960 | } 2961 | ], 2962 | "description": "Library that helps with managing the version number of Git-hosted PHP projects", 2963 | "homepage": "https://github.com/sebastianbergmann/version", 2964 | "time": "2020-01-21T06:36:37+00:00" 2965 | }, 2966 | { 2967 | "name": "swiftmailer/swiftmailer", 2968 | "version": "v6.2.3", 2969 | "source": { 2970 | "type": "git", 2971 | "url": "https://github.com/swiftmailer/swiftmailer.git", 2972 | "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9" 2973 | }, 2974 | "dist": { 2975 | "type": "zip", 2976 | "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/149cfdf118b169f7840bbe3ef0d4bc795d1780c9", 2977 | "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9", 2978 | "shasum": "" 2979 | }, 2980 | "require": { 2981 | "egulias/email-validator": "~2.0", 2982 | "php": ">=7.0.0", 2983 | "symfony/polyfill-iconv": "^1.0", 2984 | "symfony/polyfill-intl-idn": "^1.10", 2985 | "symfony/polyfill-mbstring": "^1.0" 2986 | }, 2987 | "require-dev": { 2988 | "mockery/mockery": "~0.9.1", 2989 | "symfony/phpunit-bridge": "^3.4.19|^4.1.8" 2990 | }, 2991 | "suggest": { 2992 | "ext-intl": "Needed to support internationalized email addresses", 2993 | "true/punycode": "Needed to support internationalized email addresses, if ext-intl is not installed" 2994 | }, 2995 | "type": "library", 2996 | "extra": { 2997 | "branch-alias": { 2998 | "dev-master": "6.2-dev" 2999 | } 3000 | }, 3001 | "autoload": { 3002 | "files": [ 3003 | "lib/swift_required.php" 3004 | ] 3005 | }, 3006 | "notification-url": "https://packagist.org/downloads/", 3007 | "license": [ 3008 | "MIT" 3009 | ], 3010 | "authors": [ 3011 | { 3012 | "name": "Chris Corbyn" 3013 | }, 3014 | { 3015 | "name": "Fabien Potencier", 3016 | "email": "fabien@symfony.com" 3017 | } 3018 | ], 3019 | "description": "Swiftmailer, free feature-rich PHP mailer", 3020 | "homepage": "https://swiftmailer.symfony.com", 3021 | "keywords": [ 3022 | "email", 3023 | "mail", 3024 | "mailer" 3025 | ], 3026 | "time": "2019-11-12T09:31:26+00:00" 3027 | }, 3028 | { 3029 | "name": "symfony/console", 3030 | "version": "v5.0.7", 3031 | "source": { 3032 | "type": "git", 3033 | "url": "https://github.com/symfony/console.git", 3034 | "reference": "5fa1caadc8cdaa17bcfb25219f3b53fe294a9935" 3035 | }, 3036 | "dist": { 3037 | "type": "zip", 3038 | "url": "https://api.github.com/repos/symfony/console/zipball/5fa1caadc8cdaa17bcfb25219f3b53fe294a9935", 3039 | "reference": "5fa1caadc8cdaa17bcfb25219f3b53fe294a9935", 3040 | "shasum": "" 3041 | }, 3042 | "require": { 3043 | "php": "^7.2.5", 3044 | "symfony/polyfill-mbstring": "~1.0", 3045 | "symfony/polyfill-php73": "^1.8", 3046 | "symfony/service-contracts": "^1.1|^2" 3047 | }, 3048 | "conflict": { 3049 | "symfony/dependency-injection": "<4.4", 3050 | "symfony/event-dispatcher": "<4.4", 3051 | "symfony/lock": "<4.4", 3052 | "symfony/process": "<4.4" 3053 | }, 3054 | "provide": { 3055 | "psr/log-implementation": "1.0" 3056 | }, 3057 | "require-dev": { 3058 | "psr/log": "~1.0", 3059 | "symfony/config": "^4.4|^5.0", 3060 | "symfony/dependency-injection": "^4.4|^5.0", 3061 | "symfony/event-dispatcher": "^4.4|^5.0", 3062 | "symfony/lock": "^4.4|^5.0", 3063 | "symfony/process": "^4.4|^5.0", 3064 | "symfony/var-dumper": "^4.4|^5.0" 3065 | }, 3066 | "suggest": { 3067 | "psr/log": "For using the console logger", 3068 | "symfony/event-dispatcher": "", 3069 | "symfony/lock": "", 3070 | "symfony/process": "" 3071 | }, 3072 | "type": "library", 3073 | "extra": { 3074 | "branch-alias": { 3075 | "dev-master": "5.0-dev" 3076 | } 3077 | }, 3078 | "autoload": { 3079 | "psr-4": { 3080 | "Symfony\\Component\\Console\\": "" 3081 | }, 3082 | "exclude-from-classmap": [ 3083 | "/Tests/" 3084 | ] 3085 | }, 3086 | "notification-url": "https://packagist.org/downloads/", 3087 | "license": [ 3088 | "MIT" 3089 | ], 3090 | "authors": [ 3091 | { 3092 | "name": "Fabien Potencier", 3093 | "email": "fabien@symfony.com" 3094 | }, 3095 | { 3096 | "name": "Symfony Community", 3097 | "homepage": "https://symfony.com/contributors" 3098 | } 3099 | ], 3100 | "description": "Symfony Console Component", 3101 | "homepage": "https://symfony.com", 3102 | "time": "2020-03-30T11:42:42+00:00" 3103 | }, 3104 | { 3105 | "name": "symfony/css-selector", 3106 | "version": "v5.0.7", 3107 | "source": { 3108 | "type": "git", 3109 | "url": "https://github.com/symfony/css-selector.git", 3110 | "reference": "5f8d5271303dad260692ba73dfa21777d38e124e" 3111 | }, 3112 | "dist": { 3113 | "type": "zip", 3114 | "url": "https://api.github.com/repos/symfony/css-selector/zipball/5f8d5271303dad260692ba73dfa21777d38e124e", 3115 | "reference": "5f8d5271303dad260692ba73dfa21777d38e124e", 3116 | "shasum": "" 3117 | }, 3118 | "require": { 3119 | "php": "^7.2.5" 3120 | }, 3121 | "type": "library", 3122 | "extra": { 3123 | "branch-alias": { 3124 | "dev-master": "5.0-dev" 3125 | } 3126 | }, 3127 | "autoload": { 3128 | "psr-4": { 3129 | "Symfony\\Component\\CssSelector\\": "" 3130 | }, 3131 | "exclude-from-classmap": [ 3132 | "/Tests/" 3133 | ] 3134 | }, 3135 | "notification-url": "https://packagist.org/downloads/", 3136 | "license": [ 3137 | "MIT" 3138 | ], 3139 | "authors": [ 3140 | { 3141 | "name": "Fabien Potencier", 3142 | "email": "fabien@symfony.com" 3143 | }, 3144 | { 3145 | "name": "Jean-François Simon", 3146 | "email": "jeanfrancois.simon@sensiolabs.com" 3147 | }, 3148 | { 3149 | "name": "Symfony Community", 3150 | "homepage": "https://symfony.com/contributors" 3151 | } 3152 | ], 3153 | "description": "Symfony CssSelector Component", 3154 | "homepage": "https://symfony.com", 3155 | "time": "2020-03-27T16:56:45+00:00" 3156 | }, 3157 | { 3158 | "name": "symfony/error-handler", 3159 | "version": "v5.0.7", 3160 | "source": { 3161 | "type": "git", 3162 | "url": "https://github.com/symfony/error-handler.git", 3163 | "reference": "949ffc17c3ac3a9f8e6232220e2da33913c04ea4" 3164 | }, 3165 | "dist": { 3166 | "type": "zip", 3167 | "url": "https://api.github.com/repos/symfony/error-handler/zipball/949ffc17c3ac3a9f8e6232220e2da33913c04ea4", 3168 | "reference": "949ffc17c3ac3a9f8e6232220e2da33913c04ea4", 3169 | "shasum": "" 3170 | }, 3171 | "require": { 3172 | "php": "^7.2.5", 3173 | "psr/log": "^1.0", 3174 | "symfony/var-dumper": "^4.4|^5.0" 3175 | }, 3176 | "require-dev": { 3177 | "symfony/http-kernel": "^4.4|^5.0", 3178 | "symfony/serializer": "^4.4|^5.0" 3179 | }, 3180 | "type": "library", 3181 | "extra": { 3182 | "branch-alias": { 3183 | "dev-master": "5.0-dev" 3184 | } 3185 | }, 3186 | "autoload": { 3187 | "psr-4": { 3188 | "Symfony\\Component\\ErrorHandler\\": "" 3189 | }, 3190 | "exclude-from-classmap": [ 3191 | "/Tests/" 3192 | ] 3193 | }, 3194 | "notification-url": "https://packagist.org/downloads/", 3195 | "license": [ 3196 | "MIT" 3197 | ], 3198 | "authors": [ 3199 | { 3200 | "name": "Fabien Potencier", 3201 | "email": "fabien@symfony.com" 3202 | }, 3203 | { 3204 | "name": "Symfony Community", 3205 | "homepage": "https://symfony.com/contributors" 3206 | } 3207 | ], 3208 | "description": "Symfony ErrorHandler Component", 3209 | "homepage": "https://symfony.com", 3210 | "time": "2020-03-30T14:14:32+00:00" 3211 | }, 3212 | { 3213 | "name": "symfony/event-dispatcher", 3214 | "version": "v5.0.7", 3215 | "source": { 3216 | "type": "git", 3217 | "url": "https://github.com/symfony/event-dispatcher.git", 3218 | "reference": "24f40d95385774ed5c71dbf014edd047e2f2f3dc" 3219 | }, 3220 | "dist": { 3221 | "type": "zip", 3222 | "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/24f40d95385774ed5c71dbf014edd047e2f2f3dc", 3223 | "reference": "24f40d95385774ed5c71dbf014edd047e2f2f3dc", 3224 | "shasum": "" 3225 | }, 3226 | "require": { 3227 | "php": "^7.2.5", 3228 | "symfony/event-dispatcher-contracts": "^2" 3229 | }, 3230 | "conflict": { 3231 | "symfony/dependency-injection": "<4.4" 3232 | }, 3233 | "provide": { 3234 | "psr/event-dispatcher-implementation": "1.0", 3235 | "symfony/event-dispatcher-implementation": "2.0" 3236 | }, 3237 | "require-dev": { 3238 | "psr/log": "~1.0", 3239 | "symfony/config": "^4.4|^5.0", 3240 | "symfony/dependency-injection": "^4.4|^5.0", 3241 | "symfony/expression-language": "^4.4|^5.0", 3242 | "symfony/http-foundation": "^4.4|^5.0", 3243 | "symfony/service-contracts": "^1.1|^2", 3244 | "symfony/stopwatch": "^4.4|^5.0" 3245 | }, 3246 | "suggest": { 3247 | "symfony/dependency-injection": "", 3248 | "symfony/http-kernel": "" 3249 | }, 3250 | "type": "library", 3251 | "extra": { 3252 | "branch-alias": { 3253 | "dev-master": "5.0-dev" 3254 | } 3255 | }, 3256 | "autoload": { 3257 | "psr-4": { 3258 | "Symfony\\Component\\EventDispatcher\\": "" 3259 | }, 3260 | "exclude-from-classmap": [ 3261 | "/Tests/" 3262 | ] 3263 | }, 3264 | "notification-url": "https://packagist.org/downloads/", 3265 | "license": [ 3266 | "MIT" 3267 | ], 3268 | "authors": [ 3269 | { 3270 | "name": "Fabien Potencier", 3271 | "email": "fabien@symfony.com" 3272 | }, 3273 | { 3274 | "name": "Symfony Community", 3275 | "homepage": "https://symfony.com/contributors" 3276 | } 3277 | ], 3278 | "description": "Symfony EventDispatcher Component", 3279 | "homepage": "https://symfony.com", 3280 | "time": "2020-03-27T16:56:45+00:00" 3281 | }, 3282 | { 3283 | "name": "symfony/event-dispatcher-contracts", 3284 | "version": "v2.0.1", 3285 | "source": { 3286 | "type": "git", 3287 | "url": "https://github.com/symfony/event-dispatcher-contracts.git", 3288 | "reference": "af23c2584d4577d54661c434446fb8fbed6025dd" 3289 | }, 3290 | "dist": { 3291 | "type": "zip", 3292 | "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/af23c2584d4577d54661c434446fb8fbed6025dd", 3293 | "reference": "af23c2584d4577d54661c434446fb8fbed6025dd", 3294 | "shasum": "" 3295 | }, 3296 | "require": { 3297 | "php": "^7.2.5", 3298 | "psr/event-dispatcher": "^1" 3299 | }, 3300 | "suggest": { 3301 | "symfony/event-dispatcher-implementation": "" 3302 | }, 3303 | "type": "library", 3304 | "extra": { 3305 | "branch-alias": { 3306 | "dev-master": "2.0-dev" 3307 | } 3308 | }, 3309 | "autoload": { 3310 | "psr-4": { 3311 | "Symfony\\Contracts\\EventDispatcher\\": "" 3312 | } 3313 | }, 3314 | "notification-url": "https://packagist.org/downloads/", 3315 | "license": [ 3316 | "MIT" 3317 | ], 3318 | "authors": [ 3319 | { 3320 | "name": "Nicolas Grekas", 3321 | "email": "p@tchwork.com" 3322 | }, 3323 | { 3324 | "name": "Symfony Community", 3325 | "homepage": "https://symfony.com/contributors" 3326 | } 3327 | ], 3328 | "description": "Generic abstractions related to dispatching event", 3329 | "homepage": "https://symfony.com", 3330 | "keywords": [ 3331 | "abstractions", 3332 | "contracts", 3333 | "decoupling", 3334 | "interfaces", 3335 | "interoperability", 3336 | "standards" 3337 | ], 3338 | "time": "2019-11-18T17:27:11+00:00" 3339 | }, 3340 | { 3341 | "name": "symfony/finder", 3342 | "version": "v5.0.7", 3343 | "source": { 3344 | "type": "git", 3345 | "url": "https://github.com/symfony/finder.git", 3346 | "reference": "600a52c29afc0d1caa74acbec8d3095ca7e9910d" 3347 | }, 3348 | "dist": { 3349 | "type": "zip", 3350 | "url": "https://api.github.com/repos/symfony/finder/zipball/600a52c29afc0d1caa74acbec8d3095ca7e9910d", 3351 | "reference": "600a52c29afc0d1caa74acbec8d3095ca7e9910d", 3352 | "shasum": "" 3353 | }, 3354 | "require": { 3355 | "php": "^7.2.5" 3356 | }, 3357 | "type": "library", 3358 | "extra": { 3359 | "branch-alias": { 3360 | "dev-master": "5.0-dev" 3361 | } 3362 | }, 3363 | "autoload": { 3364 | "psr-4": { 3365 | "Symfony\\Component\\Finder\\": "" 3366 | }, 3367 | "exclude-from-classmap": [ 3368 | "/Tests/" 3369 | ] 3370 | }, 3371 | "notification-url": "https://packagist.org/downloads/", 3372 | "license": [ 3373 | "MIT" 3374 | ], 3375 | "authors": [ 3376 | { 3377 | "name": "Fabien Potencier", 3378 | "email": "fabien@symfony.com" 3379 | }, 3380 | { 3381 | "name": "Symfony Community", 3382 | "homepage": "https://symfony.com/contributors" 3383 | } 3384 | ], 3385 | "description": "Symfony Finder Component", 3386 | "homepage": "https://symfony.com", 3387 | "time": "2020-03-27T16:56:45+00:00" 3388 | }, 3389 | { 3390 | "name": "symfony/http-foundation", 3391 | "version": "v5.0.7", 3392 | "source": { 3393 | "type": "git", 3394 | "url": "https://github.com/symfony/http-foundation.git", 3395 | "reference": "26fb006a2c7b6cdd23d52157b05f8414ffa417b6" 3396 | }, 3397 | "dist": { 3398 | "type": "zip", 3399 | "url": "https://api.github.com/repos/symfony/http-foundation/zipball/26fb006a2c7b6cdd23d52157b05f8414ffa417b6", 3400 | "reference": "26fb006a2c7b6cdd23d52157b05f8414ffa417b6", 3401 | "shasum": "" 3402 | }, 3403 | "require": { 3404 | "php": "^7.2.5", 3405 | "symfony/mime": "^4.4|^5.0", 3406 | "symfony/polyfill-mbstring": "~1.1" 3407 | }, 3408 | "require-dev": { 3409 | "predis/predis": "~1.0", 3410 | "symfony/expression-language": "^4.4|^5.0" 3411 | }, 3412 | "type": "library", 3413 | "extra": { 3414 | "branch-alias": { 3415 | "dev-master": "5.0-dev" 3416 | } 3417 | }, 3418 | "autoload": { 3419 | "psr-4": { 3420 | "Symfony\\Component\\HttpFoundation\\": "" 3421 | }, 3422 | "exclude-from-classmap": [ 3423 | "/Tests/" 3424 | ] 3425 | }, 3426 | "notification-url": "https://packagist.org/downloads/", 3427 | "license": [ 3428 | "MIT" 3429 | ], 3430 | "authors": [ 3431 | { 3432 | "name": "Fabien Potencier", 3433 | "email": "fabien@symfony.com" 3434 | }, 3435 | { 3436 | "name": "Symfony Community", 3437 | "homepage": "https://symfony.com/contributors" 3438 | } 3439 | ], 3440 | "description": "Symfony HttpFoundation Component", 3441 | "homepage": "https://symfony.com", 3442 | "time": "2020-03-30T14:14:32+00:00" 3443 | }, 3444 | { 3445 | "name": "symfony/http-kernel", 3446 | "version": "v5.0.7", 3447 | "source": { 3448 | "type": "git", 3449 | "url": "https://github.com/symfony/http-kernel.git", 3450 | "reference": "ad574c55d451127cab1c45b4ac51bf283e340cf0" 3451 | }, 3452 | "dist": { 3453 | "type": "zip", 3454 | "url": "https://api.github.com/repos/symfony/http-kernel/zipball/ad574c55d451127cab1c45b4ac51bf283e340cf0", 3455 | "reference": "ad574c55d451127cab1c45b4ac51bf283e340cf0", 3456 | "shasum": "" 3457 | }, 3458 | "require": { 3459 | "php": "^7.2.5", 3460 | "psr/log": "~1.0", 3461 | "symfony/error-handler": "^4.4|^5.0", 3462 | "symfony/event-dispatcher": "^5.0", 3463 | "symfony/http-foundation": "^4.4|^5.0", 3464 | "symfony/polyfill-ctype": "^1.8", 3465 | "symfony/polyfill-php73": "^1.9" 3466 | }, 3467 | "conflict": { 3468 | "symfony/browser-kit": "<4.4", 3469 | "symfony/cache": "<5.0", 3470 | "symfony/config": "<5.0", 3471 | "symfony/dependency-injection": "<4.4", 3472 | "symfony/doctrine-bridge": "<5.0", 3473 | "symfony/form": "<5.0", 3474 | "symfony/http-client": "<5.0", 3475 | "symfony/mailer": "<5.0", 3476 | "symfony/messenger": "<5.0", 3477 | "symfony/translation": "<5.0", 3478 | "symfony/twig-bridge": "<5.0", 3479 | "symfony/validator": "<5.0", 3480 | "twig/twig": "<2.4" 3481 | }, 3482 | "provide": { 3483 | "psr/log-implementation": "1.0" 3484 | }, 3485 | "require-dev": { 3486 | "psr/cache": "~1.0", 3487 | "symfony/browser-kit": "^4.4|^5.0", 3488 | "symfony/config": "^5.0", 3489 | "symfony/console": "^4.4|^5.0", 3490 | "symfony/css-selector": "^4.4|^5.0", 3491 | "symfony/dependency-injection": "^4.4|^5.0", 3492 | "symfony/dom-crawler": "^4.4|^5.0", 3493 | "symfony/expression-language": "^4.4|^5.0", 3494 | "symfony/finder": "^4.4|^5.0", 3495 | "symfony/process": "^4.4|^5.0", 3496 | "symfony/routing": "^4.4|^5.0", 3497 | "symfony/stopwatch": "^4.4|^5.0", 3498 | "symfony/translation": "^4.4|^5.0", 3499 | "symfony/translation-contracts": "^1.1|^2", 3500 | "twig/twig": "^2.4|^3.0" 3501 | }, 3502 | "suggest": { 3503 | "symfony/browser-kit": "", 3504 | "symfony/config": "", 3505 | "symfony/console": "", 3506 | "symfony/dependency-injection": "" 3507 | }, 3508 | "type": "library", 3509 | "extra": { 3510 | "branch-alias": { 3511 | "dev-master": "5.0-dev" 3512 | } 3513 | }, 3514 | "autoload": { 3515 | "psr-4": { 3516 | "Symfony\\Component\\HttpKernel\\": "" 3517 | }, 3518 | "exclude-from-classmap": [ 3519 | "/Tests/" 3520 | ] 3521 | }, 3522 | "notification-url": "https://packagist.org/downloads/", 3523 | "license": [ 3524 | "MIT" 3525 | ], 3526 | "authors": [ 3527 | { 3528 | "name": "Fabien Potencier", 3529 | "email": "fabien@symfony.com" 3530 | }, 3531 | { 3532 | "name": "Symfony Community", 3533 | "homepage": "https://symfony.com/contributors" 3534 | } 3535 | ], 3536 | "description": "Symfony HttpKernel Component", 3537 | "homepage": "https://symfony.com", 3538 | "time": "2020-03-30T15:04:59+00:00" 3539 | }, 3540 | { 3541 | "name": "symfony/mime", 3542 | "version": "v5.0.7", 3543 | "source": { 3544 | "type": "git", 3545 | "url": "https://github.com/symfony/mime.git", 3546 | "reference": "481b7d6da88922fb1e0d86a943987722b08f3955" 3547 | }, 3548 | "dist": { 3549 | "type": "zip", 3550 | "url": "https://api.github.com/repos/symfony/mime/zipball/481b7d6da88922fb1e0d86a943987722b08f3955", 3551 | "reference": "481b7d6da88922fb1e0d86a943987722b08f3955", 3552 | "shasum": "" 3553 | }, 3554 | "require": { 3555 | "php": "^7.2.5", 3556 | "symfony/polyfill-intl-idn": "^1.10", 3557 | "symfony/polyfill-mbstring": "^1.0" 3558 | }, 3559 | "conflict": { 3560 | "symfony/mailer": "<4.4" 3561 | }, 3562 | "require-dev": { 3563 | "egulias/email-validator": "^2.1.10", 3564 | "symfony/dependency-injection": "^4.4|^5.0" 3565 | }, 3566 | "type": "library", 3567 | "extra": { 3568 | "branch-alias": { 3569 | "dev-master": "5.0-dev" 3570 | } 3571 | }, 3572 | "autoload": { 3573 | "psr-4": { 3574 | "Symfony\\Component\\Mime\\": "" 3575 | }, 3576 | "exclude-from-classmap": [ 3577 | "/Tests/" 3578 | ] 3579 | }, 3580 | "notification-url": "https://packagist.org/downloads/", 3581 | "license": [ 3582 | "MIT" 3583 | ], 3584 | "authors": [ 3585 | { 3586 | "name": "Fabien Potencier", 3587 | "email": "fabien@symfony.com" 3588 | }, 3589 | { 3590 | "name": "Symfony Community", 3591 | "homepage": "https://symfony.com/contributors" 3592 | } 3593 | ], 3594 | "description": "A library to manipulate MIME messages", 3595 | "homepage": "https://symfony.com", 3596 | "keywords": [ 3597 | "mime", 3598 | "mime-type" 3599 | ], 3600 | "time": "2020-03-27T16:56:45+00:00" 3601 | }, 3602 | { 3603 | "name": "symfony/polyfill-ctype", 3604 | "version": "v1.15.0", 3605 | "source": { 3606 | "type": "git", 3607 | "url": "https://github.com/symfony/polyfill-ctype.git", 3608 | "reference": "4719fa9c18b0464d399f1a63bf624b42b6fa8d14" 3609 | }, 3610 | "dist": { 3611 | "type": "zip", 3612 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/4719fa9c18b0464d399f1a63bf624b42b6fa8d14", 3613 | "reference": "4719fa9c18b0464d399f1a63bf624b42b6fa8d14", 3614 | "shasum": "" 3615 | }, 3616 | "require": { 3617 | "php": ">=5.3.3" 3618 | }, 3619 | "suggest": { 3620 | "ext-ctype": "For best performance" 3621 | }, 3622 | "type": "library", 3623 | "extra": { 3624 | "branch-alias": { 3625 | "dev-master": "1.15-dev" 3626 | } 3627 | }, 3628 | "autoload": { 3629 | "psr-4": { 3630 | "Symfony\\Polyfill\\Ctype\\": "" 3631 | }, 3632 | "files": [ 3633 | "bootstrap.php" 3634 | ] 3635 | }, 3636 | "notification-url": "https://packagist.org/downloads/", 3637 | "license": [ 3638 | "MIT" 3639 | ], 3640 | "authors": [ 3641 | { 3642 | "name": "Gert de Pagter", 3643 | "email": "BackEndTea@gmail.com" 3644 | }, 3645 | { 3646 | "name": "Symfony Community", 3647 | "homepage": "https://symfony.com/contributors" 3648 | } 3649 | ], 3650 | "description": "Symfony polyfill for ctype functions", 3651 | "homepage": "https://symfony.com", 3652 | "keywords": [ 3653 | "compatibility", 3654 | "ctype", 3655 | "polyfill", 3656 | "portable" 3657 | ], 3658 | "time": "2020-02-27T09:26:54+00:00" 3659 | }, 3660 | { 3661 | "name": "symfony/polyfill-iconv", 3662 | "version": "v1.15.0", 3663 | "source": { 3664 | "type": "git", 3665 | "url": "https://github.com/symfony/polyfill-iconv.git", 3666 | "reference": "ad6d62792bfbcfc385dd34b424d4fcf9712a32c8" 3667 | }, 3668 | "dist": { 3669 | "type": "zip", 3670 | "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/ad6d62792bfbcfc385dd34b424d4fcf9712a32c8", 3671 | "reference": "ad6d62792bfbcfc385dd34b424d4fcf9712a32c8", 3672 | "shasum": "" 3673 | }, 3674 | "require": { 3675 | "php": ">=5.3.3" 3676 | }, 3677 | "suggest": { 3678 | "ext-iconv": "For best performance" 3679 | }, 3680 | "type": "library", 3681 | "extra": { 3682 | "branch-alias": { 3683 | "dev-master": "1.15-dev" 3684 | } 3685 | }, 3686 | "autoload": { 3687 | "psr-4": { 3688 | "Symfony\\Polyfill\\Iconv\\": "" 3689 | }, 3690 | "files": [ 3691 | "bootstrap.php" 3692 | ] 3693 | }, 3694 | "notification-url": "https://packagist.org/downloads/", 3695 | "license": [ 3696 | "MIT" 3697 | ], 3698 | "authors": [ 3699 | { 3700 | "name": "Nicolas Grekas", 3701 | "email": "p@tchwork.com" 3702 | }, 3703 | { 3704 | "name": "Symfony Community", 3705 | "homepage": "https://symfony.com/contributors" 3706 | } 3707 | ], 3708 | "description": "Symfony polyfill for the Iconv extension", 3709 | "homepage": "https://symfony.com", 3710 | "keywords": [ 3711 | "compatibility", 3712 | "iconv", 3713 | "polyfill", 3714 | "portable", 3715 | "shim" 3716 | ], 3717 | "time": "2020-03-09T19:04:49+00:00" 3718 | }, 3719 | { 3720 | "name": "symfony/polyfill-intl-idn", 3721 | "version": "v1.15.0", 3722 | "source": { 3723 | "type": "git", 3724 | "url": "https://github.com/symfony/polyfill-intl-idn.git", 3725 | "reference": "47bd6aa45beb1cd7c6a16b7d1810133b728bdfcf" 3726 | }, 3727 | "dist": { 3728 | "type": "zip", 3729 | "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/47bd6aa45beb1cd7c6a16b7d1810133b728bdfcf", 3730 | "reference": "47bd6aa45beb1cd7c6a16b7d1810133b728bdfcf", 3731 | "shasum": "" 3732 | }, 3733 | "require": { 3734 | "php": ">=5.3.3", 3735 | "symfony/polyfill-mbstring": "^1.3", 3736 | "symfony/polyfill-php72": "^1.10" 3737 | }, 3738 | "suggest": { 3739 | "ext-intl": "For best performance" 3740 | }, 3741 | "type": "library", 3742 | "extra": { 3743 | "branch-alias": { 3744 | "dev-master": "1.15-dev" 3745 | } 3746 | }, 3747 | "autoload": { 3748 | "psr-4": { 3749 | "Symfony\\Polyfill\\Intl\\Idn\\": "" 3750 | }, 3751 | "files": [ 3752 | "bootstrap.php" 3753 | ] 3754 | }, 3755 | "notification-url": "https://packagist.org/downloads/", 3756 | "license": [ 3757 | "MIT" 3758 | ], 3759 | "authors": [ 3760 | { 3761 | "name": "Laurent Bassin", 3762 | "email": "laurent@bassin.info" 3763 | }, 3764 | { 3765 | "name": "Symfony Community", 3766 | "homepage": "https://symfony.com/contributors" 3767 | } 3768 | ], 3769 | "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", 3770 | "homepage": "https://symfony.com", 3771 | "keywords": [ 3772 | "compatibility", 3773 | "idn", 3774 | "intl", 3775 | "polyfill", 3776 | "portable", 3777 | "shim" 3778 | ], 3779 | "time": "2020-03-09T19:04:49+00:00" 3780 | }, 3781 | { 3782 | "name": "symfony/polyfill-mbstring", 3783 | "version": "v1.15.0", 3784 | "source": { 3785 | "type": "git", 3786 | "url": "https://github.com/symfony/polyfill-mbstring.git", 3787 | "reference": "81ffd3a9c6d707be22e3012b827de1c9775fc5ac" 3788 | }, 3789 | "dist": { 3790 | "type": "zip", 3791 | "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/81ffd3a9c6d707be22e3012b827de1c9775fc5ac", 3792 | "reference": "81ffd3a9c6d707be22e3012b827de1c9775fc5ac", 3793 | "shasum": "" 3794 | }, 3795 | "require": { 3796 | "php": ">=5.3.3" 3797 | }, 3798 | "suggest": { 3799 | "ext-mbstring": "For best performance" 3800 | }, 3801 | "type": "library", 3802 | "extra": { 3803 | "branch-alias": { 3804 | "dev-master": "1.15-dev" 3805 | } 3806 | }, 3807 | "autoload": { 3808 | "psr-4": { 3809 | "Symfony\\Polyfill\\Mbstring\\": "" 3810 | }, 3811 | "files": [ 3812 | "bootstrap.php" 3813 | ] 3814 | }, 3815 | "notification-url": "https://packagist.org/downloads/", 3816 | "license": [ 3817 | "MIT" 3818 | ], 3819 | "authors": [ 3820 | { 3821 | "name": "Nicolas Grekas", 3822 | "email": "p@tchwork.com" 3823 | }, 3824 | { 3825 | "name": "Symfony Community", 3826 | "homepage": "https://symfony.com/contributors" 3827 | } 3828 | ], 3829 | "description": "Symfony polyfill for the Mbstring extension", 3830 | "homepage": "https://symfony.com", 3831 | "keywords": [ 3832 | "compatibility", 3833 | "mbstring", 3834 | "polyfill", 3835 | "portable", 3836 | "shim" 3837 | ], 3838 | "time": "2020-03-09T19:04:49+00:00" 3839 | }, 3840 | { 3841 | "name": "symfony/polyfill-php72", 3842 | "version": "v1.15.0", 3843 | "source": { 3844 | "type": "git", 3845 | "url": "https://github.com/symfony/polyfill-php72.git", 3846 | "reference": "37b0976c78b94856543260ce09b460a7bc852747" 3847 | }, 3848 | "dist": { 3849 | "type": "zip", 3850 | "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/37b0976c78b94856543260ce09b460a7bc852747", 3851 | "reference": "37b0976c78b94856543260ce09b460a7bc852747", 3852 | "shasum": "" 3853 | }, 3854 | "require": { 3855 | "php": ">=5.3.3" 3856 | }, 3857 | "type": "library", 3858 | "extra": { 3859 | "branch-alias": { 3860 | "dev-master": "1.15-dev" 3861 | } 3862 | }, 3863 | "autoload": { 3864 | "psr-4": { 3865 | "Symfony\\Polyfill\\Php72\\": "" 3866 | }, 3867 | "files": [ 3868 | "bootstrap.php" 3869 | ] 3870 | }, 3871 | "notification-url": "https://packagist.org/downloads/", 3872 | "license": [ 3873 | "MIT" 3874 | ], 3875 | "authors": [ 3876 | { 3877 | "name": "Nicolas Grekas", 3878 | "email": "p@tchwork.com" 3879 | }, 3880 | { 3881 | "name": "Symfony Community", 3882 | "homepage": "https://symfony.com/contributors" 3883 | } 3884 | ], 3885 | "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", 3886 | "homepage": "https://symfony.com", 3887 | "keywords": [ 3888 | "compatibility", 3889 | "polyfill", 3890 | "portable", 3891 | "shim" 3892 | ], 3893 | "time": "2020-02-27T09:26:54+00:00" 3894 | }, 3895 | { 3896 | "name": "symfony/polyfill-php73", 3897 | "version": "v1.15.0", 3898 | "source": { 3899 | "type": "git", 3900 | "url": "https://github.com/symfony/polyfill-php73.git", 3901 | "reference": "0f27e9f464ea3da33cbe7ca3bdf4eb66def9d0f7" 3902 | }, 3903 | "dist": { 3904 | "type": "zip", 3905 | "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f27e9f464ea3da33cbe7ca3bdf4eb66def9d0f7", 3906 | "reference": "0f27e9f464ea3da33cbe7ca3bdf4eb66def9d0f7", 3907 | "shasum": "" 3908 | }, 3909 | "require": { 3910 | "php": ">=5.3.3" 3911 | }, 3912 | "type": "library", 3913 | "extra": { 3914 | "branch-alias": { 3915 | "dev-master": "1.15-dev" 3916 | } 3917 | }, 3918 | "autoload": { 3919 | "psr-4": { 3920 | "Symfony\\Polyfill\\Php73\\": "" 3921 | }, 3922 | "files": [ 3923 | "bootstrap.php" 3924 | ], 3925 | "classmap": [ 3926 | "Resources/stubs" 3927 | ] 3928 | }, 3929 | "notification-url": "https://packagist.org/downloads/", 3930 | "license": [ 3931 | "MIT" 3932 | ], 3933 | "authors": [ 3934 | { 3935 | "name": "Nicolas Grekas", 3936 | "email": "p@tchwork.com" 3937 | }, 3938 | { 3939 | "name": "Symfony Community", 3940 | "homepage": "https://symfony.com/contributors" 3941 | } 3942 | ], 3943 | "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", 3944 | "homepage": "https://symfony.com", 3945 | "keywords": [ 3946 | "compatibility", 3947 | "polyfill", 3948 | "portable", 3949 | "shim" 3950 | ], 3951 | "time": "2020-02-27T09:26:54+00:00" 3952 | }, 3953 | { 3954 | "name": "symfony/process", 3955 | "version": "v5.0.7", 3956 | "source": { 3957 | "type": "git", 3958 | "url": "https://github.com/symfony/process.git", 3959 | "reference": "c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e" 3960 | }, 3961 | "dist": { 3962 | "type": "zip", 3963 | "url": "https://api.github.com/repos/symfony/process/zipball/c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e", 3964 | "reference": "c5ca4a0fc16a0c888067d43fbcfe1f8a53d8e70e", 3965 | "shasum": "" 3966 | }, 3967 | "require": { 3968 | "php": "^7.2.5" 3969 | }, 3970 | "type": "library", 3971 | "extra": { 3972 | "branch-alias": { 3973 | "dev-master": "5.0-dev" 3974 | } 3975 | }, 3976 | "autoload": { 3977 | "psr-4": { 3978 | "Symfony\\Component\\Process\\": "" 3979 | }, 3980 | "exclude-from-classmap": [ 3981 | "/Tests/" 3982 | ] 3983 | }, 3984 | "notification-url": "https://packagist.org/downloads/", 3985 | "license": [ 3986 | "MIT" 3987 | ], 3988 | "authors": [ 3989 | { 3990 | "name": "Fabien Potencier", 3991 | "email": "fabien@symfony.com" 3992 | }, 3993 | { 3994 | "name": "Symfony Community", 3995 | "homepage": "https://symfony.com/contributors" 3996 | } 3997 | ], 3998 | "description": "Symfony Process Component", 3999 | "homepage": "https://symfony.com", 4000 | "time": "2020-03-27T16:56:45+00:00" 4001 | }, 4002 | { 4003 | "name": "symfony/routing", 4004 | "version": "v5.0.7", 4005 | "source": { 4006 | "type": "git", 4007 | "url": "https://github.com/symfony/routing.git", 4008 | "reference": "d98a95d0a684caba47a47c1c50c602a669dc973b" 4009 | }, 4010 | "dist": { 4011 | "type": "zip", 4012 | "url": "https://api.github.com/repos/symfony/routing/zipball/d98a95d0a684caba47a47c1c50c602a669dc973b", 4013 | "reference": "d98a95d0a684caba47a47c1c50c602a669dc973b", 4014 | "shasum": "" 4015 | }, 4016 | "require": { 4017 | "php": "^7.2.5" 4018 | }, 4019 | "conflict": { 4020 | "symfony/config": "<5.0", 4021 | "symfony/dependency-injection": "<4.4", 4022 | "symfony/yaml": "<4.4" 4023 | }, 4024 | "require-dev": { 4025 | "doctrine/annotations": "~1.2", 4026 | "psr/log": "~1.0", 4027 | "symfony/config": "^5.0", 4028 | "symfony/dependency-injection": "^4.4|^5.0", 4029 | "symfony/expression-language": "^4.4|^5.0", 4030 | "symfony/http-foundation": "^4.4|^5.0", 4031 | "symfony/yaml": "^4.4|^5.0" 4032 | }, 4033 | "suggest": { 4034 | "doctrine/annotations": "For using the annotation loader", 4035 | "symfony/config": "For using the all-in-one router or any loader", 4036 | "symfony/expression-language": "For using expression matching", 4037 | "symfony/http-foundation": "For using a Symfony Request object", 4038 | "symfony/yaml": "For using the YAML loader" 4039 | }, 4040 | "type": "library", 4041 | "extra": { 4042 | "branch-alias": { 4043 | "dev-master": "5.0-dev" 4044 | } 4045 | }, 4046 | "autoload": { 4047 | "psr-4": { 4048 | "Symfony\\Component\\Routing\\": "" 4049 | }, 4050 | "exclude-from-classmap": [ 4051 | "/Tests/" 4052 | ] 4053 | }, 4054 | "notification-url": "https://packagist.org/downloads/", 4055 | "license": [ 4056 | "MIT" 4057 | ], 4058 | "authors": [ 4059 | { 4060 | "name": "Fabien Potencier", 4061 | "email": "fabien@symfony.com" 4062 | }, 4063 | { 4064 | "name": "Symfony Community", 4065 | "homepage": "https://symfony.com/contributors" 4066 | } 4067 | ], 4068 | "description": "Symfony Routing Component", 4069 | "homepage": "https://symfony.com", 4070 | "keywords": [ 4071 | "router", 4072 | "routing", 4073 | "uri", 4074 | "url" 4075 | ], 4076 | "time": "2020-03-30T11:42:42+00:00" 4077 | }, 4078 | { 4079 | "name": "symfony/service-contracts", 4080 | "version": "v2.0.1", 4081 | "source": { 4082 | "type": "git", 4083 | "url": "https://github.com/symfony/service-contracts.git", 4084 | "reference": "144c5e51266b281231e947b51223ba14acf1a749" 4085 | }, 4086 | "dist": { 4087 | "type": "zip", 4088 | "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749", 4089 | "reference": "144c5e51266b281231e947b51223ba14acf1a749", 4090 | "shasum": "" 4091 | }, 4092 | "require": { 4093 | "php": "^7.2.5", 4094 | "psr/container": "^1.0" 4095 | }, 4096 | "suggest": { 4097 | "symfony/service-implementation": "" 4098 | }, 4099 | "type": "library", 4100 | "extra": { 4101 | "branch-alias": { 4102 | "dev-master": "2.0-dev" 4103 | } 4104 | }, 4105 | "autoload": { 4106 | "psr-4": { 4107 | "Symfony\\Contracts\\Service\\": "" 4108 | } 4109 | }, 4110 | "notification-url": "https://packagist.org/downloads/", 4111 | "license": [ 4112 | "MIT" 4113 | ], 4114 | "authors": [ 4115 | { 4116 | "name": "Nicolas Grekas", 4117 | "email": "p@tchwork.com" 4118 | }, 4119 | { 4120 | "name": "Symfony Community", 4121 | "homepage": "https://symfony.com/contributors" 4122 | } 4123 | ], 4124 | "description": "Generic abstractions related to writing services", 4125 | "homepage": "https://symfony.com", 4126 | "keywords": [ 4127 | "abstractions", 4128 | "contracts", 4129 | "decoupling", 4130 | "interfaces", 4131 | "interoperability", 4132 | "standards" 4133 | ], 4134 | "time": "2019-11-18T17:27:11+00:00" 4135 | }, 4136 | { 4137 | "name": "symfony/translation", 4138 | "version": "v5.0.7", 4139 | "source": { 4140 | "type": "git", 4141 | "url": "https://github.com/symfony/translation.git", 4142 | "reference": "99b831770e10807dca0979518e2c89edffef5978" 4143 | }, 4144 | "dist": { 4145 | "type": "zip", 4146 | "url": "https://api.github.com/repos/symfony/translation/zipball/99b831770e10807dca0979518e2c89edffef5978", 4147 | "reference": "99b831770e10807dca0979518e2c89edffef5978", 4148 | "shasum": "" 4149 | }, 4150 | "require": { 4151 | "php": "^7.2.5", 4152 | "symfony/polyfill-mbstring": "~1.0", 4153 | "symfony/translation-contracts": "^2" 4154 | }, 4155 | "conflict": { 4156 | "symfony/config": "<4.4", 4157 | "symfony/dependency-injection": "<5.0", 4158 | "symfony/http-kernel": "<5.0", 4159 | "symfony/twig-bundle": "<5.0", 4160 | "symfony/yaml": "<4.4" 4161 | }, 4162 | "provide": { 4163 | "symfony/translation-implementation": "2.0" 4164 | }, 4165 | "require-dev": { 4166 | "psr/log": "~1.0", 4167 | "symfony/config": "^4.4|^5.0", 4168 | "symfony/console": "^4.4|^5.0", 4169 | "symfony/dependency-injection": "^5.0", 4170 | "symfony/finder": "^4.4|^5.0", 4171 | "symfony/http-kernel": "^5.0", 4172 | "symfony/intl": "^4.4|^5.0", 4173 | "symfony/service-contracts": "^1.1.2|^2", 4174 | "symfony/yaml": "^4.4|^5.0" 4175 | }, 4176 | "suggest": { 4177 | "psr/log-implementation": "To use logging capability in translator", 4178 | "symfony/config": "", 4179 | "symfony/yaml": "" 4180 | }, 4181 | "type": "library", 4182 | "extra": { 4183 | "branch-alias": { 4184 | "dev-master": "5.0-dev" 4185 | } 4186 | }, 4187 | "autoload": { 4188 | "psr-4": { 4189 | "Symfony\\Component\\Translation\\": "" 4190 | }, 4191 | "exclude-from-classmap": [ 4192 | "/Tests/" 4193 | ] 4194 | }, 4195 | "notification-url": "https://packagist.org/downloads/", 4196 | "license": [ 4197 | "MIT" 4198 | ], 4199 | "authors": [ 4200 | { 4201 | "name": "Fabien Potencier", 4202 | "email": "fabien@symfony.com" 4203 | }, 4204 | { 4205 | "name": "Symfony Community", 4206 | "homepage": "https://symfony.com/contributors" 4207 | } 4208 | ], 4209 | "description": "Symfony Translation Component", 4210 | "homepage": "https://symfony.com", 4211 | "time": "2020-03-27T16:56:45+00:00" 4212 | }, 4213 | { 4214 | "name": "symfony/translation-contracts", 4215 | "version": "v2.0.1", 4216 | "source": { 4217 | "type": "git", 4218 | "url": "https://github.com/symfony/translation-contracts.git", 4219 | "reference": "8cc682ac458d75557203b2f2f14b0b92e1c744ed" 4220 | }, 4221 | "dist": { 4222 | "type": "zip", 4223 | "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/8cc682ac458d75557203b2f2f14b0b92e1c744ed", 4224 | "reference": "8cc682ac458d75557203b2f2f14b0b92e1c744ed", 4225 | "shasum": "" 4226 | }, 4227 | "require": { 4228 | "php": "^7.2.5" 4229 | }, 4230 | "suggest": { 4231 | "symfony/translation-implementation": "" 4232 | }, 4233 | "type": "library", 4234 | "extra": { 4235 | "branch-alias": { 4236 | "dev-master": "2.0-dev" 4237 | } 4238 | }, 4239 | "autoload": { 4240 | "psr-4": { 4241 | "Symfony\\Contracts\\Translation\\": "" 4242 | } 4243 | }, 4244 | "notification-url": "https://packagist.org/downloads/", 4245 | "license": [ 4246 | "MIT" 4247 | ], 4248 | "authors": [ 4249 | { 4250 | "name": "Nicolas Grekas", 4251 | "email": "p@tchwork.com" 4252 | }, 4253 | { 4254 | "name": "Symfony Community", 4255 | "homepage": "https://symfony.com/contributors" 4256 | } 4257 | ], 4258 | "description": "Generic abstractions related to translation", 4259 | "homepage": "https://symfony.com", 4260 | "keywords": [ 4261 | "abstractions", 4262 | "contracts", 4263 | "decoupling", 4264 | "interfaces", 4265 | "interoperability", 4266 | "standards" 4267 | ], 4268 | "time": "2019-11-18T17:27:11+00:00" 4269 | }, 4270 | { 4271 | "name": "symfony/var-dumper", 4272 | "version": "v5.0.7", 4273 | "source": { 4274 | "type": "git", 4275 | "url": "https://github.com/symfony/var-dumper.git", 4276 | "reference": "f74a126acd701392eef2492a17228d42552c86b5" 4277 | }, 4278 | "dist": { 4279 | "type": "zip", 4280 | "url": "https://api.github.com/repos/symfony/var-dumper/zipball/f74a126acd701392eef2492a17228d42552c86b5", 4281 | "reference": "f74a126acd701392eef2492a17228d42552c86b5", 4282 | "shasum": "" 4283 | }, 4284 | "require": { 4285 | "php": "^7.2.5", 4286 | "symfony/polyfill-mbstring": "~1.0" 4287 | }, 4288 | "conflict": { 4289 | "phpunit/phpunit": "<5.4.3", 4290 | "symfony/console": "<4.4" 4291 | }, 4292 | "require-dev": { 4293 | "ext-iconv": "*", 4294 | "symfony/console": "^4.4|^5.0", 4295 | "symfony/process": "^4.4|^5.0", 4296 | "twig/twig": "^2.4|^3.0" 4297 | }, 4298 | "suggest": { 4299 | "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", 4300 | "ext-intl": "To show region name in time zone dump", 4301 | "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" 4302 | }, 4303 | "bin": [ 4304 | "Resources/bin/var-dump-server" 4305 | ], 4306 | "type": "library", 4307 | "extra": { 4308 | "branch-alias": { 4309 | "dev-master": "5.0-dev" 4310 | } 4311 | }, 4312 | "autoload": { 4313 | "files": [ 4314 | "Resources/functions/dump.php" 4315 | ], 4316 | "psr-4": { 4317 | "Symfony\\Component\\VarDumper\\": "" 4318 | }, 4319 | "exclude-from-classmap": [ 4320 | "/Tests/" 4321 | ] 4322 | }, 4323 | "notification-url": "https://packagist.org/downloads/", 4324 | "license": [ 4325 | "MIT" 4326 | ], 4327 | "authors": [ 4328 | { 4329 | "name": "Nicolas Grekas", 4330 | "email": "p@tchwork.com" 4331 | }, 4332 | { 4333 | "name": "Symfony Community", 4334 | "homepage": "https://symfony.com/contributors" 4335 | } 4336 | ], 4337 | "description": "Symfony mechanism for exploring and dumping PHP variables", 4338 | "homepage": "https://symfony.com", 4339 | "keywords": [ 4340 | "debug", 4341 | "dump" 4342 | ], 4343 | "time": "2020-03-27T16:56:45+00:00" 4344 | }, 4345 | { 4346 | "name": "theseer/tokenizer", 4347 | "version": "1.1.3", 4348 | "source": { 4349 | "type": "git", 4350 | "url": "https://github.com/theseer/tokenizer.git", 4351 | "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9" 4352 | }, 4353 | "dist": { 4354 | "type": "zip", 4355 | "url": "https://api.github.com/repos/theseer/tokenizer/zipball/11336f6f84e16a720dae9d8e6ed5019efa85a0f9", 4356 | "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9", 4357 | "shasum": "" 4358 | }, 4359 | "require": { 4360 | "ext-dom": "*", 4361 | "ext-tokenizer": "*", 4362 | "ext-xmlwriter": "*", 4363 | "php": "^7.0" 4364 | }, 4365 | "type": "library", 4366 | "autoload": { 4367 | "classmap": [ 4368 | "src/" 4369 | ] 4370 | }, 4371 | "notification-url": "https://packagist.org/downloads/", 4372 | "license": [ 4373 | "BSD-3-Clause" 4374 | ], 4375 | "authors": [ 4376 | { 4377 | "name": "Arne Blankerts", 4378 | "email": "arne@blankerts.de", 4379 | "role": "Developer" 4380 | } 4381 | ], 4382 | "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", 4383 | "time": "2019-06-13T22:48:21+00:00" 4384 | }, 4385 | { 4386 | "name": "tijsverkoyen/css-to-inline-styles", 4387 | "version": "2.2.2", 4388 | "source": { 4389 | "type": "git", 4390 | "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", 4391 | "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15" 4392 | }, 4393 | "dist": { 4394 | "type": "zip", 4395 | "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/dda2ee426acd6d801d5b7fd1001cde9b5f790e15", 4396 | "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15", 4397 | "shasum": "" 4398 | }, 4399 | "require": { 4400 | "ext-dom": "*", 4401 | "ext-libxml": "*", 4402 | "php": "^5.5 || ^7.0", 4403 | "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" 4404 | }, 4405 | "require-dev": { 4406 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" 4407 | }, 4408 | "type": "library", 4409 | "extra": { 4410 | "branch-alias": { 4411 | "dev-master": "2.2.x-dev" 4412 | } 4413 | }, 4414 | "autoload": { 4415 | "psr-4": { 4416 | "TijsVerkoyen\\CssToInlineStyles\\": "src" 4417 | } 4418 | }, 4419 | "notification-url": "https://packagist.org/downloads/", 4420 | "license": [ 4421 | "BSD-3-Clause" 4422 | ], 4423 | "authors": [ 4424 | { 4425 | "name": "Tijs Verkoyen", 4426 | "email": "css_to_inline_styles@verkoyen.eu", 4427 | "role": "Developer" 4428 | } 4429 | ], 4430 | "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", 4431 | "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", 4432 | "time": "2019-10-24T08:53:34+00:00" 4433 | }, 4434 | { 4435 | "name": "vlucas/phpdotenv", 4436 | "version": "v4.1.3", 4437 | "source": { 4438 | "type": "git", 4439 | "url": "https://github.com/vlucas/phpdotenv.git", 4440 | "reference": "88f7acc95150bca002a498899f8b52f318e444c2" 4441 | }, 4442 | "dist": { 4443 | "type": "zip", 4444 | "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/88f7acc95150bca002a498899f8b52f318e444c2", 4445 | "reference": "88f7acc95150bca002a498899f8b52f318e444c2", 4446 | "shasum": "" 4447 | }, 4448 | "require": { 4449 | "php": "^5.5.9 || ^7.0", 4450 | "phpoption/phpoption": "^1.7.2", 4451 | "symfony/polyfill-ctype": "^1.9" 4452 | }, 4453 | "require-dev": { 4454 | "bamarni/composer-bin-plugin": "^1.3", 4455 | "ext-filter": "*", 4456 | "ext-pcre": "*", 4457 | "phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0" 4458 | }, 4459 | "suggest": { 4460 | "ext-filter": "Required to use the boolean validator.", 4461 | "ext-pcre": "Required to use most of the library." 4462 | }, 4463 | "type": "library", 4464 | "extra": { 4465 | "branch-alias": { 4466 | "dev-master": "4.1-dev" 4467 | } 4468 | }, 4469 | "autoload": { 4470 | "psr-4": { 4471 | "Dotenv\\": "src/" 4472 | } 4473 | }, 4474 | "notification-url": "https://packagist.org/downloads/", 4475 | "license": [ 4476 | "BSD-3-Clause" 4477 | ], 4478 | "authors": [ 4479 | { 4480 | "name": "Graham Campbell", 4481 | "email": "graham@alt-three.com", 4482 | "homepage": "https://gjcampbell.co.uk/" 4483 | }, 4484 | { 4485 | "name": "Vance Lucas", 4486 | "email": "vance@vancelucas.com", 4487 | "homepage": "https://vancelucas.com/" 4488 | } 4489 | ], 4490 | "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", 4491 | "keywords": [ 4492 | "dotenv", 4493 | "env", 4494 | "environment" 4495 | ], 4496 | "time": "2020-03-27T23:37:15+00:00" 4497 | }, 4498 | { 4499 | "name": "voku/portable-ascii", 4500 | "version": "1.4.10", 4501 | "source": { 4502 | "type": "git", 4503 | "url": "https://github.com/voku/portable-ascii.git", 4504 | "reference": "240e93829a5f985fab0984a6e55ae5e26b78a334" 4505 | }, 4506 | "dist": { 4507 | "type": "zip", 4508 | "url": "https://api.github.com/repos/voku/portable-ascii/zipball/240e93829a5f985fab0984a6e55ae5e26b78a334", 4509 | "reference": "240e93829a5f985fab0984a6e55ae5e26b78a334", 4510 | "shasum": "" 4511 | }, 4512 | "require": { 4513 | "php": ">=7.0.0" 4514 | }, 4515 | "require-dev": { 4516 | "phpunit/phpunit": "~6.0 || ~7.0" 4517 | }, 4518 | "suggest": { 4519 | "ext-intl": "Use Intl for transliterator_transliterate() support" 4520 | }, 4521 | "type": "library", 4522 | "autoload": { 4523 | "psr-4": { 4524 | "voku\\": "src/voku/", 4525 | "voku\\tests\\": "tests/" 4526 | } 4527 | }, 4528 | "notification-url": "https://packagist.org/downloads/", 4529 | "license": [ 4530 | "MIT" 4531 | ], 4532 | "authors": [ 4533 | { 4534 | "name": "Lars Moelleken", 4535 | "homepage": "http://www.moelleken.org/" 4536 | } 4537 | ], 4538 | "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", 4539 | "homepage": "https://github.com/voku/portable-ascii", 4540 | "keywords": [ 4541 | "ascii", 4542 | "clean", 4543 | "php" 4544 | ], 4545 | "time": "2020-03-13T01:23:26+00:00" 4546 | }, 4547 | { 4548 | "name": "webmozart/assert", 4549 | "version": "1.7.0", 4550 | "source": { 4551 | "type": "git", 4552 | "url": "https://github.com/webmozart/assert.git", 4553 | "reference": "aed98a490f9a8f78468232db345ab9cf606cf598" 4554 | }, 4555 | "dist": { 4556 | "type": "zip", 4557 | "url": "https://api.github.com/repos/webmozart/assert/zipball/aed98a490f9a8f78468232db345ab9cf606cf598", 4558 | "reference": "aed98a490f9a8f78468232db345ab9cf606cf598", 4559 | "shasum": "" 4560 | }, 4561 | "require": { 4562 | "php": "^5.3.3 || ^7.0", 4563 | "symfony/polyfill-ctype": "^1.8" 4564 | }, 4565 | "conflict": { 4566 | "vimeo/psalm": "<3.6.0" 4567 | }, 4568 | "require-dev": { 4569 | "phpunit/phpunit": "^4.8.36 || ^7.5.13" 4570 | }, 4571 | "type": "library", 4572 | "autoload": { 4573 | "psr-4": { 4574 | "Webmozart\\Assert\\": "src/" 4575 | } 4576 | }, 4577 | "notification-url": "https://packagist.org/downloads/", 4578 | "license": [ 4579 | "MIT" 4580 | ], 4581 | "authors": [ 4582 | { 4583 | "name": "Bernhard Schussek", 4584 | "email": "bschussek@gmail.com" 4585 | } 4586 | ], 4587 | "description": "Assertions to validate method input/output with nice error messages.", 4588 | "keywords": [ 4589 | "assert", 4590 | "check", 4591 | "validate" 4592 | ], 4593 | "time": "2020-02-14T12:15:55+00:00" 4594 | } 4595 | ], 4596 | "aliases": [], 4597 | "minimum-stability": "stable", 4598 | "stability-flags": [], 4599 | "prefer-stable": false, 4600 | "prefer-lowest": false, 4601 | "platform": [], 4602 | "platform-dev": [] 4603 | } 4604 | -------------------------------------------------------------------------------- /phpunit.xml.dist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 27 | 28 | 29 | 30 | 31 | 32 | tests 33 | 34 | 35 | 36 | 40 | 41 | 42 | app 43 | 44 | 45 | 46 | 47 | 48 | 49 | commands 50 | queries 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /src/TestCase.php: -------------------------------------------------------------------------------- 1 | withFramework || $this->getTestFrameworkRunner()->shouldNotUseFramework()) { 15 | $this->isUsingFramework = false; 16 | static::noFrameworkSetup(); 17 | return; 18 | } 19 | 20 | parent::setUp(); 21 | 22 | static::frameworkSetup(); 23 | } 24 | 25 | private function noFrameworkSetup() 26 | { 27 | // 28 | } 29 | 30 | private function frameworkSetup() 31 | { 32 | // 33 | } 34 | 35 | protected function tearDown(): void 36 | { 37 | if ($this->isUsingFramework) { 38 | parent::tearDown(); 39 | } 40 | } 41 | 42 | /** 43 | * @return TestFrameworkRunner 44 | */ 45 | protected function getTestFrameworkRunner(): TestFrameworkRunner 46 | { 47 | return (TestFrameworkRunner::withOutFramework($this->getAnnotations())); 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/TestFrameworkRunner.php: -------------------------------------------------------------------------------- 1 | useFramework = $useFramework; 29 | $this->annotations = $annotations; 30 | } 31 | 32 | /** 33 | * @param array $annotations 34 | * @return TestFrameworkRunner 35 | */ 36 | public static function withFramework(array $annotations) 37 | { 38 | return new self($annotations, true); 39 | } 40 | 41 | /** 42 | * @param array $annotations 43 | * @return TestFrameworkRunner 44 | */ 45 | public static function withOutFramework(array $annotations) 46 | { 47 | return new self($annotations); 48 | } 49 | 50 | /** 51 | * @return bool 52 | */ 53 | public function shouldNotUseFramework(): bool 54 | { 55 | return !$this->shouldUseFramework(); 56 | } 57 | 58 | /** 59 | * @return bool 60 | */ 61 | public function shouldUseFramework(): bool 62 | { 63 | return (!$this->requiresNoFramework()) || $this->requiresFramework(); 64 | } 65 | 66 | /** 67 | * @return bool 68 | */ 69 | public function requiresFramework(): bool 70 | { 71 | if ($this->methodRequiresFramework()) { 72 | return true; 73 | } 74 | 75 | return $this->methodRequiresFramework(); 76 | } 77 | 78 | /** 79 | * @return bool 80 | */ 81 | protected function classRequiresFramework(): bool 82 | { 83 | $annotations = array_keys(Arr::get($this->annotations, 'class', [])); 84 | 85 | return in_array(self::USE_FRAMEWORK_ANNOTATION, $annotations); 86 | } 87 | 88 | /** 89 | * @return bool 90 | */ 91 | private function requiresNoFramework(): bool 92 | { 93 | return $this->classRequiresNoFramework() 94 | || $this->methodRequiresNoFramework(); 95 | } 96 | 97 | /** 98 | * @return bool 99 | */ 100 | private function classRequiresNoFramework(): bool 101 | { 102 | $annotation = array_keys(Arr::get($this->annotations, 'class', [])); 103 | 104 | return in_array(self::NO_FRAMEWORK_ANNOTATION, $annotation); 105 | } 106 | 107 | /** 108 | * @return bool 109 | */ 110 | private function methodRequiresNoFramework(): bool 111 | { 112 | $annotation = array_keys(Arr::get($this->annotations, 'method', [])); 113 | 114 | return in_array(self::NO_FRAMEWORK_ANNOTATION, $annotation); 115 | } 116 | 117 | /** 118 | * @return bool 119 | */ 120 | private function methodRequiresFramework(): bool 121 | { 122 | $annotation = array_keys(Arr::get($this->annotations, 'method', [])); 123 | 124 | return in_array(self::USE_FRAMEWORK_ANNOTATION, $annotation); 125 | } 126 | } 127 | -------------------------------------------------------------------------------- /tests/NoFrameworkByDefaultTest.php: -------------------------------------------------------------------------------- 1 | assertNull($this->app); 18 | } 19 | 20 | /** 21 | * @withFramework 22 | * 23 | * @test 24 | */ 25 | public function framework_can_be_loaded_by_overriding_default() 26 | { 27 | $this->assertNull($this->app); 28 | } 29 | 30 | protected function getEnvironmentSetUp($app) 31 | { 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /tests/NoFrameworkTest.php: -------------------------------------------------------------------------------- 1 | assertNull($this->app); 20 | } 21 | 22 | /** 23 | * @withFramework 24 | * 25 | * @test 26 | */ 27 | public function framework_can_be_loaded_selectively() 28 | { 29 | $this->assertNotNull($this->app); 30 | } 31 | 32 | /** 33 | * Define environment setup. 34 | * 35 | * @param \Illuminate\Foundation\Application $app 36 | * 37 | * @return void 38 | */ 39 | protected function getEnvironmentSetUp($app) 40 | { 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /tests/TestCaseTest.php: -------------------------------------------------------------------------------- 1 | assertNull($this->app); 22 | $this->assertTrue($this->noFrameworkSetupRan); 23 | } 24 | 25 | /** 26 | * @withFramework 27 | * 28 | * @test 29 | */ 30 | public function framework_is_loaded_when_specified_by_annotation() 31 | { 32 | $this->assertNotNull($this->app); 33 | $this->assertTrue($this->frameworkSetUpRan); 34 | } 35 | 36 | protected function noFrameworkSetup() 37 | { 38 | $this->noFrameworkSetupRan = true; 39 | } 40 | 41 | protected function frameworkSetUp() 42 | { 43 | $this->frameworkSetUpRan = true; 44 | } 45 | 46 | /** 47 | * Define environment setup. 48 | * 49 | * @param \Illuminate\Foundation\Application $app 50 | * 51 | * @return void 52 | */ 53 | protected function getEnvironmentSetUp($app) 54 | { 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /tests/TestFrameworkRunnerTest.php: -------------------------------------------------------------------------------- 1 | assertTrue($runner->shouldUseFramework()); 15 | } 16 | 17 | /** @test */ 18 | public function it_should_use_framework_when_class_annotation_overrides() 19 | { 20 | $runner = TestFrameworkRunner::withOutFramework([ 21 | 'class' => [TestFrameworkRunner::USE_FRAMEWORK_ANNOTATION => ''] 22 | ]); 23 | 24 | $this->assertTrue($runner->shouldUseFramework()); 25 | } 26 | 27 | /** @test */ 28 | public function it_should_use_framework_when_method_annotation_overrides() 29 | { 30 | $runner = TestFrameworkRunner::withOutFramework([ 31 | 'method' => [TestFrameworkRunner::USE_FRAMEWORK_ANNOTATION => ''] 32 | ]); 33 | 34 | $this->assertTrue($runner->shouldUseFramework()); 35 | } 36 | 37 | /** @test */ 38 | public function it_should_not_use_framework_when_method_annotation_overrides() 39 | { 40 | $runner = TestFrameworkRunner::withFramework([ 41 | 'method' => [TestFrameworkRunner::NO_FRAMEWORK_ANNOTATION => ''] 42 | ]); 43 | 44 | $this->assertFalse($runner->shouldUseFramework()); 45 | } 46 | 47 | /** @test */ 48 | public function it_should_not_use_framework_when_class_annotation_overrides() 49 | { 50 | $runner = TestFrameworkRunner::withFramework([ 51 | 'class' => [TestFrameworkRunner::NO_FRAMEWORK_ANNOTATION => ''] 52 | ]); 53 | 54 | $this->assertFalse($runner->shouldUseFramework()); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /tests/WithFrameworkTest.php: -------------------------------------------------------------------------------- 1 | assertNotNull($this->app); 20 | } 21 | 22 | /** 23 | * @withoutFramework 24 | * 25 | * @test 26 | */ 27 | public function framework_can_be_not_loaded_selectively() 28 | { 29 | $this->assertNull($this->app); 30 | } 31 | 32 | /** 33 | * Define environment setup. 34 | * 35 | * @param \Illuminate\Foundation\Application $app 36 | * 37 | * @return void 38 | */ 39 | protected function getEnvironmentSetUp($app) 40 | { 41 | } 42 | } 43 | --------------------------------------------------------------------------------