|
|
|
@ -33,6 +33,7 @@ use Composer\Util\ErrorHandler;
|
|
|
|
|
use Composer\Util\HttpDownloader;
|
|
|
|
|
use Composer\EventDispatcher\ScriptExecutionException;
|
|
|
|
|
use Composer\Exception\NoSslException;
|
|
|
|
|
use Symfony\Component\Process\Exception\ProcessTimedOutException;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* The console application that handles the commands
|
|
|
|
@ -385,6 +386,11 @@ class Application extends BaseApplication
|
|
|
|
|
$io->writeError('<error>Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details</error>', true, IOInterface::QUIET);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($exception instanceof ProcessTimedOutException) {
|
|
|
|
|
$io->writeError('<error>The following exception is caused by a process timeout</error>', true, IOInterface::QUIET);
|
|
|
|
|
$io->writeError('<error>Check https://getcomposer.org/doc/06-config.md#process-timeout for details</error>', true, IOInterface::QUIET);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($hints = HttpDownloader::getExceptionHints($exception)) {
|
|
|
|
|
foreach ($hints as $hint) {
|
|
|
|
|
$io->writeError($hint, true, IOInterface::QUIET);
|
|
|
|
|