Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.119
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
php /
Composer /
Repository /
Delete
Unzip
Name
Size
Permission
Date
Action
Pear
[ DIR ]
drwxr-xr-x
2022-03-20 10:35
Vcs
[ DIR ]
drwxr-xr-x
2022-03-20 10:35
ArrayRepository.php
5.58
KB
-rw-r--r--
2016-11-03 17:43
ArtifactRepository.php
4.87
KB
-rw-r--r--
2016-11-03 17:43
BaseRepository.php
7.61
KB
-rw-r--r--
2016-11-03 17:43
ComposerRepository.php
28.19
KB
-rw-r--r--
2016-11-03 17:43
CompositeRepository.php
3.83
KB
-rw-r--r--
2016-11-03 17:43
ConfigurableRepositoryInterface.php
478
B
-rw-r--r--
2016-11-03 17:43
FilesystemRepository.php
2.12
KB
-rw-r--r--
2016-11-03 17:43
InstalledArrayRepository.php
584
B
-rw-r--r--
2016-11-03 17:43
InstalledFilesystemRepository.php
504
B
-rw-r--r--
2016-11-03 17:43
InstalledRepositoryInterface.php
579
B
-rw-r--r--
2016-11-03 17:43
InvalidRepositoryException.php
479
B
-rw-r--r--
2016-11-03 17:43
PackageRepository.php
1.59
KB
-rw-r--r--
2016-11-03 17:43
PathRepository.php
4.6
KB
-rw-r--r--
2016-11-03 17:43
PearRepository.php
8.54
KB
-rw-r--r--
2016-11-03 17:43
PlatformRepository.php
8.94
KB
-rw-r--r--
2016-11-03 17:43
RepositoryFactory.php
6.47
KB
-rw-r--r--
2016-11-03 17:43
RepositoryInterface.php
2.18
KB
-rw-r--r--
2016-11-03 17:43
RepositoryManager.php
5.42
KB
-rw-r--r--
2016-11-03 17:43
RepositorySecurityException.php
482
B
-rw-r--r--
2016-11-03 17:43
VcsRepository.php
11.24
KB
-rw-r--r--
2016-11-03 17:43
WritableArrayRepository.php
1.48
KB
-rw-r--r--
2016-11-03 17:43
WritableRepositoryInterface.php
1.22
KB
-rw-r--r--
2016-11-03 17:43
Save
Rename
<?php /* * This file is part of Composer. * * (c) Nils Adermann <naderman@naderman.de> * Jordi Boggiano <j.boggiano@seld.be> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Composer\Repository; use Composer\Config; use Composer\IO\IOInterface; use Composer\Json\JsonFile; use Composer\Package\Loader\ArrayLoader; use Composer\Package\Version\VersionGuesser; use Composer\Package\Version\VersionParser; use Composer\Util\Platform; use Composer\Util\ProcessExecutor; /** * This repository allows installing local packages that are not necessarily under their own VCS. * * The local packages will be symlinked when possible, else they will be copied. * * @code * "require": { * "<vendor>/<local-package>": "*" * }, * "repositories": [ * { * "type": "path", * "url": "../../relative/path/to/package/" * }, * { * "type": "path", * "url": "/absolute/path/to/package/" * }, * { * "type": "path", * "url": "/absolute/path/to/several/packages/*" * }, * { * "type": "path", * "url": "../../relative/path/to/package/", * "options": { * "symlink": false * } * }, * ] * @endcode * * @author Samuel Roze <samuel.roze@gmail.com> * @author Johann Reinke <johann.reinke@gmail.com> */ class PathRepository extends ArrayRepository implements ConfigurableRepositoryInterface { /** * @var ArrayLoader */ private $loader; /** * @var VersionGuesser */ private $versionGuesser; /** * @var string */ private $url; /** * @var array */ private $repoConfig; /** * @var ProcessExecutor */ private $process; /** * @var array */ private $options; /** * Initializes path repository. * * @param array $repoConfig * @param IOInterface $io * @param Config $config */ public function __construct(array $repoConfig, IOInterface $io, Config $config) { if (!isset($repoConfig['url'])) { throw new \RuntimeException('You must specify the `url` configuration for the path repository'); } $this->loader = new ArrayLoader(null, true); $this->url = Platform::expandPath($repoConfig['url']); $this->process = new ProcessExecutor($io); $this->versionGuesser = new VersionGuesser($config, $this->process, new VersionParser()); $this->repoConfig = $repoConfig; $this->options = isset($repoConfig['options']) ? $repoConfig['options'] : array(); parent::__construct(); } public function getRepoConfig() { return $this->repoConfig; } /** * Initializes path repository. * * This method will basically read the folder and add the found package. */ protected function initialize() { parent::initialize(); foreach ($this->getUrlMatches() as $url) { $path = realpath($url) . DIRECTORY_SEPARATOR; $composerFilePath = $path.'composer.json'; if (!file_exists($composerFilePath)) { continue; } $json = file_get_contents($composerFilePath); $package = JsonFile::parseJson($json, $composerFilePath); $package['dist'] = array( 'type' => 'path', 'url' => $url, 'reference' => sha1($json . serialize($this->options)), ); $package['transport-options'] = $this->options; if (!isset($package['version'])) { $versionData = $this->versionGuesser->guessVersion($package, $path); $package['version'] = $versionData['version'] ?: 'dev-master'; } $output = ''; if (is_dir($path . DIRECTORY_SEPARATOR . '.git') && 0 === $this->process->execute('git log -n1 --pretty=%H', $output, $path)) { $package['dist']['reference'] = trim($output); } $package = $this->loader->load($package); $this->addPackage($package); } } /** * Get a list of all (possibly relative) path names matching given url (supports globbing). * * @return string[] */ private function getUrlMatches() { // Ensure environment-specific path separators are normalized to URL separators return array_map(function ($val) { return rtrim(str_replace(DIRECTORY_SEPARATOR, '/', $val), '/'); }, glob($this->url, GLOB_MARK | GLOB_ONLYDIR)); } }