/home/techb158/ileadtechnology.com/vendor/composer/composer/src/Composer/Util
NameSizeModeActions
AuthHelper.php16950644editdlrm
Bitbucket.php85870644editdlrm
ComposerMirror.php17870644editdlrm
ConfigValidator.php86170644editdlrm
ErrorHandler.php28190644editdlrm
Filesystem.php223240644editdlrm
Git.php184220644editdlrm
GitHub.php60600644editdlrm
GitLab.php64010644editdlrm
Hg.php28820644editdlrm
IniHelper.php16320644editdlrm
NoProxyPattern.php106830644editdlrm
PackageSorter.php24600644editdlrm
Perforce.php175090644editdlrm
Platform.php26000644editdlrm
ProcessExecutor.php63580644editdlrm
RemoteFilesystem.php477310644editdlrm
Silencer.php21660644editdlrm
SpdxLicense.php5700644editdlrm
StreamContextFactory.php72950644editdlrm
Svn.php100440644editdlrm
TlsHelper.php66240644editdlrm
Url.php29040644editdlrm
Zip.php29580644editdlrm
Edit: /home/techb158/ileadtechnology.com/vendor/composer/composer/src/Composer/Util/Hg.php (2882B)
* Jordi Boggiano * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Composer\Util; use Composer\Config; use Composer\IO\IOInterface; /** * @author Jonas Renaudot */ class Hg { /** * @var \Composer\IO\IOInterface */ private $io; /** * @var \Composer\Config */ private $config; /** * @var \Composer\Util\ProcessExecutor */ private $process; public function __construct(IOInterface $io, Config $config, ProcessExecutor $process) { $this->io = $io; $this->config = $config; $this->process = $process; } public function runCommand($commandCallable, $url, $cwd) { $this->config->prohibitUrlByConfig($url, $this->io); // Try as is $command = call_user_func($commandCallable, $url); if (0 === $this->process->execute($command, $ignoredOutput, $cwd)) { return; } // Try with the authentication information available if (preg_match('{^(https?)://((.+)(?:\:(.+))?@)?([^/]+)(/.*)?}mi', $url, $match) && $this->io->hasAuthentication($match[5])) { $auth = $this->io->getAuthentication($match[5]); $authenticatedUrl = $match[1] . '://' . rawurlencode($auth['username']) . ':' . rawurlencode($auth['password']) . '@' . $match[5] . (!empty($match[6]) ? $match[6] : null); $command = call_user_func($commandCallable, $authenticatedUrl); if (0 === $this->process->execute($command, $ignoredOutput, $cwd)) { return; } $error = $this->process->getErrorOutput(); } else { $error = 'The given URL (' . $url . ') does not match the required format (http(s)://(username:password@)example.com/path-to-repository)'; } $this->throwException('Failed to clone ' . $url . ', ' . "\n\n" . $error, $url); } public static function sanitizeUrl($message) { return preg_replace_callback('{://(?P[^@]+?):(?P.+?)@}', function ($m) { if (preg_match('{^[a-f0-9]{12,}$}', $m[1])) { return '://***:***@'; } return '://' . $m[1] . ':***@'; }, $message); } private function throwException($message, $url) { if (0 !== $this->process->execute('hg --version', $ignoredOutput)) { throw new \RuntimeException(self::sanitizeUrl('Failed to clone ' . $url . ', hg was not found, check that it is installed and in your PATH env.' . "\n\n" . $this->process->getErrorOutput())); } throw new \RuntimeException(self::sanitizeUrl($message)); } }