From 721dd438063726191926cd9ab2fc6b033a6115a8 Mon Sep 17 00:00:00 2001 From: Greg Anderson Date: Wed, 2 Jan 2019 13:27:46 -0800 Subject: [PATCH 01/11] Fix phar build --- robo | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/robo b/robo index 03d6d839b..b6707d27f 100755 --- a/robo +++ b/robo @@ -4,11 +4,28 @@ * If we're running from phar load the phar autoload, * else let the script 'robo' search for the autoloader. */ + +// Hack: \Phar::running() cannot be used reliably here to determine +// if we are running as a phar or not (works when phar is built with +// box, but does not work when phar is built with the Robo phar task.) +// We will use __FILE__ to determine our phar path; however, we cannot +// distinguish whether a __FILE__ of "/path/robo" is this file, or a +// 'robo.phar' that has been renamed to 'robo'. We will use the file +// size to differentiate. +// Recommendation: Use box to build your phar. See https://github.com/g1a/starter +$isPhar = (filesize(__FILE__) > 500000); + +// Non-phar autoloader paths $candidates = [ - 'phar://robo.phar/vendor/autoload.php', // phar path __DIR__.'/vendor/autoload.php', __DIR__.'/../../autoload.php', ]; + +// Use our phar alias path +if ($isPhar) { + array_unshift($candidates, 'phar://robo.phar/vendor/autoload.php'); +} + $autoloaderPath = false; foreach ($candidates as $candidate) { if (file_exists($candidate)) { From c29e73dc24f8b5b8bf2309f95d3992c99b6869bb Mon Sep 17 00:00:00 2001 From: Greg Anderson Date: Fri, 15 Feb 2019 18:08:08 -0800 Subject: [PATCH 02/11] Extend ConfigAwareTrait from consolidation config (#838) --- .scenarios.lock/install | 14 +- .scenarios.lock/symfony3/composer.json | 6 +- .scenarios.lock/symfony3/composer.lock | 465 +++++++++------ LICENSE | 22 +- composer.json | 4 +- composer.lock | 765 ++++++++++++++++--------- src/Common/ConfigAwareTrait.php | 30 +- src/Contract/ConfigAwareInterface.php | 19 +- 8 files changed, 795 insertions(+), 530 deletions(-) diff --git a/.scenarios.lock/install b/.scenarios.lock/install index 16c69e107..4d8a77770 100755 --- a/.scenarios.lock/install +++ b/.scenarios.lock/install @@ -4,16 +4,16 @@ SCENARIO=$1 DEPENDENCIES=${2-install} # Convert the aliases 'highest', 'lowest' and 'lock' to -# the corresponding composer command to run. +# the corresponding composer update command to run. case $DEPENDENCIES in highest) - DEPENDENCIES=update + UPDATE_COMMAND=update ;; lowest) - DEPENDENCIES='update --prefer-lowest' + UPDATE_COMMAND='update --prefer-lowest' ;; lock|default|"") - DEPENDENCIES=install + UPDATE_COMMAND='' ;; esac @@ -48,7 +48,11 @@ echo set -ex composer -n validate --working-dir=$dir --no-check-all --ansi -composer -n --working-dir=$dir ${DEPENDENCIES} --prefer-dist --no-scripts + +if [ ! -z "$UPDATE_COMMAND" ] ; then + composer -n --working-dir=$dir ${UPDATE_COMMAND} --prefer-dist --no-scripts +fi +composer -n --working-dir=$dir install --prefer-dist # If called from a CI context, print out some extra information about # what we just installed. diff --git a/.scenarios.lock/symfony3/composer.json b/.scenarios.lock/symfony3/composer.json index b14822ece..60d798e04 100644 --- a/.scenarios.lock/symfony3/composer.json +++ b/.scenarios.lock/symfony3/composer.json @@ -26,7 +26,7 @@ "symfony/console": "^3", "php": ">=7", "consolidation/annotated-command": "^2.11.0", - "consolidation/config": "^1.0.10", + "consolidation/config": "^1.2", "consolidation/log": "^1.1.1", "consolidation/output-formatters": "^3.1.13", "consolidation/self-update": "^1", @@ -40,7 +40,7 @@ "require-dev": { "g1a/composer-test-scenarios": "^3", "patchwork/jsqueeze": "^2", - "natxet/CssMin": "3.0.4", + "natxet/cssmin": "3.0.4", "pear/archive_tar": "^1.4.4", "codeception/base": "^2.3.7", "goaop/framework": "~2.1.2", @@ -82,7 +82,7 @@ "pear/archive_tar": "Allows tar archives to be created and extracted in taskPack and taskExtract, respectively.", "henrikbjorn/lurker": "For monitoring filesystem changes in taskWatch", "patchwork/jsqueeze": "For minifying JS files in taskMinify", - "natxet/CssMin": "For minifying CSS files in taskMinify" + "natxet/cssmin": "For minifying CSS files in taskMinify" }, "replace": { "codegyre/robo": "< 1.0" diff --git a/.scenarios.lock/symfony3/composer.lock b/.scenarios.lock/symfony3/composer.lock index fbcc630ba..60ffafc0d 100644 --- a/.scenarios.lock/symfony3/composer.lock +++ b/.scenarios.lock/symfony3/composer.lock @@ -4,25 +4,25 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "85014fefa6252a8a8ff41376453a355b", + "content-hash": "50c35e0aff18a53fc038c278dc7ed369", "packages": [ { "name": "consolidation/annotated-command", - "version": "2.11.0", + "version": "2.12.0", "source": { "type": "git", "url": "https://github.com/consolidation/annotated-command.git", - "reference": "edea407f57104ed518cc3c3b47d5b84403ee267a" + "reference": "512a2e54c98f3af377589de76c43b24652bcb789" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/edea407f57104ed518cc3c3b47d5b84403ee267a", - "reference": "edea407f57104ed518cc3c3b47d5b84403ee267a", + "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/512a2e54c98f3af377589de76c43b24652bcb789", + "reference": "512a2e54c98f3af377589de76c43b24652bcb789", "shasum": "" }, "require": { "consolidation/output-formatters": "^3.4", - "php": ">=5.4.0", + "php": ">=5.4.5", "psr/log": "^1", "symfony/console": "^2.8|^3|^4", "symfony/event-dispatcher": "^2.5|^3|^4", @@ -100,20 +100,20 @@ } ], "description": "Initialize Symfony Console commands from annotated command class methods.", - "time": "2018-12-29T04:43:17+00:00" + "time": "2019-03-08T16:55:03+00:00" }, { "name": "consolidation/config", - "version": "1.1.1", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/consolidation/config.git", - "reference": "925231dfff32f05b787e1fddb265e789b939cf4c" + "reference": "cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/config/zipball/925231dfff32f05b787e1fddb265e789b939cf4c", - "reference": "925231dfff32f05b787e1fddb265e789b939cf4c", + "url": "https://api.github.com/repos/consolidation/config/zipball/cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1", + "reference": "cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1", "shasum": "" }, "require": { @@ -122,9 +122,9 @@ "php": ">=5.4.0" }, "require-dev": { - "g1a/composer-test-scenarios": "^1", + "g1a/composer-test-scenarios": "^3", + "php-coveralls/php-coveralls": "^1", "phpunit/phpunit": "^5", - "satooshi/php-coveralls": "^1.0", "squizlabs/php_codesniffer": "2.*", "symfony/console": "^2.5|^3|^4", "symfony/yaml": "^2.8.11|^3|^4" @@ -134,6 +134,33 @@ }, "type": "library", "extra": { + "scenarios": { + "symfony4": { + "require-dev": { + "symfony/console": "^4.0" + }, + "config": { + "platform": { + "php": "7.1.3" + } + } + }, + "symfony2": { + "require-dev": { + "symfony/console": "^2.8", + "symfony/event-dispatcher": "^2.8", + "phpunit/phpunit": "^4.8.36" + }, + "remove": [ + "php-coveralls/php-coveralls" + ], + "config": { + "platform": { + "php": "5.4.8" + } + } + } + }, "branch-alias": { "dev-master": "1.x-dev" } @@ -154,7 +181,7 @@ } ], "description": "Provide configuration services for a commandline tool.", - "time": "2018-10-24T17:55:35+00:00" + "time": "2019-03-03T19:37:04+00:00" }, { "name": "consolidation/log", @@ -248,16 +275,16 @@ }, { "name": "consolidation/output-formatters", - "version": "3.4.0", + "version": "3.5.0", "source": { "type": "git", "url": "https://github.com/consolidation/output-formatters.git", - "reference": "a942680232094c4a5b21c0b7e54c20cce623ae19" + "reference": "99ec998ffb697e0eada5aacf81feebfb13023605" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/a942680232094c4a5b21c0b7e54c20cce623ae19", - "reference": "a942680232094c4a5b21c0b7e54c20cce623ae19", + "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/99ec998ffb697e0eada5aacf81feebfb13023605", + "reference": "99ec998ffb697e0eada5aacf81feebfb13023605", "shasum": "" }, "require": { @@ -267,11 +294,10 @@ "symfony/finder": "^2.5|^3|^4" }, "require-dev": { - "g1a/composer-test-scenarios": "^2", + "g1a/composer-test-scenarios": "^3", + "php-coveralls/php-coveralls": "^1", "phpunit/phpunit": "^5.7.27", - "satooshi/php-coveralls": "^2", "squizlabs/php_codesniffer": "^2.7", - "symfony/console": "3.2.3", "symfony/var-dumper": "^2.8|^3|^4", "victorjonsson/markdowndocs": "^1.3" }, @@ -280,6 +306,52 @@ }, "type": "library", "extra": { + "scenarios": { + "symfony4": { + "require": { + "symfony/console": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^6" + }, + "config": { + "platform": { + "php": "7.1.3" + } + } + }, + "symfony3": { + "require": { + "symfony/console": "^3.4", + "symfony/finder": "^3.4", + "symfony/var-dumper": "^3.4" + }, + "config": { + "platform": { + "php": "5.6.32" + } + } + }, + "symfony2": { + "require": { + "symfony/console": "^2.8" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.36" + }, + "remove": [ + "php-coveralls/php-coveralls" + ], + "config": { + "platform": { + "php": "5.4.8" + } + }, + "scenario-options": { + "create-lockfile": "false" + } + } + }, "branch-alias": { "dev-master": "3.x-dev" } @@ -300,7 +372,7 @@ } ], "description": "Format text by applying transformations provided by plug-in formatters.", - "time": "2018-10-19T22:35:38+00:00" + "time": "2019-05-30T23:16:01+00:00" }, { "name": "consolidation/self-update", @@ -700,16 +772,16 @@ }, { "name": "symfony/console", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "a700b874d3692bc8342199adfb6d3b99f62cc61a" + "reference": "4510f04e70344d70952566e4262a0b11df39cb10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/a700b874d3692bc8342199adfb6d3b99f62cc61a", - "reference": "a700b874d3692bc8342199adfb6d3b99f62cc61a", + "url": "https://api.github.com/repos/symfony/console/zipball/4510f04e70344d70952566e4262a0b11df39cb10", + "reference": "4510f04e70344d70952566e4262a0b11df39cb10", "shasum": "" }, "require": { @@ -721,6 +793,9 @@ "symfony/dependency-injection": "<3.4", "symfony/process": "<3.3" }, + "provide": { + "psr/log-implementation": "1.0" + }, "require-dev": { "psr/log": "~1.0", "symfony/config": "~3.3|~4.0", @@ -730,7 +805,7 @@ "symfony/process": "~3.3|~4.0" }, "suggest": { - "psr/log-implementation": "For using the console logger", + "psr/log": "For using the console logger", "symfony/event-dispatcher": "", "symfony/lock": "", "symfony/process": "" @@ -765,20 +840,20 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2019-01-04T04:42:43+00:00" + "time": "2019-08-26T07:52:58+00:00" }, { "name": "symfony/debug", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186" + "reference": "0b600300918780001e2821db77bc28b677794486" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186", - "reference": "26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186", + "url": "https://api.github.com/repos/symfony/debug/zipball/0b600300918780001e2821db77bc28b677794486", + "reference": "0b600300918780001e2821db77bc28b677794486", "shasum": "" }, "require": { @@ -821,20 +896,20 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-20T13:31:17+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2" + "reference": "3e922c4c3430b9de624e8a285dada5e61e230959" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2", - "reference": "d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3e922c4c3430b9de624e8a285dada5e61e230959", + "reference": "3e922c4c3430b9de624e8a285dada5e61e230959", "shasum": "" }, "require": { @@ -884,20 +959,20 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2019-01-01T18:08:36+00:00" + "time": "2019-08-23T08:05:57+00:00" }, { "name": "symfony/filesystem", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "c24ce3d18ccc9bb9d7e1d6ce9330fcc6061cafde" + "reference": "00e3a6ddd723b8bcfe4f2a1b6f82b98eeeb51516" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/c24ce3d18ccc9bb9d7e1d6ce9330fcc6061cafde", - "reference": "c24ce3d18ccc9bb9d7e1d6ce9330fcc6061cafde", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/00e3a6ddd723b8bcfe4f2a1b6f82b98eeeb51516", + "reference": "00e3a6ddd723b8bcfe4f2a1b6f82b98eeeb51516", "shasum": "" }, "require": { @@ -934,20 +1009,20 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-20T13:31:17+00:00" }, { "name": "symfony/finder", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e" + "reference": "1fcad80b440abcd1451767349906b6f9d3961d37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e", - "reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e", + "url": "https://api.github.com/repos/symfony/finder/zipball/1fcad80b440abcd1451767349906b6f9d3961d37", + "reference": "1fcad80b440abcd1451767349906b6f9d3961d37", "shasum": "" }, "require": { @@ -983,20 +1058,20 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-14T09:39:58+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.10.0", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "e3d826245268269cd66f8326bd8bc066687b4a19" + "reference": "550ebaac289296ce228a706d0867afc34687e3f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19", - "reference": "e3d826245268269cd66f8326bd8bc066687b4a19", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/550ebaac289296ce228a706d0867afc34687e3f4", + "reference": "550ebaac289296ce228a706d0867afc34687e3f4", "shasum": "" }, "require": { @@ -1008,7 +1083,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.12-dev" } }, "autoload": { @@ -1024,13 +1099,13 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - }, { "name": "Gert de Pagter", "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony polyfill for ctype functions", @@ -1041,20 +1116,20 @@ "polyfill", "portable" ], - "time": "2018-08-06T14:22:27+00:00" + "time": "2019-08-06T08:03:45+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.10.0", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "c79c051f5b3a46be09205c73b80b346e4153e494" + "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/c79c051f5b3a46be09205c73b80b346e4153e494", - "reference": "c79c051f5b3a46be09205c73b80b346e4153e494", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17", + "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17", "shasum": "" }, "require": { @@ -1066,7 +1141,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.12-dev" } }, "autoload": { @@ -1100,20 +1175,20 @@ "portable", "shim" ], - "time": "2018-09-21T13:07:52+00:00" + "time": "2019-08-06T08:03:45+00:00" }, { "name": "symfony/process", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c" + "reference": "d822cb654000a95b7855362c0d5b127f6a6d8baa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c", - "reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c", + "url": "https://api.github.com/repos/symfony/process/zipball/d822cb654000a95b7855362c0d5b127f6a6d8baa", + "reference": "d822cb654000a95b7855362c0d5b127f6a6d8baa", "shasum": "" }, "require": { @@ -1149,20 +1224,20 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2019-01-02T21:24:08+00:00" + "time": "2019-08-26T07:52:58+00:00" }, { "name": "symfony/yaml", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea" + "reference": "3dc414b7db30695bae671a1d86013d03f4ae9834" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/554a59a1ccbaac238a89b19c8e551a556fd0e2ea", - "reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea", + "url": "https://api.github.com/repos/symfony/yaml/zipball/3dc414b7db30695bae671a1d86013d03f4ae9834", + "reference": "3dc414b7db30695bae671a1d86013d03f4ae9834", "shasum": "" }, "require": { @@ -1208,7 +1283,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-20T13:31:17+00:00" } ], "packages-dev": [ @@ -1316,16 +1391,16 @@ }, { "name": "codeception/base", - "version": "2.5.2", + "version": "2.5.6", "source": { "type": "git", "url": "https://github.com/Codeception/base.git", - "reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c" + "reference": "aace5bab5593c93d8473b620f70754135a1eb4f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/base/zipball/4f89de32929fef53ca6d83b159fe329b6d484c1c", - "reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c", + "url": "https://api.github.com/repos/Codeception/base/zipball/aace5bab5593c93d8473b620f70754135a1eb4f0", + "reference": "aace5bab5593c93d8473b620f70754135a1eb4f0", "shasum": "" }, "require": { @@ -1355,7 +1430,7 @@ "predis/predis": "^1.0", "squizlabs/php_codesniffer": "~2.0", "symfony/process": ">=2.7 <5.0", - "vlucas/phpdotenv": "^2.4.0" + "vlucas/phpdotenv": "^3.0" }, "suggest": { "aws/aws-sdk-php": "For using AWS Auth in REST module and Queue module", @@ -1402,20 +1477,20 @@ "functional testing", "unit testing" ], - "time": "2019-01-01T21:20:37+00:00" + "time": "2019-04-24T11:36:34+00:00" }, { "name": "codeception/phpunit-wrapper", - "version": "6.0.14", + "version": "6.0.17", "source": { "type": "git", "url": "https://github.com/Codeception/phpunit-wrapper.git", - "reference": "3b64beb0af3e63145af982e64718ab80d2417739" + "reference": "4394f87d6f2b18bf67cc9984845d0a3e257ccc9f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/3b64beb0af3e63145af982e64718ab80d2417739", - "reference": "3b64beb0af3e63145af982e64718ab80d2417739", + "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/4394f87d6f2b18bf67cc9984845d0a3e257ccc9f", + "reference": "4394f87d6f2b18bf67cc9984845d0a3e257ccc9f", "shasum": "" }, "require": { @@ -1429,7 +1504,7 @@ }, "require-dev": { "codeception/specify": "*", - "vlucas/phpdotenv": "^2.4" + "vlucas/phpdotenv": "^3.0" }, "type": "library", "autoload": { @@ -1448,24 +1523,24 @@ } ], "description": "PHPUnit classes used by Codeception", - "time": "2019-01-13T10:35:17+00:00" + "time": "2019-08-18T15:48:56+00:00" }, { "name": "codeception/stub", - "version": "2.0.4", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/Codeception/Stub.git", - "reference": "f50bc271f392a2836ff80690ce0c058efe1ae03e" + "reference": "853657f988942f7afb69becf3fd0059f192c705a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Stub/zipball/f50bc271f392a2836ff80690ce0c058efe1ae03e", - "reference": "f50bc271f392a2836ff80690ce0c058efe1ae03e", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/853657f988942f7afb69becf3fd0059f192c705a", + "reference": "853657f988942f7afb69becf3fd0059f192c705a", "shasum": "" }, "require": { - "phpunit/phpunit": ">=4.8 <8.0" + "codeception/phpunit-wrapper": ">6.0.15 <6.1.0 | ^6.6.1 | ^7.7.1 | ^8.0.3" }, "type": "library", "autoload": { @@ -1478,7 +1553,7 @@ "MIT" ], "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", - "time": "2018-07-26T11:55:37+00:00" + "time": "2019-03-02T15:35:10+00:00" }, { "name": "codeception/verify", @@ -1640,21 +1715,24 @@ }, { "name": "doctrine/lexer", - "version": "v1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" + "reference": "1febd6c3ef84253d7c815bed85fc622ad207a9f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/1febd6c3ef84253d7c815bed85fc622ad207a9f8", + "reference": "1febd6c3ef84253d7c815bed85fc622ad207a9f8", "shasum": "" }, "require": { "php": ">=5.3.2" }, + "require-dev": { + "phpunit/phpunit": "^4.5" + }, "type": "library", "extra": { "branch-alias": { @@ -1662,8 +1740,8 @@ } }, "autoload": { - "psr-0": { - "Doctrine\\Common\\Lexer\\": "lib/" + "psr-4": { + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" } }, "notification-url": "https://packagist.org/downloads/", @@ -1684,26 +1762,29 @@ "email": "schmittjoh@gmail.com" } ], - "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "http://www.doctrine-project.org", + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", "keywords": [ + "annotations", + "docblock", "lexer", - "parser" + "parser", + "php" ], - "time": "2014-09-09T13:34:57+00:00" + "time": "2019-06-08T11:03:04+00:00" }, { "name": "g1a/composer-test-scenarios", - "version": "3.0.1", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/g1a/composer-test-scenarios.git", - "reference": "224531e20d13a07942a989a70759f726cd2df9a1" + "reference": "fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/g1a/composer-test-scenarios/zipball/224531e20d13a07942a989a70759f726cd2df9a1", - "reference": "224531e20d13a07942a989a70759f726cd2df9a1", + "url": "https://api.github.com/repos/g1a/composer-test-scenarios/zipball/fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed", + "reference": "fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed", "shasum": "" }, "require": { @@ -1742,7 +1823,7 @@ } ], "description": "Useful scripts for testing multiple sets of Composer dependencies.", - "time": "2018-11-27T05:58:39+00:00" + "time": "2019-09-10T15:37:40+00:00" }, { "name": "goaop/framework", @@ -1953,33 +2034,37 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.5.2", + "version": "1.6.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "9f83dded91781a01c63574e387eaa769be769115" + "reference": "239400de7a173fe9901b9ac7c06497751f00727a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115", - "reference": "9f83dded91781a01c63574e387eaa769be769115", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a", + "reference": "239400de7a173fe9901b9ac7c06497751f00727a", "shasum": "" }, "require": { "php": ">=5.4.0", "psr/http-message": "~1.0", - "ralouphie/getallheaders": "^2.0.5" + "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" }, "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.5-dev" + "dev-master": "1.6-dev" } }, "autoload": { @@ -2016,7 +2101,7 @@ "uri", "url" ], - "time": "2018-12-04T20:46:45+00:00" + "time": "2019-07-01T23:21:34+00:00" }, { "name": "jakubledl/dissect", @@ -2119,7 +2204,7 @@ "time": "2017-10-19T19:58:43+00:00" }, { - "name": "natxet/CssMin", + "name": "natxet/cssmin", "version": "v3.0.4", "source": { "type": "git", @@ -2265,16 +2350,16 @@ }, { "name": "pear/archive_tar", - "version": "1.4.5", + "version": "1.4.7", "source": { "type": "git", "url": "https://github.com/pear/Archive_Tar.git", - "reference": "ff716ca697c5e9e8593212cb785ffd03ee11b01f" + "reference": "7e48add6f8edc3027dd98ad15964b1a28fd0c845" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/ff716ca697c5e9e8593212cb785ffd03ee11b01f", - "reference": "ff716ca697c5e9e8593212cb785ffd03ee11b01f", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/7e48add6f8edc3027dd98ad15964b1a28fd0c845", + "reference": "7e48add6f8edc3027dd98ad15964b1a28fd0c845", "shasum": "" }, "require": { @@ -2327,20 +2412,20 @@ "archive", "tar" ], - "time": "2019-01-02T21:45:13+00:00" + "time": "2019-04-08T13:15:55+00:00" }, { "name": "pear/console_getopt", - "version": "v1.4.1", + "version": "v1.4.2", "source": { "type": "git", "url": "https://github.com/pear/Console_Getopt.git", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f" + "reference": "6c77aeb625b32bd752e89ee17972d103588b90c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", + "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/6c77aeb625b32bd752e89ee17972d103588b90c0", + "reference": "6c77aeb625b32bd752e89ee17972d103588b90c0", "shasum": "" }, "type": "library", @@ -2374,20 +2459,20 @@ } ], "description": "More info available on: http://pear.php.net/package/Console_Getopt", - "time": "2015-07-20T20:28:12+00:00" + "time": "2019-02-06T16:52:33+00:00" }, { "name": "pear/pear-core-minimal", - "version": "v1.10.7", + "version": "v1.10.9", "source": { "type": "git", "url": "https://github.com/pear/pear-core-minimal.git", - "reference": "19a3e0fcd50492c4357372f623f55f1b144346da" + "reference": "742be8dd68c746a01e4b0a422258e9c9cae1c37f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/19a3e0fcd50492c4357372f623f55f1b144346da", - "reference": "19a3e0fcd50492c4357372f623f55f1b144346da", + "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/742be8dd68c746a01e4b0a422258e9c9cae1c37f", + "reference": "742be8dd68c746a01e4b0a422258e9c9cae1c37f", "shasum": "" }, "require": { @@ -2418,7 +2503,7 @@ } ], "description": "Minimal set of PEAR core files to be used as composer dependency", - "time": "2018-12-05T20:03:52+00:00" + "time": "2019-03-13T18:15:44+00:00" }, { "name": "pear/pear_exception", @@ -2592,16 +2677,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "4.3.0", + "version": "4.3.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08" + "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/94fd0001232e47129dd3504189fa1c7225010d08", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", + "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", "shasum": "" }, "require": { @@ -2639,7 +2724,7 @@ } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2017-11-30T07:14:17+00:00" + "time": "2019-04-30T17:48:53+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -2690,16 +2775,16 @@ }, { "name": "phpspec/prophecy", - "version": "1.8.0", + "version": "1.8.1", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06" + "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/1927e75f4ed19131ec9bcc3b002e07fb1173ee76", + "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76", "shasum": "" }, "require": { @@ -2720,8 +2805,8 @@ } }, "autoload": { - "psr-0": { - "Prophecy\\": "src/" + "psr-4": { + "Prophecy\\": "src/Prophecy" } }, "notification-url": "https://packagist.org/downloads/", @@ -2749,7 +2834,7 @@ "spy", "stub" ], - "time": "2018-08-05T17:53:17+00:00" + "time": "2019-06-13T12:50:23+00:00" }, { "name": "phpunit/php-code-coverage", @@ -2801,8 +2886,8 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "role": "lead", + "email": "sb@sebastian-bergmann.de" } ], "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", @@ -3069,8 +3154,8 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "role": "lead", + "email": "sebastian@phpunit.de" } ], "description": "The PHP Unit Testing framework.", @@ -3139,6 +3224,7 @@ "mock", "xunit" ], + "abandoned": true, "time": "2017-06-30T09:13:00+00:00" }, { @@ -3193,24 +3279,24 @@ }, { "name": "ralouphie/getallheaders", - "version": "2.0.5", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa" + "reference": "120b605dfeb996808c31b6477290a714d356e822" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa", - "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", "shasum": "" }, "require": { - "php": ">=5.3" + "php": ">=5.6" }, "require-dev": { - "phpunit/phpunit": "~3.7.0", - "satooshi/php-coveralls": ">=1.0" + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" }, "type": "library", "autoload": { @@ -3229,7 +3315,7 @@ } ], "description": "A polyfill for getallheaders.", - "time": "2016-02-11T07:05:27+00:00" + "time": "2019-03-08T08:55:37+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -3824,16 +3910,16 @@ }, { "name": "symfony/browser-kit", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "6d98fb221a263c66b1311203fe4eed154035f508" + "reference": "1a3406a6b9b61b492592a816ca056afcc9e976c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/6d98fb221a263c66b1311203fe4eed154035f508", - "reference": "6d98fb221a263c66b1311203fe4eed154035f508", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/1a3406a6b9b61b492592a816ca056afcc9e976c0", + "reference": "1a3406a6b9b61b492592a816ca056afcc9e976c0", "shasum": "" }, "require": { @@ -3877,20 +3963,20 @@ ], "description": "Symfony BrowserKit Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-26T07:52:58+00:00" }, { "name": "symfony/config", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "17c5d8941eb75a03d19bc76a43757738632d87b3" + "reference": "24a60c0d7ad98a0fa5d1f892e9286095a389404f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/17c5d8941eb75a03d19bc76a43757738632d87b3", - "reference": "17c5d8941eb75a03d19bc76a43757738632d87b3", + "url": "https://api.github.com/repos/symfony/config/zipball/24a60c0d7ad98a0fa5d1f892e9286095a389404f", + "reference": "24a60c0d7ad98a0fa5d1f892e9286095a389404f", "shasum": "" }, "require": { @@ -3941,20 +4027,20 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-26T07:52:57+00:00" }, { "name": "symfony/css-selector", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "12f86295c46c36af9896cf21db6b6b8a1465315d" + "reference": "e18c5c4b35e7f17513448a25d02f7af34a4bdb41" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/12f86295c46c36af9896cf21db6b6b8a1465315d", - "reference": "12f86295c46c36af9896cf21db6b6b8a1465315d", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/e18c5c4b35e7f17513448a25d02f7af34a4bdb41", + "reference": "e18c5c4b35e7f17513448a25d02f7af34a4bdb41", "shasum": "" }, "require": { @@ -3979,14 +4065,14 @@ "MIT" ], "authors": [ - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" @@ -3994,20 +4080,20 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2019-01-02T09:30:52+00:00" + "time": "2019-08-20T13:31:17+00:00" }, { "name": "symfony/dom-crawler", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "311f666d85d1075b0a294ba1f3de4ae9307d8180" + "reference": "8558d1bc4554f5cb0b66e50377457967a8969263" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/311f666d85d1075b0a294ba1f3de4ae9307d8180", - "reference": "311f666d85d1075b0a294ba1f3de4ae9307d8180", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/8558d1bc4554f5cb0b66e50377457967a8969263", + "reference": "8558d1bc4554f5cb0b66e50377457967a8969263", "shasum": "" }, "require": { @@ -4051,20 +4137,20 @@ ], "description": "Symfony DomCrawler Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-26T07:52:58+00:00" }, { "name": "symfony/stopwatch", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "af55d31cb58c5452d2c160655fa1968b872a8084" + "reference": "c0c27e38f8accb452f830a4ec8e8ac94b6ec864a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/af55d31cb58c5452d2c160655fa1968b872a8084", - "reference": "af55d31cb58c5452d2c160655fa1968b872a8084", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/c0c27e38f8accb452f830a4ec8e8ac94b6ec864a", + "reference": "c0c27e38f8accb452f830a4ec8e8ac94b6ec864a", "shasum": "" }, "require": { @@ -4100,20 +4186,20 @@ ], "description": "Symfony Stopwatch Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-06T13:24:37+00:00" }, { "name": "webmozart/assert", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/webmozart/assert.git", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9" + "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9", + "url": "https://api.github.com/repos/webmozart/assert/zipball/88e6d84706d09a236046d686bbea96f07b3a34f4", + "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4", "shasum": "" }, "require": { @@ -4121,8 +4207,7 @@ "symfony/polyfill-ctype": "^1.8" }, "require-dev": { - "phpunit/phpunit": "^4.6", - "sebastian/version": "^1.0.1" + "phpunit/phpunit": "^4.8.36 || ^7.5.13" }, "type": "library", "extra": { @@ -4151,7 +4236,7 @@ "check", "validate" ], - "time": "2018-12-25T11:19:39+00:00" + "time": "2019-08-24T08:43:50+00:00" } ], "aliases": [], diff --git a/LICENSE b/LICENSE index da8f302dc..40fb05071 100644 --- a/LICENSE +++ b/LICENSE @@ -22,10 +22,10 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. DEPENDENCY LICENSES: Name Version License -consolidation/annotated-command 2.11.0 MIT -consolidation/config 1.1.1 MIT +consolidation/annotated-command 2.12.0 MIT +consolidation/config 1.2.1 MIT consolidation/log 1.1.1 MIT -consolidation/output-formatters 3.4.0 MIT +consolidation/output-formatters 3.5.0 MIT consolidation/self-update 1.1.5 MIT container-interop/container-interop 1.2.0 MIT dflydev/dot-access-data v1.1.0 MIT @@ -34,11 +34,11 @@ grasmash/yaml-expander 1.4.0 MIT league/container 2.4.1 MIT psr/container 1.0.0 MIT psr/log 1.1.0 MIT -symfony/console v3.4.21 MIT -symfony/event-dispatcher v3.4.21 MIT -symfony/filesystem v3.4.21 MIT -symfony/finder v3.4.21 MIT -symfony/polyfill-ctype v1.10.0 MIT -symfony/polyfill-mbstring v1.10.0 MIT -symfony/process v3.4.21 MIT -symfony/yaml v3.4.21 MIT \ No newline at end of file +symfony/console v3.4.31 MIT +symfony/event-dispatcher v3.4.31 MIT +symfony/filesystem v3.4.31 MIT +symfony/finder v3.4.31 MIT +symfony/polyfill-ctype v1.12.0 MIT +symfony/polyfill-mbstring v1.12.0 MIT +symfony/process v3.4.31 MIT +symfony/yaml v3.4.31 MIT \ No newline at end of file diff --git a/composer.json b/composer.json index 324b504f1..3df3616fa 100644 --- a/composer.json +++ b/composer.json @@ -23,7 +23,7 @@ "require": { "php": ">=7", "consolidation/annotated-command": "^2.11.0", - "consolidation/config": "^1.0.10", + "consolidation/config": "^1.2", "consolidation/log": "^1.1.1", "consolidation/output-formatters": "^3.1.13", "consolidation/self-update": "^1", @@ -38,7 +38,7 @@ "require-dev": { "g1a/composer-test-scenarios": "^3", "patchwork/jsqueeze": "^2", - "natxet/CssMin": "3.0.4", + "natxet/cssmin": "3.0.4", "pear/archive_tar": "^1.4.4", "codeception/base": "^2.3.7", "goaop/framework": "~2.1.2", diff --git a/composer.lock b/composer.lock index d30f8530b..c9ab3cdc7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,25 +4,25 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2cbc09976e1dfb1ac8fa9220d413e3e3", + "content-hash": "218b6e3558bca9f34515676928ba62a2", "packages": [ { "name": "consolidation/annotated-command", - "version": "2.11.0", + "version": "2.12.0", "source": { "type": "git", "url": "https://github.com/consolidation/annotated-command.git", - "reference": "edea407f57104ed518cc3c3b47d5b84403ee267a" + "reference": "512a2e54c98f3af377589de76c43b24652bcb789" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/edea407f57104ed518cc3c3b47d5b84403ee267a", - "reference": "edea407f57104ed518cc3c3b47d5b84403ee267a", + "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/512a2e54c98f3af377589de76c43b24652bcb789", + "reference": "512a2e54c98f3af377589de76c43b24652bcb789", "shasum": "" }, "require": { "consolidation/output-formatters": "^3.4", - "php": ">=5.4.0", + "php": ">=5.4.5", "psr/log": "^1", "symfony/console": "^2.8|^3|^4", "symfony/event-dispatcher": "^2.5|^3|^4", @@ -100,20 +100,20 @@ } ], "description": "Initialize Symfony Console commands from annotated command class methods.", - "time": "2018-12-29T04:43:17+00:00" + "time": "2019-03-08T16:55:03+00:00" }, { "name": "consolidation/config", - "version": "1.1.1", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/consolidation/config.git", - "reference": "925231dfff32f05b787e1fddb265e789b939cf4c" + "reference": "cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/config/zipball/925231dfff32f05b787e1fddb265e789b939cf4c", - "reference": "925231dfff32f05b787e1fddb265e789b939cf4c", + "url": "https://api.github.com/repos/consolidation/config/zipball/cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1", + "reference": "cac1279bae7efb5c7fb2ca4c3ba4b8eb741a96c1", "shasum": "" }, "require": { @@ -122,9 +122,9 @@ "php": ">=5.4.0" }, "require-dev": { - "g1a/composer-test-scenarios": "^1", + "g1a/composer-test-scenarios": "^3", + "php-coveralls/php-coveralls": "^1", "phpunit/phpunit": "^5", - "satooshi/php-coveralls": "^1.0", "squizlabs/php_codesniffer": "2.*", "symfony/console": "^2.5|^3|^4", "symfony/yaml": "^2.8.11|^3|^4" @@ -134,6 +134,33 @@ }, "type": "library", "extra": { + "scenarios": { + "symfony4": { + "require-dev": { + "symfony/console": "^4.0" + }, + "config": { + "platform": { + "php": "7.1.3" + } + } + }, + "symfony2": { + "require-dev": { + "symfony/console": "^2.8", + "symfony/event-dispatcher": "^2.8", + "phpunit/phpunit": "^4.8.36" + }, + "remove": [ + "php-coveralls/php-coveralls" + ], + "config": { + "platform": { + "php": "5.4.8" + } + } + } + }, "branch-alias": { "dev-master": "1.x-dev" } @@ -154,7 +181,7 @@ } ], "description": "Provide configuration services for a commandline tool.", - "time": "2018-10-24T17:55:35+00:00" + "time": "2019-03-03T19:37:04+00:00" }, { "name": "consolidation/log", @@ -248,16 +275,16 @@ }, { "name": "consolidation/output-formatters", - "version": "3.4.0", + "version": "3.5.0", "source": { "type": "git", "url": "https://github.com/consolidation/output-formatters.git", - "reference": "a942680232094c4a5b21c0b7e54c20cce623ae19" + "reference": "99ec998ffb697e0eada5aacf81feebfb13023605" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/a942680232094c4a5b21c0b7e54c20cce623ae19", - "reference": "a942680232094c4a5b21c0b7e54c20cce623ae19", + "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/99ec998ffb697e0eada5aacf81feebfb13023605", + "reference": "99ec998ffb697e0eada5aacf81feebfb13023605", "shasum": "" }, "require": { @@ -267,11 +294,10 @@ "symfony/finder": "^2.5|^3|^4" }, "require-dev": { - "g1a/composer-test-scenarios": "^2", + "g1a/composer-test-scenarios": "^3", + "php-coveralls/php-coveralls": "^1", "phpunit/phpunit": "^5.7.27", - "satooshi/php-coveralls": "^2", "squizlabs/php_codesniffer": "^2.7", - "symfony/console": "3.2.3", "symfony/var-dumper": "^2.8|^3|^4", "victorjonsson/markdowndocs": "^1.3" }, @@ -280,6 +306,52 @@ }, "type": "library", "extra": { + "scenarios": { + "symfony4": { + "require": { + "symfony/console": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^6" + }, + "config": { + "platform": { + "php": "7.1.3" + } + } + }, + "symfony3": { + "require": { + "symfony/console": "^3.4", + "symfony/finder": "^3.4", + "symfony/var-dumper": "^3.4" + }, + "config": { + "platform": { + "php": "5.6.32" + } + } + }, + "symfony2": { + "require": { + "symfony/console": "^2.8" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.36" + }, + "remove": [ + "php-coveralls/php-coveralls" + ], + "config": { + "platform": { + "php": "5.4.8" + } + }, + "scenario-options": { + "create-lockfile": "false" + } + } + }, "branch-alias": { "dev-master": "3.x-dev" } @@ -300,7 +372,7 @@ } ], "description": "Format text by applying transformations provided by plug-in formatters.", - "time": "2018-10-19T22:35:38+00:00" + "time": "2019-05-30T23:16:01+00:00" }, { "name": "consolidation/self-update", @@ -700,37 +772,43 @@ }, { "name": "symfony/console", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "b0a03c1bb0fcbe288629956cf2f1dd3f1dc97522" + "reference": "de63799239b3881b8a08f8481b22348f77ed7b36" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/b0a03c1bb0fcbe288629956cf2f1dd3f1dc97522", - "reference": "b0a03c1bb0fcbe288629956cf2f1dd3f1dc97522", + "url": "https://api.github.com/repos/symfony/console/zipball/de63799239b3881b8a08f8481b22348f77ed7b36", + "reference": "de63799239b3881b8a08f8481b22348f77ed7b36", "shasum": "" }, "require": { "php": "^7.1.3", - "symfony/contracts": "^1.0", - "symfony/polyfill-mbstring": "~1.0" + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php73": "^1.8", + "symfony/service-contracts": "^1.1" }, "conflict": { "symfony/dependency-injection": "<3.4", + "symfony/event-dispatcher": "<4.3", "symfony/process": "<3.3" }, + "provide": { + "psr/log-implementation": "1.0" + }, "require-dev": { "psr/log": "~1.0", "symfony/config": "~3.4|~4.0", "symfony/dependency-injection": "~3.4|~4.0", - "symfony/event-dispatcher": "~3.4|~4.0", + "symfony/event-dispatcher": "^4.3", "symfony/lock": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0" + "symfony/process": "~3.4|~4.0", + "symfony/var-dumper": "^4.3" }, "suggest": { - "psr/log-implementation": "For using the console logger", + "psr/log": "For using the console logger", "symfony/event-dispatcher": "", "symfony/lock": "", "symfony/process": "" @@ -738,7 +816,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -765,48 +843,58 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2019-01-04T15:13:53+00:00" + "time": "2019-08-26T08:26:39+00:00" }, { - "name": "symfony/contracts", - "version": "v1.0.2", + "name": "symfony/event-dispatcher", + "version": "v4.3.4", "source": { "type": "git", - "url": "https://github.com/symfony/contracts.git", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/429d0a1451d4c9c4abe1959b2986b88794b9b7d2", + "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": "^7.1.3", + "symfony/event-dispatcher-contracts": "^1.1" + }, + "conflict": { + "symfony/dependency-injection": "<3.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "1.1" }, "require-dev": { - "psr/cache": "^1.0", - "psr/container": "^1.0" + "psr/log": "~1.0", + "symfony/config": "~3.4|~4.0", + "symfony/dependency-injection": "~3.4|~4.0", + "symfony/expression-language": "~3.4|~4.0", + "symfony/http-foundation": "^3.4|^4.0", + "symfony/service-contracts": "^1.1", + "symfony/stopwatch": "~3.4|~4.0" }, "suggest": { - "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": "" + "symfony/dependency-injection": "", + "symfony/http-kernel": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "4.3-dev" } }, "autoload": { "psr-4": { - "Symfony\\Contracts\\": "" + "Symfony\\Component\\EventDispatcher\\": "" }, "exclude-from-classmap": [ - "**/Tests/" + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -815,71 +903,49 @@ ], "authors": [ { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "A set of abstractions extracted out of the Symfony components", + "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "time": "2018-12-05T08:06:11+00:00" + "time": "2019-08-26T08:55:16+00:00" }, { - "name": "symfony/event-dispatcher", - "version": "v4.2.2", + "name": "symfony/event-dispatcher-contracts", + "version": "v1.1.5", "source": { "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "887de6d34c86cf0cb6cbf910afb170cdb743cb5e" + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "c61766f4440ca687de1084a5c00b08e167a2575c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/887de6d34c86cf0cb6cbf910afb170cdb743cb5e", - "reference": "887de6d34c86cf0cb6cbf910afb170cdb743cb5e", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/c61766f4440ca687de1084a5c00b08e167a2575c", + "reference": "c61766f4440ca687de1084a5c00b08e167a2575c", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/contracts": "^1.0" - }, - "conflict": { - "symfony/dependency-injection": "<3.4" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0" + "php": "^7.1.3" }, "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" + "psr/event-dispatcher": "", + "symfony/event-dispatcher-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "1.1-dev" } }, "autoload": { "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Symfony\\Contracts\\EventDispatcher\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -887,30 +953,38 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony EventDispatcher Component", + "description": "Generic abstractions related to dispatching event", "homepage": "https://symfony.com", - "time": "2019-01-05T16:37:49+00:00" + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "time": "2019-06-20T06:46:26+00:00" }, { "name": "symfony/filesystem", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "c2ffd9a93f2d6c5be2f68a0aa7953cc229f871f8" + "reference": "9abbb7ef96a51f4d7e69627bc6f63307994e4263" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/c2ffd9a93f2d6c5be2f68a0aa7953cc229f871f8", - "reference": "c2ffd9a93f2d6c5be2f68a0aa7953cc229f871f8", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/9abbb7ef96a51f4d7e69627bc6f63307994e4263", + "reference": "9abbb7ef96a51f4d7e69627bc6f63307994e4263", "shasum": "" }, "require": { @@ -920,7 +994,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -947,20 +1021,20 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-20T14:07:54+00:00" }, { "name": "symfony/finder", - "version": "v3.4.21", + "version": "v3.4.31", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e" + "reference": "1fcad80b440abcd1451767349906b6f9d3961d37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e", - "reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e", + "url": "https://api.github.com/repos/symfony/finder/zipball/1fcad80b440abcd1451767349906b6f9d3961d37", + "reference": "1fcad80b440abcd1451767349906b6f9d3961d37", "shasum": "" }, "require": { @@ -996,20 +1070,20 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2019-01-01T13:45:19+00:00" + "time": "2019-08-14T09:39:58+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.10.0", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "e3d826245268269cd66f8326bd8bc066687b4a19" + "reference": "550ebaac289296ce228a706d0867afc34687e3f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19", - "reference": "e3d826245268269cd66f8326bd8bc066687b4a19", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/550ebaac289296ce228a706d0867afc34687e3f4", + "reference": "550ebaac289296ce228a706d0867afc34687e3f4", "shasum": "" }, "require": { @@ -1021,7 +1095,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.12-dev" } }, "autoload": { @@ -1037,13 +1111,13 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - }, { "name": "Gert de Pagter", "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony polyfill for ctype functions", @@ -1054,20 +1128,20 @@ "polyfill", "portable" ], - "time": "2018-08-06T14:22:27+00:00" + "time": "2019-08-06T08:03:45+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.10.0", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "c79c051f5b3a46be09205c73b80b346e4153e494" + "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/c79c051f5b3a46be09205c73b80b346e4153e494", - "reference": "c79c051f5b3a46be09205c73b80b346e4153e494", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17", + "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17", "shasum": "" }, "require": { @@ -1079,7 +1153,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.12-dev" } }, "autoload": { @@ -1113,20 +1187,78 @@ "portable", "shim" ], - "time": "2018-09-21T13:07:52+00:00" + "time": "2019-08-06T08:03:45+00:00" + }, + { + "name": "symfony/polyfill-php73", + "version": "v1.12.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "2ceb49eaccb9352bff54d22570276bb75ba4a188" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/2ceb49eaccb9352bff54d22570276bb75ba4a188", + "reference": "2ceb49eaccb9352bff54d22570276bb75ba4a188", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.12-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "time": "2019-08-06T08:03:45+00:00" }, { "name": "symfony/process", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "ea043ab5d8ed13b467a9087d81cb876aee7f689a" + "reference": "e89969c00d762349f078db1128506f7f3dcc0d4a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/ea043ab5d8ed13b467a9087d81cb876aee7f689a", - "reference": "ea043ab5d8ed13b467a9087d81cb876aee7f689a", + "url": "https://api.github.com/repos/symfony/process/zipball/e89969c00d762349f078db1128506f7f3dcc0d4a", + "reference": "e89969c00d762349f078db1128506f7f3dcc0d4a", "shasum": "" }, "require": { @@ -1135,7 +1267,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1162,20 +1294,78 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2019-01-03T14:48:52+00:00" + "time": "2019-08-26T08:26:39+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v1.1.6", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "ea7263d6b6d5f798b56a45a5b8d686725f2719a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/ea7263d6b6d5f798b56a45a5b8d686725f2719a3", + "reference": "ea7263d6b6d5f798b56a45a5b8d686725f2719a3", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "psr/container": "^1.0" + }, + "suggest": { + "symfony/service-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "time": "2019-08-20T14:44:19+00:00" }, { "name": "symfony/yaml", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "d0aa6c0ea484087927b49fd513383a7d36190ca6" + "reference": "5a0b7c32dc3ec56fd4abae8a4a71b0cf05013686" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/d0aa6c0ea484087927b49fd513383a7d36190ca6", - "reference": "d0aa6c0ea484087927b49fd513383a7d36190ca6", + "url": "https://api.github.com/repos/symfony/yaml/zipball/5a0b7c32dc3ec56fd4abae8a4a71b0cf05013686", + "reference": "5a0b7c32dc3ec56fd4abae8a4a71b0cf05013686", "shasum": "" }, "require": { @@ -1194,7 +1384,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1221,7 +1411,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-20T14:27:59+00:00" } ], "packages-dev": [ @@ -1329,16 +1519,16 @@ }, { "name": "codeception/base", - "version": "2.5.2", + "version": "2.5.6", "source": { "type": "git", "url": "https://github.com/Codeception/base.git", - "reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c" + "reference": "aace5bab5593c93d8473b620f70754135a1eb4f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/base/zipball/4f89de32929fef53ca6d83b159fe329b6d484c1c", - "reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c", + "url": "https://api.github.com/repos/Codeception/base/zipball/aace5bab5593c93d8473b620f70754135a1eb4f0", + "reference": "aace5bab5593c93d8473b620f70754135a1eb4f0", "shasum": "" }, "require": { @@ -1368,7 +1558,7 @@ "predis/predis": "^1.0", "squizlabs/php_codesniffer": "~2.0", "symfony/process": ">=2.7 <5.0", - "vlucas/phpdotenv": "^2.4.0" + "vlucas/phpdotenv": "^3.0" }, "suggest": { "aws/aws-sdk-php": "For using AWS Auth in REST module and Queue module", @@ -1415,20 +1605,20 @@ "functional testing", "unit testing" ], - "time": "2019-01-01T21:20:37+00:00" + "time": "2019-04-24T11:36:34+00:00" }, { "name": "codeception/phpunit-wrapper", - "version": "6.0.14", + "version": "6.0.17", "source": { "type": "git", "url": "https://github.com/Codeception/phpunit-wrapper.git", - "reference": "3b64beb0af3e63145af982e64718ab80d2417739" + "reference": "4394f87d6f2b18bf67cc9984845d0a3e257ccc9f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/3b64beb0af3e63145af982e64718ab80d2417739", - "reference": "3b64beb0af3e63145af982e64718ab80d2417739", + "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/4394f87d6f2b18bf67cc9984845d0a3e257ccc9f", + "reference": "4394f87d6f2b18bf67cc9984845d0a3e257ccc9f", "shasum": "" }, "require": { @@ -1442,7 +1632,7 @@ }, "require-dev": { "codeception/specify": "*", - "vlucas/phpdotenv": "^2.4" + "vlucas/phpdotenv": "^3.0" }, "type": "library", "autoload": { @@ -1461,24 +1651,24 @@ } ], "description": "PHPUnit classes used by Codeception", - "time": "2019-01-13T10:35:17+00:00" + "time": "2019-08-18T15:48:56+00:00" }, { "name": "codeception/stub", - "version": "2.0.4", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/Codeception/Stub.git", - "reference": "f50bc271f392a2836ff80690ce0c058efe1ae03e" + "reference": "853657f988942f7afb69becf3fd0059f192c705a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Stub/zipball/f50bc271f392a2836ff80690ce0c058efe1ae03e", - "reference": "f50bc271f392a2836ff80690ce0c058efe1ae03e", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/853657f988942f7afb69becf3fd0059f192c705a", + "reference": "853657f988942f7afb69becf3fd0059f192c705a", "shasum": "" }, "require": { - "phpunit/phpunit": ">=4.8 <8.0" + "codeception/phpunit-wrapper": ">6.0.15 <6.1.0 | ^6.6.1 | ^7.7.1 | ^8.0.3" }, "type": "library", "autoload": { @@ -1491,7 +1681,7 @@ "MIT" ], "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", - "time": "2018-07-26T11:55:37+00:00" + "time": "2019-03-02T15:35:10+00:00" }, { "name": "codeception/verify", @@ -1531,16 +1721,16 @@ }, { "name": "doctrine/annotations", - "version": "v1.6.0", + "version": "v1.7.0", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "c7f2050c68a9ab0bdb0f98567ec08d80ea7d24d5" + "reference": "fa4c4e861e809d6a1103bd620cce63ed91aedfeb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/c7f2050c68a9ab0bdb0f98567ec08d80ea7d24d5", - "reference": "c7f2050c68a9ab0bdb0f98567ec08d80ea7d24d5", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/fa4c4e861e809d6a1103bd620cce63ed91aedfeb", + "reference": "fa4c4e861e809d6a1103bd620cce63ed91aedfeb", "shasum": "" }, "require": { @@ -1549,12 +1739,12 @@ }, "require-dev": { "doctrine/cache": "1.*", - "phpunit/phpunit": "^6.4" + "phpunit/phpunit": "^7.5@dev" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.6.x-dev" + "dev-master": "1.7.x-dev" } }, "autoload": { @@ -1567,6 +1757,10 @@ "MIT" ], "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, { "name": "Roman Borschel", "email": "roman@code-factory.org" @@ -1575,10 +1769,6 @@ "name": "Benjamin Eberlei", "email": "kontakt@beberlei.de" }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, { "name": "Jonathan Wage", "email": "jonwage@gmail.com" @@ -1595,31 +1785,33 @@ "docblock", "parser" ], - "time": "2017-12-06T07:11:42+00:00" + "time": "2019-08-08T18:11:40+00:00" }, { "name": "doctrine/instantiator", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda" + "reference": "a2c590166b2133a4633738648b6b064edae0814a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda", - "reference": "185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/a2c590166b2133a4633738648b6b064edae0814a", + "reference": "a2c590166b2133a4633738648b6b064edae0814a", "shasum": "" }, "require": { "php": "^7.1" }, "require-dev": { - "athletic/athletic": "~0.1.8", + "doctrine/coding-standard": "^6.0", "ext-pdo": "*", "ext-phar": "*", - "phpunit/phpunit": "^6.2.3", - "squizlabs/php_codesniffer": "^3.0.2" + "phpbench/phpbench": "^0.13", + "phpstan/phpstan-phpunit": "^0.11", + "phpstan/phpstan-shim": "^0.11", + "phpunit/phpunit": "^7.0" }, "type": "library", "extra": { @@ -1644,30 +1836,33 @@ } ], "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://github.com/doctrine/instantiator", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", "keywords": [ "constructor", "instantiate" ], - "time": "2017-07-22T11:58:36+00:00" + "time": "2019-03-17T17:37:11+00:00" }, { "name": "doctrine/lexer", - "version": "v1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" + "reference": "1febd6c3ef84253d7c815bed85fc622ad207a9f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/1febd6c3ef84253d7c815bed85fc622ad207a9f8", + "reference": "1febd6c3ef84253d7c815bed85fc622ad207a9f8", "shasum": "" }, "require": { "php": ">=5.3.2" }, + "require-dev": { + "phpunit/phpunit": "^4.5" + }, "type": "library", "extra": { "branch-alias": { @@ -1675,8 +1870,8 @@ } }, "autoload": { - "psr-0": { - "Doctrine\\Common\\Lexer\\": "lib/" + "psr-4": { + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" } }, "notification-url": "https://packagist.org/downloads/", @@ -1697,26 +1892,29 @@ "email": "schmittjoh@gmail.com" } ], - "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "http://www.doctrine-project.org", + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", "keywords": [ + "annotations", + "docblock", "lexer", - "parser" + "parser", + "php" ], - "time": "2014-09-09T13:34:57+00:00" + "time": "2019-06-08T11:03:04+00:00" }, { "name": "g1a/composer-test-scenarios", - "version": "3.0.1", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/g1a/composer-test-scenarios.git", - "reference": "224531e20d13a07942a989a70759f726cd2df9a1" + "reference": "fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/g1a/composer-test-scenarios/zipball/224531e20d13a07942a989a70759f726cd2df9a1", - "reference": "224531e20d13a07942a989a70759f726cd2df9a1", + "url": "https://api.github.com/repos/g1a/composer-test-scenarios/zipball/fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed", + "reference": "fe31d66d337a6e21ebfa66013e4c3b45abb2b5ed", "shasum": "" }, "require": { @@ -1755,7 +1953,7 @@ } ], "description": "Useful scripts for testing multiple sets of Composer dependencies.", - "time": "2018-11-27T05:58:39+00:00" + "time": "2019-09-10T15:37:40+00:00" }, { "name": "goaop/framework", @@ -1966,33 +2164,37 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.5.2", + "version": "1.6.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "9f83dded91781a01c63574e387eaa769be769115" + "reference": "239400de7a173fe9901b9ac7c06497751f00727a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115", - "reference": "9f83dded91781a01c63574e387eaa769be769115", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a", + "reference": "239400de7a173fe9901b9ac7c06497751f00727a", "shasum": "" }, "require": { "php": ">=5.4.0", "psr/http-message": "~1.0", - "ralouphie/getallheaders": "^2.0.5" + "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" }, "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.5-dev" + "dev-master": "1.6-dev" } }, "autoload": { @@ -2029,7 +2231,7 @@ "uri", "url" ], - "time": "2018-12-04T20:46:45+00:00" + "time": "2019-07-01T23:21:34+00:00" }, { "name": "jakubledl/dissect", @@ -2088,16 +2290,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.8.1", + "version": "1.9.3", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8" + "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8", - "reference": "3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/007c053ae6f31bba39dfa19a7726f56e9763bbea", + "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea", "shasum": "" }, "require": { @@ -2132,10 +2334,10 @@ "object", "object graph" ], - "time": "2018-06-11T23:09:50+00:00" + "time": "2019-08-09T12:45:53+00:00" }, { - "name": "natxet/CssMin", + "name": "natxet/cssmin", "version": "v3.0.4", "source": { "type": "git", @@ -2281,16 +2483,16 @@ }, { "name": "pear/archive_tar", - "version": "1.4.5", + "version": "1.4.7", "source": { "type": "git", "url": "https://github.com/pear/Archive_Tar.git", - "reference": "ff716ca697c5e9e8593212cb785ffd03ee11b01f" + "reference": "7e48add6f8edc3027dd98ad15964b1a28fd0c845" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/ff716ca697c5e9e8593212cb785ffd03ee11b01f", - "reference": "ff716ca697c5e9e8593212cb785ffd03ee11b01f", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/7e48add6f8edc3027dd98ad15964b1a28fd0c845", + "reference": "7e48add6f8edc3027dd98ad15964b1a28fd0c845", "shasum": "" }, "require": { @@ -2343,20 +2545,20 @@ "archive", "tar" ], - "time": "2019-01-02T21:45:13+00:00" + "time": "2019-04-08T13:15:55+00:00" }, { "name": "pear/console_getopt", - "version": "v1.4.1", + "version": "v1.4.2", "source": { "type": "git", "url": "https://github.com/pear/Console_Getopt.git", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f" + "reference": "6c77aeb625b32bd752e89ee17972d103588b90c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", + "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/6c77aeb625b32bd752e89ee17972d103588b90c0", + "reference": "6c77aeb625b32bd752e89ee17972d103588b90c0", "shasum": "" }, "type": "library", @@ -2390,20 +2592,20 @@ } ], "description": "More info available on: http://pear.php.net/package/Console_Getopt", - "time": "2015-07-20T20:28:12+00:00" + "time": "2019-02-06T16:52:33+00:00" }, { "name": "pear/pear-core-minimal", - "version": "v1.10.7", + "version": "v1.10.9", "source": { "type": "git", "url": "https://github.com/pear/pear-core-minimal.git", - "reference": "19a3e0fcd50492c4357372f623f55f1b144346da" + "reference": "742be8dd68c746a01e4b0a422258e9c9cae1c37f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/19a3e0fcd50492c4357372f623f55f1b144346da", - "reference": "19a3e0fcd50492c4357372f623f55f1b144346da", + "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/742be8dd68c746a01e4b0a422258e9c9cae1c37f", + "reference": "742be8dd68c746a01e4b0a422258e9c9cae1c37f", "shasum": "" }, "require": { @@ -2434,7 +2636,7 @@ } ], "description": "Minimal set of PEAR core files to be used as composer dependency", - "time": "2018-12-05T20:03:52+00:00" + "time": "2019-03-13T18:15:44+00:00" }, { "name": "pear/pear_exception", @@ -2608,16 +2810,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "4.3.0", + "version": "4.3.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08" + "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/94fd0001232e47129dd3504189fa1c7225010d08", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", + "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", "shasum": "" }, "require": { @@ -2655,7 +2857,7 @@ } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2017-11-30T07:14:17+00:00" + "time": "2019-04-30T17:48:53+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -2706,16 +2908,16 @@ }, { "name": "phpspec/prophecy", - "version": "1.8.0", + "version": "1.8.1", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06" + "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/1927e75f4ed19131ec9bcc3b002e07fb1173ee76", + "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76", "shasum": "" }, "require": { @@ -2736,8 +2938,8 @@ } }, "autoload": { - "psr-0": { - "Prophecy\\": "src/" + "psr-4": { + "Prophecy\\": "src/Prophecy" } }, "notification-url": "https://packagist.org/downloads/", @@ -2765,7 +2967,7 @@ "spy", "stub" ], - "time": "2018-08-05T17:53:17+00:00" + "time": "2019-06-13T12:50:23+00:00" }, { "name": "phpunit/php-code-coverage", @@ -2817,8 +3019,8 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "role": "lead", + "email": "sb@sebastian-bergmann.de" } ], "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", @@ -3085,8 +3287,8 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "role": "lead", + "email": "sebastian@phpunit.de" } ], "description": "The PHP Unit Testing framework.", @@ -3155,6 +3357,7 @@ "mock", "xunit" ], + "abandoned": true, "time": "2017-06-30T09:13:00+00:00" }, { @@ -3209,24 +3412,24 @@ }, { "name": "ralouphie/getallheaders", - "version": "2.0.5", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa" + "reference": "120b605dfeb996808c31b6477290a714d356e822" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa", - "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", "shasum": "" }, "require": { - "php": ">=5.3" + "php": ">=5.6" }, "require-dev": { - "phpunit/phpunit": "~3.7.0", - "satooshi/php-coveralls": ">=1.0" + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" }, "type": "library", "autoload": { @@ -3245,7 +3448,7 @@ } ], "description": "A polyfill for getallheaders.", - "time": "2016-02-11T07:05:27+00:00" + "time": "2019-03-08T08:55:37+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -3840,16 +4043,16 @@ }, { "name": "symfony/browser-kit", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "313512c878805971aebddb5d1707bcf3f4e25df7" + "reference": "9e5dddb637b13db82e35695a8603fe6e118cc119" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/313512c878805971aebddb5d1707bcf3f4e25df7", - "reference": "313512c878805971aebddb5d1707bcf3f4e25df7", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/9e5dddb637b13db82e35695a8603fe6e118cc119", + "reference": "9e5dddb637b13db82e35695a8603fe6e118cc119", "shasum": "" }, "require": { @@ -3858,6 +4061,8 @@ }, "require-dev": { "symfony/css-selector": "~3.4|~4.0", + "symfony/http-client": "^4.3", + "symfony/mime": "^4.3", "symfony/process": "~3.4|~4.0" }, "suggest": { @@ -3866,7 +4071,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -3893,20 +4098,20 @@ ], "description": "Symfony BrowserKit Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-26T08:26:39+00:00" }, { "name": "symfony/config", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "a7a7d0a0244cfc82f040729ccf769e6cf55a78fb" + "reference": "07d49c0f823e0bc367c6d84e35b61419188a5ece" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/a7a7d0a0244cfc82f040729ccf769e6cf55a78fb", - "reference": "a7a7d0a0244cfc82f040729ccf769e6cf55a78fb", + "url": "https://api.github.com/repos/symfony/config/zipball/07d49c0f823e0bc367c6d84e35b61419188a5ece", + "reference": "07d49c0f823e0bc367c6d84e35b61419188a5ece", "shasum": "" }, "require": { @@ -3921,6 +4126,7 @@ "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": { @@ -3929,7 +4135,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -3956,20 +4162,20 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-26T08:26:39+00:00" }, { "name": "symfony/css-selector", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "76dac1dbe2830213e95892c7c2ec1edd74113ea4" + "reference": "c6e5e2a00db768c92c3ae131532af4e1acc7bd03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/76dac1dbe2830213e95892c7c2ec1edd74113ea4", - "reference": "76dac1dbe2830213e95892c7c2ec1edd74113ea4", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/c6e5e2a00db768c92c3ae131532af4e1acc7bd03", + "reference": "c6e5e2a00db768c92c3ae131532af4e1acc7bd03", "shasum": "" }, "require": { @@ -3978,7 +4184,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -3994,14 +4200,14 @@ "MIT" ], "authors": [ - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" @@ -4009,20 +4215,20 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-20T14:07:54+00:00" }, { "name": "symfony/dom-crawler", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "8dc06251d5ad98d8494e1f742bec9cfdb9e42044" + "reference": "cc686552948d627528c0e2e759186dff67c2610e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/8dc06251d5ad98d8494e1f742bec9cfdb9e42044", - "reference": "8dc06251d5ad98d8494e1f742bec9cfdb9e42044", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/cc686552948d627528c0e2e759186dff67c2610e", + "reference": "cc686552948d627528c0e2e759186dff67c2610e", "shasum": "" }, "require": { @@ -4030,7 +4236,11 @@ "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0" }, + "conflict": { + "masterminds/html5": "<2.6" + }, "require-dev": { + "masterminds/html5": "^2.6", "symfony/css-selector": "~3.4|~4.0" }, "suggest": { @@ -4039,7 +4249,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -4066,30 +4276,30 @@ ], "description": "Symfony DomCrawler Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-26T08:26:39+00:00" }, { "name": "symfony/stopwatch", - "version": "v4.2.2", + "version": "v4.3.4", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "af62b35760fc92c8dbdce659b4eebdfe0e6a0472" + "reference": "1e4ff456bd625be5032fac9be4294e60442e9b71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/af62b35760fc92c8dbdce659b4eebdfe0e6a0472", - "reference": "af62b35760fc92c8dbdce659b4eebdfe0e6a0472", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/1e4ff456bd625be5032fac9be4294e60442e9b71", + "reference": "1e4ff456bd625be5032fac9be4294e60442e9b71", "shasum": "" }, "require": { "php": "^7.1.3", - "symfony/contracts": "^1.0" + "symfony/service-contracts": "^1.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -4116,20 +4326,20 @@ ], "description": "Symfony Stopwatch Component", "homepage": "https://symfony.com", - "time": "2019-01-03T09:07:35+00:00" + "time": "2019-08-07T11:52:19+00:00" }, { "name": "webmozart/assert", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/webmozart/assert.git", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9" + "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9", + "url": "https://api.github.com/repos/webmozart/assert/zipball/88e6d84706d09a236046d686bbea96f07b3a34f4", + "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4", "shasum": "" }, "require": { @@ -4137,8 +4347,7 @@ "symfony/polyfill-ctype": "^1.8" }, "require-dev": { - "phpunit/phpunit": "^4.6", - "sebastian/version": "^1.0.1" + "phpunit/phpunit": "^4.8.36 || ^7.5.13" }, "type": "library", "extra": { @@ -4167,7 +4376,7 @@ "check", "validate" ], - "time": "2018-12-25T11:19:39+00:00" + "time": "2019-08-24T08:43:50+00:00" } ], "aliases": [], diff --git a/src/Common/ConfigAwareTrait.php b/src/Common/ConfigAwareTrait.php index d6d45788d..ebfe28e5a 100644 --- a/src/Common/ConfigAwareTrait.php +++ b/src/Common/ConfigAwareTrait.php @@ -7,37 +7,21 @@ trait ConfigAwareTrait { - /** - * @var ConfigInterface - */ - protected $config; - - /** - * Set the config management object. - * - * @param ConfigInterface $config - * - * @return $this - * - * @see \Robo\Contract\ConfigAwareInterface::setConfig() - */ - public function setConfig(ConfigInterface $config) - { - $this->config = $config; - - return $this; + use \Consolidation\Config\ConfigAwareTrait { + \Consolidation\Config\ConfigAwareTrait::getConfig as parentGetConfig; } /** - * Get the config management object. + * Replaces same method in ConfigAwareTrait in order to provide a + * \Robo\Config\Config as return type. Helps with IDE completion. * - * @return ConfigInterface + * @see https://stackoverflow.com/a/37687295. * - * @see \Robo\Contract\ConfigAwareInterface::getConfig() + * @return \Robo\Config\Config */ public function getConfig() { - return $this->config; + return $this->parentGetConfig(); } /** diff --git a/src/Contract/ConfigAwareInterface.php b/src/Contract/ConfigAwareInterface.php index 6591b4d08..b66f459ee 100644 --- a/src/Contract/ConfigAwareInterface.php +++ b/src/Contract/ConfigAwareInterface.php @@ -2,23 +2,6 @@ namespace Robo\Contract; -use Consolidation\Config\ConfigInterface; - -interface ConfigAwareInterface +interface ConfigAwareInterface extends \Consolidation\Config\ConfigAwareInterface { - /** - * Set the config reference - * - * @param ConfigInterface $config - * - * @return $this - */ - public function setConfig(ConfigInterface $config); - - /** - * Get the config reference - * - * @return ConfigInterface - */ - public function getConfig(); } From 5440cf76ddffe72134926a369d403cb923c739f9 Mon Sep 17 00:00:00 2001 From: Greg Anderson Date: Sat, 16 Feb 2019 21:30:26 -0800 Subject: [PATCH 03/11] Simplify config aware trait --- .gitignore | 3 +-- CHANGELOG.md | 7 +++++++ src/Common/ConfigAwareTrait.php | 26 +++++++++++++++++++------- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index bc900d2f1..2fffda124 100644 --- a/.gitignore +++ b/.gitignore @@ -5,5 +5,4 @@ site/ robotheme/ tests/_log/* tests/_helpers/_generated/* -composer.phar -robo.phar +*.phar diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cd2e573c..2cd4744e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ ### 2.0.0-alpha1 1/1/2019 + +### 1.4.6 2/16/2019 + +* Simplify ConfigAwareTrait to avoid probem with downstream clients. + +### 1.4.5 2/15/2019 + * Improved paramameter injection (#822) ### 1.3.4 12/20/2018 diff --git a/src/Common/ConfigAwareTrait.php b/src/Common/ConfigAwareTrait.php index ebfe28e5a..74b48f073 100644 --- a/src/Common/ConfigAwareTrait.php +++ b/src/Common/ConfigAwareTrait.php @@ -7,21 +7,33 @@ trait ConfigAwareTrait { - use \Consolidation\Config\ConfigAwareTrait { - \Consolidation\Config\ConfigAwareTrait::getConfig as parentGetConfig; - } + /** + * @var ConfigInterface + */ + protected $config; /** - * Replaces same method in ConfigAwareTrait in order to provide a - * \Robo\Config\Config as return type. Helps with IDE completion. + * Set the config management object. * - * @see https://stackoverflow.com/a/37687295. + * @param ConfigInterface $config + * + * @return $this + */ + public function setConfig(ConfigInterface $config) + { + $this->config = $config; + + return $this; + } + + /** + * Get the config management object. * * @return \Robo\Config\Config */ public function getConfig() { - return $this->parentGetConfig(); + return $this->config; } /** From f0d1aec06a73925aa04a68f215fdc5ba26763c68 Mon Sep 17 00:00:00 2001 From: Patrick Kollitsch <83281+davidsneighbour@users.noreply.github.com> Date: Thu, 7 Mar 2019 23:53:18 +0700 Subject: [PATCH 04/11] Use $argv directly (#840) In command line PHP scripts the variable $argv is prefilled with command line parameters to the script. The deleted line is doubling this and in addition, most coding style tools make it an issue to use unfiltered globals. see http://php.net/manual/en/reserved.variables.argv.php see consolidation/Robo#839 --- docs/framework.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/framework.md b/docs/framework.md index 2b83cc2d6..15b08d7ca 100644 --- a/docs/framework.md +++ b/docs/framework.md @@ -60,7 +60,6 @@ $runner ->setClassLoader($classLoader); // Execute the command and return the result. -$argv = $_SERVER['argv']; $output = new \Symfony\Component\Console\Output\ConsoleOutput(); $statusCode = $runner->execute($argv, $appName, $appVersion, $output); exit($statusCode); From ccc421ba4653c2123d245f2b0f9fbf9c8a6b150f Mon Sep 17 00:00:00 2001 From: Greg Anderson Date: Tue, 19 Mar 2019 08:10:34 -0700 Subject: [PATCH 05/11] Correct comment about -D in GlobalOptionsEventListener --- src/GlobalOptionsEventListener.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GlobalOptionsEventListener.php b/src/GlobalOptionsEventListener.php index db8d6179c..b26d10cd0 100644 --- a/src/GlobalOptionsEventListener.php +++ b/src/GlobalOptionsEventListener.php @@ -103,7 +103,7 @@ public function setConfigurationValues(ConsoleCommandEvent $event) $config = $this->getConfig(); $input = $event->getInput(); - // Also set any `-D config.key=value` options from the commandline. + // Also set any `-Dconfig.key=value` options from the commandline. if ($input->hasOption('define')) { $configDefinitions = $input->getOption('define'); foreach ($configDefinitions as $value) { From 3482a93534028bec7fbdb4365fef096d80c2656f Mon Sep 17 00:00:00 2001 From: Greg Anderson Date: Tue, 19 Mar 2019 08:45:25 -0700 Subject: [PATCH 06/11] Correct RELEASE script --- RoboFile.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/RoboFile.php b/RoboFile.php index 1e3fd57b5..dd144632f 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -94,17 +94,14 @@ public function release($opts = ['beta' => false]) ->push() ->run(); - if ($stable) { - $this->pharPublish(); - } $this->publish(); - $this->taskGitStack() ->tag($version) ->push('origin master --tags') ->run(); if ($stable) { + $this->pharPublish(); $version = $this->incrementVersion($version) . '-dev'; $this->writeVersion($version); From ea63a94a9377b3d8eb483064296b0858c5405420 Mon Sep 17 00:00:00 2001 From: Patrick Kollitsch <83281+davidsneighbour@users.noreply.github.com> Date: Wed, 20 Mar 2019 22:56:47 +0700 Subject: [PATCH 07/11] Add sample with changed file handling to Base/Watch documentation (#847) --- src/Task/Base/Watch.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/Task/Base/Watch.php b/src/Task/Base/Watch.php index 3b2152d96..49d4f3daa 100644 --- a/src/Task/Base/Watch.php +++ b/src/Task/Base/Watch.php @@ -37,6 +37,24 @@ * )->run(); * ?> * ``` + * + * Pass through the changed file to the callable function + * + * ``` + * $this + * ->taskWatch() + * ->monitor( + * 'filename', + * function ($event) { + * $resource = $event->getResource(); + * ... do something with (string)$resource ... + * }, + * FilesystemEvent::ALL + * ) + * ->run(); + * ``` + * + * The $event parameter is a [standard Symfony file resource object](https://api.symfony.com/3.1/Symfony/Component/Config/Resource/FileResource.html) */ class Watch extends BaseTask { From d630cb1fcd8ec28f7b34b4f9c09e9e8c8f31d93b Mon Sep 17 00:00:00 2001 From: Dane Powell Date: Fri, 29 Mar 2019 08:47:43 -0700 Subject: [PATCH 08/11] Fixes #849: Allow default argument for confirm() questions. (#850) --- src/Common/IO.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Common/IO.php b/src/Common/IO.php index fb0dd87e9..3400c697d 100644 --- a/src/Common/IO.php +++ b/src/Common/IO.php @@ -163,12 +163,13 @@ protected function askDefault($question, $default) /** * @param string $question + * @param bool $default * * @return string */ - protected function confirm($question) + protected function confirm($question, $default = false) { - return $this->doAsk(new ConfirmationQuestion($this->formatQuestion($question . ' (y/n)'), false)); + return $this->doAsk(new ConfirmationQuestion($this->formatQuestion($question . ' (y/n)'), $default)); } /** From 03dcdfa3a56f0c466f1e423ea0176c8820a1580b Mon Sep 17 00:00:00 2001 From: Jelle Sebreghts Date: Wed, 3 Jul 2019 16:07:53 +0200 Subject: [PATCH 09/11] Allow command classes to end in Commands or Command. (#878) --- docs/extending.md | 14 +++++------ src/Runner.php | 2 +- .../Plugin/Commands/ThirdCustomCommand.php | 25 +++++++++++++++++++ .../RelativeNamespaceDiscoveryTest.php | 7 +++++- 4 files changed, 39 insertions(+), 9 deletions(-) create mode 100644 tests/plugins/Robo/Plugin/Commands/ThirdCustomCommand.php diff --git a/docs/extending.md b/docs/extending.md index 079342348..aaee2ca96 100644 --- a/docs/extending.md +++ b/docs/extending.md @@ -2,7 +2,7 @@ Robo tasks can be added to your Robo application by using Composer to suppliment the set of built-in tasks that Robo provides by default. To find existing Robo task extensions, search in Packagist for projects of type [robo-tasks](https://packagist.org/search/?type=robo-tasks). -The convention used to add new tasks for use in your RoboFiles is to create a wrapper trait named `Tasks` in your namespace that instantiates the implementation class for each task. Each task method in the trait should start with the prefix `task`, and should use **chained method calls** for configuration. Task execution should be triggered by the method `run`. +The convention used to add new tasks for use in your RoboFiles is to create a wrapper trait named `Tasks` in your namespace that instantiates the implementation class for each task. Each task method in the trait should start with the prefix `task`, and should use **chained method calls** for configuration. Task execution should be triggered by the method `run`. To include additional tasks in your RoboFile, you must `use` the appropriate `Tasks` in your RoboFile. See the section [Including Additional Tasks](#including-additional-tasks) below. To create your own Robo extension that provides tasks for use in RoboFiles, then you must write your own class that implements TaskInterface, and create a `Tasks` trait for it as described in the section [Creating a Robo Extension](#creating-a-robo-extension). @@ -22,7 +22,7 @@ Once the extension you wish to use has been added to your vendor directory, you class RoboFile extends \Robo\Tasks { use \Boedah\Robo\Task\Drush\Tasks; - + public function test() { // ... @@ -72,13 +72,13 @@ class MyCustomCommands extends \Robo\Tasks ``` Please note: command files classes must be placed under `Robo/Plugin/Commands` relative namespace and their name -must end in `Commands.php`. +must end in `Command.php` or `Commands.php`. You can now access your new commands via Robo: ``` -$ ./vendor/bin/robo -$ ./robo +$ ./vendor/bin/robo +$ ./robo Robo 1.2.2-dev Usage: @@ -89,8 +89,8 @@ Available commands: help Displays help for a command list Lists commands my-project - my-project:command-one - my-project:command-two + my-project:command-one + my-project:command-two ``` ## Creating a Robo Extension diff --git a/src/Runner.php b/src/Runner.php index 026ac871b..8b1046d4c 100644 --- a/src/Runner.php +++ b/src/Runner.php @@ -267,7 +267,7 @@ protected function discoverCommandClasses($relativeNamespace) /** @var \Robo\ClassDiscovery\RelativeNamespaceDiscovery $discovery */ $discovery = Robo::service('relativeNamespaceDiscovery'); $discovery->setRelativeNamespace($relativeNamespace.'\Commands') - ->setSearchPattern('*Commands.php'); + ->setSearchPattern('/.*Commands?\.php$/'); return $discovery->getClasses(); } diff --git a/tests/plugins/Robo/Plugin/Commands/ThirdCustomCommand.php b/tests/plugins/Robo/Plugin/Commands/ThirdCustomCommand.php new file mode 100644 index 000000000..310368e31 --- /dev/null +++ b/tests/plugins/Robo/Plugin/Commands/ThirdCustomCommand.php @@ -0,0 +1,25 @@ +addPsr4('\\Robo\\PluginTest\\', [realpath(__DIR__.'/../../plugins')]); $service = new RelativeNamespaceDiscovery($classLoader); $service->setRelativeNamespace('Robo\Plugin'); - $service->setSearchPattern('*Commands.php'); + $service->setSearchPattern('/.*Commands?\.php$/'); $classes = $service->getClasses(); $this->assertContains('\Robo\PluginTest\Robo\Plugin\Commands\FirstCustomCommands', $classes); $this->assertContains('\Robo\PluginTest\Robo\Plugin\Commands\SecondCustomCommands', $classes); + $this->assertContains('\Robo\PluginTest\Robo\Plugin\Commands\ThirdCustomCommand', $classes); $this->assertNotContains('\Robo\PluginTest\Robo\Plugin\Commands\NotValidClassName', $classes); } @@ -34,6 +35,10 @@ public function testGetFile() $actual = $service->getFile('\Robo\PluginTest\Robo\Plugin\Commands\SecondCustomCommands'); $this->assertStringEndsWith('SecondCustomCommands.php', $actual); + + + $actual = $service->getFile('\Robo\PluginTest\Robo\Plugin\Commands\ThirdCustomCommand'); + $this->assertStringEndsWith('ThirdCustomCommand.php', $actual); } /** From 15996abf0833fc7c2a186c123062a69b862bcf77 Mon Sep 17 00:00:00 2001 From: Andor Date: Tue, 23 Jul 2019 21:02:37 +0200 Subject: [PATCH 10/11] Fix PHPDoc @param and @return type hints (#886) --- RoboFile.php | 5 +- .../Robo/Plugin/Commands/ExampleCommands.php | 2 +- src/Application.php | 3 +- .../ClassDiscoveryInterface.php | 4 +- .../RelativeNamespaceDiscovery.php | 14 ++- src/Collection/CallableTask.php | 5 +- src/Collection/Collection.php | 65 +++++++--- src/Collection/CollectionBuilder.php | 96 ++++++++++++--- src/Collection/CollectionInterface.php | 36 +++--- src/Collection/CollectionProcessHook.php | 2 +- src/Collection/CompletionWrapper.php | 2 +- src/Collection/Element.php | 14 +-- src/Collection/TaskForEach.php | 4 +- src/Collection/Temporary.php | 6 + src/Common/CommandArguments.php | 5 + src/Common/ConfigAwareTrait.php | 8 +- src/Common/ExecCommand.php | 3 + src/Common/ExecTrait.php | 62 ++++++++-- src/Common/IO.php | 2 +- src/Common/OutputAdapter.php | 9 ++ src/Common/ProcessExecutor.php | 11 +- src/Common/ProcessUtils.php | 6 +- src/Common/ProgressIndicatorAwareTrait.php | 2 +- src/Common/ResourceExistenceChecker.php | 12 +- src/Common/TaskIO.php | 7 +- src/Common/TimeKeeper.php | 5 +- src/Common/VerbosityThresholdTrait.php | 29 ++++- src/Config/Config.php | 4 + src/Contract/OutputAdapterInterface.php | 9 ++ src/Contract/VerbosityThresholdInterface.php | 29 +++++ src/Exception/TaskException.php | 7 ++ src/Exception/TaskExitException.php | 8 ++ src/GlobalOptionsEventListener.php | 18 ++- src/Log/ResultPrinter.php | 2 +- src/Result.php | 17 ++- src/ResultData.php | 4 +- src/Robo.php | 21 +++- src/Runner.php | 38 ++++-- src/State/Consumer.php | 2 +- src/State/Data.php | 12 +- src/State/StateAwareInterface.php | 11 +- src/State/StateAwareTrait.php | 20 ++-- src/Task/ApiGen/ApiGen.php | 112 ++++++++++++------ src/Task/ApiGen/loadTasks.php | 2 +- src/Task/Archive/Pack.php | 37 +++--- src/Task/Archive/loadTasks.php | 8 +- src/Task/Assets/ImageMinify.php | 15 ++- src/Task/Assets/Minify.php | 11 +- src/Task/Assets/loadTasks.php | 14 +-- src/Task/Base/Exec.php | 5 +- src/Task/Base/loadTasks.php | 13 +- src/Task/BaseTask.php | 4 + src/Task/Bower/Base.php | 7 ++ src/Task/Bower/loadTasks.php | 4 +- src/Task/CommandStack.php | 7 +- src/Task/Composer/Base.php | 23 +++- src/Task/Composer/Config.php | 19 ++- src/Task/Composer/CreateProject.php | 34 ++++++ src/Task/Composer/DumpAutoload.php | 2 + src/Task/Composer/Init.php | 20 ++++ src/Task/Composer/Remove.php | 10 ++ src/Task/Composer/RequireDependency.php | 4 + src/Task/Composer/Validate.php | 10 ++ src/Task/Composer/loadTasks.php | 18 +-- src/Task/Development/Changelog.php | 4 +- src/Task/Development/GitHub.php | 4 +- src/Task/Development/OpenBrowser.php | 2 +- src/Task/Development/SemVer.php | 12 ++ src/Task/Development/loadTasks.php | 16 +-- src/Task/Docker/Commit.php | 2 +- src/Task/Docker/Exec.php | 2 +- src/Task/Docker/Run.php | 5 +- src/Task/Docker/loadTasks.php | 16 +-- src/Task/File/Concat.php | 4 +- src/Task/File/Write.php | 25 ++-- src/Task/File/loadTasks.php | 8 +- src/Task/Filesystem/CopyDir.php | 12 ++ src/Task/Filesystem/loadTasks.php | 16 +-- src/Task/Gulp/loadTasks.php | 2 +- src/Task/Npm/Install.php | 2 +- src/Task/Npm/Update.php | 2 +- src/Task/Npm/loadTasks.php | 4 +- src/Task/Remote/Rsync.php | 2 + src/Task/Remote/loadTasks.php | 4 +- src/Task/Simulator.php | 4 +- src/Task/StackBasedTask.php | 4 +- src/Task/Testing/Atoum.php | 9 +- src/Task/Testing/Behat.php | 7 +- src/Task/Testing/Codecept.php | 2 +- src/Task/Testing/PHPUnit.php | 13 +- src/Task/Testing/Phpspec.php | 40 ++++++- src/Task/Testing/loadTasks.php | 16 +-- src/Task/Vcs/GitStack.php | 1 + src/Task/Vcs/SvnStack.php | 4 +- src/Task/Vcs/loadTasks.php | 6 +- tests/src/RoboFileFixture.php | 3 +- 96 files changed, 922 insertions(+), 331 deletions(-) diff --git a/RoboFile.php b/RoboFile.php index dd144632f..cbaeb2445 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -59,8 +59,9 @@ public function sniff( /** * Generate a new Robo task that wraps an existing utility class. * - * @param $className The name of the existing utility class to wrap. - * @param $wrapperClassName The name of the wrapper class to create. Optional. + * @param string $className The name of the existing utility class to wrap. + * @param string $wrapperClassName The name of the wrapper class to create. Optional. + * * @usage generate:task 'Symfony\Component\Filesystem\Filesystem' FilesystemStack */ public function generateTask($className, $wrapperClassName = "") diff --git a/examples/src/Robo/Plugin/Commands/ExampleCommands.php b/examples/src/Robo/Plugin/Commands/ExampleCommands.php index bbad27574..c5f9cd272 100644 --- a/examples/src/Robo/Plugin/Commands/ExampleCommands.php +++ b/examples/src/Robo/Plugin/Commands/ExampleCommands.php @@ -200,7 +200,7 @@ public function tryText() /** * Demonstrate Robo boolean options. * - * @param $opts The options. + * @param array $opts The options. * @option boolean $silent Supress output. */ public function tryOptbool($opts = ['silent|s' => false]) diff --git a/src/Application.php b/src/Application.php index 000ca9422..c7a6f7cbd 100644 --- a/src/Application.php +++ b/src/Application.php @@ -70,7 +70,8 @@ public function addInitRoboFileCommand($roboFile, $roboClass) /** * Add self update command, do nothing if null is provided * - * @param string $repository GitHub Repository for self update + * @param string $repository + * GitHub Repository for self update. */ public function addSelfUpdateCommand($repository = null) { diff --git a/src/ClassDiscovery/ClassDiscoveryInterface.php b/src/ClassDiscovery/ClassDiscoveryInterface.php index ebbb67272..31c1f6ca7 100644 --- a/src/ClassDiscovery/ClassDiscoveryInterface.php +++ b/src/ClassDiscovery/ClassDiscoveryInterface.php @@ -10,7 +10,7 @@ interface ClassDiscoveryInterface { /** - * @param $searchPattern + * @param string $searchPattern * * @return $this */ @@ -22,7 +22,7 @@ public function setSearchPattern($searchPattern); public function getClasses(); /** - * @param $class + * @param string $class * * @return string|null */ diff --git a/src/ClassDiscovery/RelativeNamespaceDiscovery.php b/src/ClassDiscovery/RelativeNamespaceDiscovery.php index 766de3a4d..a2c093124 100644 --- a/src/ClassDiscovery/RelativeNamespaceDiscovery.php +++ b/src/ClassDiscovery/RelativeNamespaceDiscovery.php @@ -35,7 +35,7 @@ public function __construct(ClassLoader $classLoader) /** * @param string $relativeNamespace * - * @return RelativeNamespaceDiscovery + * @return $this */ public function setRelativeNamespace($relativeNamespace) { @@ -45,7 +45,7 @@ public function setRelativeNamespace($relativeNamespace) } /** - * @inheritDoc + * {@inheritDoc} */ public function getClasses() { @@ -77,8 +77,8 @@ public function getFile($class) } /** - * @param $directories - * @param $pattern + * @param string|array $directories + * @param string $pattern * * @return \Symfony\Component\Finder\Finder */ @@ -93,9 +93,9 @@ protected function search($directories, $pattern) } /** - * @param $path + * @param string $path * - * @return mixed + * @return string */ protected function convertPathToNamespace($path) { @@ -103,6 +103,8 @@ protected function convertPathToNamespace($path) } /** + * @param string $namespace + * * @return string */ public function convertNamespaceToPath($namespace) diff --git a/src/Collection/CallableTask.php b/src/Collection/CallableTask.php index ae9c54fc5..cb9b8f08e 100644 --- a/src/Collection/CallableTask.php +++ b/src/Collection/CallableTask.php @@ -32,7 +32,7 @@ public function __construct(callable $fn, TaskInterface $reference) } /** - * @return \Robo\Result + * {@inheritdoc} */ public function run() { @@ -52,6 +52,9 @@ public function run() return $result; } + /** + * @return \Robo\State\Data + */ public function getState() { if ($this->reference instanceof StateAwareInterface) { diff --git a/src/Collection/Collection.php b/src/Collection/Collection.php index e3e34796b..781b39b19 100644 --- a/src/Collection/Collection.php +++ b/src/Collection/Collection.php @@ -42,17 +42,17 @@ class Collection extends BaseTask implements CollectionInterface, CommandInterfa protected $taskList = []; /** - * @var TaskInterface[] + * @var \Robo\Contract\TaskInterface[] */ protected $rollbackStack = []; /** - * @var TaskInterface[] + * @var \Robo\Contract\TaskInterface[] */ protected $completionStack = []; /** - * @var CollectionInterface + * @var \Robo\Collection\CollectionInterface */ protected $parentCollection; @@ -74,6 +74,9 @@ public function __construct() $this->resetState(); } + /** + * @param int $interval + */ public function setProgressBarAutoDisplayInterval($interval) { if (!$this->progressIndicator) { @@ -209,7 +212,7 @@ function () use ($collection, $rollbackTask) { * * @param string $method * @param string $name - * @param callable|TaskInterface $task + * @param callable|\Robo\Contract\TaskInterface $task * @param string $nameOfTaskToAdd * * @return $this @@ -280,7 +283,7 @@ public function ignoreErrorsCodeWrapper(callable $task) /** * Return the list of task names added to this collection. * - * @return array + * @return string[] */ public function taskNames() { @@ -308,7 +311,7 @@ public function hasTask($name) * @param string $name * The name of the task to insert before. The named task MUST exist. * - * @return Element + * @return \Robo\Collection\Element * The task group for the named task. Generally this is only * used to call 'before()' and 'after()'. */ @@ -323,7 +326,7 @@ protected function namedTask($name) /** * Add a list of tasks to our task collection. * - * @param TaskInterface[] $tasks + * @param \Robo\Contract\TaskInterface[] $tasks * An array of tasks to run with rollback protection * * @return $this @@ -342,7 +345,7 @@ public function addTaskList(array $tasks) * @param string $name * @param \Robo\Contract\TaskInterface $task * - * @return \Robo\Collection\Collection + * @return $this */ protected function addToTaskList($name, TaskInterface $task) { @@ -392,7 +395,7 @@ public function setParentCollection(NestedCollectionInterface $parentCollection) /** * Get the appropriate parent collection to use * - * @return CollectionInterface + * @return \Robo\Collection\CollectionInterface|$this */ public function getParentCollection() { @@ -413,8 +416,10 @@ public function getParentCollection() * function directly is to add a task that sends notification * when a task fails. * - * @param TaskInterface $rollbackTask + * @param \Robo\Contract\TaskInterface $rollbackTask * The rollback task to run on failure. + * + * @return null */ public function registerRollback(TaskInterface $rollbackTask) { @@ -441,8 +446,10 @@ public function registerRollback(TaskInterface $rollbackTask) * the nested task completes; they are not deferred to the end of * the containing collection's execution. * - * @param TaskInterface $completionTask + * @param \Robo\Contract\TaskInterface $completionTask * The completion task to run at the end of all other operations. + * + * @return null */ public function registerCompletion(TaskInterface $completionTask) { @@ -547,7 +554,7 @@ private function runWithoutCompletion() * Return the failing result, or success if all tasks run. * * @param string $name - * @param TaskInterface[] $taskList + * @param \Robo\Contract\TaskInterface[] $taskList * @param \Robo\Result $result * * @return \Robo\Result @@ -641,7 +648,7 @@ protected function runRollbackTasks() } /** - * @param TaskInterface|NestedCollectionInterface|WrappedTaskInterface $task + * @param \Robo\Contract\TaskInterface|\Robo\Collection\NestedCollectionInterface|\Robo\Contract\WrappedTaskInterface $task * * @return \Robo\Result */ @@ -662,6 +669,10 @@ protected function runSubtask($task) return $taskResult; } + /** + * @param \Robo\Contract\TaskInterface $task + * @param \Robo\State\Data $taskResult + */ protected function doStateUpdates($task, Data $taskResult) { $this->updateState($taskResult); @@ -674,6 +685,13 @@ protected function doStateUpdates($task, Data $taskResult) } } + /** + * @param \Robo\Contract\TaskInterface $task + * @param string $key + * @param string $source + * + * @return $this + */ public function storeState($task, $key, $source = '') { $this->messageStoreKeys[spl_object_hash($task)] = [$key, $source]; @@ -681,6 +699,13 @@ public function storeState($task, $key, $source = '') return $this; } + /** + * @param \Robo\Contract\TaskInterface $task + * @param string $functionName + * @param string $stateKey + * + * @return $this + */ public function deferTaskConfiguration($task, $functionName, $stateKey) { return $this->defer( @@ -698,6 +723,11 @@ function ($task, $state) use ($functionName, $stateKey) { * runs. Use this time to provide more settings for the task, e.g. from * the collection's shared state, which is populated with the results * of previous test runs. + * + * @param \Robo\Contract\TaskInterface $task + * @param callable $callback + * + * @return $this */ public function defer($task, $callback) { @@ -706,6 +736,9 @@ public function defer($task, $callback) return $this; } + /** + * @param \Robo\Contract\TaskInterface $task + */ protected function doDeferredInitialization($task) { // If the task is a state consumer, then call its receiveState method @@ -727,7 +760,7 @@ protected function doDeferredInitialization($task) /** * @param TaskInterface|NestedCollectionInterface|WrappedTaskInterface $task - * @param $parentCollection + * @param \Robo\Collection\CollectionInterface $parentCollection */ protected function setParentCollectionForTask($task, $parentCollection) { @@ -744,7 +777,7 @@ protected function setParentCollectionForTask($task, $parentCollection) * * This is used to roll back or complete. * - * @param TaskInterface[] $taskList + * @param \Robo\Contract\TaskInterface[] $taskList */ protected function runTaskListIgnoringFailures(array $taskList) { @@ -766,7 +799,7 @@ protected function runTaskListIgnoringFailures(array $taskList) /** * Give all of our tasks to the provided collection builder. * - * @param CollectionBuilder $builder + * @param \Robo\Collection\CollectionBuilder $builder */ public function transferTasks($builder) { diff --git a/src/Collection/CollectionBuilder.php b/src/Collection/CollectionBuilder.php index c49300d3a..6e5045fd5 100644 --- a/src/Collection/CollectionBuilder.php +++ b/src/Collection/CollectionBuilder.php @@ -55,12 +55,12 @@ class CollectionBuilder extends BaseTask implements NestedCollectionInterface, W protected $commandFile; /** - * @var CollectionInterface + * @var \Robo\Collection\CollectionInterface */ protected $collection; /** - * @var TaskInterface + * @var \Robo\Contract\TaskInterface */ protected $currentTask; @@ -78,6 +78,12 @@ public function __construct($commandFile) $this->resetState(); } + /** + * @param \League\Container\ContainerInterface $container + * @param \Robo\Tasks $commandFile + * + * @return static + */ public static function create($container, $commandFile) { $builder = new self($commandFile); @@ -141,8 +147,9 @@ public function tmpDir($prefix = 'tmp', $base = '', $includeRandomPart = true) * any results already in place will be moved out of the way and * then deleted. * - * @param string $finalDestination The path where the working directory - * will be moved once the task collection completes. + * @param string $finalDestination + * The path where the working directory will be moved once the task + * collection completes. * * @return string */ @@ -152,6 +159,9 @@ public function workDir($finalDestination) return $this->taskWorkDir($finalDestination)->getPath(); } + /** + * @return $this + */ public function addTask(TaskInterface $task) { $this->getCollection()->add($task); @@ -165,6 +175,7 @@ public function addTask(TaskInterface $task) * * @param callable $code * @param int|string $name + * * @return $this */ public function addCode(callable $code, $name = \Robo\Collection\CollectionInterface::UNNAMEDTASK) @@ -176,7 +187,7 @@ public function addCode(callable $code, $name = \Robo\Collection\CollectionInter /** * Add a list of tasks to our task collection. * - * @param TaskInterface[] $tasks + * @param \Robo\Contract\TaskInterface[] $tasks * An array of tasks to run with rollback protection * * @return $this @@ -187,6 +198,9 @@ public function addTaskList(array $tasks) return $this; } + /** + * @return $this + */ public function rollback(TaskInterface $task) { // Ensure that we have a collection if we are going to add @@ -195,18 +209,27 @@ public function rollback(TaskInterface $task) return $this; } + /** + * @return $this + */ public function rollbackCode(callable $rollbackCode) { $this->getCollection()->rollbackCode($rollbackCode); return $this; } + /** + * @return $this + */ public function completion(TaskInterface $task) { $this->getCollection()->completion($task); return $this; } + /** + * @return $this + */ public function completionCode(callable $completionCode) { $this->getCollection()->completionCode($completionCode); @@ -227,8 +250,6 @@ public function progressMessage($text, $context = [], $level = LogLevel::NOTICE) } /** - * @param \Robo\Collection\NestedCollectionInterface $parentCollection - * * @return $this */ public function setParentCollection(NestedCollectionInterface $parentCollection) @@ -243,7 +264,7 @@ public function setParentCollection(NestedCollectionInterface $parentCollection) * * TODO: protected * - * @param TaskInterface $task + * @param \Robo\Contract\TaskInterface $task * * @return $this */ @@ -265,27 +286,53 @@ public function addTaskToCollection($task) return $this; } + /** + * @return \Robo\State\Data + */ public function getState() { $collection = $this->getCollection(); return $collection->getState(); } + /** + * @param int|string $key + * @param mixed $source + * + * @return $this + */ public function storeState($key, $source = '') { return $this->callCollectionStateFunction(__FUNCTION__, func_get_args()); } + /** + * @param string $functionName + * @param int|string $stateKey + * + * @return $this + */ public function deferTaskConfiguration($functionName, $stateKey) { return $this->callCollectionStateFunction(__FUNCTION__, func_get_args()); } + /** + * @param callable$callback + * + * @return $this + */ public function defer($callback) { return $this->callCollectionStateFunction(__FUNCTION__, func_get_args()); } + /** + * @param string $functionName + * @param array $args + * + * @return $this + */ protected function callCollectionStateFunction($functionName, $args) { $currentTask = ($this->currentTask instanceof WrappedTaskInterface) ? $this->currentTask->original() : $this->currentTask; @@ -298,6 +345,24 @@ protected function callCollectionStateFunction($functionName, $args) return $this; } + /** + * @param string $functionName + * @param array $args + * + * @return $this + * + * @deprecated Use ::callCollectionStateFunction() instead. + */ + protected function callCollectionStateFuntion($functionName, $args) + { + return $this->callCollectionStateFunction($functionName, $args); + } + + /** + * @param int $verbosityThreshold + * + * @return $this + */ public function setVerbosityThreshold($verbosityThreshold) { $currentTask = ($this->currentTask instanceof WrappedTaskInterface) ? $this->currentTask->original() : $this->currentTask; @@ -324,7 +389,7 @@ public function getCollectionBuilderCurrentTask() /** * Create a new builder with its own task collection * - * @return CollectionBuilder + * @return \Robo\Collection\CollectionBuilder */ public function newBuilder() { @@ -413,7 +478,7 @@ public function __call($fn, $args) * @param string|object $name * @param array $args * - * @return \Robo\Collection\CollectionBuilder + * @return $this */ public function build($name, $args) { @@ -428,7 +493,7 @@ public function build($name, $args) } /** - * @param InflectionInterface $task + * @param \Robo\Contract\TaskInterface $task * @param array $args * * @return \Robo\Collection\CompletionWrapper|\Robo\Task\Simulator @@ -479,6 +544,9 @@ protected function fixTask($task, $args) /** * Check to see if there are any setter methods defined in configuration * for this task. + * + * @param string $taskClass + * @param \Robo\Contract\TaskInterface $task */ protected function configureTask($taskClass, $task) { @@ -526,7 +594,7 @@ protected function runTasks() } /** - * @return string + * {@inheritdoc} */ public function getCommand() { @@ -542,7 +610,7 @@ public function getCommand() } /** - * @return \Robo\Collection\Collection + * @return \Robo\Collection\CollectionInterface */ public function original() { @@ -552,7 +620,7 @@ public function original() /** * Return the collection of tasks associated with this builder. * - * @return CollectionInterface + * @return \Robo\Collection\CollectionInterface */ public function getCollection() { diff --git a/src/Collection/CollectionInterface.php b/src/Collection/CollectionInterface.php index 173ca169c..57e7c5ca5 100644 --- a/src/Collection/CollectionInterface.php +++ b/src/Collection/CollectionInterface.php @@ -23,20 +23,21 @@ interface CollectionInterface extends NestedCollectionInterface * method ONLY if its 'run()' method completes successfully, and some * task added after it fails. * - * @param TaskInterface $task + * @param \Robo\Contract\TaskInterface $task * The task to add to our collection. * @param int|string $name * An optional name for the task -- missing or UNNAMEDTASK for unnamed tasks. * Names are used for positioning before and after tasks. * - * @return CollectionInterface + * @return $this */ public function add(TaskInterface $task, $name = self::UNNAMEDTASK); /** * Add arbitrary code to execute as a task. * - * @param callable $code Code to execute as a task + * @param callable $code + * Code to execute as a task * @param int|string $name * An optional name for the task -- missing or UNNAMEDTASK for unnamed tasks. * Names are used for positioning before and after tasks. @@ -51,8 +52,10 @@ public function addCode(callable $code, $name = self::UNNAMEDTASK); * provided callback is a TaskInterface or Collection, then it will be * executed. * - * @param CollectionInterface|array $iterable A collection of things to iterate - * @param $code $code A callback function to call for each item in the collection. + * @param static|array $iterable + * A collection of things to iterate. + * @param callable $code + * A callback function to call for each item in the collection. * * @return $this */ @@ -63,7 +66,7 @@ public function addIterable($iterable, callable $code); * will execute ONLY if all of the tasks added before it complete * successfully, AND some task added after it fails. * - * @param TaskInterface $rollbackTask + * @param \Robo\Contract\TaskInterface $rollbackTask * The rollback task to add. Note that the 'run()' method of the * task executes, not its 'rollback()' method. To use the 'rollback()' * method, add the task via 'Collection::add()' instead. @@ -75,7 +78,8 @@ public function rollback(TaskInterface $rollbackTask); /** * Add arbitrary code to execute as a rollback. * - * @param callable $rollbackTask Code to execute during rollback processing + * @param callable $rollbackTask + * Code to execute during rollback processing. * * @return $this */ @@ -87,7 +91,7 @@ public function rollbackCode(callable $rollbackTask); * any task fails. Completion tasks never cause errors to be returned * from Collection::run(), even if they fail. * - * @param TaskInterface $completionTask + * @param \Robo\Contract\TaskInterface $completionTask * The completion task to add. Note that the 'run()' method of the * task executes, just as if the task was added normally. * @@ -98,7 +102,8 @@ public function completion(TaskInterface $completionTask); /** * Add arbitrary code to execute as a completion. * - * @param callable $completionTask Code to execute after collection completes + * @param callable $completionTask + * Code to execute after collection completes * * @return $this */ @@ -109,7 +114,7 @@ public function completionCode(callable $completionTask); * * @param string $name * The name of the task to insert before. The named task MUST exist. - * @param callable|TaskInterface $task + * @param callable|\Robo\Contract\TaskInterface $task * The task to add. * @param int|string $nameOfTaskToAdd * The name of the task to add. If not provided, will be associated @@ -124,7 +129,7 @@ public function before($name, $task, $nameOfTaskToAdd = self::UNNAMEDTASK); * * @param string $name * The name of the task to insert before. The named task MUST exist. - * @param callable|TaskInterface $task + * @param callable|\Robo\Contract\TaskInterface $task * The task to add. * @param int|string $nameOfTaskToAdd * The name of the task to add. If not provided, will be associated @@ -140,10 +145,13 @@ public function after($name, $task, $nameOfTaskToAdd = self::UNNAMEDTASK); * method was called. If one of the previous tasks fail, then this * message will not be printed. * - * @param string $text Message to print. - * @param array $context Extra context data for use by the logger. Note + * @param string $text + * Message to print. + * @param array $context + * Extra context data for use by the logger. Note * that the data from the collection state is merged with the provided context. - * @param \Psr\Log\LogLevel|string $level The log level to print the information at. Default is NOTICE. + * @param \Psr\Log\LogLevel|string $level + * The log level to print the information at. Default is NOTICE. * * @return $this */ diff --git a/src/Collection/CollectionProcessHook.php b/src/Collection/CollectionProcessHook.php index 91efde747..d4392721d 100644 --- a/src/Collection/CollectionProcessHook.php +++ b/src/Collection/CollectionProcessHook.php @@ -17,7 +17,7 @@ class CollectionProcessHook implements ProcessResultInterface { /** - * @param \Robo\Result|\Robo\Contract\TaskInterface $result + * @param \Robo\Contract\TaskInterface|mixed $result * @param \Consolidation\AnnotatedCommand\CommandData $commandData * * @return null|\Robo\Result diff --git a/src/Collection/CompletionWrapper.php b/src/Collection/CompletionWrapper.php index 3e81bd91c..d19a78987 100644 --- a/src/Collection/CompletionWrapper.php +++ b/src/Collection/CompletionWrapper.php @@ -52,7 +52,7 @@ class CompletionWrapper extends BaseTask implements WrappedTaskInterface * * @param \Robo\Collection\Collection $collection * @param \Robo\Contract\TaskInterface $task - * @param \Robo\Contract\TaskInterface|NULL $rollbackTask + * @param \Robo\Contract\TaskInterface|null $rollbackTask */ public function __construct(Collection $collection, TaskInterface $task, TaskInterface $rollbackTask = null) { diff --git a/src/Collection/Element.php b/src/Collection/Element.php index b67b56bbd..074c05636 100644 --- a/src/Collection/Element.php +++ b/src/Collection/Element.php @@ -20,12 +20,12 @@ class Element protected $task; /** - * @var array + * @var \Robo\Contract\TaskInterface[]|callable[] */ protected $before = []; /** - * @var array + * @var \Robo\Contract\TaskInterface[]|callable[] */ protected $after = []; @@ -35,7 +35,7 @@ public function __construct(TaskInterface $task) } /** - * @param mixed $before + * @param \Robo\Contract\TaskInterface|callable $before * @param string $name */ public function before($before, $name) @@ -48,7 +48,7 @@ public function before($before, $name) } /** - * @param mixed $after + * @param \Robo\Contract\TaskInterface|callable $after * @param string $name */ public function after($after, $name) @@ -61,7 +61,7 @@ public function after($after, $name) } /** - * @return array + * @return \Robo\Contract\TaskInterface[]|callable[] */ public function getBefore() { @@ -69,7 +69,7 @@ public function getBefore() } /** - * @return array + * @return \Robo\Contract\TaskInterface[]|callable[] */ public function getAfter() { @@ -85,7 +85,7 @@ public function getTask() } /** - * @return array + * @return \Robo\Contract\TaskInterface[]|callable[] */ public function getTaskList() { diff --git a/src/Collection/TaskForEach.php b/src/Collection/TaskForEach.php index 030e50890..660e52318 100644 --- a/src/Collection/TaskForEach.php +++ b/src/Collection/TaskForEach.php @@ -110,7 +110,7 @@ public function withEachKeyValueCall(callable $fn) /** * @param callable $fn * - * @return \Robo\Collection\TaskForEach + * @return $this */ public function call(callable $fn) { @@ -124,7 +124,7 @@ function ($key, $value) use ($fn) { /** * @param callable $fn * - * @return \Robo\Collection\TaskForEach + * @return $this */ public function withBuilder(callable $fn) { diff --git a/src/Collection/Temporary.php b/src/Collection/Temporary.php index dad25e34c..9b1352a3d 100644 --- a/src/Collection/Temporary.php +++ b/src/Collection/Temporary.php @@ -25,10 +25,16 @@ */ class Temporary { + + /** + * @var \Robo\Collection\Collection + */ private static $collection; /** * Provides direct access to the collection of temporaries, if necessary. + * + * @return \Robo\Collection\Collection */ public static function getCollection() { diff --git a/src/Common/CommandArguments.php b/src/Common/CommandArguments.php index 12c2e89fd..635bf10c7 100644 --- a/src/Common/CommandArguments.php +++ b/src/Common/CommandArguments.php @@ -96,6 +96,11 @@ public function option($option, $value = null, $separator = ' ') * Pass multiple options to executable. The associative array contains * the key:value pairs that become `--key value`, for each item in the array. * Values are automatically escaped. + * + * @param array $options + * @param string $separator + * + * @return $this */ public function options(array $options, $separator = ' ') { diff --git a/src/Common/ConfigAwareTrait.php b/src/Common/ConfigAwareTrait.php index 74b48f073..c70d1581f 100644 --- a/src/Common/ConfigAwareTrait.php +++ b/src/Common/ConfigAwareTrait.php @@ -8,14 +8,14 @@ trait ConfigAwareTrait { /** - * @var ConfigInterface + * @var \Consolidation\Config\ConfigInterface */ protected $config; /** * Set the config management object. * - * @param ConfigInterface $config + * @param \Consolidation\Config\ConfigInterface $config * * @return $this */ @@ -29,7 +29,7 @@ public function setConfig(ConfigInterface $config) /** * Get the config management object. * - * @return \Robo\Config\Config + * @return \Consolidation\Config\ConfigInterface */ public function getConfig() { @@ -79,7 +79,7 @@ private static function getClassKey($key) /** * @param string $key * @param mixed $value - * @param Config|null $config + * @param \Consolidation\Config\ConfigInterface|null $config */ public static function configure($key, $value, $config = null) { diff --git a/src/Common/ExecCommand.php b/src/Common/ExecCommand.php index c3e6c3af6..687594508 100644 --- a/src/Common/ExecCommand.php +++ b/src/Common/ExecCommand.php @@ -124,6 +124,9 @@ protected function useCallOnWindows($cmd) return $cmd; } + /** + * {@inheritdoc} + */ protected function getCommandDescription() { return $this->process->getCommandLine(); diff --git a/src/Common/ExecTrait.php b/src/Common/ExecTrait.php index 85a9f4c9d..d8d95a1c1 100644 --- a/src/Common/ExecTrait.php +++ b/src/Common/ExecTrait.php @@ -66,22 +66,60 @@ trait ExecTrait */ abstract public function getCommandDescription(); - /** Typically provided by Timer trait via ProgressIndicatorAwareTrait. */ + /** + * @see \Robo\Common\ProgressIndicatorAwareTrait + * @see \Robo\Common\Timer + */ abstract public function startTimer(); + + /** + * @see \Robo\Common\ProgressIndicatorAwareTrait + * @see \Robo\Common\Timer + */ abstract public function stopTimer(); + + /** + * @return null|float + * + * @see \Robo\Common\ProgressIndicatorAwareTrait + * @see \Robo\Common\Timer + */ abstract public function getExecutionTime(); /** - * Typically provided by TaskIO Trait. + * @return bool + * + * @see \Robo\Common\TaskIO */ abstract public function hideTaskProgress(); + + /** + * @param bool $inProgress + * + * @see \Robo\Common\TaskIO + */ abstract public function showTaskProgress($inProgress); + + /** + * @param string $text + * @param null|array $context + * + * @see \Robo\Common\TaskIO + */ abstract public function printTaskInfo($text, $context = null); /** - * Typically provided by VerbosityThresholdTrait. + * @return bool + * + * @see \Robo\Common\VerbosityThresholdTrait */ abstract public function verbosityMeetsThreshold(); + + /** + * @param string $message + * + * @see \Robo\Common\VerbosityThresholdTrait + */ abstract public function writeMessage($message); /** @@ -105,6 +143,8 @@ public function detectInteractive() /** * Executes command in background mode (asynchronously) * + * @param bool $arg + * * @return $this */ public function background($arg = true) @@ -141,6 +181,11 @@ public function idleTimeout($timeout) /** * Set a single environment variable, or multiple. + * + * @param string|array $env + * @param bool|string $value + * + * @return $this */ public function env($env, $value = null) { @@ -179,7 +224,7 @@ public function setInput($input) /** * Attach tty to process for interactive input * - * @param $interactive bool + * @param bool $interactive * * @return $this */ @@ -275,7 +320,7 @@ public function printMetadata($arg) } /** - * @param Process $process + * @param \Symfony\Component\Process\Process $process * @param callable $output_callback * * @return \Robo\ResultData @@ -354,9 +399,6 @@ protected function execute($process, $output_callback = null) return new ResultData($this->process->getExitCode()); } - /** - * - */ protected function stop() { if ($this->background && isset($this->process) && $this->process->isRunning()) { @@ -384,9 +426,9 @@ protected function printAction($context = []) } /** - * @param $command + * @param string $command * - * @return mixed + * @return string */ protected function formatCommandDisplay($command) { diff --git a/src/Common/IO.php b/src/Common/IO.php index 3400c697d..40fff4acc 100644 --- a/src/Common/IO.php +++ b/src/Common/IO.php @@ -57,7 +57,7 @@ protected function input() /** * Provide access to SymfonyStyle object. * - * @return SymfonyStyle + * @return \Symfony\Component\Console\Style\SymfonyStyle * * @see http://symfony.com/blog/new-in-symfony-2-8-console-style-guide */ diff --git a/src/Common/OutputAdapter.php b/src/Common/OutputAdapter.php index b8e795f23..a28fd10cb 100644 --- a/src/Common/OutputAdapter.php +++ b/src/Common/OutputAdapter.php @@ -13,6 +13,9 @@ class OutputAdapter implements OutputAdapterInterface, OutputAwareInterface { use OutputAwareTrait; + /** + * @var int[] + */ protected $verbosityMap = [ VerbosityThresholdInterface::VERBOSITY_NORMAL => OutputInterface::VERBOSITY_NORMAL, VerbosityThresholdInterface::VERBOSITY_VERBOSE => OutputInterface::VERBOSITY_VERBOSE, @@ -20,6 +23,9 @@ class OutputAdapter implements OutputAdapterInterface, OutputAwareInterface VerbosityThresholdInterface::VERBOSITY_DEBUG => OutputInterface::VERBOSITY_DEBUG, ]; + /** + * {@inheritdoc} + */ public function verbosityMeetsThreshold($verbosityThreshold) { if (!isset($this->verbosityMap[$verbosityThreshold])) { @@ -31,6 +37,9 @@ public function verbosityMeetsThreshold($verbosityThreshold) return $verbosity >= $verbosityThreshold; } + /** + * {@inheritdoc} + */ public function writeMessage($message) { $this->output()->write($message); diff --git a/src/Common/ProcessExecutor.php b/src/Common/ProcessExecutor.php index f78a47752..a8629780b 100644 --- a/src/Common/ProcessExecutor.php +++ b/src/Common/ProcessExecutor.php @@ -16,14 +16,19 @@ class ProcessExecutor implements ConfigAwareInterface, LoggerAwareInterface, Out use OutputAwareTrait; /** - * @param Process $process - * @return type + * @param \Symfony\Component\Process\Process $process */ public function __construct(Process $process) { $this->process = $process; } + /** + * @param \League\Container\ContainerInterface $container + * @param \Symfony\Component\Process\Process $process + * + * @return static + */ public static function create($container, $process) { $processExecutor = new self($process); @@ -37,7 +42,7 @@ public static function create($container, $process) } /** - * @return string + * {@inheritdoc} */ protected function getCommandDescription() { diff --git a/src/Common/ProcessUtils.php b/src/Common/ProcessUtils.php index 7dc4e5531..9972982bc 100644 --- a/src/Common/ProcessUtils.php +++ b/src/Common/ProcessUtils.php @@ -26,9 +26,11 @@ private function __construct() /** * Escapes a string to be used as a shell argument. * - * @param string $argument The argument that will be escaped + * @param string $argument + * The argument that will be escaped. * - * @return string The escaped argument + * @return string + * The escaped argument. * * @deprecated since version 3.3, to be removed in 4.0. Use a command line array or give env vars to the `Process::start/run()` method instead. */ diff --git a/src/Common/ProgressIndicatorAwareTrait.php b/src/Common/ProgressIndicatorAwareTrait.php index 060e039a1..7f30c0d88 100644 --- a/src/Common/ProgressIndicatorAwareTrait.php +++ b/src/Common/ProgressIndicatorAwareTrait.php @@ -24,7 +24,7 @@ public function progressIndicatorSteps() /** * @param null|\Robo\Common\ProgressIndicator $progressIndicator * - * @return ProgressIndicatorAwareInterface + * @return $this */ public function setProgressIndicator($progressIndicator) { diff --git a/src/Common/ResourceExistenceChecker.php b/src/Common/ResourceExistenceChecker.php index 233f90a9b..060c87829 100644 --- a/src/Common/ResourceExistenceChecker.php +++ b/src/Common/ResourceExistenceChecker.php @@ -7,9 +7,11 @@ trait ResourceExistenceChecker * Checks if the given input is a file or folder. * * @param string|string[] $resources - * @param string $type "file", "dir", "fileAndDir" + * @param string $type + * Allowed values: "file", "dir", "fileAndDir" * - * @return bool True if no errors were encountered otherwise false. + * @return bool + * True if no errors were encountered otherwise false. */ protected function checkResources($resources, $type = 'fileAndDir') { @@ -41,8 +43,10 @@ protected function checkResources($resources, $type = 'fileAndDir') * * It will print an error as well on the console. * - * @param string $resource File or folder. - * @param string $type "file", "dir", "fileAndDir" + * @param string $resource + * File or folder. + * @param string $type + * Allowed values: "file", "dir", "fileAndDir". * * @return bool */ diff --git a/src/Common/TaskIO.php b/src/Common/TaskIO.php index 49b5ccd86..dbd70cfb2 100644 --- a/src/Common/TaskIO.php +++ b/src/Common/TaskIO.php @@ -22,7 +22,7 @@ trait TaskIO use VerbosityThresholdTrait; /** - * @return mixed|null|\Psr\Log\LoggerInterface + * @return null|\Psr\Log\LoggerInterface */ public function logger() { @@ -169,7 +169,7 @@ protected function hideTaskProgress() } /** - * @param $inProgress + * @param bool $inProgress */ protected function showTaskProgress($inProgress) { @@ -218,7 +218,8 @@ protected function getPrintedTaskName($task = null) /** * @param null|array $context * - * @return array with context information + * @return array + * Context information. */ protected function getTaskContext($context = null) { diff --git a/src/Common/TimeKeeper.php b/src/Common/TimeKeeper.php index 1cd3e3344..b7496bfb5 100644 --- a/src/Common/TimeKeeper.php +++ b/src/Common/TimeKeeper.php @@ -44,9 +44,10 @@ public function elapsed() } /** - * Format a duration into a human-readable time + * Format a duration into a human-readable time. * - * @param float $duration Duration in seconds, with fractional component + * @param float $duration + * Duration in seconds, with fractional component. * * @return string */ diff --git a/src/Common/VerbosityThresholdTrait.php b/src/Common/VerbosityThresholdTrait.php index 2fc51c22b..4fbefcd9a 100644 --- a/src/Common/VerbosityThresholdTrait.php +++ b/src/Common/VerbosityThresholdTrait.php @@ -20,13 +20,23 @@ */ trait VerbosityThresholdTrait { - /** var OutputAdapterInterface */ + /** + * @var \Robo\Contract\OutputAdapterInterface + */ protected $outputAdapter; + + /** + * @var int + */ protected $verbosityThreshold = 0; /** - * Required verbocity level before any TaskIO output will be produced. + * Required verbosity level before any TaskIO output will be produced. * e.g. OutputInterface::VERBOSITY_VERBOSE + * + * @param int $verbosityThreshold + * + * @return $this */ public function setVerbosityThreshold($verbosityThreshold) { @@ -34,6 +44,9 @@ public function setVerbosityThreshold($verbosityThreshold) return $this; } + /** + * @return int + */ public function verbosityThreshold() { return $this->verbosityThreshold; @@ -45,18 +58,24 @@ public function setOutputAdapter(OutputAdapterInterface $outputAdapter) } /** - * @return OutputAdapterInterface + * @return \Robo\Contract\OutputAdapterInterface */ public function outputAdapter() { return $this->outputAdapter; } + /** + * @return bool + */ public function hasOutputAdapter() { return isset($this->outputAdapter); } + /** + * @return bool + */ public function verbosityMeetsThreshold() { if ($this->hasOutputAdapter()) { @@ -67,7 +86,9 @@ public function verbosityMeetsThreshold() /** * Print a message if the selected verbosity level is over this task's - * verbosity threshhold. + * verbosity threshold. + * + * @param string $message */ public function writeMessage($message) { diff --git a/src/Config/Config.php b/src/Config/Config.php index 78b135a32..27a3e2214 100644 --- a/src/Config/Config.php +++ b/src/Config/Config.php @@ -70,6 +70,10 @@ public function getGlobalOptionDefaultValues() /** * Remove the 'options.' prefix from the global options list. + * + * @param array $globalOptions + * + * @return array */ protected function trimPrefixFromGlobalOptions($globalOptions) { diff --git a/src/Contract/OutputAdapterInterface.php b/src/Contract/OutputAdapterInterface.php index 948d384cb..e5e063ca6 100644 --- a/src/Contract/OutputAdapterInterface.php +++ b/src/Contract/OutputAdapterInterface.php @@ -6,6 +6,15 @@ */ interface OutputAdapterInterface { + /** + * @param int $verbosityThreshold + * + * @return bool + */ public function verbosityMeetsThreshold($verbosityThreshold); + + /** + * @param string $message + */ public function writeMessage($message); } diff --git a/src/Contract/VerbosityThresholdInterface.php b/src/Contract/VerbosityThresholdInterface.php index e63a1f704..f36abcc74 100644 --- a/src/Contract/VerbosityThresholdInterface.php +++ b/src/Contract/VerbosityThresholdInterface.php @@ -14,11 +14,40 @@ interface VerbosityThresholdInterface const VERBOSITY_VERY_VERBOSE = 3; const VERBOSITY_DEBUG = 4; + /** + * @param int $verbosityThreshold + * + * @return $this + */ public function setVerbosityThreshold($verbosityThreshold); + + /** + * @return int + */ public function verbosityThreshold(); + + /** + * @param \Robo\Contract\OutputAdapterInterface $outputAdapter + */ public function setOutputAdapter(OutputAdapterInterface $outputAdapter); + + /** + * @return \Robo\Contract\OutputAdapterInterface + */ public function outputAdapter(); + + /** + * @return bool + */ public function hasOutputAdapter(); + + /** + * @return int + */ public function verbosityMeetsThreshold(); + + /** + * @param string $message + */ public function writeMessage($message); } diff --git a/src/Exception/TaskException.php b/src/Exception/TaskException.php index fdc84a5e4..1cd1bc395 100644 --- a/src/Exception/TaskException.php +++ b/src/Exception/TaskException.php @@ -3,6 +3,13 @@ class TaskException extends \Exception { + + /** + * TaskException constructor. + * + * @param string|object $class + * @param string $message + */ public function __construct($class, $message) { if (is_object($class)) { diff --git a/src/Exception/TaskExitException.php b/src/Exception/TaskExitException.php index 9db5329ab..cf01355b3 100644 --- a/src/Exception/TaskExitException.php +++ b/src/Exception/TaskExitException.php @@ -3,6 +3,14 @@ class TaskExitException extends \Exception { + + /** + * TaskExitException constructor. + * + * @param string|object $class + * @param string $message + * @param int $status + */ public function __construct($class, $message, $status) { if (is_object($class)) { diff --git a/src/GlobalOptionsEventListener.php b/src/GlobalOptionsEventListener.php index b26d10cd0..b9c7b9fb0 100644 --- a/src/GlobalOptionsEventListener.php +++ b/src/GlobalOptionsEventListener.php @@ -12,10 +12,14 @@ class GlobalOptionsEventListener implements EventSubscriberInterface, ConfigAwar { use ConfigAwareTrait; - /** @var Application */ + /** + * @var \Robo\Application + */ protected $application; - /** @var string */ + /** + * @var string + */ protected $prefix; /** @@ -28,6 +32,10 @@ public function __construct() /** * Add a reference to the Symfony Console application object. + * + * @param \Robo\Application $application + * + * @return $this */ public function setApplication($application) { @@ -37,7 +45,10 @@ public function setApplication($application) /** * Stipulate the prefix to use for option injection. + * * @param string $prefix + * + * @return $this */ public function setGlobalOptionsPrefix($prefix) { @@ -118,6 +129,7 @@ public function setConfigurationValues(ConsoleCommandEvent $event) * the input string contains no '=' character, then the value will be 'true'. * * @param string $value + * * @return array */ protected function splitConfigKeyValue($value) @@ -130,6 +142,8 @@ protected function splitConfigKeyValue($value) /** * Get default option values from the Symfony Console application, if * it is available. + * + * @return array */ protected function applicationOptionDefaultValues() { diff --git a/src/Log/ResultPrinter.php b/src/Log/ResultPrinter.php index a6f166a09..7105f925b 100644 --- a/src/Log/ResultPrinter.php +++ b/src/Log/ResultPrinter.php @@ -27,7 +27,7 @@ class ResultPrinter implements LoggerAwareInterface, ProgressIndicatorAwareInter * * @param \Robo\Result $result * - * @return bool + * @return null|bool */ public function printResult(Result $result) { diff --git a/src/Result.php b/src/Result.php index 7d7793520..26b841d0d 100644 --- a/src/Result.php +++ b/src/Result.php @@ -19,7 +19,7 @@ class Result extends ResultData /** * @param \Robo\Contract\TaskInterface $task - * @param string $exitCode + * @param int $exitCode * @param string $message * @param array $data */ @@ -37,6 +37,11 @@ public function __construct(TaskInterface $task, $exitCode, $message = '', $data /** * Tasks should always return a Result. However, they are also * allowed to return NULL or an array to indicate success. + * + * @param \Robo\Contract\TaskInterface $task + * @param \Robo\Result|\Robo\State\Data|\Robo\ResultData|array|null + * + * @return static */ public static function ensureResult($task, $result) { @@ -79,7 +84,7 @@ protected function printResult() * @param string $extension * @param string $service * - * @return \Robo\Result + * @return static */ public static function errorMissingExtension(TaskInterface $task, $extension, $service) { @@ -94,7 +99,7 @@ public static function errorMissingExtension(TaskInterface $task, $extension, $s * @param string $class * @param string $package * - * @return \Robo\Result + * @return static */ public static function errorMissingPackage(TaskInterface $task, $class, $package) { @@ -109,7 +114,7 @@ public static function errorMissingPackage(TaskInterface $task, $class, $package * @param string $message * @param array $data * - * @return \Robo\Result + * @return static */ public static function error(TaskInterface $task, $message, $data = []) { @@ -121,7 +126,7 @@ public static function error(TaskInterface $task, $message, $data = []) * @param \Exception $e * @param array $data * - * @return \Robo\Result + * @return static */ public static function fromException(TaskInterface $task, \Exception $e, $data = []) { @@ -137,7 +142,7 @@ public static function fromException(TaskInterface $task, \Exception $e, $data = * @param string $message * @param array $data * - * @return \Robo\Result + * @return static */ public static function success(TaskInterface $task, $message = '', $data = []) { diff --git a/src/ResultData.php b/src/ResultData.php index 90baf6e92..28c4cda8e 100644 --- a/src/ResultData.php +++ b/src/ResultData.php @@ -40,7 +40,7 @@ public function __construct($exitCode = self::EXITCODE_OK, $message = '', $data * @param string $message * @param array $data * - * @return \Robo\ResultData + * @return static */ public static function message($message, $data = []) { @@ -51,7 +51,7 @@ public static function message($message, $data = []) * @param string $message * @param array $data * - * @return \Robo\ResultData + * @return static */ public static function cancelled($message = '', $data = []) { diff --git a/src/Robo.php b/src/Robo.php index f8cee175e..9c9d7a111 100644 --- a/src/Robo.php +++ b/src/Robo.php @@ -25,7 +25,7 @@ class Robo /** * The currently active container object, or NULL if not initialized yet. * - * @var ContainerInterface|null + * @var \League\Container\ContainerInterface|null */ protected static $container; @@ -37,6 +37,7 @@ class Robo * @param null|string $appName * @param null|string $appVersion * @param null|\Symfony\Component\Console\Output\OutputInterface $output + * @param null|string $repository * * @return int */ @@ -51,7 +52,7 @@ public static function run($argv, $commandClasses, $appName = null, $appVersion /** * Sets a new global container. * - * @param ContainerInterface $container + * @param \League\Container\ContainerInterface $container * A new container instance to replace the current. */ public static function setContainer(ContainerInterface $container) @@ -94,6 +95,10 @@ public static function hasContainer() /** * Create a config object and load it from the provided paths. + * + * @param string[] $paths + * + * @return \Consolidation\Config\ConfigInterface */ public static function createConfiguration($paths) { @@ -104,6 +109,9 @@ public static function createConfiguration($paths) /** * Use a simple config loader to load configuration values from specified paths + * + * @param string[] $paths + * @param null|\Consolidation\Config\ConfigInterface $config */ public static function loadConfiguration($paths, $config = null) { @@ -127,7 +135,7 @@ public static function loadConfiguration($paths, $config = null) * @param null|\Symfony\Component\Console\Input\InputInterface $input * @param null|\Symfony\Component\Console\Output\OutputInterface $output * @param null|\Robo\Application $app - * @param null|ConfigInterface $config + * @param null|\Consolidation\Config\ConfigInterface $config * @param null|\Composer\Autoload\ClassLoader $classLoader * * @return \League\Container\Container|\League\Container\ContainerInterface @@ -184,7 +192,7 @@ public static function configureApplication($app, $container) * * @param \League\Container\ContainerInterface $container * @param \Symfony\Component\Console\Application $app - * @param ConfigInterface $config + * @param \Consolidation\Config\ConfigInterface $config * @param null|\Symfony\Component\Console\Input\InputInterface $input * @param null|\Symfony\Component\Console\Output\OutputInterface $output * @param null|\Composer\Autoload\ClassLoader $classLoader @@ -376,7 +384,7 @@ public static function resultPrinter() } /** - * @return ConfigInterface + * @return \Consolidation\Config\ConfigInterface */ public static function config() { @@ -419,6 +427,9 @@ public static function input() return static::service('input'); } + /** + * @return \Robo\Common\ProcessExecutor + */ public static function process(Process $process) { return ProcessExecutor::create(static::getContainer(), $process); diff --git a/src/Runner.php b/src/Runner.php index 8b1046d4c..580aaf5a3 100644 --- a/src/Runner.php +++ b/src/Runner.php @@ -31,7 +31,9 @@ class Runner implements ContainerAwareInterface protected $roboFile; /** - * @var string working dir of Robo + * Working dir of Robo. + * + * @var string */ protected $dir; @@ -41,12 +43,16 @@ class Runner implements ContainerAwareInterface protected $errorConditions = []; /** - * @var string GitHub Repo for SelfUpdate + * GitHub Repo for SelfUpdate. + * + * @var string */ protected $selfUpdateRepository = null; /** - * @var string filename to load configuration from (set to 'robo.yml' for RoboFiles) + * Filename to load configuration from (set to 'robo.yml' for RoboFiles). + * + * @var string */ protected $configFilename = 'conf.yml'; @@ -56,7 +62,7 @@ class Runner implements ContainerAwareInterface protected $envConfigPrefix = false; /** - * @var \Composer\Autoload\ClassLoader + * @var null|\Composer\Autoload\ClassLoader */ protected $classLoader = null; @@ -79,6 +85,10 @@ public function __construct($roboClass = null, $roboFile = null) $this->dir = getcwd(); } + /** + * @param string $msg + * @param string $errorType + */ protected function errorCondition($msg, $errorType) { $this->errorConditions[$msg] = $errorType; @@ -147,6 +157,9 @@ public function execute($argv, $appName = null, $appVersion = null, $output = nu /** * Get a list of locations where config files may be loaded + * + * @param string $userConfig + * * @return string[] */ protected function getConfigFilePaths($userConfig) @@ -258,9 +271,9 @@ public function registerCommandClasses($app, $commandClasses) } /** - * @param $relativeNamespace + * @param string $relativeNamespace * - * @return array|string[] + * @return string[] */ protected function discoverCommandClasses($relativeNamespace) { @@ -275,7 +288,7 @@ protected function discoverCommandClasses($relativeNamespace) * @param \Robo\Application $app * @param string|BuilderAwareInterface|ContainerAwareInterface $commandClass * - * @return mixed|void + * @return null|object */ public function registerCommandClass($app, $commandClass) { @@ -295,7 +308,7 @@ public function registerCommandClass($app, $commandClass) } /** - * @param string|BuilderAwareInterface|ContainerAwareInterface $commandClass + * @param string|\Robo\Contract\BuilderAwareInterface|\League\Container\ContainerAwareInterface $commandClass * * @return null|object */ @@ -344,7 +357,8 @@ public function installRoboHandlers() * * @param array $args * - * @return array $args with shebang script removed + * @return array $args + * With shebang script removed. */ protected function shebang($args) { @@ -371,9 +385,11 @@ protected function shebang($args) * Determine if the specified argument is a path to a shebang script. * If so, load it. * - * @param string $filepath file to check + * @param string $filepath + * File to check. * - * @return bool Returns TRUE if shebang script was processed + * @return bool + * Returns TRUE if shebang script was processed. */ protected function isShebangFile($filepath) { diff --git a/src/State/Consumer.php b/src/State/Consumer.php index ab9c0e277..9a713db9f 100644 --- a/src/State/Consumer.php +++ b/src/State/Consumer.php @@ -6,7 +6,7 @@ interface Consumer { /** - * @return Data + * @return \Robo\State\Data */ public function receiveState(Data $state); } diff --git a/src/State/Data.php b/src/State/Data.php index 34cb5c761..de733feb0 100644 --- a/src/State/Data.php +++ b/src/State/Data.php @@ -40,7 +40,7 @@ public function getMessage() } /** - * @param string message + * @param string $message */ public function setMessage($message) { @@ -52,7 +52,7 @@ public function setMessage($message) * existing in this result takes precedence over the * data in the Result being merged. * - * @param \Robo\ResultData $result + * @param \Robo\State\Data $result * * @return $this */ @@ -123,6 +123,10 @@ public function getExecutionTime() /** * Accumulate execution time + * + * @param array|float $duration + * + * @return null|float */ public function accumulateExecutionTime($duration) { @@ -136,6 +140,10 @@ public function accumulateExecutionTime($duration) /** * Accumulate the message. + * + * @param string $message + * + * @return string */ public function accumulateMessage($message) { diff --git a/src/State/StateAwareInterface.php b/src/State/StateAwareInterface.php index f86bccb87..b84eec4be 100644 --- a/src/State/StateAwareInterface.php +++ b/src/State/StateAwareInterface.php @@ -6,23 +6,24 @@ interface StateAwareInterface { /** - * @return Data + * @return \Robo\State\Data */ public function getState(); /** - * @param Data state + * @param \Robo\State\Data $state */ public function setState(Data $state); /** - * @param $key - * @param value + * @param int|string $key + * @param mixed $value */ public function setStateValue($key, $value); /** - * @param Data update state takes precedence over current state. + * @param \Robo\State\Data + * Update state takes precedence over current state. */ public function updateState(Data $update); diff --git a/src/State/StateAwareTrait.php b/src/State/StateAwareTrait.php index a1de1f15c..5d437f9b1 100644 --- a/src/State/StateAwareTrait.php +++ b/src/State/StateAwareTrait.php @@ -3,45 +3,43 @@ use Robo\State\Data; +/** + * @see \Robo\State\StateAwareInterface + */ trait StateAwareTrait { + /** + * @var \Robo\State\Data + */ protected $state; /** - * {@inheritdoc} + * @return \Robo\State\Data */ public function getState() { return $this->state; } - /** - * {@inheritdoc} - */ public function setState(Data $state) { $this->state = $state; } /** - * {@inheritdoc} + * @param int|string $key + * @param mixed $value */ public function setStateValue($key, $value) { $this->state[$key] = $value; } - /** - * {@inheritdoc} - */ public function updateState(Data $update) { $this->state->update($update); } - /** - * {@inheritdoc} - */ public function resetState() { $this->state = new Data(); diff --git a/src/Task/ApiGen/ApiGen.php b/src/Task/ApiGen/ApiGen.php index 11ff764c2..624b2c6db 100644 --- a/src/Task/ApiGen/ApiGen.php +++ b/src/Task/ApiGen/ApiGen.php @@ -31,6 +31,10 @@ class ApiGen extends BaseTask implements CommandInterface * @var string */ protected $command; + + /** + * @var string + */ protected $operation = 'generate'; /** @@ -84,10 +88,12 @@ public function args($args) } /** - * @param array|Traversable|string $arg a single object or something traversable + * @param array|\Traversable|string $arg + * A single object or something traversable. * - * @return array|Traversable the provided argument if it was already traversable, or the given - * argument returned as a one-element array + * @return array|\Traversable + * The provided argument if it was already traversable, or the given + * argument returned as a one-element array. */ protected static function forceTraversable($arg) { @@ -99,10 +105,12 @@ protected static function forceTraversable($arg) } /** - * @param array|string $arg a single argument or an array of multiple string values + * @param array|string $arg + * A single argument or an array of multiple string values. * - * @return string a comma-separated string of all of the provided arguments, suitable - * as a command-line "list" type argument for ApiGen + * @return string + * A comma-separated string of all of the provided arguments, suitable as + * a command-line "list" type argument for ApiGen. */ protected static function asList($arg) { @@ -111,13 +119,15 @@ protected static function asList($arg) } /** - * @param bool|string $val an argument to be normalized - * @param string $default one of self::BOOL_YES or self::BOOK_NO if the provided - * value could not deterministically be converted to a - * yes or no value + * @param bool|string $val + * An argument to be normalized. + * @param string $default + * One of self::BOOL_YES or self::BOOK_NO if the provided value could not + * deterministically be converted to a yes or no value. * - * @return string the given value as a command-line "yes|no" type of argument for ApiGen, - * or the default value if none could be determined + * @return string + * The given value as a command-line "yes|no" type of argument for ApiGen, + * or the default value if none could be determined. */ protected static function asTextBool($val, $default) { @@ -155,7 +165,8 @@ public function config($config) } /** - * @param array|string|Traversable $src one or more source values + * @param array|string|\Traversable $src + * One or more source values. * * @return $this */ @@ -179,7 +190,8 @@ public function destination($dest) } /** - * @param array|string $exts one or more extensions + * @param array|string $exts + * One or more extensions. * * @return $this */ @@ -190,7 +202,8 @@ public function extensions($exts) } /** - * @param array|string $exclude one or more exclusions + * @param array|string $exclude + * One or more exclusions. * * @return $this */ @@ -203,7 +216,8 @@ public function exclude($exclude) } /** - * @param array|string|Traversable $path one or more skip-doc-path values + * @param array|string|\Traversable $path + * One or more skip-doc-path values. * * @return $this */ @@ -216,7 +230,8 @@ public function skipDocPath($path) } /** - * @param array|string|Traversable $prefix one or more skip-doc-prefix values + * @param array|string|\Traversable $prefix + * One or more skip-doc-prefix values. * * @return $this */ @@ -229,7 +244,8 @@ public function skipDocPrefix($prefix) } /** - * @param array|string $charset one or more charsets + * @param array|string $charset + * One or more charsets. * * @return $this */ @@ -306,7 +322,8 @@ public function templateConfig($templateConfig) } /** - * @param array|string $tags one or more supported html tags + * @param array|string $tags + * One or more supported html tags. * * @return $this */ @@ -328,7 +345,8 @@ public function groups($groups) } /** - * @param array|string $types or more supported autocomplete types + * @param array|string $types + * One or more supported autocomplete types. * * @return $this */ @@ -339,7 +357,8 @@ public function autocomplete($types) } /** - * @param array|string $levels one or more access levels + * @param array|string $levels + * One or more access levels. * * @return $this */ @@ -350,7 +369,8 @@ public function accessLevels($levels) } /** - * @param boolean|string $internal 'yes' or true if internal, 'no' or false if not + * @param boolean|string $internal + * 'yes' or true if internal, 'no' or false if not. * * @return $this */ @@ -361,8 +381,9 @@ public function internal($internal) } /** - * @param boolean|string $php 'yes' or true to generate documentation for internal php classes, - * 'no' or false otherwise + * @param bool|string $php + * 'yes' or true to generate documentation for internal php classes, 'no' + * or false otherwise. * * @return $this */ @@ -373,7 +394,9 @@ public function php($php) } /** - * @param bool|string $tree 'yes' or true to generate a tree view of classes, 'no' or false otherwise + * @param bool|string $tree + * 'yes' or true to generate a tree view of classes, 'no' or false + * otherwise. * * @return $this */ @@ -384,7 +407,9 @@ public function tree($tree) } /** - * @param bool|string $dep 'yes' or true to generate documentation for deprecated classes, 'no' or false otherwise + * @param bool|string $dep + * 'yes' or true to generate documentation for deprecated classes, 'no' or + * false otherwise. * * @return $this */ @@ -395,7 +420,8 @@ public function deprecated($dep) } /** - * @param bool|string $todo 'yes' or true to document tasks, 'no' or false otherwise + * @param bool|string $todo + * 'yes' or true to document tasks, 'no' or false otherwise. * * @return $this */ @@ -406,7 +432,9 @@ public function todo($todo) } /** - * @param bool|string $src 'yes' or true to generate highlighted source code, 'no' or false otherwise + * @param bool|string $src + * 'yes' or true to generate highlighted source code, 'no' or false + * otherwise. * * @return $this */ @@ -417,7 +445,9 @@ public function sourceCode($src) } /** - * @param bool|string $zipped 'yes' or true to generate downloadable documentation, 'no' or false otherwise + * @param bool|string $zipped + * 'yes' or true to generate downloadable documentation, 'no' or false + * otherwise. * * @return $this */ @@ -427,6 +457,11 @@ public function download($zipped) return $this; } + /** + * @param string $path + * + * @return $this + */ public function report($path) { $this->option('report', $path); @@ -434,7 +469,9 @@ public function report($path) } /** - * @param bool|string $wipeout 'yes' or true to clear out the destination directory, 'no' or false otherwise + * @param bool|string $wipeout + * 'yes' or true to clear out the destination directory, 'no' or false + * otherwise. * * @return $this */ @@ -445,7 +482,8 @@ public function wipeout($wipeout) } /** - * @param bool|string $quiet 'yes' or true for quiet, 'no' or false otherwise + * @param bool|string $quiet + * 'yes' or true for quiet, 'no' or false otherwise. * * @return $this */ @@ -456,7 +494,8 @@ public function quiet($quiet) } /** - * @param bool|string $bar 'yes' or true to display a progress bar, 'no' or false otherwise + * @param bool|string $bar + * 'yes' or true to display a progress bar, 'no' or false otherwise. * * @return $this */ @@ -467,7 +506,8 @@ public function progressbar($bar) } /** - * @param bool|string $colors 'yes' or true colorize the output, 'no' or false otherwise + * @param bool|string $colors + * 'yes' or true colorize the output, 'no' or false otherwise. * * @return $this */ @@ -478,7 +518,8 @@ public function colors($colors) } /** - * @param bool|string $check 'yes' or true to check for updates, 'no' or false otherwise + * @param bool|string $check + * 'yes' or true to check for updates, 'no' or false otherwise. * * @return $this */ @@ -489,7 +530,8 @@ public function updateCheck($check) } /** - * @param bool|string $debug 'yes' or true to enable debug mode, 'no' or false otherwise + * @param bool|string $debug + * 'yes' or true to enable debug mode, 'no' or false otherwise. * * @return $this */ diff --git a/src/Task/ApiGen/loadTasks.php b/src/Task/ApiGen/loadTasks.php index e8cd372af..cac51ad3b 100644 --- a/src/Task/ApiGen/loadTasks.php +++ b/src/Task/ApiGen/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param null|string $pathToApiGen * - * @return \Robo\Task\ApiGen\ApiGen + * @return \Robo\Task\ApiGen\ApiGen|\Robo\Collection\CollectionBuilder */ protected function taskApiGen($pathToApiGen = null) { diff --git a/src/Task/Archive/Pack.php b/src/Task/Archive/Pack.php index 0970f8e88..605abd67d 100644 --- a/src/Task/Archive/Pack.php +++ b/src/Task/Archive/Pack.php @@ -40,7 +40,8 @@ class Pack extends BaseTask implements PrintedInterface /** * Construct the class. * - * @param string $archiveFile The full path and name of the archive file to create. + * @param string $archiveFile + * The full path and name of the archive file to create. * * @since 1.0 */ @@ -52,7 +53,8 @@ public function __construct($archiveFile) /** * Satisfy the parent requirement. * - * @return bool Always returns true. + * @return bool + * Always returns true. * * @since 1.0 */ @@ -76,10 +78,10 @@ public function archiveFile($archiveFile) * Add an item to the archive. Like file_exists(), the parameter * may be a file or a directory. * - * @var string - * Relative path and name of item to store in archive - * @var string - * Absolute or relative path to file or directory's location in filesystem + * @param string $placementLocation + * Relative path and name of item to store in archive. + * @param string $filesystemLocation + * Absolute or relative path to file or directory's location in filesystem. * * @return $this */ @@ -94,10 +96,10 @@ public function addFile($placementLocation, $filesystemLocation) * Alias for addFile, in case anyone has angst about using * addFile with a directory. * - * @var string - * Relative path and name of directory to store in archive - * @var string - * Absolute or relative path to directory or directory's location in filesystem + * @param string $placementLocation + * Relative path and name of directory to store in archive. + * @param string $filesystemLocation + * Absolute or relative path to directory or directory's location in filesystem. * * @return $this */ @@ -111,13 +113,14 @@ public function addDir($placementLocation, $filesystemLocation) /** * Add a file or directory, or list of same to the archive. * - * @var string|array - * If given a string, should contain the relative filesystem path to the - * the item to store in archive; this will also be used as the item's - * path in the archive, so absolute paths should not be used here. - * If given an array, the key of each item should be the path to store - * in the archive, and the value should be the filesystem path to the - * item to store. + * @param string|array $item + * If given a string, should contain the relative filesystem path to the + * the item to store in archive; this will also be used as the item's + * path in the archive, so absolute paths should not be used here. + * If given an array, the key of each item should be the path to store + * in the archive, and the value should be the filesystem path to the + * item to store. + * * @return $this */ public function add($item) diff --git a/src/Task/Archive/loadTasks.php b/src/Task/Archive/loadTasks.php index cf846fdf8..68bc8d333 100644 --- a/src/Task/Archive/loadTasks.php +++ b/src/Task/Archive/loadTasks.php @@ -4,9 +4,9 @@ trait loadTasks { /** - * @param $filename + * @param string $filename * - * @return Pack + * @return \Robo\Task\Archive\Pack|\Robo\Collection\CollectionBuilder */ protected function taskPack($filename) { @@ -14,9 +14,9 @@ protected function taskPack($filename) } /** - * @param $filename + * @param string $filename * - * @return Extract + * @return \Robo\Task\Archive\Extract|\Robo\Collection\CollectionBuilder */ protected function taskExtract($filename) { diff --git a/src/Task/Assets/ImageMinify.php b/src/Task/Assets/ImageMinify.php index e90e20a0e..d687e1a87 100644 --- a/src/Task/Assets/ImageMinify.php +++ b/src/Task/Assets/ImageMinify.php @@ -150,7 +150,7 @@ class ImageMinify extends BaseTask * * @link https://github.com/imagemin * - * @var array + * @var string[] */ protected $imageminRepos = [ // PNG @@ -171,6 +171,9 @@ class ImageMinify extends BaseTask 'cwebp' => 'https://github.com/imagemin/cwebp-bin', // note: we do not support this minifier because it creates WebP from non-WebP files ]; + /** + * @param string|string[] $dirs + */ public function __construct($dirs) { is_array($dirs) @@ -257,7 +260,7 @@ public function minifier($minifier, array $options = []) } /** - * @param array $dirs + * @param string[] $dirs * * @return array|\Robo\Result * @@ -325,7 +328,7 @@ protected function getTarget($file, $to) } /** - * @param array $files + * @param string[] $files * * @return \Robo\Result */ @@ -584,6 +587,12 @@ protected function jpegtran($from, $to) return $command; } + /** + * @param string $from + * @param string $to + * + * @return string + */ protected function gifsicle($from, $to) { $command = sprintf('gifsicle -o "%s" "%s"', $to, $from); diff --git a/src/Task/Assets/Minify.php b/src/Task/Assets/Minify.php index 26bf3c6a0..aa02a0b3b 100644 --- a/src/Task/Assets/Minify.php +++ b/src/Task/Assets/Minify.php @@ -23,7 +23,7 @@ class Minify extends BaseTask { /** - * @var array + * @var string[] */ protected $types = ['css', 'js']; @@ -43,7 +43,7 @@ class Minify extends BaseTask protected $type; /** - * @var array + * @var bool[] */ protected $squeezeOptions = [ 'singleLine' => true, @@ -87,7 +87,8 @@ public function to($dst) /** * Sets type with validation. * - * @param string $type css|js + * @param string $type + * Allowed values: "css", "js". * * @return $this */ @@ -217,11 +218,11 @@ public function keepImportantComments($keepImportantComments) } /** - * specialVarRx option for the JS minimisation. + * Set specialVarRx option for the JS minimisation. * * @param bool $specialVarRx * - * @return $this ; + * @return $this */ public function specialVarRx($specialVarRx) { diff --git a/src/Task/Assets/loadTasks.php b/src/Task/Assets/loadTasks.php index 12192dd80..4334dacf5 100644 --- a/src/Task/Assets/loadTasks.php +++ b/src/Task/Assets/loadTasks.php @@ -4,10 +4,10 @@ trait loadTasks { /** - * @param string $input - * - * @return \Robo\Task\Assets\Minify - */ + * @param string $input + * + * @return \Robo\Task\Assets\Minify|\Robo\Collection\CollectionBuilder + */ protected function taskMinify($input) { return $this->task(Minify::class, $input); @@ -16,7 +16,7 @@ protected function taskMinify($input) /** * @param string|string[] $input * - * @return \Robo\Task\Assets\ImageMinify + * @return \Robo\Task\Assets\ImageMinify|\Robo\Collection\CollectionBuilder */ protected function taskImageMinify($input) { @@ -26,7 +26,7 @@ protected function taskImageMinify($input) /** * @param array $input * - * @return \Robo\Task\Assets\Less + * @return \Robo\Task\Assets\Less|\Robo\Collection\CollectionBuilder */ protected function taskLess($input) { @@ -36,7 +36,7 @@ protected function taskLess($input) /** * @param array $input * - * @return \Robo\Task\Assets\Scss + * @return \Robo\Task\Assets\Scss|\Robo\Collection\CollectionBuilder */ protected function taskScss($input) { diff --git a/src/Task/Base/Exec.php b/src/Task/Base/Exec.php index 057c86a9b..23c5a2195 100644 --- a/src/Task/Base/Exec.php +++ b/src/Task/Base/Exec.php @@ -50,9 +50,6 @@ public function __construct($command) $this->command = $this->receiveCommand($command); } - /** - * - */ public function __destruct() { $this->stop(); @@ -61,6 +58,8 @@ public function __destruct() /** * Executes command in background mode (asynchronously) * + * @param bool $arg + * * @return $this */ public function background($arg = true) diff --git a/src/Task/Base/loadTasks.php b/src/Task/Base/loadTasks.php index ab5301bbe..086b524c5 100644 --- a/src/Task/Base/loadTasks.php +++ b/src/Task/Base/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param string|\Robo\Contract\CommandInterface $command * - * @return Exec + * @return \Robo\Task\Base\Exec|\Robo\Collection\CollectionBuilder */ protected function taskExec($command) { @@ -14,7 +14,7 @@ protected function taskExec($command) } /** - * @return ExecStack + * @return \Robo\Task\Base\ExecStack|\Robo\Collection\CollectionBuilder */ protected function taskExecStack() { @@ -22,7 +22,7 @@ protected function taskExecStack() } /** - * @return ParallelExec + * @return \Robo\Task\Base\ParallelExec|\Robo\Collection\CollectionBuilder */ protected function taskParallelExec() { @@ -30,8 +30,9 @@ protected function taskParallelExec() } /** - * @param $command - * @return SymfonyCommand + * @param \Symfony\Component\Console\Command\Command $command + * + * @return \Robo\Task\Base\SymfonyCommand|\Robo\Collection\CollectionBuilder */ protected function taskSymfonyCommand($command) { @@ -39,7 +40,7 @@ protected function taskSymfonyCommand($command) } /** - * @return Watch + * @return \Robo\Task\Base\Watch|\Robo\Collection\CollectionBuilder */ protected function taskWatch() { diff --git a/src/Task/BaseTask.php b/src/Task/BaseTask.php index 66155c093..7c29ad719 100644 --- a/src/Task/BaseTask.php +++ b/src/Task/BaseTask.php @@ -23,6 +23,8 @@ abstract class BaseTask implements TaskInterface, LoggerAwareInterface, Verbosit * ConfigAwareInterface uses this to decide where configuration * items come from. Default is this prefix + class name + key, * e.g. `task.Remote.Ssh.remoteDir`. + * + * @return string */ protected static function configPrefix() { @@ -33,6 +35,8 @@ protected static function configPrefix() * ConfigAwareInterface uses this to decide where configuration * items come from. Default is this prefix + class name + key, * e.g. `task.Ssh.remoteDir`. + * + * @return string */ protected static function configPostfix() { diff --git a/src/Task/Bower/Base.php b/src/Task/Bower/Base.php index 9bc614c63..7a88befa6 100644 --- a/src/Task/Bower/Base.php +++ b/src/Task/Bower/Base.php @@ -8,7 +8,14 @@ abstract class Base extends BaseTask { use \Robo\Common\ExecOneCommand; + /** + * @var array + */ protected $opts = []; + + /** + * @var string + */ protected $action = ''; /** diff --git a/src/Task/Bower/loadTasks.php b/src/Task/Bower/loadTasks.php index 6e33f8acf..d550fa692 100644 --- a/src/Task/Bower/loadTasks.php +++ b/src/Task/Bower/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param null|string $pathToBower * - * @return Install + * @return \Robo\Task\Bower\Install|\Robo\Collection\CollectionBuilder */ protected function taskBowerInstall($pathToBower = null) { @@ -16,7 +16,7 @@ protected function taskBowerInstall($pathToBower = null) /** * @param null|string $pathToBower * - * @return Update + * @return \Robo\Task\Bower\Update|\Robo\Collection\CollectionBuilder */ protected function taskBowerUpdate($pathToBower = null) { diff --git a/src/Task/CommandStack.php b/src/Task/CommandStack.php index 43fbd7ccf..9114ebbed 100644 --- a/src/Task/CommandStack.php +++ b/src/Task/CommandStack.php @@ -18,6 +18,9 @@ abstract class CommandStack extends BaseTask implements CommandInterface, Printe */ protected $executable; + /** + * @var \Robo\Result + */ protected $result; /** @@ -69,9 +72,9 @@ public function exec($command) $command = $this->executable . ' ' . $this->stripExecutableFromCommand($command); $command = trim($command); } - + $this->exec[] = $command; - + return $this; } diff --git a/src/Task/Composer/Base.php b/src/Task/Composer/Base.php index de3fe2174..fd8afb0ae 100644 --- a/src/Task/Composer/Base.php +++ b/src/Task/Composer/Base.php @@ -15,7 +15,7 @@ abstract class Base extends BaseTask implements CommandInterface protected $command = ''; /** - * @var boolena + * @var bool */ protected $built = false; @@ -65,6 +65,8 @@ public function __construct($pathToComposer = null) /** * adds `prefer-dist` option to composer * + * @param bool $preferDist + * * @return $this */ public function preferDist($preferDist = true) @@ -90,6 +92,8 @@ public function preferSource() /** * adds `dev` option to composer * + * @param bool $dev + * * @return $this */ public function dev($dev = true) @@ -115,6 +119,8 @@ public function noDev() /** * adds `ansi` option to composer * + * @param bool $ansi + * * @return $this */ public function ansi($ansi = true) @@ -137,6 +143,11 @@ public function noAnsi() return $this; } + /** + * @param bool $interaction + * + * @return $this + */ public function interaction($interaction = true) { if (!$interaction) { @@ -159,6 +170,8 @@ public function noInteraction() /** * adds `optimize-autoloader` option to composer * + * @param bool $optimize + * * @return $this */ public function optimizeAutoloader($optimize = true) @@ -172,6 +185,8 @@ public function optimizeAutoloader($optimize = true) /** * adds `ignore-platform-reqs` option to composer * + * @param bool $ignore + * * @return $this */ public function ignorePlatformRequirements($ignore = true) @@ -183,6 +198,8 @@ public function ignorePlatformRequirements($ignore = true) /** * disable plugins * + * @param bool $disable + * * @return $this */ public function disablePlugins($disable = true) @@ -196,6 +213,8 @@ public function disablePlugins($disable = true) /** * skip scripts * + * @param bool $disable + * * @return $this */ public function noScripts($disable = true) @@ -209,6 +228,8 @@ public function noScripts($disable = true) /** * adds `--working-dir $dir` option to composer * + * @param string $dir + * * @return $this */ public function workingDir($dir) diff --git a/src/Task/Composer/Config.php b/src/Task/Composer/Config.php index b5a6bbff9..9269dcf38 100644 --- a/src/Task/Composer/Config.php +++ b/src/Task/Composer/Config.php @@ -19,7 +19,11 @@ class Config extends Base protected $action = 'config'; /** - * Set a configuration value + * Set a configuration value. + * + * @param string $key + * @param string $value + * * @return $this */ public function set($key, $value) @@ -31,6 +35,9 @@ public function set($key, $value) /** * Operate on the global repository + * + * @param bool $useGlobal + * * @return $this */ public function useGlobal($useGlobal = true) @@ -42,6 +49,10 @@ public function useGlobal($useGlobal = true) } /** + * @param string $id + * @param string $uri + * @param string $repoType + * * @return $this */ public function repository($id, $uri, $repoType = 'vcs') @@ -53,6 +64,8 @@ public function repository($id, $uri, $repoType = 'vcs') } /** + * @param string $id + * * @return $this */ public function removeRepository($id) @@ -62,6 +75,8 @@ public function removeRepository($id) } /** + * @param string $id + * * @return $this */ public function disableRepository($id) @@ -72,6 +87,8 @@ public function disableRepository($id) } /** + * @param string $id + * * @return $this */ public function enableRepository($id) diff --git a/src/Task/Composer/CreateProject.php b/src/Task/Composer/CreateProject.php index 5f979a646..caffa615b 100644 --- a/src/Task/Composer/CreateProject.php +++ b/src/Task/Composer/CreateProject.php @@ -18,11 +18,24 @@ class CreateProject extends Base */ protected $action = 'create-project'; + /** + * @var + */ protected $source; + + /** + * @var string + */ protected $target = ''; + + /** + * @var string + */ protected $version = ''; /** + * @param string $source + * * @return $this */ public function source($source) @@ -32,6 +45,8 @@ public function source($source) } /** + * @param string $target + * * @return $this */ public function target($target) @@ -41,6 +56,8 @@ public function target($target) } /** + * @param string $version + * * @return $this */ public function version($version) @@ -49,6 +66,11 @@ public function version($version) return $this; } + /** + * @param bool $keep + * + * @return $this + */ public function keepVcs($keep = true) { if ($keep) { @@ -57,6 +79,11 @@ public function keepVcs($keep = true) return $this; } + /** + * @param bool $noInstall + * + * @return $this + */ public function noInstall($noInstall = true) { if ($noInstall) { @@ -66,6 +93,8 @@ public function noInstall($noInstall = true) } /** + * @param string $repository + * * @return $this */ public function repository($repository) @@ -77,6 +106,8 @@ public function repository($repository) } /** + * @param string $stability + * * @return $this */ public function stability($stability) @@ -87,6 +118,9 @@ public function stability($stability) return $this; } + /** + * {@inheritdoc} + */ public function buildCommand() { $this->arg($this->source); diff --git a/src/Task/Composer/DumpAutoload.php b/src/Task/Composer/DumpAutoload.php index 55b1ea00e..0acf01eb6 100644 --- a/src/Task/Composer/DumpAutoload.php +++ b/src/Task/Composer/DumpAutoload.php @@ -40,6 +40,8 @@ class DumpAutoload extends Base protected $optimize; /** + * @param bool $optimize + * * @return $this */ public function optimize($optimize = true) diff --git a/src/Task/Composer/Init.php b/src/Task/Composer/Init.php index c841299dd..8c884bde6 100644 --- a/src/Task/Composer/Init.php +++ b/src/Task/Composer/Init.php @@ -19,6 +19,8 @@ class Init extends Base protected $action = 'init'; /** + * @param string $projectName + * * @return $this */ public function projectName($projectName) @@ -28,6 +30,8 @@ public function projectName($projectName) } /** + * @param string $description + * * @return $this */ public function description($description) @@ -37,6 +41,8 @@ public function description($description) } /** + * @param string $author + * * @return $this */ public function author($author) @@ -46,6 +52,8 @@ public function author($author) } /** + * @param string $type + * * @return $this */ public function projectType($type) @@ -55,6 +63,8 @@ public function projectType($type) } /** + * @param string $homepage + * * @return $this */ public function homepage($homepage) @@ -65,6 +75,10 @@ public function homepage($homepage) /** * 'require' is a keyword, so it cannot be a method name. + * + * @param string $project + * @param null|string $version + * * @return $this */ public function dependency($project, $version = null) @@ -77,6 +91,8 @@ public function dependency($project, $version = null) } /** + * @param string $stability + * * @return $this */ public function stability($stability) @@ -86,6 +102,8 @@ public function stability($stability) } /** + * @param string $license + * * @return $this */ public function license($license) @@ -95,6 +113,8 @@ public function license($license) } /** + * @param string $repository + * * @return $this */ public function repository($repository) diff --git a/src/Task/Composer/Remove.php b/src/Task/Composer/Remove.php index b0316f051..d03c935fb 100644 --- a/src/Task/Composer/Remove.php +++ b/src/Task/Composer/Remove.php @@ -19,6 +19,8 @@ class Remove extends Base protected $action = 'remove'; /** + * @param bool $dev + * * @return $this */ public function dev($dev = true) @@ -30,6 +32,8 @@ public function dev($dev = true) } /** + * @param bool $noProgress + * * @return $this */ public function noProgress($noProgress = true) @@ -41,6 +45,8 @@ public function noProgress($noProgress = true) } /** + * @param bool $noUpdate + * * @return $this */ public function noUpdate($noUpdate = true) @@ -52,6 +58,8 @@ public function noUpdate($noUpdate = true) } /** + * @param bool $updateNoDev + * * @return $this */ public function updateNoDev($updateNoDev = true) @@ -63,6 +71,8 @@ public function updateNoDev($updateNoDev = true) } /** + * @param bool $updateWithDependencies + * * @return $this */ public function noUpdateWithDependencies($updateWithDependencies = true) diff --git a/src/Task/Composer/RequireDependency.php b/src/Task/Composer/RequireDependency.php index 6cdbf6139..7ce8cda30 100644 --- a/src/Task/Composer/RequireDependency.php +++ b/src/Task/Composer/RequireDependency.php @@ -20,6 +20,10 @@ class RequireDependency extends Base /** * 'require' is a keyword, so it cannot be a method name. + * + * @param string $project + * @param null|string $version + * * @return $this */ public function dependency($project, $version = null) diff --git a/src/Task/Composer/Validate.php b/src/Task/Composer/Validate.php index adb158543..b3a4b17a2 100644 --- a/src/Task/Composer/Validate.php +++ b/src/Task/Composer/Validate.php @@ -19,6 +19,8 @@ class Validate extends Base protected $action = 'validate'; /** + * @param bool $noCheckAll + * * @return $this */ public function noCheckAll($noCheckAll = true) @@ -30,6 +32,8 @@ public function noCheckAll($noCheckAll = true) } /** + * @param bool $noCheckLock + * * @return $this */ public function noCheckLock($noCheckLock = true) @@ -41,6 +45,8 @@ public function noCheckLock($noCheckLock = true) } /** + * @param bool $noCheckPublish + * * @return $this */ public function noCheckPublish($noCheckPublish = true) @@ -52,6 +58,8 @@ public function noCheckPublish($noCheckPublish = true) } /** + * @param bool $withDependencies + * * @return $this */ public function withDependencies($withDependencies = true) @@ -63,6 +71,8 @@ public function withDependencies($withDependencies = true) } /** + * @param bool $strict + * * @return $this */ public function strict($strict = true) diff --git a/src/Task/Composer/loadTasks.php b/src/Task/Composer/loadTasks.php index a7149f8a2..7c691cfda 100644 --- a/src/Task/Composer/loadTasks.php +++ b/src/Task/Composer/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param null|string $pathToComposer * - * @return Install + * @return \Robo\Task\Composer\Install|\Robo\Collection\CollectionBuilder */ protected function taskComposerInstall($pathToComposer = null) { @@ -16,7 +16,7 @@ protected function taskComposerInstall($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return Update + * @return \Robo\Task\Composer\Update|\Robo\Collection\CollectionBuilder */ protected function taskComposerUpdate($pathToComposer = null) { @@ -26,7 +26,7 @@ protected function taskComposerUpdate($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return DumpAutoload + * @return \Robo\Task\Composer\DumpAutoload|\Robo\Collection\CollectionBuilder */ protected function taskComposerDumpAutoload($pathToComposer = null) { @@ -36,7 +36,7 @@ protected function taskComposerDumpAutoload($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return Init + * @return \Robo\Task\Composer\Init|\Robo\Collection\CollectionBuilder */ protected function taskComposerInit($pathToComposer = null) { @@ -46,7 +46,7 @@ protected function taskComposerInit($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return Config + * @return \Robo\Task\Composer\Config|\Robo\Collection\CollectionBuilder */ protected function taskComposerConfig($pathToComposer = null) { @@ -56,7 +56,7 @@ protected function taskComposerConfig($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return Validate + * @return \Robo\Task\Composer\Validate|\Robo\Collection\CollectionBuilder */ protected function taskComposerValidate($pathToComposer = null) { @@ -66,7 +66,7 @@ protected function taskComposerValidate($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return Remove + * @return \Robo\Task\Composer\Remove|\Robo\Collection\CollectionBuilder */ protected function taskComposerRemove($pathToComposer = null) { @@ -76,7 +76,7 @@ protected function taskComposerRemove($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return RequireDependency + * @return \Robo\Task\Composer\RequireDependency|\Robo\Collection\CollectionBuilder */ protected function taskComposerRequire($pathToComposer = null) { @@ -86,7 +86,7 @@ protected function taskComposerRequire($pathToComposer = null) /** * @param null|string $pathToComposer * - * @return CreateProject + * @return \Robo\Task\Composer\CreateProject|\Robo\Collection\CollectionBuilder */ protected function taskComposerCreateProject($pathToComposer = null) { diff --git a/src/Task/Development/Changelog.php b/src/Task/Development/Changelog.php index 44af6d820..fb9742250 100644 --- a/src/Task/Development/Changelog.php +++ b/src/Task/Development/Changelog.php @@ -216,7 +216,7 @@ public function run() } /** - * @return \Robo\Result|string + * @return string */ protected function generateBody() { @@ -235,7 +235,7 @@ protected function generateHeader() } /** - * @param $i + * @param string $i * * @return string */ diff --git a/src/Task/Development/GitHub.php b/src/Task/Development/GitHub.php index 9fc9909d4..9fb4f4798 100644 --- a/src/Task/Development/GitHub.php +++ b/src/Task/Development/GitHub.php @@ -86,7 +86,7 @@ public function user($user) } /** - * @param $password + * @param string $password * * @return $this */ @@ -97,7 +97,7 @@ public function password($password) } /** - * @param $accessToken + * @param string $token * * @return $this */ diff --git a/src/Task/Development/OpenBrowser.php b/src/Task/Development/OpenBrowser.php index ea01b326d..0ed28ce62 100644 --- a/src/Task/Development/OpenBrowser.php +++ b/src/Task/Development/OpenBrowser.php @@ -31,7 +31,7 @@ class OpenBrowser extends BaseTask protected $urls = []; /** - * @param string|array $url + * @param string|string[] $url */ public function __construct($url) { diff --git a/src/Task/Development/SemVer.php b/src/Task/Development/SemVer.php index 639c15323..2757324c0 100644 --- a/src/Task/Development/SemVer.php +++ b/src/Task/Development/SemVer.php @@ -88,6 +88,11 @@ public function __toString() return str_replace($search, $replace, $this->format); } + /** + * @param string $version + * + * @return $this + */ public function version($version) { $this->parseString($version); @@ -228,6 +233,11 @@ protected function dump() return true; } + /** + * @param string $semverString + * + * @throws \Robo\Exception\TaskException + */ protected function parseString($semverString) { if (!preg_match_all(self::REGEX_STRING, $semverString, $matches)) { @@ -241,6 +251,8 @@ protected function parseString($semverString) } /** + * @param string $semverFileContents + * * @throws \Robo\Exception\TaskException */ protected function parseFile($semverFileContents) diff --git a/src/Task/Development/loadTasks.php b/src/Task/Development/loadTasks.php index e3dc49a39..9371f82b1 100644 --- a/src/Task/Development/loadTasks.php +++ b/src/Task/Development/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param string $filename * - * @return Changelog + * @return \Robo\Task\Development\Changelog|\Robo\Collection\CollectionBuilder */ protected function taskChangelog($filename = 'CHANGELOG.md') { @@ -16,7 +16,7 @@ protected function taskChangelog($filename = 'CHANGELOG.md') /** * @param string $filename * - * @return GenerateMarkdownDoc + * @return \Robo\Task\Development\GenerateMarkdownDoc|\Robo\Collection\CollectionBuilder */ protected function taskGenDoc($filename) { @@ -27,7 +27,7 @@ protected function taskGenDoc($filename) * @param string $className * @param string $wrapperClassName * - * @return \Robo\Task\Development\GenerateTask + * @return \Robo\Task\Development\GenerateTask|\Robo\Collection\CollectionBuilder */ protected function taskGenTask($className, $wrapperClassName = '') { @@ -37,7 +37,7 @@ protected function taskGenTask($className, $wrapperClassName = '') /** * @param string $pathToSemVer * - * @return SemVer + * @return \Robo\Task\Development\SemVer|\Robo\Collection\CollectionBuilder */ protected function taskSemVer($pathToSemVer = '.semver') { @@ -47,7 +47,7 @@ protected function taskSemVer($pathToSemVer = '.semver') /** * @param int $port * - * @return PhpServer + * @return \Robo\Task\Development\PhpServer|\Robo\Collection\CollectionBuilder */ protected function taskServer($port = 8000) { @@ -57,7 +57,7 @@ protected function taskServer($port = 8000) /** * @param string $filename * - * @return PackPhar + * @return \Robo\Task\Development\PackPhar|\Robo\Collection\CollectionBuilder */ protected function taskPackPhar($filename) { @@ -67,7 +67,7 @@ protected function taskPackPhar($filename) /** * @param string $tag * - * @return GitHubRelease + * @return \Robo\Task\Development\GitHubRelease|\Robo\Collection\CollectionBuilder */ protected function taskGitHubRelease($tag) { @@ -77,7 +77,7 @@ protected function taskGitHubRelease($tag) /** * @param string|array $url * - * @return OpenBrowser + * @return \Robo\Task\Development\OpenBrowser|\Robo\Collection\CollectionBuilder */ protected function taskOpenBrowser($url) { diff --git a/src/Task/Docker/Commit.php b/src/Task/Docker/Commit.php index 302f1920e..792bc394f 100644 --- a/src/Task/Docker/Commit.php +++ b/src/Task/Docker/Commit.php @@ -54,7 +54,7 @@ public function getCommand() } /** - * @param $name + * @param string $name * * @return $this */ diff --git a/src/Task/Docker/Exec.php b/src/Task/Docker/Exec.php index fa67c8da0..22ef3c29b 100644 --- a/src/Task/Docker/Exec.php +++ b/src/Task/Docker/Exec.php @@ -64,7 +64,7 @@ public function detached() } /** - * {@inheritdoc)} + * {@inheritdoc} */ public function interactive($interactive = true) { diff --git a/src/Task/Docker/Run.php b/src/Task/Docker/Run.php index a02ea76f6..dffcf5bbd 100644 --- a/src/Task/Docker/Run.php +++ b/src/Task/Docker/Run.php @@ -115,7 +115,7 @@ public function detached() } /** - * {@inheritdoc)} + * {@inheritdoc} */ public function interactive($interactive = true) { @@ -155,7 +155,8 @@ public function volume($from, $to = null) * inherited from ExecTrait. * * @param array $env - * @return type + * + * @return $this */ public function envVars(array $env) { diff --git a/src/Task/Docker/loadTasks.php b/src/Task/Docker/loadTasks.php index e58f5ef0c..5a0ab9942 100644 --- a/src/Task/Docker/loadTasks.php +++ b/src/Task/Docker/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param string $image * - * @return \Robo\Task\Docker\Run + * @return \Robo\Task\Docker\Run|\Robo\Collection\CollectionBuilder */ protected function taskDockerRun($image) { @@ -16,7 +16,7 @@ protected function taskDockerRun($image) /** * @param string $image * - * @return \Robo\Task\Docker\Pull + * @return \Robo\Task\Docker\Pull|\Robo\Collection\CollectionBuilder */ protected function taskDockerPull($image) { @@ -26,7 +26,7 @@ protected function taskDockerPull($image) /** * @param string $path * - * @return \Robo\Task\Docker\Build + * @return \Robo\Task\Docker\Build|\Robo\Collection\CollectionBuilder */ protected function taskDockerBuild($path = '.') { @@ -36,7 +36,7 @@ protected function taskDockerBuild($path = '.') /** * @param string|\Robo\Task\Docker\Result $cidOrResult * - * @return \Robo\Task\Docker\Stop + * @return \Robo\Task\Docker\Stop|\Robo\Collection\CollectionBuilder */ protected function taskDockerStop($cidOrResult) { @@ -46,7 +46,7 @@ protected function taskDockerStop($cidOrResult) /** * @param string|\Robo\Task\Docker\Result $cidOrResult * - * @return \Robo\Task\Docker\Commit + * @return \Robo\Task\Docker\Commit|\Robo\Collection\CollectionBuilder */ protected function taskDockerCommit($cidOrResult) { @@ -56,7 +56,7 @@ protected function taskDockerCommit($cidOrResult) /** * @param string|\Robo\Task\Docker\Result $cidOrResult * - * @return \Robo\Task\Docker\Start + * @return \Robo\Task\Docker\Start|\Robo\Collection\CollectionBuilder */ protected function taskDockerStart($cidOrResult) { @@ -66,7 +66,7 @@ protected function taskDockerStart($cidOrResult) /** * @param string|\Robo\Task\Docker\Result $cidOrResult * - * @return \Robo\Task\Docker\Remove + * @return \Robo\Task\Docker\Remove|\Robo\Collection\CollectionBuilder */ protected function taskDockerRemove($cidOrResult) { @@ -76,7 +76,7 @@ protected function taskDockerRemove($cidOrResult) /** * @param string|\Robo\Task\Docker\Result $cidOrResult * - * @return \Robo\Task\Docker\Exec + * @return \Robo\Task\Docker\Exec|\Robo\Collection\CollectionBuilder */ protected function taskDockerExec($cidOrResult) { diff --git a/src/Task/File/Concat.php b/src/Task/File/Concat.php index 12b1eca00..46c6994a1 100644 --- a/src/Task/File/Concat.php +++ b/src/Task/File/Concat.php @@ -26,7 +26,7 @@ class Concat extends BaseTask use ResourceExistenceChecker; /** - * @var array|Iterator + * @var array|\Iterator */ protected $files; @@ -38,7 +38,7 @@ class Concat extends BaseTask /** * Constructor. * - * @param array|Iterator $files + * @param array|\Iterator $files */ public function __construct($files) { diff --git a/src/Task/File/Write.php b/src/Task/File/Write.php index dc2199f92..1cb408508 100644 --- a/src/Task/File/Write.php +++ b/src/Task/File/Write.php @@ -75,7 +75,8 @@ public function append($append = true) * * @param string $line * - * @return $this The current instance + * @return $this + * The current instance. */ public function line($line) { @@ -88,7 +89,8 @@ public function line($line) * * @param array $lines * - * @return $this The current instance + * @return $this + * The current instance. */ public function lines(array $lines) { @@ -101,7 +103,8 @@ public function lines(array $lines) * * @param string $text * - * @return $this The current instance + * @return $this + * The current instance. */ public function text($text) { @@ -120,7 +123,8 @@ public function text($text) * * @param string $filename * - * @return $this The current instance + * @return $this + * The current instance. */ public function textFromFile($filename) { @@ -134,7 +138,8 @@ public function textFromFile($filename) * @param string $name * @param string $val * - * @return $this The current instance + * @return $this + * The current instance. */ public function place($name, $val) { @@ -149,7 +154,8 @@ public function place($name, $val) * @param string $string * @param string $replacement * - * @return $this The current instance + * @return $this + * The current instance. */ public function replace($string, $replacement) { @@ -163,7 +169,8 @@ public function replace($string, $replacement) * @param string $pattern * @param string $replacement * - * @return $this The current instance + * @return $this + * The current instance. */ public function regexReplace($pattern, $replacement) { @@ -202,8 +209,8 @@ public function appendUnlessMatches($pattern, $text) } /** - * @param $contents string - * @param $filename string + * @param string $contents + * @param string $filename * * @return string */ diff --git a/src/Task/File/loadTasks.php b/src/Task/File/loadTasks.php index c5f39c950..2a7457396 100644 --- a/src/Task/File/loadTasks.php +++ b/src/Task/File/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param array|\Iterator $files * - * @return \Robo\Task\File\Concat + * @return \Robo\Task\File\Concat|\Robo\Collection\CollectionBuilder */ protected function taskConcat($files) { @@ -16,7 +16,7 @@ protected function taskConcat($files) /** * @param string $file * - * @return \Robo\Task\File\Replace + * @return \Robo\Task\File\Replace|\Robo\Collection\CollectionBuilder */ protected function taskReplaceInFile($file) { @@ -26,7 +26,7 @@ protected function taskReplaceInFile($file) /** * @param string $file * - * @return \Robo\Task\File\Write + * @return \Robo\Task\File\Write|\Robo\Collection\CollectionBuilder */ protected function taskWriteToFile($file) { @@ -39,7 +39,7 @@ protected function taskWriteToFile($file) * @param string $baseDir * @param bool $includeRandomPart * - * @return \Robo\Task\File\TmpFile + * @return \Robo\Task\File\TmpFile|\Robo\Collection\CollectionBuilder */ protected function taskTmpFile($filename = 'tmp', $extension = '', $baseDir = '', $includeRandomPart = true) { diff --git a/src/Task/Filesystem/CopyDir.php b/src/Task/Filesystem/CopyDir.php index 084822229..ea4bed526 100644 --- a/src/Task/Filesystem/CopyDir.php +++ b/src/Task/Filesystem/CopyDir.php @@ -23,6 +23,8 @@ class CopyDir extends BaseDir /** * Explicitly declare our consturctor, so that * our copyDir() method does not look like a php4 constructor. + * + * @param string|string[] $dirs */ public function __construct($dirs) { @@ -140,6 +142,12 @@ protected function copyDir($src, $dst, $parent = '') /** * Check to see if the current item is excluded. + * + * @param string $file + * @param string $src + * @param string $parent + * + * @return bool */ protected function excluded($file, $src, $parent) { @@ -154,6 +162,10 @@ protected function excluded($file, $src, $parent) /** * Avoid problems comparing paths on Windows that may have a * combination of DIRECTORY_SEPARATOR and /. + * + * @param string$item + * + * @return string */ protected function simplifyForCompare($item) { diff --git a/src/Task/Filesystem/loadTasks.php b/src/Task/Filesystem/loadTasks.php index 8fecaafff..5bba7960a 100644 --- a/src/Task/Filesystem/loadTasks.php +++ b/src/Task/Filesystem/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param string|string[] $dirs * - * @return \Robo\Task\Filesystem\CleanDir + * @return \Robo\Task\Filesystem\CleanDir|\Robo\Collection\CollectionBuilder */ protected function taskCleanDir($dirs) { @@ -16,7 +16,7 @@ protected function taskCleanDir($dirs) /** * @param string|string[] $dirs * - * @return \Robo\Task\Filesystem\DeleteDir + * @return \Robo\Task\Filesystem\DeleteDir|\Robo\Collection\CollectionBuilder */ protected function taskDeleteDir($dirs) { @@ -28,7 +28,7 @@ protected function taskDeleteDir($dirs) * @param string $base * @param bool $includeRandomPart * - * @return \Robo\Task\Filesystem\WorkDir + * @return \Robo\Task\Filesystem\WorkDir|\Robo\Collection\CollectionBuilder */ protected function taskTmpDir($prefix = 'tmp', $base = '', $includeRandomPart = true) { @@ -38,7 +38,7 @@ protected function taskTmpDir($prefix = 'tmp', $base = '', $includeRandomPart = /** * @param string $finalDestination * - * @return \Robo\Task\Filesystem\TmpDir + * @return \Robo\Task\Filesystem\TmpDir|\Robo\Collection\CollectionBuilder */ protected function taskWorkDir($finalDestination) { @@ -48,7 +48,7 @@ protected function taskWorkDir($finalDestination) /** * @param string|string[] $dirs * - * @return \Robo\Task\Filesystem\CopyDir + * @return \Robo\Task\Filesystem\CopyDir|\Robo\Collection\CollectionBuilder */ protected function taskCopyDir($dirs) { @@ -58,7 +58,7 @@ protected function taskCopyDir($dirs) /** * @param string|string[] $dirs * - * @return \Robo\Task\Filesystem\MirrorDir + * @return \Robo\Task\Filesystem\MirrorDir|\Robo\Collection\CollectionBuilder */ protected function taskMirrorDir($dirs) { @@ -68,7 +68,7 @@ protected function taskMirrorDir($dirs) /** * @param string|string[] $dirs * - * @return \Robo\Task\Filesystem\FlattenDir + * @return \Robo\Task\Filesystem\FlattenDir|\Robo\Collection\CollectionBuilder */ protected function taskFlattenDir($dirs) { @@ -76,7 +76,7 @@ protected function taskFlattenDir($dirs) } /** - * @return \Robo\Task\Filesystem\FilesystemStack + * @return \Robo\Task\Filesystem\FilesystemStack|\Robo\Collection\CollectionBuilder */ protected function taskFilesystemStack() { diff --git a/src/Task/Gulp/loadTasks.php b/src/Task/Gulp/loadTasks.php index 6fdc6ca70..b43ef603d 100644 --- a/src/Task/Gulp/loadTasks.php +++ b/src/Task/Gulp/loadTasks.php @@ -7,7 +7,7 @@ trait loadTasks * @param string $task * @param null|string $pathToGulp * - * @return \Robo\Task\Gulp\Run + * @return \Robo\Task\Gulp\Run|\Robo\Collection\CollectionBuilder */ protected function taskGulpRun($task = 'default', $pathToGulp = null) { diff --git a/src/Task/Npm/Install.php b/src/Task/Npm/Install.php index 65cbe6189..f07172343 100644 --- a/src/Task/Npm/Install.php +++ b/src/Task/Npm/Install.php @@ -21,7 +21,7 @@ class Install extends Base implements CommandInterface { /** - * @var string + * {@inheritdoc} */ protected $action = 'install'; diff --git a/src/Task/Npm/Update.php b/src/Task/Npm/Update.php index 75421b307..1e6a408e7 100644 --- a/src/Task/Npm/Update.php +++ b/src/Task/Npm/Update.php @@ -19,7 +19,7 @@ class Update extends Base { /** - * @var string + * {@inheritdoc} */ protected $action = 'update'; diff --git a/src/Task/Npm/loadTasks.php b/src/Task/Npm/loadTasks.php index 4d9a26eb3..42d930d71 100644 --- a/src/Task/Npm/loadTasks.php +++ b/src/Task/Npm/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param null|string $pathToNpm * - * @return \Robo\Task\Npm\Install + * @return \Robo\Task\Npm\Install|\Robo\Collection\CollectionBuilder */ protected function taskNpmInstall($pathToNpm = null) { @@ -16,7 +16,7 @@ protected function taskNpmInstall($pathToNpm = null) /** * @param null|string $pathToNpm * - * @return \Robo\Task\Npm\Update + * @return \Robo\Task\Npm\Update|\Robo\Collection\CollectionBuilder */ protected function taskNpmUpdate($pathToNpm = null) { diff --git a/src/Task/Remote/Rsync.php b/src/Task/Remote/Rsync.php index 324a8d9a5..296536e28 100644 --- a/src/Task/Remote/Rsync.php +++ b/src/Task/Remote/Rsync.php @@ -447,6 +447,8 @@ public function getCommand() } /** + * @param string $from + * * @return string */ protected function getFromPathSpec($from) diff --git a/src/Task/Remote/loadTasks.php b/src/Task/Remote/loadTasks.php index 092d2a554..99becaeb2 100644 --- a/src/Task/Remote/loadTasks.php +++ b/src/Task/Remote/loadTasks.php @@ -4,7 +4,7 @@ trait loadTasks { /** - * @return \Robo\Task\Remote\Rsync + * @return \Robo\Task\Remote\Rsync|\Robo\Collection\CollectionBuilder */ protected function taskRsync() { @@ -15,7 +15,7 @@ protected function taskRsync() * @param null|string $hostname * @param null|string $user * - * @return \Robo\Task\Remote\Ssh + * @return \Robo\Task\Remote\Ssh|\Robo\Collection\CollectionBuilder */ protected function taskSshExec($hostname = null, $user = null) { diff --git a/src/Task/Simulator.php b/src/Task/Simulator.php index e69d23fa3..8368a5d94 100644 --- a/src/Task/Simulator.php +++ b/src/Task/Simulator.php @@ -43,7 +43,7 @@ public function __construct(TaskInterface $task, $constructorParameters) * @param string $function * @param array $args * - * @return \Robo\Result|\Robo\Task\Simulator + * @return \Robo\Result|$this */ public function __call($function, $args) { @@ -109,7 +109,7 @@ public function getCommand() } /** - * @param string $action + * @param array $action * * @return string */ diff --git a/src/Task/StackBasedTask.php b/src/Task/StackBasedTask.php index 91659f33a..7b46ea299 100644 --- a/src/Task/StackBasedTask.php +++ b/src/Task/StackBasedTask.php @@ -85,7 +85,7 @@ public function stopOnFail($stop = true) * this class. Calling one of the delegate's methods will defer * execution until the run() method is called. * - * @return null + * @return null|object */ protected function getDelegate() { @@ -219,7 +219,7 @@ public function run() * Execute one task method * * @param string $command - * @param string $action + * @param array $action * * @return \Robo\Result */ diff --git a/src/Task/Testing/Atoum.php b/src/Task/Testing/Atoum.php index 56b47d84f..1f527e660 100644 --- a/src/Task/Testing/Atoum.php +++ b/src/Task/Testing/Atoum.php @@ -48,7 +48,7 @@ public function __construct($pathToAtoum = null) /** * Tag or Tags to filter. * - * @param string|array $tags + * @param string|string[] $tags * * @return $this */ @@ -124,7 +124,7 @@ public function debug() /** * Test file or test files to run. * - * @param string|array + * @param string|string[] * * @return $this */ @@ -136,7 +136,8 @@ public function files($files) /** * Test directory or directories to run. * - * @param string|array A single directory or a list of directories. + * @param string|string[] + * A single directory or a list of directories. * * @return $this */ @@ -147,7 +148,7 @@ public function directories($directories) /** * @param string $option - * @param string|array $values + * @param string|string[] $values * * @return $this */ diff --git a/src/Task/Testing/Behat.php b/src/Task/Testing/Behat.php index 7e4f1d41a..7b719bdd2 100644 --- a/src/Task/Testing/Behat.php +++ b/src/Task/Testing/Behat.php @@ -74,7 +74,7 @@ public function noInteraction() } /** - * @param $config_file + * @param string $config_file * * @return $this */ @@ -142,10 +142,7 @@ public function format($formater) } /** - * Returns command that can be executed. - * This method is used to pass generated command from one task to another. - * - * @return string + * {@inheritdoc} */ public function getCommand() { diff --git a/src/Task/Testing/Codecept.php b/src/Task/Testing/Codecept.php index 1f8cce703..7d9e24a3c 100644 --- a/src/Task/Testing/Codecept.php +++ b/src/Task/Testing/Codecept.php @@ -28,7 +28,7 @@ class Codecept extends BaseTask implements CommandInterface, PrintedInterface { use \Robo\Common\ExecOneCommand; - + /** * @var string */ diff --git a/src/Task/Testing/PHPUnit.php b/src/Task/Testing/PHPUnit.php index df67e1c75..d9c65fd0c 100644 --- a/src/Task/Testing/PHPUnit.php +++ b/src/Task/Testing/PHPUnit.php @@ -35,6 +35,13 @@ class PHPUnit extends BaseTask implements CommandInterface, PrintedInterface */ protected $files = ''; + /** + * PHPUnit constructor. + * + * @param null|string $pathToPhpUnit + * + * @throws \Robo\Exception\TaskException + */ public function __construct($pathToPhpUnit = null) { $this->command = $pathToPhpUnit; @@ -150,7 +157,8 @@ public function debug() /** * Directory of test files or single test file to run. * - * @param string $files A single test file or a directory containing test files. + * @param string $files + * A single test file or a directory containing test files. * * @return $this * @@ -171,7 +179,8 @@ public function files($files) /** * Test the provided file. * - * @param string $file path to file to test + * @param string $file + * Path to file to test. * * @return $this */ diff --git a/src/Task/Testing/Phpspec.php b/src/Task/Testing/Phpspec.php index dd6a5ae77..612b18b27 100644 --- a/src/Task/Testing/Phpspec.php +++ b/src/Task/Testing/Phpspec.php @@ -28,15 +28,24 @@ class Phpspec extends BaseTask implements CommandInterface, PrintedInterface protected $command; /** - * @var string[] $formaters available formaters for format option + * @var string[] $formaters + * Available formaters for format option. */ protected $formaters = ['progress', 'html', 'pretty', 'junit', 'dot', 'tap']; /** - * @var array $verbose_levels available verbose levels + * @var array $verbose_levels + * Available verbose levels. */ protected $verbose_levels = ['v', 'vv', 'vvv']; + /** + * Phpspec constructor. + * + * @param null|string $pathToPhpspec + * + * @throws \Robo\Exception\TaskException + */ public function __construct($pathToPhpspec = null) { $this->command = $pathToPhpspec; @@ -67,6 +76,11 @@ public function quiet() return $this; } + /** + * @param string $level + * + * @return $this + */ public function verbose($level = 'v') { if (!in_array($level, $this->verbose_levels)) { @@ -76,24 +90,40 @@ public function verbose($level = 'v') return $this; } + /** + * @return $this + */ public function noAnsi() { $this->option('no-ansi'); return $this; } + /** + * @return $this + */ public function noInteraction() { $this->option('no-interaction'); return $this; } + /** + * @param string $config_file + * + * @return $this + */ public function config($config_file) { $this->option('config', $config_file); return $this; } + /** + * @param string $formater + * + * @return $this + */ public function format($formater) { if (!in_array($formater, $this->formaters)) { @@ -103,11 +133,17 @@ public function format($formater) return $this; } + /** + * {@inheritdoc} + */ public function getCommand() { return $this->command . $this->arguments; } + /** + * {@inheritdoc} + */ public function run() { $this->printTaskInfo('Running phpspec {arguments}', ['arguments' => $this->arguments]); diff --git a/src/Task/Testing/loadTasks.php b/src/Task/Testing/loadTasks.php index 43145b9b6..cd9ca8a00 100644 --- a/src/Task/Testing/loadTasks.php +++ b/src/Task/Testing/loadTasks.php @@ -6,7 +6,7 @@ trait loadTasks /** * @param null|string $pathToCodeception * - * @return \Robo\Task\Testing\Codecept + * @return \Robo\Task\Testing\Codecept|\Robo\Collection\CollectionBuilder */ protected function taskCodecept($pathToCodeception = null) { @@ -16,7 +16,7 @@ protected function taskCodecept($pathToCodeception = null) /** * @param null|string $pathToPhpUnit * - * @return \Robo\Task\Testing\PHPUnit + * @return \Robo\Task\Testing\PHPUnit|\Robo\Collection\CollectionBuilder */ protected function taskPhpUnit($pathToPhpUnit = null) { @@ -24,9 +24,9 @@ protected function taskPhpUnit($pathToPhpUnit = null) } /** - * @param null $pathToPhpspec + * @param null|string $pathToPhpspec * - * @return \Robo\Task\Testing\Phpspec + * @return \Robo\Task\Testing\Phpspec|\Robo\Collection\CollectionBuilder */ protected function taskPhpspec($pathToPhpspec = null) { @@ -34,9 +34,9 @@ protected function taskPhpspec($pathToPhpspec = null) } /** - * @param null $pathToAtoum + * @param null|string $pathToAtoum * - * @return \Robo\Task\Testing\Atoum + * @return \Robo\Task\Testing\Atoum|\Robo\Collection\CollectionBuilder */ protected function taskAtoum($pathToAtoum = null) { @@ -44,9 +44,9 @@ protected function taskAtoum($pathToAtoum = null) } /** - * @param null $pathToBehat + * @param null|string $pathToBehat * - * @return \Robo\Task\Testing\Behat + * @return \Robo\Task\Testing\Behat|\Robo\Collection\CollectionBuilder */ protected function taskBehat($pathToBehat = null) { diff --git a/src/Task/Vcs/GitStack.php b/src/Task/Vcs/GitStack.php index 6cb1783f0..34f00c907 100644 --- a/src/Task/Vcs/GitStack.php +++ b/src/Task/Vcs/GitStack.php @@ -42,6 +42,7 @@ public function __construct($pathToGit = 'git') * * @param string $repo * @param string $to + * @param string $branch * * @return $this */ diff --git a/src/Task/Vcs/SvnStack.php b/src/Task/Vcs/SvnStack.php index ec719b538..9951bd1ed 100644 --- a/src/Task/Vcs/SvnStack.php +++ b/src/Task/Vcs/SvnStack.php @@ -34,7 +34,7 @@ class SvnStack extends CommandStack implements CommandInterface protected $stopOnFail = false; /** - * @var \Robo\Result + * {@inheritdoc} */ protected $result; @@ -60,7 +60,7 @@ public function __construct($username = '', $password = '', $pathToSvn = 'svn') * * @param string $path * - * @return $this; + * @return $this */ public function update($path = '') { diff --git a/src/Task/Vcs/loadTasks.php b/src/Task/Vcs/loadTasks.php index 6dd06228a..206799b74 100644 --- a/src/Task/Vcs/loadTasks.php +++ b/src/Task/Vcs/loadTasks.php @@ -8,7 +8,7 @@ trait loadTasks * @param string $password * @param string $pathToSvn * - * @return \Robo\Task\Vcs\SvnStack + * @return \Robo\Task\Vcs\SvnStack|\Robo\Collection\CollectionBuilder */ protected function taskSvnStack($username = '', $password = '', $pathToSvn = 'svn') { @@ -18,7 +18,7 @@ protected function taskSvnStack($username = '', $password = '', $pathToSvn = 'sv /** * @param string $pathToGit * - * @return \Robo\Task\Vcs\GitStack + * @return \Robo\Task\Vcs\GitStack|\Robo\Collection\CollectionBuilder */ protected function taskGitStack($pathToGit = 'git') { @@ -28,7 +28,7 @@ protected function taskGitStack($pathToGit = 'git') /** * @param string $pathToHg * - * @return \Robo\Task\Vcs\HgStack + * @return \Robo\Task\Vcs\HgStack|\Robo\Collection\CollectionBuilder */ protected function taskHgStack($pathToHg = 'hg') { diff --git a/tests/src/RoboFileFixture.php b/tests/src/RoboFileFixture.php index ef1ab7ec0..9cabaa57e 100644 --- a/tests/src/RoboFileFixture.php +++ b/tests/src/RoboFileFixture.php @@ -23,7 +23,8 @@ class RoboFileFixture extends \Robo\Tasks implements LoggerAwareInterface, Custo /** * Demonstrate Robo variable argument passing. * - * @param $a A list of commandline parameters. + * @param array $a + * A list of commandline parameters. */ public function testArrayArgs(array $a) { From 01a84cc2ffcd7a74d7c02a13c6136f200bd60ba6 Mon Sep 17 00:00:00 2001 From: Jordan Koplowicz Date: Fri, 26 Jul 2019 15:53:29 -0700 Subject: [PATCH 11/11] Clearer explanation of --load-from option. (#872) --- docs/getting-started.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/getting-started.md b/docs/getting-started.md index 4d8912253..f0acfc117 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -127,15 +127,22 @@ The default value for options must be one of: No other values should be used for the default value. For example, `$options = ['a' => 1]` is **incorrect**; instead, use `$options = ['a' => '1']`. Similarly, `$options = ['a' => true]` is unsupported, or at least not useful, as this would indicate that the value of `--a` was always `true`, whether or not it appeared on the command line. -### Load From Other Directories +### Load From Other Robofile -Robo can execute commands from a RoboFile located in different directory. +Robo can execute commands from a different RoboFile, eg. located in different directory or with a different filename. You can specify the path to another RoboFile by including the `--load-from` option: ``` -robo run --load-from /path/to/my/other/project +robo run --load-from /path/to/my/other/robofile ``` +Additional notes: + +- The filename can be anything; it is not limited to `RoboFile.php`. +- The class name inside the file has to be the same name as the file has. +- The class has to be in the root namespace. Eg. `Foo.php => \Foo` +- The internal current directory (cwd) of the PHP process will be switched to the directory where the provided RoboFile came from. + ### Pass-Through Arguments Sometimes you need to pass arguments from your command into a task. A command line after the `--` characters is treated as one argument.