Added the Search API Synonym module to deal specifically with licence and license...
[yaffs-website] / vendor / consolidation / robo / CHANGELOG.md
1 # Changelog
2
3 ### 1.3.0 5/26/2018
4
5 * Add EnvConfig to Robo: set configuration values via environment variables (#737)
6
7 ### 1.2.4 5/25/2018
8
9 * Update 'Robo as a Framework' documentation to recommend https://github.com/g1a/starter
10 * Allow CommandStack to exec other tasks by Scott Falkingham (#726)
11 * Fix double escape when specifying a remoteShell with rsync by Rob Peck (#715)
12
13 ### 1.2.3 4/5/2018
14
15 * Hide progress indicator prior to 'exec'. (#707)
16 * Dependencies.io config for version 2 preview by Dave Gaeddert (#699)
17 * Fix path to test script in try:para
18 * Correctly parameterize the app name in the self:update command help text.
19 * Refuse to start 'release' script if phar.readonly is set.
20
21 ### 1.2.2 2/27/2018
22
23 * Experimental robo plugin mechanism (backwards compatibility not yet guarenteed)
24 * Allow traits to be documented
25 * Do not export scenarios directory
26 * *Breaking* Typo in `\Robo\Runner:errorCondtion()` fixed as `\Robo\Runner:errorCondition()`.
27
28 ### 1.2.1 12/28/2017
29
30 * Fixes to tests / build only.
31
32 ### 1.2.0 12/12/2017
33
34 * Support Symfony 4 Components (#651)
35 * Test multiple composer dependency permutations with https://github.com/greg-1-anderson/composer-test-scenarios
36
37 ### 1.1.5 10/25/2017
38
39 * Load option default values from $input for all options defined in the Application's input definition (#642)
40 * BUGFIX: Store global options in 'options' namespace rather than at the top level of config.
41
42 ### 1.1.4 10/16/2017
43
44 * Update order of command event hooks so that the option settings are injected prior to configuration being injected, so that dynamic options are available for config injection. (#636)
45 * Add shallow clone method to GithubStack task. by Stefan Lange (#633)
46 * Make Changelog task more flexible. by Matthew Grasmick(#631)
47 * Adding accessToken() to GitHub task. by Matthew Grasmick (#630)
48
49 ### 1.1.3 09/23/2017
50
51 * Add self:update command to update Robo phar distributions to the latest available version on GitHub. by Alexander Menk
52 * Fix Robo\Task\Docker\Base to implement CommandInterface. by Alexei Gorobet (#625)
53 * Add overwrite argument to Robo\Task\Filesystem\loadShortcuts.php::_rename by Alexei Gorobets (#624)
54 * Add failGroup() method for Codeception run command. by Max Gorovenko (#622)
55 * Set up composer-lock-updater on cron. (#618)
56 * Fix robo.yml loader by exporting processor instead of loader. By thomscode (#612)
57
58 ### 1.1.2 07/28/2017
59
60 * Inject option default values in help (#607)
61 * Add noRebuild() method for Codeception run command. By Max Gorovenko (#603)
62
63 ### 1.1.1 07/07/2017
64
65 * Add an option to wait an interval of time between parallel processes. By Gemma Pou #601
66 * Do not print dire messages about Robo bootstrap problems when a valid command (e.g. help, list, init, --version) runs. #502
67
68 ### 1.1.0 06/29/2017
69
70 * Configuration for multiple commands or multiple tasks may now be shared by attaching the configuration values to the task namespace or the command group. #597
71 * *Breaking* Task configuration taken from property `task.PARTIAL_NAMESPACE.CLASSNAME.settings` instead of `task.CLASSNAME.settings`. Breaks backwards compatibility only with experimental configuration features introduced in version 1.0.6. Config is now stable, as of this release; there will be no more breaking config changes until Robo 2.0. #596
72
73 ### 1.0.8 06/02/2017
74
75 * Fix regression in 1.0.7: Allow tasks to return results of types other than \Robo\Result. #585
76 * Allow Copydir exclude method to specify subfolders by Alex Skrypnyk #590
77 * Add composer init task, and general rounding out of composer tasks. #586
78 * Enhance SemVer task so that it can be used with files or strings. #589
79
80 #### 1.0.7 05/30/2017
81
82 * Add a state system for collections to allow tasks to pass state to later tasks.
83 * Ensure that task results are returned when in stopOnFail() mode.
84 * Make rawArg() and detectInteractive chainable. By Matthew Grasmick #553 #558
85 * [CopyDir] Use Symfony Filesystem. By malikkotob #555
86 * [Composer] Implement CommandInterface. By Ivan Borzenkov #561
87
88 #### 1.0.6 03/31/2017
89
90 * Add configuration features to inject values into commandline option and task setter methods. Experimental; incompatible changes may be introduced prior to the stable release of configuration in version 1.1.0.
91
92 #### 1.0.5 11/23/2016
93
94 * Incorporate word-wrapping from output-formatters 3.1.5
95 * Incorporate custom event handlers from annotated-command 2.2.0
96
97 #### 1.0.4 11/15/2016
98
99 * Updated to latest changes in `master` branch. Phar and tag issues.
100
101 #### 1.0.0 10/10/2016
102
103 * [Collection] Add tasks to a collection, and implement them as a group with rollback
104    * Tasks may be added to a collection via `$collection->add($task);`
105    * `$collection->run();` runs all tasks in the collection
106    * `$collection->addCode(function () { ... } );` to add arbitrary code to a collection
107    * `$collection->progressMessage(...);` will log a message
108    * `$collection->rollback($task);` and `$collection->rollbackCode($callable);` add a rollback function to clean up after a failed task
109    * `$collection->completion($task);` and `$collection->completionCode($callable);` add a function that is called once the collection completes or rolls back.
110    * `$collection->before();` and `$collection->after();` can be used to add a task or function that runs before or after (respectively) the specified named task. To use this feature, tasks must be given names via an optional `$taskName` parameter when they are added.
111    * Collections may be added to collections, if desired. 
112 * [CollectionBuilder] Create tasks and add them to a collection in a single operation.
113    * `$this->collectionBuilder()->taskExec('pwd')->taskExec('ls')->run()`
114 * Add output formatters
115    * If a Robo command returns a string, or a `Result` object with a `$message`, then it will be printed
116    * Commands may be annotated to describe output formats that may be used
117    * Structured arrays returned from function results may be converted into different formats, such as a table, yml, json, etc.
118    * Tasks must `use TaskIO` for output methods. It is no longer possible to `use IO` from a task. For direct access use `Robo::output()` (not recommended).   
119 * Use league/container to do Dependency Injection
120    * *Breaking* Tasks' loadTasks traits must use `$this->task(TaskClass::class);` instead of `new TaskClass();`
121    * *Breaking* Tasks that use other tasks must use `$this->collectionBuilder()->taskName();` instead of `new TaskClass();` when creating task objects to call. Implement `Robo\Contract\BuilderAwareInterface` and use `Robo\Contract\BuilderAwareTrait` to add the `collectionBuilder()` method to your task class.
122 * *Breaking* The `arg()`, `args()` and `option()` methods in CommandArguments now escape the values passed in to them. There is now a `rawArg()` method if you need to add just one argument that has already been escaped.
123 * *Breaking* taskWrite is now called taskWriteToFile
124 * [Extract] task added
125 * [Pack] task added
126 * [TmpDir], [WorkDir] and [TmpFile] tasks added
127 * Support Robo scripts that allows scripts starting with `#!/usr/bin/env robo` to define multiple robo commands.  Use `#!/usr/bin/env robo run` to define a single robo command implemented by the `run()` method.
128 * Provide ProgresIndicatorAwareInterface and ProgressIndicatorAwareTrait that make it easy to add progress indicators to tasks
129 * Add --simulate mode that causes tasks to print what they would have done, but make no changes
130 * Add `robo generate:task` code-generator to make new stack-based task wrappers around existing classes
131 * Add `robo sniff` by @dustinleblanc. Runs the PHP code sniffer followed by the code beautifier, if needed.
132 * Implement ArrayInterface for Result class, so result data may be accessed like an array 
133 * Defer execution of operations in taskWriteToFile until the run() method
134 * Add Write::textIfMatch() for taskWriteToFile
135 * ResourceExistenceChecker used for error checking in DeleteDir, CopyDir, CleanDir and Concat tasks by @burzum
136 * Provide ResultData base class for Result; ResultData may be used in instances where a specific `$task` instance is not available (e.g. in a Robo command)
137 * ArgvInput now available via $this->getInput() in RoboFile by Thomas Spigel
138 * Add optional message to git tag task by Tim Tegeler
139 * Rename 'FileSystem' to 'Filesystem' wherever it occurs.
140 * Current directory is changed with `chdir` only if specified via the `--load-from` option (RC2)
141
142 #### 0.6.0 10/30/2015
143
144 * Added `--load-from` option to make Robo start RoboFiles from other directories. Use it like `robo --load-from /path/to/where/RobFile/located`.
145 * Robo will not ask to create RoboFile if it does not exist, `init` command should be used.
146 * [ImageMinify] task added by @gabor-udvari
147 * [OpenBrowser] task added by @oscarotero
148 * [FlattenDir] task added by @gabor-udvari
149 * Robo Runner can easily extended for custom runner by passing RoboClass and RoboFile parameters to constructor. By @rdeutz See #232
150
151 #### 0.5.4 08/31/2015
152
153 * [WriteToFile] Fixed by @gabor-udvari: always writing to file regardless whether any changes were made or not. This can bring the taskrunner into an inifinite loop if a replaced file is being watched.
154 * [Scss] task added, requires `leafo/scssphp` library to compile by @gabor-udvari
155 * [PhpSpec] TAP formatter added by @orls
156 * [Less] Added ability to set import dir for less compilers by @MAXakaWIZARD
157 * [Less] fixed passing closure as compiler by @pr0nbaer
158 * [Sass] task added by *2015-08-31*
159
160 #### 0.5.3 07/15/2015
161
162  * [Rsync] Ability to use remote shell with identity file by @Mihailoff
163  * [Less] Task added by @burzum
164  * [PHPUnit] allow to test specific files with `files` parameter by @burzum.
165  * [GitStack] `tag` added by @SebSept
166  * [Concat] Fixing concat, it breaks some files if there is no new line. @burzum *2015-03-03-13*
167  * [Minify] BC fix to support Jsqueeze 1.x and 2.x @burzum *2015-03-12*
168  * [PHPUnit] Replace log-xml with log-junit @vkunz *2015-03-06*
169  * [Minify] Making it possible to pass options to the JS minification @burzum *2015-03-05*
170  * [CopyDir] Create destination recursively @boedah *2015-02-28*
171
172 #### 0.5.2 02/24/2015
173
174 * [Phar] do not compress phar if more than 1000 files included (causes internal PHP error) *2015-02-24*
175 * _copyDir and _mirrorDir shortcuts fixed by @boedah *2015-02-24*
176 * [File\Write] methods replace() and regexReplace() added by @asterixcapri *2015-02-24*
177 * [Codecept] Allow to set custom name of coverage file raw name by @raistlin *2015-02-24*
178 * [Ssh] Added property `remoteDir` by @boedah *2015-02-24*
179 * [PhpServer] fixed passing arguments to server *2015-02-24*
180
181
182 #### 0.5.1 01/27/2015
183
184 * [Exec] fixed execution of background jobs, processes persist till the end of PHP script *2015-01-27*
185 * [Ssh] Fixed SSH task by @Butochnikov *2015-01-27*
186 * [CopyDir] fixed shortcut usage by @boedah *2015-01-27*
187 * Added default value options for Configuration trait by @TamasBarta *2015-01-27*
188
189 #### 0.5.0 01/22/2015
190
191 Refactored core
192
193 * All traits moved to `Robo\Common` namespace
194 * Interfaces moved to `Robo\Contract` namespace
195 * All task extend `Robo\Task\BaseTask` to use common IO.
196 * All classes follow PSR-4 standard
197 * Tasks are loaded into RoboFile with `loadTasks` trait
198 * One-line tasks are available as shortcuts loaded by `loadShortucts` and used like `$this->_exec('ls')`
199 * Robo runner is less coupled. Output can be set by `\Robo\Config::setOutput`, `RoboFile` can be changed to any provided class.
200 * Tasks can be used outside of Robo runner (inside a project)
201 * Timer for long-running tasks added
202 * Tasks can be globally configured (WIP) via `Robo\Config` class.
203 * Updated to Symfony >= 2.5
204 * IO methods added `askHidden`, `askDefault`, `confirm`
205 * TaskIO methods added `printTaskError`, `printTaskSuccess` with different formatting.
206 * [Docker] Tasks added
207 * [Gulp] Task added by @schorsch3000
208
209 #### 0.4.7 12/26/2014
210
211 * [Minify] Task added by @Rarst. Requires additional dependencies installed *2014-12-26*
212 * [Help command is populated from annotation](https://github.com/consolidation-org/Robo/pull/71) by @jonsa *2014-12-26*
213 * Allow empty values as defaults to optional options by @jonsa *2014-12-26*
214 * `PHP_WINDOWS_VERSION_BUILD` constant is used to check for Windows in tasks by @boedah *2014-12-26*
215 * [Copy][EmptyDir] Fixed infinite loop by @boedah *2014-12-26*
216 * [ApiGen] Task added by @drobert *2014-12-26*
217 * [FileSystem] Equalized `copy` and `chmod` argument to defaults by @Rarst (BC break) *2014-12-26*
218 * [FileSystem]  Added missing umask argument to chmod() method of FileSystemStack by @Rarst
219 * [SemVer] Fixed file read and exit code
220 * [Codeception] fixed codeception coverageHtml option by @gunfrank *2014-12-26*
221 * [phpspec] Task added by @SebSept *2014-12-26*
222 * Shortcut options: if option name is like foo|f, assign f as shortcut by @jschnare *2014-12-26*
223 * [Rsync] Shell escape rsync exclude pattern by @boedah. Fixes #77 (BC break) *2014-12-26*
224 * [Npm] Task added by @AAlakkad *2014-12-26*
225
226 #### 0.4.6 10/17/2014
227
228 * [Exec] Output from buffer is not spoiled by special chars *2014-10-17*
229 * [PHPUnit] detect PHPUnit on Windows or when is globally installed with Composer *2014-10-17*
230 * Output: added methods askDefault and confirm by @bkawakami *2014-10-17*
231 * [Svn] Task added by @anvi *2014-08-13*
232 * [Stack] added dir and printed options *2014-08-12*
233 * [ExecTask] now uses Executable trait with printed, dir, arg, option methods added *2014-08-12*
234
235
236 #### 0.4.5 08/05/2014
237
238 * [Watch] bugfix: Watch only tracks last file if given array of files #46 *2014-08-05*
239 * All executable tasks can configure working directory with `dir` option
240 * If no value for an option is provided, assume it's a VALUE_NONE option. #47 by @pfaocle
241 * [Changelog] changed style *2014-06-27*
242 * [GenMarkDown] fixed formatting annotations *2014-06-27*
243
244 #### 0.4.4 06/05/2014
245
246 * Output can be disabled in all executable tasks by ->printed(false)
247 * disabled timeouts by default in ParallelExec
248 * better descriptions for Result output
249 * changed ParallelTask to display failed process in list
250 * Changed Output to be stored globally in Robo\Runner class
251 * Added **SshTask** by @boedah
252 * Added **RsyncTask** by @boedah
253 * false option added to proceess* callbacks in GenMarkDownTask to skip processing
254
255
256 #### 0.4.3 05/21/2014
257
258 *  added `SemVer` task by **@jadb**
259 *  `yell` output method added
260 *  task `FileSystemStack` added
261 * `MirrorDirTask` added by **@devster**
262 * switched to Symfony Filesystem component
263 * options can be used to commands
264 * array arguments can be used in commands
265
266 #### 0.4.2 05/09/2014
267
268 * ask can now hide answers
269 * Trait Executable added to provide standard way for passing arguments and options
270 * added ComposerDumpAutoload task by **@pmcjury**
271 * added FileSystem task by **@jadb**
272 * added CommonStack metatsk to have similar interface for all stacked tasks by **@jadb**
273 * arguments and options can be passed into variable and used in exec task
274 * passing options into commands
275
276
277 #### 0.4.1 05/05/2014
278
279 * [BC] `taskGit` task renamed to `taskGitStack` for compatibility
280 * unit and functional tests added
281 * all command tasks now use Symfony\Process to execute them
282 * enabled Bower and Concat tasks
283 * added `printed` param to Exec task
284 * codeception `suite` method now returns `$this`
285 * timeout options added to Exec task
286
287
288 #### 0.4.0 04/27/2014
289
290 * Codeception task added
291 * PHPUnit task improved
292 * Bower task added by @jadb
293 * ParallelExec task added
294 * Symfony Process component used for execution
295 * Task descriptions taken from first line of annotations
296 * `CommandInterface` added to use tasks as parameters
297
298 #### 0.3.3 02/25/2014
299
300 * PHPUnit basic task
301 * fixed doc generation
302
303 #### 0.3.5 02/21/2014
304
305 * changed generated init template
306
307
308 #### 0.3.4 02/21/2014
309
310 * [PackPhar] ->executable command will remove hashbang when generated stub file
311 * [Git][Exec] stopOnFail option for Git and Exec stack
312 * [ExecStack] shortcut for executing bash commands in stack
313
314 #### 0.3.2 02/20/2014
315
316 * release process now includes phar
317 * phar executable method added
318 * git checkout added
319 * phar pack created
320
321
322 #### 0.3.0 02/11/2014
323
324 * Dynamic configuration via magic methods
325 * added WriteToFile task
326 * Result class for managing exit codes and error messages
327
328 #### 0.2.0 01/29/2014
329
330 * Merged Tasks and Traits to same file
331 * Added Watcher task
332 * Added GitHubRelease task
333 * Added Changelog task
334 * Added ReplaceInFile task