diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0dfd2ad..0000000 --- a/.travis.yml +++ /dev/null @@ -1,17 +0,0 @@ -language: php - -php: - - 7.1 - - 7.2 - - 7.3 - -env: - matrix: - - COMPOSER_FLAGS="--prefer-lowest" - - COMPOSER_FLAGS="" - -before_script: - - composer install --dev --prefer-source --no-interaction - -script: - - bin/phpunit diff --git a/README.md b/README.md deleted file mode 100644 index 8c6f65b..0000000 --- a/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# Joind.in Winner Picker - -[![Build Status](https://travis-ci.org/opdavies/joindin-winner-picker-new.svg?branch=master)](https://travis-ci.org/opdavies/joindin-winner-picker-new) - -WIP - -## Usage - -``` -bin/console app:pick-winner -``` diff --git a/composer.json b/composer.json index ba2fbc9..aca927c 100644 --- a/composer.json +++ b/composer.json @@ -5,7 +5,6 @@ "php": "^7.1.3", "ext-ctype": "*", "ext-iconv": "*", - "ext-json": "^1.5", "guzzlehttp/guzzle": "^6.3", "josephlavin/tap": "^1.0", "symfony/cache": "4.2.*", @@ -62,7 +61,6 @@ } }, "require-dev": { - "fzaninotto/faker": "^1.8", "symfony/maker-bundle": "^1.11", "symfony/test-pack": "^1.0", "symfony/var-dumper": "4.2.*" diff --git a/composer.lock b/composer.lock index d170a43..4340eea 100644 --- a/composer.lock +++ b/composer.lock @@ -4,50 +4,48 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "734449da136b803395044a6a830c701f", + "content-hash": "35f8b30095e57576a83ae4bdaa898a19", "packages": [ { "name": "guzzlehttp/guzzle", - "version": "6.5.0", + "version": "6.3.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "dbc2bc3a293ed6b1ae08a3651e2bfd213d19b6a5" + "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/dbc2bc3a293ed6b1ae08a3651e2bfd213d19b6a5", - "reference": "dbc2bc3a293ed6b1ae08a3651e2bfd213d19b6a5", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/407b0cb880ace85c9b63c5f9551db498cb2d50ba", + "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba", "shasum": "" }, "require": { - "ext-json": "*", "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.6.1", + "guzzlehttp/psr7": "^1.4", "php": ">=5.5" }, "require-dev": { "ext-curl": "*", "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", - "psr/log": "^1.1" + "psr/log": "^1.0" }, "suggest": { - "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr/log": "Required for using the Log middleware" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "6.5-dev" + "dev-master": "6.3-dev" } }, "autoload": { - "psr-4": { - "GuzzleHttp\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -71,7 +69,7 @@ "rest", "web service" ], - "time": "2019-12-07T18:20:45+00:00" + "time": "2018-04-22T15:46:56+00:00" }, { "name": "guzzlehttp/promises", @@ -126,37 +124,33 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.6.1", + "version": "1.5.2", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "239400de7a173fe9901b9ac7c06497751f00727a" + "reference": "9f83dded91781a01c63574e387eaa769be769115" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a", - "reference": "239400de7a173fe9901b9ac7c06497751f00727a", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115", + "reference": "9f83dded91781a01c63574e387eaa769be769115", "shasum": "" }, "require": { "php": ">=5.4.0", "psr/http-message": "~1.0", - "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" + "ralouphie/getallheaders": "^2.0.5" }, "provide": { "psr/http-message-implementation": "1.0" }, "require-dev": { - "ext-zlib": "*", "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8" }, - "suggest": { - "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses" - }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.6-dev" + "dev-master": "1.5-dev" } }, "autoload": { @@ -193,7 +187,7 @@ "uri", "url" ], - "time": "2019-07-01T23:21:34+00:00" + "time": "2018-12-04T20:46:45+00:00" }, { "name": "josephlavin/tap", @@ -381,16 +375,16 @@ }, { "name": "psr/log", - "version": "1.1.2", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801" + "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/446d54b4cb6bf489fc9d75f55843658e6f25d801", - "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801", + "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", + "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", "shasum": "" }, "require": { @@ -399,7 +393,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { @@ -424,7 +418,7 @@ "psr", "psr-3" ], - "time": "2019-11-01T11:05:21+00:00" + "time": "2018-11-20T15:27:04+00:00" }, { "name": "psr/simple-cache", @@ -476,24 +470,24 @@ }, { "name": "ralouphie/getallheaders", - "version": "3.0.3", + "version": "2.0.5", "source": { "type": "git", "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" + "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa", + "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa", "shasum": "" }, "require": { - "php": ">=5.6" + "php": ">=5.3" }, "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" + "phpunit/phpunit": "~3.7.0", + "satooshi/php-coveralls": ">=1.0" }, "type": "library", "autoload": { @@ -512,20 +506,20 @@ } ], "description": "A polyfill for getallheaders.", - "time": "2019-03-08T08:55:37+00:00" + "time": "2016-02-11T07:05:27+00:00" }, { "name": "symfony/cache", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "28286385757fa08c249254541ad814a8ccaff0f7" + "reference": "7c5b85bcc5f87dd7938123be12ce3323be6cde5a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/28286385757fa08c249254541ad814a8ccaff0f7", - "reference": "28286385757fa08c249254541ad814a8ccaff0f7", + "url": "https://api.github.com/repos/symfony/cache/zipball/7c5b85bcc5f87dd7938123be12ce3323be6cde5a", + "reference": "7c5b85bcc5f87dd7938123be12ce3323be6cde5a", "shasum": "" }, "require": { @@ -544,7 +538,7 @@ "provide": { "psr/cache-implementation": "1.0", "psr/simple-cache-implementation": "1.0", - "symfony/cache-implementation": "1.0" + "symfony/cache-contracts-implementation": "1.0" }, "require-dev": { "cache/integration-tests": "dev-master", @@ -589,20 +583,20 @@ "caching", "psr6" ], - "time": "2019-11-11T12:44:10+00:00" + "time": "2019-01-31T15:08:08+00:00" }, { "name": "symfony/config", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "637588756df1fb1c801833aead54a7153967c0cb" + "reference": "25a2e7abe0d97e70282537292e3df45cf6da7b98" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/637588756df1fb1c801833aead54a7153967c0cb", - "reference": "637588756df1fb1c801833aead54a7153967c0cb", + "url": "https://api.github.com/repos/symfony/config/zipball/25a2e7abe0d97e70282537292e3df45cf6da7b98", + "reference": "25a2e7abe0d97e70282537292e3df45cf6da7b98", "shasum": "" }, "require": { @@ -617,7 +611,6 @@ "symfony/dependency-injection": "~3.4|~4.0", "symfony/event-dispatcher": "~3.4|~4.0", "symfony/finder": "~3.4|~4.0", - "symfony/messenger": "~4.1", "symfony/yaml": "~3.4|~4.0" }, "suggest": { @@ -653,20 +646,20 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2019-07-18T10:29:22+00:00" + "time": "2019-01-30T11:44:30+00:00" }, { "name": "symfony/console", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "fc2e274aade6567a750551942094b2145ade9b6c" + "reference": "1f0ad51dfde4da8a6070f06adc58b4e37cbb37a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/fc2e274aade6567a750551942094b2145ade9b6c", - "reference": "fc2e274aade6567a750551942094b2145ade9b6c", + "url": "https://api.github.com/repos/symfony/console/zipball/1f0ad51dfde4da8a6070f06adc58b4e37cbb37a4", + "reference": "1f0ad51dfde4da8a6070f06adc58b4e37cbb37a4", "shasum": "" }, "require": { @@ -725,49 +718,40 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2019-07-24T17:13:20+00:00" + "time": "2019-01-25T14:35:16+00:00" }, { "name": "symfony/contracts", - "version": "v1.1.8", + "version": "v1.0.2", "source": { "type": "git", "url": "https://github.com/symfony/contracts.git", - "reference": "f51bca9de06b7a25b19a4155da7bebad099a5def" + "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/contracts/zipball/f51bca9de06b7a25b19a4155da7bebad099a5def", - "reference": "f51bca9de06b7a25b19a4155da7bebad099a5def", + "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", + "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": "^7.1.3" + }, + "require-dev": { "psr/cache": "^1.0", "psr/container": "^1.0" }, - "replace": { - "symfony/cache-contracts": "self.version", - "symfony/event-dispatcher-contracts": "self.version", - "symfony/http-client-contracts": "self.version", - "symfony/service-contracts": "self.version", - "symfony/translation-contracts": "self.version" - }, - "require-dev": { - "symfony/polyfill-intl-idn": "^1.10" - }, "suggest": { - "psr/event-dispatcher": "When using the EventDispatcher contracts", - "symfony/cache-implementation": "", - "symfony/event-dispatcher-implementation": "", - "symfony/http-client-implementation": "", - "symfony/service-implementation": "", - "symfony/translation-implementation": "" + "psr/cache": "When using the Cache contracts", + "psr/container": "When using the Service contracts", + "symfony/cache-contracts-implementation": "", + "symfony/service-contracts-implementation": "", + "symfony/translation-contracts-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "1.0-dev" } }, "autoload": { @@ -802,20 +786,20 @@ "interoperability", "standards" ], - "time": "2019-11-07T12:44:51+00:00" + "time": "2018-12-05T08:06:11+00:00" }, { "name": "symfony/debug", - "version": "v4.4.2", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "5c4c1db977dc70bb3250e1308d3e8c6341aa38f5" + "reference": "cf9b2e33f757deb884ce474e06d2647c1c769b65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/5c4c1db977dc70bb3250e1308d3e8c6341aa38f5", - "reference": "5c4c1db977dc70bb3250e1308d3e8c6341aa38f5", + "url": "https://api.github.com/repos/symfony/debug/zipball/cf9b2e33f757deb884ce474e06d2647c1c769b65", + "reference": "cf9b2e33f757deb884ce474e06d2647c1c769b65", "shasum": "" }, "require": { @@ -826,12 +810,12 @@ "symfony/http-kernel": "<3.4" }, "require-dev": { - "symfony/http-kernel": "^3.4|^4.0|^5.0" + "symfony/http-kernel": "~3.4|~4.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.4-dev" + "dev-master": "4.2-dev" } }, "autoload": { @@ -858,26 +842,26 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2019-12-16T14:46:54+00:00" + "time": "2019-01-25T14:35:16+00:00" }, { "name": "symfony/dependency-injection", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "39fe71bc481483f255e388a658c8f1104fec037e" + "reference": "72c14cbc0c27706b9b4c33b9cd7a280972ff4806" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/39fe71bc481483f255e388a658c8f1104fec037e", - "reference": "39fe71bc481483f255e388a658c8f1104fec037e", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/72c14cbc0c27706b9b4c33b9cd7a280972ff4806", + "reference": "72c14cbc0c27706b9b4c33b9cd7a280972ff4806", "shasum": "" }, "require": { "php": "^7.1.3", "psr/container": "^1.0", - "symfony/contracts": "^1.1.1" + "symfony/contracts": "^1.0" }, "conflict": { "symfony/config": "<4.2", @@ -887,7 +871,7 @@ }, "provide": { "psr/container-implementation": "1.0", - "symfony/service-implementation": "1.0" + "symfony/service-contracts-implementation": "1.0" }, "require-dev": { "symfony/config": "~4.2", @@ -931,20 +915,20 @@ ], "description": "Symfony DependencyInjection Component", "homepage": "https://symfony.com", - "time": "2019-07-19T12:05:51+00:00" + "time": "2019-01-30T17:51:38+00:00" }, { "name": "symfony/dotenv", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", - "reference": "6163f061011009655da1bc615b38941bc460ef1b" + "reference": "9a3bdfcd7a0d9602754894d76c614d15ca366535" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dotenv/zipball/6163f061011009655da1bc615b38941bc460ef1b", - "reference": "6163f061011009655da1bc615b38941bc460ef1b", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/9a3bdfcd7a0d9602754894d76c614d15ca366535", + "reference": "9a3bdfcd7a0d9602754894d76c614d15ca366535", "shasum": "" }, "require": { @@ -988,20 +972,20 @@ "env", "environment" ], - "time": "2019-06-26T06:46:55+00:00" + "time": "2019-01-24T21:39:51+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "852548c7c704f14d2f6700c8d872a05bd2028732" + "reference": "bd09ad265cd50b2b9d09d65ce6aba2d29bc81fe1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/852548c7c704f14d2f6700c8d872a05bd2028732", - "reference": "852548c7c704f14d2f6700c8d872a05bd2028732", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/bd09ad265cd50b2b9d09d65ce6aba2d29bc81fe1", + "reference": "bd09ad265cd50b2b9d09d65ce6aba2d29bc81fe1", "shasum": "" }, "require": { @@ -1052,20 +1036,20 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2019-06-26T06:46:55+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "symfony/filesystem", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "1bd7aed2932cedd1c2c6cc925831dd8d57ea14bf" + "reference": "7c16ebc2629827d4ec915a52ac809768d060a4ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/1bd7aed2932cedd1c2c6cc925831dd8d57ea14bf", - "reference": "1bd7aed2932cedd1c2c6cc925831dd8d57ea14bf", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/7c16ebc2629827d4ec915a52ac809768d060a4ee", + "reference": "7c16ebc2629827d4ec915a52ac809768d060a4ee", "shasum": "" }, "require": { @@ -1102,20 +1086,20 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2019-06-26T06:46:55+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "symfony/finder", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "cecff7164790b0cd72be2ed20e9591d7140715e0" + "reference": "ef71816cbb264988bb57fe6a73f610888b9aa70c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/cecff7164790b0cd72be2ed20e9591d7140715e0", - "reference": "cecff7164790b0cd72be2ed20e9591d7140715e0", + "url": "https://api.github.com/repos/symfony/finder/zipball/ef71816cbb264988bb57fe6a73f610888b9aa70c", + "reference": "ef71816cbb264988bb57fe6a73f610888b9aa70c", "shasum": "" }, "require": { @@ -1151,20 +1135,20 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2019-06-28T12:55:49+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "symfony/flex", - "version": "v1.6.0", + "version": "v1.1.8", "source": { "type": "git", "url": "https://github.com/symfony/flex.git", - "reference": "952f45d1c5077e658cb16a61d11603bee873f968" + "reference": "955774ecf07b10230bb5b44e150ba078b45f68fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/flex/zipball/952f45d1c5077e658cb16a61d11603bee873f968", - "reference": "952f45d1c5077e658cb16a61d11603bee873f968", + "url": "https://api.github.com/repos/symfony/flex/zipball/955774ecf07b10230bb5b44e150ba078b45f68fa", + "reference": "955774ecf07b10230bb5b44e150ba078b45f68fa", "shasum": "" }, "require": { @@ -1173,14 +1157,12 @@ }, "require-dev": { "composer/composer": "^1.0.2", - "symfony/dotenv": "^3.4|^4.0|^5.0", - "symfony/phpunit-bridge": "^3.4.19|^4.1.8|^5.0", - "symfony/process": "^2.7|^3.0|^4.0|^5.0" + "symfony/phpunit-bridge": "^3.2.8" }, "type": "composer-plugin", "extra": { "branch-alias": { - "dev-master": "1.5-dev" + "dev-master": "1.1-dev" }, "class": "Symfony\\Flex\\Flex" }, @@ -1200,20 +1182,20 @@ } ], "description": "Composer plugin for Symfony", - "time": "2019-12-13T18:05:11+00:00" + "time": "2018-11-15T06:11:38+00:00" }, { "name": "symfony/framework-bundle", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "ac12bd9f104bb2dc319b09426e767ecfa95688da" + "reference": "5707ad22d7dcf39643128e73a85efc0f20745b44" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ac12bd9f104bb2dc319b09426e767ecfa95688da", - "reference": "ac12bd9f104bb2dc319b09426e767ecfa95688da", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/5707ad22d7dcf39643128e73a85efc0f20745b44", + "reference": "5707ad22d7dcf39643128e73a85efc0f20745b44", "shasum": "" }, "require": { @@ -1222,15 +1204,14 @@ "symfony/cache": "~4.2", "symfony/config": "~4.2", "symfony/contracts": "^1.0.2", - "symfony/debug": "~4.0", - "symfony/dependency-injection": "^4.2.5", + "symfony/dependency-injection": "^4.2", "symfony/event-dispatcher": "^4.1", "symfony/filesystem": "~3.4|~4.0", "symfony/finder": "~3.4|~4.0", - "symfony/http-foundation": "^4.2.5", + "symfony/http-foundation": "^4.1.2", "symfony/http-kernel": "^4.2", "symfony/polyfill-mbstring": "~1.0", - "symfony/routing": "^4.2.8" + "symfony/routing": "^4.1" }, "conflict": { "phpdocumentor/reflection-docblock": "<3.0", @@ -1320,20 +1301,20 @@ ], "description": "Symfony FrameworkBundle", "homepage": "https://symfony.com", - "time": "2019-07-24T17:13:20+00:00" + "time": "2019-01-29T09:49:29+00:00" }, { "name": "symfony/http-foundation", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "2ae778ff4a1f8baba7724db1ca977ada3b796749" + "reference": "8d2318b73e0a1bc75baa699d00ebe2ae8b595a39" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/2ae778ff4a1f8baba7724db1ca977ada3b796749", - "reference": "2ae778ff4a1f8baba7724db1ca977ada3b796749", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/8d2318b73e0a1bc75baa699d00ebe2ae8b595a39", + "reference": "8d2318b73e0a1bc75baa699d00ebe2ae8b595a39", "shasum": "" }, "require": { @@ -1374,20 +1355,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2019-11-11T12:54:47+00:00" + "time": "2019-01-29T09:49:29+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "8a7c5ef599466af6e972c705507f815df9c490ae" + "reference": "d56b1706abaa771eb6acd894c6787cb88f1dc97d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/8a7c5ef599466af6e972c705507f815df9c490ae", - "reference": "8a7c5ef599466af6e972c705507f815df9c490ae", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d56b1706abaa771eb6acd894c6787cb88f1dc97d", + "reference": "d56b1706abaa771eb6acd894c6787cb88f1dc97d", "shasum": "" }, "require": { @@ -1397,8 +1378,7 @@ "symfony/debug": "~3.4|~4.0", "symfony/event-dispatcher": "~4.1", "symfony/http-foundation": "^4.1.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php56": "~1.8" + "symfony/polyfill-ctype": "~1.8" }, "conflict": { "symfony/config": "<3.4", @@ -1464,20 +1444,20 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2019-11-13T08:51:34+00:00" + "time": "2019-02-03T12:47:33+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.13.1", + "version": "v1.10.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "7b4aab9743c30be783b73de055d24a39cf4b954f" + "reference": "c79c051f5b3a46be09205c73b80b346e4153e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/7b4aab9743c30be783b73de055d24a39cf4b954f", - "reference": "7b4aab9743c30be783b73de055d24a39cf4b954f", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/c79c051f5b3a46be09205c73b80b346e4153e494", + "reference": "c79c051f5b3a46be09205c73b80b346e4153e494", "shasum": "" }, "require": { @@ -1489,7 +1469,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.13-dev" + "dev-master": "1.9-dev" } }, "autoload": { @@ -1523,20 +1503,20 @@ "portable", "shim" ], - "time": "2019-11-27T14:18:11+00:00" + "time": "2018-09-21T13:07:52+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.13.1", + "version": "v1.10.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "66fea50f6cb37a35eea048d75a7d99a45b586038" + "reference": "9050816e2ca34a8e916c3a0ae8b9c2fccf68b631" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/66fea50f6cb37a35eea048d75a7d99a45b586038", - "reference": "66fea50f6cb37a35eea048d75a7d99a45b586038", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/9050816e2ca34a8e916c3a0ae8b9c2fccf68b631", + "reference": "9050816e2ca34a8e916c3a0ae8b9c2fccf68b631", "shasum": "" }, "require": { @@ -1545,7 +1525,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.13-dev" + "dev-master": "1.9-dev" } }, "autoload": { @@ -1578,20 +1558,20 @@ "portable", "shim" ], - "time": "2019-11-27T13:56:44+00:00" + "time": "2018-09-21T13:07:52+00:00" }, { "name": "symfony/routing", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "1174ae15f862a0f2d481c29ba172a70b208c9561" + "reference": "7f8e44fc498972466f0841c3e48dc555f23bdf53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/1174ae15f862a0f2d481c29ba172a70b208c9561", - "reference": "1174ae15f862a0f2d481c29ba172a70b208c9561", + "url": "https://api.github.com/repos/symfony/routing/zipball/7f8e44fc498972466f0841c3e48dc555f23bdf53", + "reference": "7f8e44fc498972466f0841c3e48dc555f23bdf53", "shasum": "" }, "require": { @@ -1614,6 +1594,7 @@ "suggest": { "doctrine/annotations": "For using the annotation loader", "symfony/config": "For using the all-in-one router or any loader", + "symfony/dependency-injection": "For loading routes from a service", "symfony/expression-language": "For using expression matching", "symfony/http-foundation": "For using a Symfony Request object", "symfony/yaml": "For using the YAML loader" @@ -1654,20 +1635,20 @@ "uri", "url" ], - "time": "2019-06-26T13:53:23+00:00" + "time": "2019-01-29T09:49:29+00:00" }, { "name": "symfony/var-dumper", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "4e18e041a477edbb8c54e053f179672f9413816c" + "reference": "223bda89f9be41cf7033eeaf11bc61a280489c17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/4e18e041a477edbb8c54e053f179672f9413816c", - "reference": "4e18e041a477edbb8c54e053f179672f9413816c", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/223bda89f9be41cf7033eeaf11bc61a280489c17", + "reference": "223bda89f9be41cf7033eeaf11bc61a280489c17", "shasum": "" }, "require": { @@ -1730,20 +1711,20 @@ "debug", "dump" ], - "time": "2019-07-27T06:42:33+00:00" + "time": "2019-01-30T11:44:30+00:00" }, { "name": "symfony/var-exporter", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "f5be0592bb191debd278cf7e16413df0c978de8f" + "reference": "d8bf4424c232b55f4c1816037d3077a89258557e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/f5be0592bb191debd278cf7e16413df0c978de8f", - "reference": "f5be0592bb191debd278cf7e16413df0c978de8f", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/d8bf4424c232b55f4c1816037d3077a89258557e", + "reference": "d8bf4424c232b55f4c1816037d3077a89258557e", "shasum": "" }, "require": { @@ -1790,20 +1771,20 @@ "instantiate", "serialize" ], - "time": "2019-11-12T12:59:01+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "symfony/yaml", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "9468fef6f1c740b96935e9578560a9e9189ca154" + "reference": "d461670ee145092b7e2a56c1da7118f19cadadb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/9468fef6f1c740b96935e9578560a9e9189ca154", - "reference": "9468fef6f1c740b96935e9578560a9e9189ca154", + "url": "https://api.github.com/repos/symfony/yaml/zipball/d461670ee145092b7e2a56c1da7118f19cadadb0", + "reference": "d461670ee145092b7e2a56c1da7118f19cadadb0", "shasum": "" }, "require": { @@ -1849,20 +1830,20 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2019-07-24T14:47:26+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "tightenco/collect", - "version": "v5.8.35", + "version": "v5.7.26", "source": { "type": "git", "url": "https://github.com/tightenco/collect.git", - "reference": "c93a7039e6207ad533a09109838fe80933fcc72c" + "reference": "c1a36a2a8a0aa731c1acdcd83f57724ffe630d00" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tightenco/collect/zipball/c93a7039e6207ad533a09109838fe80933fcc72c", - "reference": "c93a7039e6207ad533a09109838fe80933fcc72c", + "url": "https://api.github.com/repos/tightenco/collect/zipball/c1a36a2a8a0aa731c1acdcd83f57724ffe630d00", + "reference": "c1a36a2a8a0aa731c1acdcd83f57724ffe630d00", "shasum": "" }, "require": { @@ -1899,22 +1880,22 @@ "collection", "laravel" ], - "time": "2019-09-17T18:57:01+00:00" + "time": "2019-02-13T19:40:13+00:00" } ], "packages-dev": [ { "name": "doctrine/inflector", - "version": "1.3.1", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1" + "reference": "5527a48b7313d15261292c149e55e26eae771b0a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/ec3a55242203ffa6a4b27c58176da97ff0a7aec1", - "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", + "reference": "5527a48b7313d15261292c149e55e26eae771b0a", "shasum": "" }, "require": { @@ -1939,10 +1920,6 @@ "MIT" ], "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, { "name": "Roman Borschel", "email": "roman@code-factory.org" @@ -1951,6 +1928,10 @@ "name": "Benjamin Eberlei", "email": "kontakt@beberlei.de" }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, { "name": "Jonathan Wage", "email": "jonwage@gmail.com" @@ -1968,70 +1949,80 @@ "singularize", "string" ], - "time": "2019-10-30T19:59:35+00:00" + "time": "2018-01-09T20:05:19+00:00" }, { - "name": "fzaninotto/faker", - "version": "v1.9.1", + "name": "facebook/webdriver", + "version": "1.6.0", "source": { "type": "git", - "url": "https://github.com/fzaninotto/Faker.git", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f" + "url": "https://github.com/facebook/php-webdriver.git", + "reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f", + "url": "https://api.github.com/repos/facebook/php-webdriver/zipball/bd8c740097eb9f2fc3735250fc1912bc811a954e", + "reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0" + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-zip": "*", + "php": "^5.6 || ~7.0", + "symfony/process": "^2.8 || ^3.1 || ^4.0" }, "require-dev": { - "ext-intl": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "squizlabs/php_codesniffer": "^2.9.2" + "friendsofphp/php-cs-fixer": "^2.0", + "jakub-onderka/php-parallel-lint": "^0.9.2", + "php-coveralls/php-coveralls": "^2.0", + "php-mock/php-mock-phpunit": "^1.1", + "phpunit/phpunit": "^5.7", + "sebastian/environment": "^1.3.4 || ^2.0 || ^3.0", + "squizlabs/php_codesniffer": "^2.6", + "symfony/var-dumper": "^3.3 || ^4.0" + }, + "suggest": { + "ext-SimpleXML": "For Firefox profile creation" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-community": "1.5-dev" } }, "autoload": { "psr-4": { - "Faker\\": "src/Faker/" + "Facebook\\WebDriver\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "Apache-2.0" ], - "authors": [ - { - "name": "François Zaninotto" - } - ], - "description": "Faker is a PHP library that generates fake data for you.", + "description": "A PHP client for Selenium WebDriver", + "homepage": "https://github.com/facebook/php-webdriver", "keywords": [ - "data", - "faker", - "fixtures" + "facebook", + "php", + "selenium", + "webdriver" ], - "time": "2019-12-12T13:22:17+00:00" + "time": "2018-05-16T17:37:13+00:00" }, { "name": "nikic/php-parser", - "version": "v4.3.0", + "version": "v4.2.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "9a9981c347c5c49d6dfe5cf826bb882b824080dc" + "reference": "594bcae1fc0bccd3993d2f0d61a018e26ac2865a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/9a9981c347c5c49d6dfe5cf826bb882b824080dc", - "reference": "9a9981c347c5c49d6dfe5cf826bb882b824080dc", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/594bcae1fc0bccd3993d2f0d61a018e26ac2865a", + "reference": "594bcae1fc0bccd3993d2f0d61a018e26ac2865a", "shasum": "" }, "require": { @@ -2039,8 +2030,7 @@ "php": ">=7.0" }, "require-dev": { - "ircmaxell/php-yacc": "0.0.5", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0" + "phpunit/phpunit": "^6.5 || ^7.0" }, "bin": [ "bin/php-parse" @@ -2048,7 +2038,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "4.2-dev" } }, "autoload": { @@ -2070,20 +2060,20 @@ "parser", "php" ], - "time": "2019-11-08T13:50:10+00:00" + "time": "2019-01-12T16:31:37+00:00" }, { "name": "symfony/browser-kit", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "3659f10d13d270b77506006bdf9250cac9268156" + "reference": "ee4462581eb54bf34b746e4a5d522a4f21620160" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/3659f10d13d270b77506006bdf9250cac9268156", - "reference": "3659f10d13d270b77506006bdf9250cac9268156", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/ee4462581eb54bf34b746e4a5d522a4f21620160", + "reference": "ee4462581eb54bf34b746e4a5d522a4f21620160", "shasum": "" }, "require": { @@ -2127,11 +2117,11 @@ ], "description": "Symfony BrowserKit Component", "homepage": "https://symfony.com", - "time": "2019-06-11T15:21:32+00:00" + "time": "2019-01-16T21:31:25+00:00" }, { "name": "symfony/css-selector", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", @@ -2165,14 +2155,14 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Jean-François Simon", "email": "jeanfrancois.simon@sensiolabs.com" }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" @@ -2184,16 +2174,16 @@ }, { "name": "symfony/dom-crawler", - "version": "v4.2.12", + "version": "v4.2.3", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "ba1da8fb10291714b8db153fcf7ac515e1a217bb" + "reference": "d8476760b04cdf7b499c8718aa437c20a9155103" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/ba1da8fb10291714b8db153fcf7ac515e1a217bb", - "reference": "ba1da8fb10291714b8db153fcf7ac515e1a217bb", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/d8476760b04cdf7b499c8718aa437c20a9155103", + "reference": "d8476760b04cdf7b499c8718aa437c20a9155103", "shasum": "" }, "require": { @@ -2237,44 +2227,42 @@ ], "description": "Symfony DomCrawler Component", "homepage": "https://symfony.com", - "time": "2019-06-13T10:57:15+00:00" + "time": "2019-01-16T20:35:37+00:00" }, { "name": "symfony/maker-bundle", - "version": "v1.14.3", + "version": "v1.11.3", "source": { "type": "git", "url": "https://github.com/symfony/maker-bundle.git", - "reference": "c864e7f9b8d1e1f5f60acc3beda11299f637aded" + "reference": "08fabae78050d2fe71341d0edc3872bddf03482f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/c864e7f9b8d1e1f5f60acc3beda11299f637aded", - "reference": "c864e7f9b8d1e1f5f60acc3beda11299f637aded", + "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/08fabae78050d2fe71341d0edc3872bddf03482f", + "reference": "08fabae78050d2fe71341d0edc3872bddf03482f", "shasum": "" }, "require": { "doctrine/inflector": "^1.2", "nikic/php-parser": "^4.0", "php": "^7.0.8", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/console": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/filesystem": "^3.4|^4.0|^5.0", - "symfony/finder": "^3.4|^4.0|^5.0", - "symfony/framework-bundle": "^3.4|^4.0|^5.0", - "symfony/http-kernel": "^3.4|^4.0|^5.0" + "symfony/config": "^3.4|^4.0", + "symfony/console": "^3.4|^4.0", + "symfony/dependency-injection": "^3.4|^4.0", + "symfony/filesystem": "^3.4|^4.0", + "symfony/finder": "^3.4|^4.0", + "symfony/framework-bundle": "^3.4|^4.0", + "symfony/http-kernel": "^3.4|^4.0" }, "require-dev": { - "doctrine/doctrine-bundle": "^1.8|^2.0", + "allocine/twigcs": "^3.0", + "doctrine/doctrine-bundle": "^1.8", "doctrine/orm": "^2.3", "friendsofphp/php-cs-fixer": "^2.8", - "friendsoftwig/twigcs": "^3.1.2", - "symfony/http-client": "^4.3|^5.0", - "symfony/phpunit-bridge": "^4.3|^5.0", - "symfony/process": "^3.4|^4.0|^5.0", - "symfony/security-core": "^3.4|^4.0|^5.0", - "symfony/yaml": "^3.4|^4.0|^5.0" + "symfony/phpunit-bridge": "^3.4|^4.0", + "symfony/process": "^3.4|^4.0", + "symfony/yaml": "^3.4|^4.0" }, "type": "symfony-bundle", "extra": { @@ -2305,30 +2293,100 @@ "scaffold", "scaffolding" ], - "time": "2019-11-07T00:56:03+00:00" + "time": "2019-01-17T02:02:27+00:00" }, { - "name": "symfony/phpunit-bridge", - "version": "v5.0.2", + "name": "symfony/panther", + "version": "v0.2.0", "source": { "type": "git", - "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "010cf42a81e7bec744edfdef5f76d6394f4906a7" + "url": "https://github.com/symfony/panther.git", + "reference": "d67f9dbcac173150fe00673e6564b3482762c615" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/010cf42a81e7bec744edfdef5f76d6394f4906a7", - "reference": "010cf42a81e7bec744edfdef5f76d6394f4906a7", + "url": "https://api.github.com/repos/symfony/panther/zipball/d67f9dbcac173150fe00673e6564b3482762c615", + "reference": "d67f9dbcac173150fe00673e6564b3482762c615", "shasum": "" }, "require": { - "php": ">=5.5.9" + "facebook/webdriver": "^1.5", + "php": ">=7.1", + "symfony/browser-kit": "^4.0", + "symfony/polyfill-php72": "^1.9", + "symfony/process": "^3.4 || ^4.0" }, "conflict": { - "phpunit/phpunit": "<5.4.3" + "symfony/browser-kit": "4.1.0" + }, + "require-dev": { + "fabpot/goutte": "^3.2.3", + "guzzlehttp/guzzle": "^6.3", + "phpunit/phpunit": "^7.0", + "symfony/css-selector": "^3.4 || ^4.0", + "symfony/framework-bundle": "^3.4 || ^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Panther\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + }, + { + "name": "Kévin Dunglas", + "email": "dunglas@gmail.com", + "homepage": "https://dunglas.fr" + } + ], + "description": "A browser testing and web scraping library for PHP and Symfony.", + "homepage": "https://dunglas.fr", + "keywords": [ + "e2e", + "scraping", + "selenium", + "symfony", + "testing", + "webdriver" + ], + "time": "2018-09-26T10:35:52+00:00" + }, + { + "name": "symfony/phpunit-bridge", + "version": "v4.2.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/phpunit-bridge.git", + "reference": "4ea7d80a7512ddc41d5af598978edcd395140edc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/4ea7d80a7512ddc41d5af598978edcd395140edc", + "reference": "4ea7d80a7512ddc41d5af598978edcd395140edc", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "conflict": { + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" }, "suggest": { - "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" + "ext-zip": "Zip support is required when using bin/simple-phpunit", + "symfony/debug": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" }, "bin": [ "bin/simple-phpunit" @@ -2336,7 +2394,7 @@ "type": "symfony-bridge", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "4.2-dev" }, "thanks": { "name": "phpunit/phpunit", @@ -2370,26 +2428,76 @@ ], "description": "Symfony PHPUnit Bridge", "homepage": "https://symfony.com", - "time": "2019-11-28T14:20:16+00:00" + "time": "2019-01-24T21:39:51+00:00" }, { - "name": "symfony/test-pack", - "version": "v1.0.6", + "name": "symfony/process", + "version": "v4.2.3", "source": { "type": "git", - "url": "https://github.com/symfony/test-pack.git", - "reference": "ff87e800a67d06c423389f77b8209bc9dc469def" + "url": "https://github.com/symfony/process.git", + "reference": "6c05edb11fbeff9e2b324b4270ecb17911a8b7ad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/test-pack/zipball/ff87e800a67d06c423389f77b8209bc9dc469def", - "reference": "ff87e800a67d06c423389f77b8209bc9dc469def", + "url": "https://api.github.com/repos/symfony/process/zipball/6c05edb11fbeff9e2b324b4270ecb17911a8b7ad", + "reference": "6c05edb11fbeff9e2b324b4270ecb17911a8b7ad", + "shasum": "" + }, + "require": { + "php": "^7.1.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.2-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Process Component", + "homepage": "https://symfony.com", + "time": "2019-01-24T22:05:03+00:00" + }, + { + "name": "symfony/test-pack", + "version": "v1.0.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/test-pack.git", + "reference": "1792b80cc2da5310e84afa983682b71dfc409d17" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/test-pack/zipball/1792b80cc2da5310e84afa983682b71dfc409d17", + "reference": "1792b80cc2da5310e84afa983682b71dfc409d17", "shasum": "" }, "require": { "php": "^7.0", "symfony/browser-kit": "*", "symfony/css-selector": "*", + "symfony/panther": "*", "symfony/phpunit-bridge": "*" }, "type": "symfony-pack", @@ -2398,7 +2506,7 @@ "MIT" ], "description": "A pack for functional and end-to-end testing within a Symfony app", - "time": "2019-06-21T06:27:32+00:00" + "time": "2018-12-10T12:13:08+00:00" } ], "aliases": [], @@ -2409,8 +2517,7 @@ "platform": { "php": "^7.1.3", "ext-ctype": "*", - "ext-iconv": "*", - "ext-json": "^1.5" + "ext-iconv": "*" }, "platform-dev": [] } diff --git a/src/Command/PickWinnerCommand.php b/src/Command/PickWinnerCommand.php index 86341b8..8dce116 100644 --- a/src/Command/PickWinnerCommand.php +++ b/src/Command/PickWinnerCommand.php @@ -2,7 +2,6 @@ namespace App\Command; -use App\Comment; use App\Service\Picker; use GuzzleHttp\Client; use Symfony\Component\Cache\Simple\FilesystemCache; @@ -11,7 +10,6 @@ use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Style\SymfonyStyle; -use Tightenco\Collect\Support\Collection; class PickWinnerCommand extends Command { @@ -22,11 +20,6 @@ class PickWinnerCommand extends Command */ private $client; - /** - * @var \Symfony\Contracts\Cache\CacheInterface - */ - private $cache; - /** * @var \App\Service\Picker */ @@ -40,9 +33,8 @@ class PickWinnerCommand extends Command */ public function __construct(Picker $picker) { - parent::__construct(); + parent::__construct(); $this->client = new Client(); - $this->cache = new FilesystemCache(); $this->picker = $picker; } @@ -66,122 +58,31 @@ class PickWinnerCommand extends Command { $io = new SymfonyStyle($input, $output); - $io->title('Joind.in Winner Picker!'); - $tag = $input->getArgument('tag'); $startDate = (new \DateTime($input->getArgument('start')))->format('Y-m-d'); $endDate = (new \DateTime($input->getArgument('end')))->format('Y-m-d'); - $io->comment(vsprintf('Selecting from #%s events between %s and %s.', [ - $tag, - $startDate, - $endDate, - ])); + var_dump([ + 'tag' => $tag, + 'start date' => $startDate, + 'end date' => $endDate, + ]); - $events = collect($this->getEventData($tag, $startDate, $endDate)); - $this->picker->setHosts($events); - $this->picker->setComments($this->allComments($events)); +// $io->success('You have a new command! Now make it your own! Pass --help to see your options.'); + $cache = new FilesystemCache(); + $cacheKey = md5(collect([$tag, $startDate, $endDate])->implode('_')); - $this->picker->getWinners(1)->each(function (Comment $comment) use ($io) { - $io->section(vsprintf('%s (%s)', [ - $comment->getUserDisplayName(), - $comment->getTalkTitle(), - ])); - $io->text($comment->getText()); - $io->text($comment->getUri()); - }); - } - - /** - * Get all comments (talks and event) for the events. - * - * @param \Tightenco\Collect\Support\Collection $events - * The retrieved events. - * - * @return \Tightenco\Collect\Support\Collection - * The merged comments. - */ - private function allComments(Collection $events): Collection - { - return $events->map(function (\stdClass $event) { - return $this - ->eventComments($event) - ->merge($this->talkComments($event)) - ; - }); - } - - /** - * Get the event comments. - * - * @param \stdClass $event - * The event. - * - * @return \Tightenco\Collect\Support\Collection - */ - private function eventComments(\stdClass $event): Collection - { - // TODO: Cache this. - $response = $this->client->get( - $event->comments_uri, - ['query' => ['resultsperpage' => 1000]] - )->getBody(); - - return collect(json_decode($response)->comments); - } - - /** - * Get the talk comments. - * - * @param \stdClass $event - * The event. - * - * @return \Tightenco\Collect\Support\Collection - */ - private function talkComments(\stdClass $event): Collection - { - // TODO: Cache this. - $response = $this->client->get( - $event->all_talk_comments_uri, - ['query' => ['resultsperpage' => 1000]] - )->getBody(); - - return collect(json_decode($response)->comments); - } - - /** - * Get the event data. - * - * @param string $tag - * The tag to search for. - * @param string $startDate - * The start date limit. - * @param string $endDate - * The end date limit. - * - * @return array - * - * @throws \Psr\Cache\InvalidArgumentException - * @throws \Psr\SimpleCache\InvalidArgumentException - */ - private function getEventData(string $tag, string $startDate, string $endDate): array - { - $cacheKey = md5(collect(['events:', $tag, $startDate, $endDate])->implode('_')); - - if (!$events = $this->cache->get($cacheKey)) { + if (!$events = $cache->get($cacheKey)) { $response = $this->client->get('http://api.joind.in/v2.1/events', [ 'query' => [ 'tags' => [$tag], 'startdate' => $startDate, 'enddate' => $endDate, 'verbose' => 'yes', - ], + ] ]); - $events = json_decode($response->getBody())->events; - $this->cache->set($cacheKey, $events, 3600); + $cache->set($cacheKey, json_decode($response->getBody())->events, 3600); } - - return $events; } } diff --git a/src/Comment.php b/src/Comment.php deleted file mode 100644 index 4d4d866..0000000 --- a/src/Comment.php +++ /dev/null @@ -1,106 +0,0 @@ -text = $text; - } - - /** - * Set the user's display name. - * - * @param string $name - */ - public function setUserDisplayName(string $name): void - { - $this->userDisplayName = $name; - } - - /** - * Set the URI for the comment. - * - * @param string $uri - */ - public function setUri(string $uri): void - { - $this->uri = $uri; - } - - /** - * Set the talk title. - * - * @param string $talkTitle - */ - public function setTalkTitle(string $talkTitle): void - { - $this->talkTitle = $talkTitle; - } - - /** - * @return string - */ - public function getText(): string - { - return $this->text; - } - - /** - * @return mixed - */ - public function getUserDisplayName(): string - { - return $this->userDisplayName; - } - - /** - * Get the URI for the comment. - * - * @return string - */ - public function getUri(): string - { - return $this->uri; - } - - /** - * Get the talk title. - * - * @return string - */ - public function getTalkTitle(): string - { - return $this->talkTitle; - } -} diff --git a/src/Service/Picker.php b/src/Service/Picker.php index d8c6482..888b15f 100644 --- a/src/Service/Picker.php +++ b/src/Service/Picker.php @@ -2,7 +2,6 @@ namespace App\Service; -use App\Comment; use Tightenco\Collect\Support\Collection; class Picker @@ -78,16 +77,8 @@ class Picker { $this->comments = $comments ->flatten(1) - ->filter(function (\stdClass $comment) { - return !$this->isUserAnEventHost($comment->user_display_name); - }) - ->map(function (\stdClass $original) { - return tap(new Comment(), function (Comment $comment) use ($original) { - $comment->setText($original->comment); - $comment->setUserDisplayName($original->user_display_name); - $comment->setUri($original->uri); - $comment->setTalkTitle($original->talk_title); - }); + ->filter(function (array $comment) { + return !$this->isUserAnEventHost($comment['user_display_name']); }) ->values(); diff --git a/symfony.lock b/symfony.lock index c48a64e..f4cb6b9 100644 --- a/symfony.lock +++ b/symfony.lock @@ -5,9 +5,6 @@ "facebook/webdriver": { "version": "1.6.0" }, - "fzaninotto/faker": { - "version": "v1.8.0" - }, "guzzlehttp/guzzle": { "version": "6.3.3" }, @@ -23,9 +20,6 @@ "nikic/php-parser": { "version": "v4.2.0" }, - "php": { - "version": "7.3" - }, "psr/cache": { "version": "1.0.1" }, diff --git a/tests/Helpers/Factory/CommentFactory.php b/tests/Helpers/Factory/CommentFactory.php deleted file mode 100644 index 9eba50c..0000000 --- a/tests/Helpers/Factory/CommentFactory.php +++ /dev/null @@ -1,68 +0,0 @@ -faker = Factory::create(); - } - - /** - * Create new comments. - * - * @return \Tightenco\Collect\Support\Collection - */ - public function create(): Collection - { - $talkTitle = $this->faker->sentence; - - return tap(collect(), function (Collection $data) use ($talkTitle) { - if ($this->commentCount > 0) { - foreach (range(1, $this->commentCount) as $i) { - $comment = new \stdClass(); - $comment->talk_title = $talkTitle; - $comment->comment = $this->faker->paragraph; - $comment->uri = 'http://api.joind.in/v2.1/talk_comments/' . $this->faker->randomNumber(8); - $comment->user_display_name = $this->faker->name; - - $data->push($comment); - } - } - }); - } - - /** - * Set the number of comments to create. - * - * @param int $count - * - * @return \App\Tests\Helpers\Factory\CommentFactory - */ - public function setCount(int $count): self - { - $this->commentCount = $count; - - return $this; - } -} diff --git a/tests/Service/PickerTest.php b/tests/Service/PickerTest.php index 1d8df5a..50b53c7 100644 --- a/tests/Service/PickerTest.php +++ b/tests/Service/PickerTest.php @@ -2,9 +2,7 @@ namespace App\Tests\Service; -use App\Comment; use App\Service\Picker; -use App\Tests\Helpers\Factory\CommentFactory; use PHPUnit\Framework\TestCase; use Tightenco\Collect\Support\Collection; @@ -43,8 +41,22 @@ class PickerTest extends TestCase public function comments_for_multiple_events_are_flattened_and_combined() { $data = [ - (new CommentFactory())->setCount(2)->create(), - (new CommentFactory())->setCount(1)->create(), + [ + [ + 'comment' => 'Great talk!', + 'user_display_name' => 'Dan Ackroyd', + ], + [ + 'comment' => 'Could be better.', + 'user_display_name' => 'Lucia Velasco', + ], + ], + [ + [ + 'comment' => 'Needs more cat pictures.', + 'user_display_name' => 'Rupert Jabelman', + ], + ], ]; $comments = (new Picker()) @@ -58,29 +70,58 @@ class PickerTest extends TestCase /** @test */ public function comments_from_event_hosts_cannot_be_picked() { - $comments = (new CommentFactory())->setCount(3)->create(); - $event = [ 'hosts' => [ - ['host_name' => $hostName = $comments[1]->user_display_name], + ['host_name' => 'Oliver Davies'], ], ]; - /** @var \Tightenco\Collect\Support\Collection $userNames */ - $userNames = (new Picker()) + $comments = [ + [ + [ + 'comment' => 'Great talk!', + 'user_display_name' => 'Peter Fisher', + ], + [ + 'comment' => 'Text on slides could be bigger.', + 'user_display_name' => 'Oliver Davies', + ], + [ + 'comment' => 'Speak slower.', + 'user_display_name' => 'Zan Baldwin', + ], + ], + ]; + + $comments = (new Picker()) ->setHosts(collect([$event])) ->setComments(collect($comments)) - ->getComments() - ->map->getUserDisplayName(); + ->getComments(); - $this->assertCount(2, $userNames); - $this->assertFalse($userNames->contains($hostName)); + $this->assertCount(2, $comments); + $this->assertSame('Peter Fisher', $comments[0]['user_display_name']); + $this->assertSame('Zan Baldwin', $comments[1]['user_display_name']); } /** @test */ public function winners_can_be_selected() { - $comments = (new CommentFactory())->setCount(3)->create(); + $comments = [ + [ + [ + 'comment' => 'Great talk!', + 'user_display_name' => 'Peter Fisher', + ], + [ + 'comment' => 'Text on slides could be bigger.', + 'user_display_name' => 'Michael Bush', + ], + [ + 'comment' => 'Speak slower.', + 'user_display_name' => 'Zan Baldwin', + ], + ], + ]; $picker = new Picker(); $picker->setComments(collect($comments)); @@ -88,17 +129,12 @@ class PickerTest extends TestCase tap($picker->getWinners(1), function (Collection $winners) use ($picker) { $this->assertCount(1, $winners); - $this->assertInstanceOf(Comment::class, $winners->first()); $this->assertTrue($picker->getComments()->contains($winners->first())); }); tap($picker->getWinners(2), function (Collection $winners) use ($picker) { $this->assertCount(2, $winners); - - $this->assertInstanceOf(Comment::class, $winners->first()); $this->assertTrue($picker->getComments()->contains($winners->first())); - - $this->assertInstanceOf(Comment::class, $winners->last()); $this->assertTrue($picker->getComments()->contains($winners->last())); }); }