mirror of https://github.com/sbt/sbt.git
The recent changes to make the multi parser strict broke any multi command, or alias, where the multi command contained a command or task that was not yet defined, but was possibly added by reload. This was reported as #4869. I had had to work around this issue in ScriptedTests by running `reload` and `setUpScripted` separately instead of as a multi command. This workaround doesn't work for aliasing boot, which has been a recommended approach by Mark Harrah since 2011. To fix this, I relax the strict parser. We don't require that the parser be valid to create a multi command string. In the multiApplied state transformation, however, we validate all of the commands up to 'reload'. Since there is no way to validate any commands to the right of 'reload, we optimistically allow those commands to run. So long as there is no 'reload' in the multi commands, all of the commands will be validated. |
||
|---|---|---|
| .. | ||
| src/main/scala/sbt/scriptedtest | ||
| NOTICE | ||