mirror of
https://github.com/getgrav/grav-plugin-admin.git
synced 2026-01-09 00:53:06 +01:00
Composer update
This commit is contained in:
86
composer.lock
generated
86
composer.lock
generated
@@ -8,29 +8,31 @@
|
||||
"packages": [
|
||||
{
|
||||
"name": "laminas/laminas-xml",
|
||||
"version": "1.3.1",
|
||||
"version": "1.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-xml.git",
|
||||
"reference": "2eada592359aec9d9e55339270b621295cff3a4f"
|
||||
"reference": "dcadeefdb6d7ed6b39d772b47e3845003d6ea60f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/2eada592359aec9d9e55339270b621295cff3a4f",
|
||||
"reference": "2eada592359aec9d9e55339270b621295cff3a4f",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/dcadeefdb6d7ed6b39d772b47e3845003d6ea60f",
|
||||
"reference": "dcadeefdb6d7ed6b39d772b47e3845003d6ea60f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"laminas/laminas-zendframework-bridge": "^1.0",
|
||||
"php": "^7.3 || ~8.0.0"
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*",
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"replace": {
|
||||
"zendframework/zendxml": "^1.2.0"
|
||||
"conflict": {
|
||||
"zendframework/zendxml": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-iconv": "*",
|
||||
"laminas/laminas-coding-standard": "~1.0.0",
|
||||
"phpunit/phpunit": "^9.4"
|
||||
"phpunit/phpunit": "^9.5.8",
|
||||
"squizlabs/php_codesniffer": "3.6.1 as 2.9999999.9999999"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@@ -62,69 +64,7 @@
|
||||
"type": "community_bridge"
|
||||
}
|
||||
],
|
||||
"time": "2021-02-17T22:44:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laminas/laminas-zendframework-bridge",
|
||||
"version": "1.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.3",
|
||||
"psalm/plugin-phpunit": "^0.15.1",
|
||||
"squizlabs/php_codesniffer": "^3.5",
|
||||
"vimeo/psalm": "^4.6"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laminas": {
|
||||
"module": "Laminas\\ZendFrameworkBridge"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/autoload.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Laminas\\ZendFrameworkBridge\\": "src//"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"description": "Alias legacy ZF class names to Laminas Project equivalents.",
|
||||
"keywords": [
|
||||
"ZendFramework",
|
||||
"autoloading",
|
||||
"laminas",
|
||||
"zf"
|
||||
],
|
||||
"support": {
|
||||
"forum": "https://discourse.laminas.dev/",
|
||||
"issues": "https://github.com/laminas/laminas-zendframework-bridge/issues",
|
||||
"rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom",
|
||||
"source": "https://github.com/laminas/laminas-zendframework-bridge"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://funding.communitybridge.org/projects/laminas-project",
|
||||
"type": "community_bridge"
|
||||
}
|
||||
],
|
||||
"time": "2021-09-03T17:53:30+00:00"
|
||||
"time": "2021-11-30T02:16:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "p3k/picofeed",
|
||||
@@ -3887,5 +3827,5 @@
|
||||
"platform-overrides": {
|
||||
"php": "7.3.6"
|
||||
},
|
||||
"plugin-api-version": "2.0.0"
|
||||
"plugin-api-version": "2.1.0"
|
||||
}
|
||||
|
||||
151
vendor/composer/ClassLoader.php
vendored
151
vendor/composer/ClassLoader.php
vendored
@@ -42,21 +42,75 @@ namespace Composer\Autoload;
|
||||
*/
|
||||
class ClassLoader
|
||||
{
|
||||
/** @var ?string */
|
||||
private $vendorDir;
|
||||
|
||||
// PSR-4
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, array<string, int>>
|
||||
*/
|
||||
private $prefixLengthsPsr4 = array();
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, array<int, string>>
|
||||
*/
|
||||
private $prefixDirsPsr4 = array();
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, string>
|
||||
*/
|
||||
private $fallbackDirsPsr4 = array();
|
||||
|
||||
// PSR-0
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, array<string, string[]>>
|
||||
*/
|
||||
private $prefixesPsr0 = array();
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, string>
|
||||
*/
|
||||
private $fallbackDirsPsr0 = array();
|
||||
|
||||
/** @var bool */
|
||||
private $useIncludePath = false;
|
||||
|
||||
/**
|
||||
* @var string[]
|
||||
* @psalm-var array<string, string>
|
||||
*/
|
||||
private $classMap = array();
|
||||
|
||||
/** @var bool */
|
||||
private $classMapAuthoritative = false;
|
||||
|
||||
/**
|
||||
* @var bool[]
|
||||
* @psalm-var array<string, bool>
|
||||
*/
|
||||
private $missingClasses = array();
|
||||
|
||||
/** @var ?string */
|
||||
private $apcuPrefix;
|
||||
|
||||
/**
|
||||
* @var self[]
|
||||
*/
|
||||
private static $registeredLoaders = array();
|
||||
|
||||
/**
|
||||
* @param ?string $vendorDir
|
||||
*/
|
||||
public function __construct($vendorDir = null)
|
||||
{
|
||||
$this->vendorDir = $vendorDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
public function getPrefixes()
|
||||
{
|
||||
if (!empty($this->prefixesPsr0)) {
|
||||
@@ -66,28 +120,47 @@ class ClassLoader
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array[]
|
||||
* @psalm-return array<string, array<int, string>>
|
||||
*/
|
||||
public function getPrefixesPsr4()
|
||||
{
|
||||
return $this->prefixDirsPsr4;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array[]
|
||||
* @psalm-return array<string, string>
|
||||
*/
|
||||
public function getFallbackDirs()
|
||||
{
|
||||
return $this->fallbackDirsPsr0;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array[]
|
||||
* @psalm-return array<string, string>
|
||||
*/
|
||||
public function getFallbackDirsPsr4()
|
||||
{
|
||||
return $this->fallbackDirsPsr4;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[] Array of classname => path
|
||||
* @psalm-var array<string, string>
|
||||
*/
|
||||
public function getClassMap()
|
||||
{
|
||||
return $this->classMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $classMap Class to filename map
|
||||
* @param string[] $classMap Class to filename map
|
||||
* @psalm-param array<string, string> $classMap
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function addClassMap(array $classMap)
|
||||
{
|
||||
@@ -102,9 +175,11 @@ class ClassLoader
|
||||
* Registers a set of PSR-0 directories for a given prefix, either
|
||||
* appending or prepending to the ones previously set for this prefix.
|
||||
*
|
||||
* @param string $prefix The prefix
|
||||
* @param array|string $paths The PSR-0 root directories
|
||||
* @param bool $prepend Whether to prepend the directories
|
||||
* @param string $prefix The prefix
|
||||
* @param string[]|string $paths The PSR-0 root directories
|
||||
* @param bool $prepend Whether to prepend the directories
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function add($prefix, $paths, $prepend = false)
|
||||
{
|
||||
@@ -147,11 +222,13 @@ class ClassLoader
|
||||
* Registers a set of PSR-4 directories for a given namespace, either
|
||||
* appending or prepending to the ones previously set for this namespace.
|
||||
*
|
||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||
* @param array|string $paths The PSR-4 base directories
|
||||
* @param bool $prepend Whether to prepend the directories
|
||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||
* @param string[]|string $paths The PSR-4 base directories
|
||||
* @param bool $prepend Whether to prepend the directories
|
||||
*
|
||||
* @throws \InvalidArgumentException
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function addPsr4($prefix, $paths, $prepend = false)
|
||||
{
|
||||
@@ -195,8 +272,10 @@ class ClassLoader
|
||||
* Registers a set of PSR-0 directories for a given prefix,
|
||||
* replacing any others previously set for this prefix.
|
||||
*
|
||||
* @param string $prefix The prefix
|
||||
* @param array|string $paths The PSR-0 base directories
|
||||
* @param string $prefix The prefix
|
||||
* @param string[]|string $paths The PSR-0 base directories
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function set($prefix, $paths)
|
||||
{
|
||||
@@ -211,10 +290,12 @@ class ClassLoader
|
||||
* Registers a set of PSR-4 directories for a given namespace,
|
||||
* replacing any others previously set for this namespace.
|
||||
*
|
||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||
* @param array|string $paths The PSR-4 base directories
|
||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||
* @param string[]|string $paths The PSR-4 base directories
|
||||
*
|
||||
* @throws \InvalidArgumentException
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setPsr4($prefix, $paths)
|
||||
{
|
||||
@@ -234,6 +315,8 @@ class ClassLoader
|
||||
* Turns on searching the include path for class files.
|
||||
*
|
||||
* @param bool $useIncludePath
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setUseIncludePath($useIncludePath)
|
||||
{
|
||||
@@ -256,6 +339,8 @@ class ClassLoader
|
||||
* that have not been registered with the class map.
|
||||
*
|
||||
* @param bool $classMapAuthoritative
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setClassMapAuthoritative($classMapAuthoritative)
|
||||
{
|
||||
@@ -276,6 +361,8 @@ class ClassLoader
|
||||
* APCu prefix to use to cache found/not-found classes, if the extension is enabled.
|
||||
*
|
||||
* @param string|null $apcuPrefix
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setApcuPrefix($apcuPrefix)
|
||||
{
|
||||
@@ -296,25 +383,44 @@ class ClassLoader
|
||||
* Registers this instance as an autoloader.
|
||||
*
|
||||
* @param bool $prepend Whether to prepend the autoloader or not
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function register($prepend = false)
|
||||
{
|
||||
spl_autoload_register(array($this, 'loadClass'), true, $prepend);
|
||||
|
||||
if (null === $this->vendorDir) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($prepend) {
|
||||
self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
|
||||
} else {
|
||||
unset(self::$registeredLoaders[$this->vendorDir]);
|
||||
self::$registeredLoaders[$this->vendorDir] = $this;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregisters this instance as an autoloader.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function unregister()
|
||||
{
|
||||
spl_autoload_unregister(array($this, 'loadClass'));
|
||||
|
||||
if (null !== $this->vendorDir) {
|
||||
unset(self::$registeredLoaders[$this->vendorDir]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads the given class or interface.
|
||||
*
|
||||
* @param string $class The name of the class
|
||||
* @return bool|null True if loaded, null otherwise
|
||||
* @return true|null True if loaded, null otherwise
|
||||
*/
|
||||
public function loadClass($class)
|
||||
{
|
||||
@@ -323,6 +429,8 @@ class ClassLoader
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -367,6 +475,21 @@ class ClassLoader
|
||||
return $file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the currently registered loaders indexed by their corresponding vendor directories.
|
||||
*
|
||||
* @return self[]
|
||||
*/
|
||||
public static function getRegisteredLoaders()
|
||||
{
|
||||
return self::$registeredLoaders;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $class
|
||||
* @param string $ext
|
||||
* @return string|false
|
||||
*/
|
||||
private function findFileWithExtension($class, $ext)
|
||||
{
|
||||
// PSR-4 lookup
|
||||
@@ -438,6 +561,10 @@ class ClassLoader
|
||||
* Scope isolated include.
|
||||
*
|
||||
* Prevents access to $this/self from included files.
|
||||
*
|
||||
* @param string $file
|
||||
* @return void
|
||||
* @private
|
||||
*/
|
||||
function includeFile($file)
|
||||
{
|
||||
|
||||
599
vendor/composer/InstalledVersions.php
vendored
599
vendor/composer/InstalledVersions.php
vendored
@@ -1,283 +1,350 @@
|
||||
<?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;
|
||||
|
||||
use Composer\Autoload\ClassLoader;
|
||||
use Composer\Semver\VersionParser;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* This class is copied in every Composer installed project and available to all
|
||||
*
|
||||
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
||||
*
|
||||
* To require its presence, you can require `composer-runtime-api ^2.0`
|
||||
*/
|
||||
class InstalledVersions
|
||||
{
|
||||
private static $installed = array (
|
||||
'root' =>
|
||||
array (
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => 'c2df8d10d2a1d63f42aaf71958c8b328a7a47947',
|
||||
'name' => 'getgrav/grav-plugin-admin',
|
||||
),
|
||||
'versions' =>
|
||||
array (
|
||||
'getgrav/grav-plugin-admin' =>
|
||||
array (
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => 'c2df8d10d2a1d63f42aaf71958c8b328a7a47947',
|
||||
),
|
||||
'laminas/laminas-xml' =>
|
||||
array (
|
||||
'pretty_version' => '1.3.1',
|
||||
'version' => '1.3.1.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '2eada592359aec9d9e55339270b621295cff3a4f',
|
||||
),
|
||||
'laminas/laminas-zendframework-bridge' =>
|
||||
array (
|
||||
'pretty_version' => '1.4.0',
|
||||
'version' => '1.4.0.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => 'bf180a382393e7db5c1e8d0f2ec0c4af9c724baf',
|
||||
),
|
||||
'miniflux/picofeed' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '0.1.35',
|
||||
),
|
||||
),
|
||||
'p3k/picofeed' =>
|
||||
array (
|
||||
'pretty_version' => 'v0.1.40',
|
||||
'version' => '0.1.40.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '356fd66d48779193b10ac28532cb4a4e11bb801c',
|
||||
),
|
||||
'scssphp/scssphp' =>
|
||||
array (
|
||||
'pretty_version' => 'v1.8.1',
|
||||
'version' => '1.8.1.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '5e37759a63caf54392a4b709358a39ac7425a69f',
|
||||
),
|
||||
'symfony/polyfill-php72' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
'symfony/polyfill-php73' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
'zendframework/zendxml' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '^1.2.0',
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
/**
|
||||
* @var mixed[]|null
|
||||
* @psalm-var array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}|array{}|null
|
||||
*/
|
||||
private static $installed;
|
||||
|
||||
/**
|
||||
* @var bool|null
|
||||
*/
|
||||
private static $canGetVendors;
|
||||
|
||||
/**
|
||||
* @var array[]
|
||||
* @psalm-var array<string, array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
|
||||
*/
|
||||
private static $installedByVendor = array();
|
||||
|
||||
/**
|
||||
* Returns a list of all package names which are present, either by being installed, replaced or provided
|
||||
*
|
||||
* @return string[]
|
||||
* @psalm-return list<string>
|
||||
*/
|
||||
public static function getInstalledPackages()
|
||||
{
|
||||
$packages = array();
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
$packages[] = array_keys($installed['versions']);
|
||||
}
|
||||
|
||||
if (1 === \count($packages)) {
|
||||
return $packages[0];
|
||||
}
|
||||
|
||||
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a list of all package names with a specific type e.g. 'library'
|
||||
*
|
||||
* @param string $type
|
||||
* @return string[]
|
||||
* @psalm-return list<string>
|
||||
*/
|
||||
public static function getInstalledPackagesByType($type)
|
||||
{
|
||||
$packagesByType = array();
|
||||
|
||||
public static function getInstalledPackages()
|
||||
{
|
||||
return array_keys(self::$installed['versions']);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function isInstalled($packageName)
|
||||
{
|
||||
return isset(self::$installed['versions'][$packageName]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
||||
{
|
||||
$constraint = $parser->parseConstraints($constraint);
|
||||
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
||||
|
||||
return $provided->matches($constraint);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getVersionRanges($packageName)
|
||||
{
|
||||
if (!isset(self::$installed['versions'][$packageName])) {
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
$ranges = array();
|
||||
if (isset(self::$installed['versions'][$packageName]['pretty_version'])) {
|
||||
$ranges[] = self::$installed['versions'][$packageName]['pretty_version'];
|
||||
}
|
||||
if (array_key_exists('aliases', self::$installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['aliases']);
|
||||
}
|
||||
if (array_key_exists('replaced', self::$installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['replaced']);
|
||||
}
|
||||
if (array_key_exists('provided', self::$installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['provided']);
|
||||
}
|
||||
|
||||
return implode(' || ', $ranges);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getVersion($packageName)
|
||||
{
|
||||
if (!isset(self::$installed['versions'][$packageName])) {
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
if (!isset(self::$installed['versions'][$packageName]['version'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return self::$installed['versions'][$packageName]['version'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getPrettyVersion($packageName)
|
||||
{
|
||||
if (!isset(self::$installed['versions'][$packageName])) {
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
if (!isset(self::$installed['versions'][$packageName]['pretty_version'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return self::$installed['versions'][$packageName]['pretty_version'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getReference($packageName)
|
||||
{
|
||||
if (!isset(self::$installed['versions'][$packageName])) {
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
if (!isset(self::$installed['versions'][$packageName]['reference'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return self::$installed['versions'][$packageName]['reference'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getRootPackage()
|
||||
{
|
||||
return self::$installed['root'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function getRawData()
|
||||
{
|
||||
return self::$installed;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static function reload($data)
|
||||
{
|
||||
self::$installed = $data;
|
||||
}
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
foreach ($installed['versions'] as $name => $package) {
|
||||
if (isset($package['type']) && $package['type'] === $type) {
|
||||
$packagesByType[] = $name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $packagesByType;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether the given package is installed
|
||||
*
|
||||
* This also returns true if the package name is provided or replaced by another package
|
||||
*
|
||||
* @param string $packageName
|
||||
* @param bool $includeDevRequirements
|
||||
* @return bool
|
||||
*/
|
||||
public static function isInstalled($packageName, $includeDevRequirements = true)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (isset($installed['versions'][$packageName])) {
|
||||
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether the given package satisfies a version constraint
|
||||
*
|
||||
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
|
||||
*
|
||||
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
|
||||
*
|
||||
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
|
||||
* @param string $packageName
|
||||
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
|
||||
* @return bool
|
||||
*/
|
||||
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
||||
{
|
||||
$constraint = $parser->parseConstraints($constraint);
|
||||
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
||||
|
||||
return $provided->matches($constraint);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a version constraint representing all the range(s) which are installed for a given package
|
||||
*
|
||||
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
|
||||
* whether a given version of a package is installed, and not just whether it exists
|
||||
*
|
||||
* @param string $packageName
|
||||
* @return string Version constraint usable with composer/semver
|
||||
*/
|
||||
public static function getVersionRanges($packageName)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (!isset($installed['versions'][$packageName])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$ranges = array();
|
||||
if (isset($installed['versions'][$packageName]['pretty_version'])) {
|
||||
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
|
||||
}
|
||||
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
|
||||
}
|
||||
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
|
||||
}
|
||||
if (array_key_exists('provided', $installed['versions'][$packageName])) {
|
||||
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
|
||||
}
|
||||
|
||||
return implode(' || ', $ranges);
|
||||
}
|
||||
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $packageName
|
||||
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
|
||||
*/
|
||||
public static function getVersion($packageName)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (!isset($installed['versions'][$packageName])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!isset($installed['versions'][$packageName]['version'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $installed['versions'][$packageName]['version'];
|
||||
}
|
||||
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $packageName
|
||||
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
|
||||
*/
|
||||
public static function getPrettyVersion($packageName)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (!isset($installed['versions'][$packageName])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $installed['versions'][$packageName]['pretty_version'];
|
||||
}
|
||||
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $packageName
|
||||
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
|
||||
*/
|
||||
public static function getReference($packageName)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (!isset($installed['versions'][$packageName])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!isset($installed['versions'][$packageName]['reference'])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $installed['versions'][$packageName]['reference'];
|
||||
}
|
||||
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $packageName
|
||||
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
|
||||
*/
|
||||
public static function getInstallPath($packageName)
|
||||
{
|
||||
foreach (self::getInstalled() as $installed) {
|
||||
if (!isset($installed['versions'][$packageName])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
|
||||
}
|
||||
|
||||
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}
|
||||
*/
|
||||
public static function getRootPackage()
|
||||
{
|
||||
$installed = self::getInstalled();
|
||||
|
||||
return $installed[0]['root'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the raw installed.php data for custom implementations
|
||||
*
|
||||
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
|
||||
* @return array[]
|
||||
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}
|
||||
*/
|
||||
public static function getRawData()
|
||||
{
|
||||
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
|
||||
|
||||
if (null === self::$installed) {
|
||||
// only require the installed.php file if this file is loaded from its dumped location,
|
||||
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
|
||||
if (substr(__DIR__, -8, 1) !== 'C') {
|
||||
self::$installed = include __DIR__ . '/installed.php';
|
||||
} else {
|
||||
self::$installed = array();
|
||||
}
|
||||
}
|
||||
|
||||
return self::$installed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
||||
*
|
||||
* @return array[]
|
||||
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
|
||||
*/
|
||||
public static function getAllRawData()
|
||||
{
|
||||
return self::getInstalled();
|
||||
}
|
||||
|
||||
/**
|
||||
* Lets you reload the static array from another file
|
||||
*
|
||||
* This is only useful for complex integrations in which a project needs to use
|
||||
* this class but then also needs to execute another project's autoloader in process,
|
||||
* and wants to ensure both projects have access to their version of installed.php.
|
||||
*
|
||||
* A typical case would be PHPUnit, where it would need to make sure it reads all
|
||||
* the data it needs from this class, then call reload() with
|
||||
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
|
||||
* the project in which it runs can then also use this class safely, without
|
||||
* interference between PHPUnit's dependencies and the project's dependencies.
|
||||
*
|
||||
* @param array[] $data A vendor/composer/installed.php data set
|
||||
* @return void
|
||||
*
|
||||
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} $data
|
||||
*/
|
||||
public static function reload($data)
|
||||
{
|
||||
self::$installed = $data;
|
||||
self::$installedByVendor = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array[]
|
||||
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
|
||||
*/
|
||||
private static function getInstalled()
|
||||
{
|
||||
if (null === self::$canGetVendors) {
|
||||
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
|
||||
}
|
||||
|
||||
$installed = array();
|
||||
|
||||
if (self::$canGetVendors) {
|
||||
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
|
||||
if (isset(self::$installedByVendor[$vendorDir])) {
|
||||
$installed[] = self::$installedByVendor[$vendorDir];
|
||||
} elseif (is_file($vendorDir.'/composer/installed.php')) {
|
||||
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
|
||||
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
|
||||
self::$installed = $installed[count($installed) - 1];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (null === self::$installed) {
|
||||
// only require the installed.php file if this file is loaded from its dumped location,
|
||||
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
|
||||
if (substr(__DIR__, -8, 1) !== 'C') {
|
||||
self::$installed = require __DIR__ . '/installed.php';
|
||||
} else {
|
||||
self::$installed = array();
|
||||
}
|
||||
}
|
||||
$installed[] = self::$installed;
|
||||
|
||||
return $installed;
|
||||
}
|
||||
}
|
||||
|
||||
10
vendor/composer/autoload_files.php
vendored
10
vendor/composer/autoload_files.php
vendored
@@ -1,10 +0,0 @@
|
||||
<?php
|
||||
|
||||
// autoload_files.php @generated by Composer
|
||||
|
||||
$vendorDir = dirname(dirname(__FILE__));
|
||||
$baseDir = dirname($vendorDir);
|
||||
|
||||
return array(
|
||||
'7e9bd612cc444b3eed788ebbe46263a0' => $vendorDir . '/laminas/laminas-zendframework-bridge/src/autoload.php',
|
||||
);
|
||||
1
vendor/composer/autoload_psr4.php
vendored
1
vendor/composer/autoload_psr4.php
vendored
@@ -7,7 +7,6 @@ $baseDir = dirname($vendorDir);
|
||||
|
||||
return array(
|
||||
'ScssPhp\\ScssPhp\\' => array($vendorDir . '/scssphp/scssphp/src'),
|
||||
'Laminas\\ZendFrameworkBridge\\' => array($vendorDir . '/laminas/laminas-zendframework-bridge/src'),
|
||||
'Laminas\\Xml\\' => array($vendorDir . '/laminas/laminas-xml/src'),
|
||||
'Grav\\Plugin\\Admin\\' => array($baseDir . '/classes/plugin'),
|
||||
);
|
||||
|
||||
20
vendor/composer/autoload_real.php
vendored
20
vendor/composer/autoload_real.php
vendored
@@ -25,7 +25,7 @@ class ComposerAutoloaderInitd6a520eb662703b9aa0b94d2e30cc77f
|
||||
require __DIR__ . '/platform_check.php';
|
||||
|
||||
spl_autoload_register(array('ComposerAutoloaderInitd6a520eb662703b9aa0b94d2e30cc77f', 'loadClassLoader'), true, true);
|
||||
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
||||
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
|
||||
spl_autoload_unregister(array('ComposerAutoloaderInitd6a520eb662703b9aa0b94d2e30cc77f', 'loadClassLoader'));
|
||||
|
||||
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
||||
@@ -52,24 +52,6 @@ class ComposerAutoloaderInitd6a520eb662703b9aa0b94d2e30cc77f
|
||||
|
||||
$loader->register(true);
|
||||
|
||||
if ($useStaticLoader) {
|
||||
$includeFiles = Composer\Autoload\ComposerStaticInitd6a520eb662703b9aa0b94d2e30cc77f::$files;
|
||||
} else {
|
||||
$includeFiles = require __DIR__ . '/autoload_files.php';
|
||||
}
|
||||
foreach ($includeFiles as $fileIdentifier => $file) {
|
||||
composerRequired6a520eb662703b9aa0b94d2e30cc77f($fileIdentifier, $file);
|
||||
}
|
||||
|
||||
return $loader;
|
||||
}
|
||||
}
|
||||
|
||||
function composerRequired6a520eb662703b9aa0b94d2e30cc77f($fileIdentifier, $file)
|
||||
{
|
||||
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
||||
require $file;
|
||||
|
||||
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
||||
}
|
||||
}
|
||||
|
||||
9
vendor/composer/autoload_static.php
vendored
9
vendor/composer/autoload_static.php
vendored
@@ -6,10 +6,6 @@ namespace Composer\Autoload;
|
||||
|
||||
class ComposerStaticInitd6a520eb662703b9aa0b94d2e30cc77f
|
||||
{
|
||||
public static $files = array (
|
||||
'7e9bd612cc444b3eed788ebbe46263a0' => __DIR__ . '/..' . '/laminas/laminas-zendframework-bridge/src/autoload.php',
|
||||
);
|
||||
|
||||
public static $prefixLengthsPsr4 = array (
|
||||
'S' =>
|
||||
array (
|
||||
@@ -17,7 +13,6 @@ class ComposerStaticInitd6a520eb662703b9aa0b94d2e30cc77f
|
||||
),
|
||||
'L' =>
|
||||
array (
|
||||
'Laminas\\ZendFrameworkBridge\\' => 28,
|
||||
'Laminas\\Xml\\' => 12,
|
||||
),
|
||||
'G' =>
|
||||
@@ -31,10 +26,6 @@ class ComposerStaticInitd6a520eb662703b9aa0b94d2e30cc77f
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/scssphp/scssphp/src',
|
||||
),
|
||||
'Laminas\\ZendFrameworkBridge\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/laminas/laminas-zendframework-bridge/src',
|
||||
),
|
||||
'Laminas\\Xml\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/laminas/laminas-xml/src',
|
||||
|
||||
89
vendor/composer/installed.json
vendored
89
vendor/composer/installed.json
vendored
@@ -2,32 +2,34 @@
|
||||
"packages": [
|
||||
{
|
||||
"name": "laminas/laminas-xml",
|
||||
"version": "1.3.1",
|
||||
"version_normalized": "1.3.1.0",
|
||||
"version": "1.4.0",
|
||||
"version_normalized": "1.4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-xml.git",
|
||||
"reference": "2eada592359aec9d9e55339270b621295cff3a4f"
|
||||
"reference": "dcadeefdb6d7ed6b39d772b47e3845003d6ea60f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/2eada592359aec9d9e55339270b621295cff3a4f",
|
||||
"reference": "2eada592359aec9d9e55339270b621295cff3a4f",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/dcadeefdb6d7ed6b39d772b47e3845003d6ea60f",
|
||||
"reference": "dcadeefdb6d7ed6b39d772b47e3845003d6ea60f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"laminas/laminas-zendframework-bridge": "^1.0",
|
||||
"php": "^7.3 || ~8.0.0"
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*",
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"replace": {
|
||||
"zendframework/zendxml": "^1.2.0"
|
||||
"conflict": {
|
||||
"zendframework/zendxml": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-iconv": "*",
|
||||
"laminas/laminas-coding-standard": "~1.0.0",
|
||||
"phpunit/phpunit": "^9.4"
|
||||
"phpunit/phpunit": "^9.5.8",
|
||||
"squizlabs/php_codesniffer": "3.6.1 as 2.9999999.9999999"
|
||||
},
|
||||
"time": "2021-02-17T22:44:58+00:00",
|
||||
"time": "2021-11-30T02:16:35+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
@@ -61,71 +63,6 @@
|
||||
],
|
||||
"install-path": "../laminas/laminas-xml"
|
||||
},
|
||||
{
|
||||
"name": "laminas/laminas-zendframework-bridge",
|
||||
"version": "1.4.0",
|
||||
"version_normalized": "1.4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.3",
|
||||
"psalm/plugin-phpunit": "^0.15.1",
|
||||
"squizlabs/php_codesniffer": "^3.5",
|
||||
"vimeo/psalm": "^4.6"
|
||||
},
|
||||
"time": "2021-09-03T17:53:30+00:00",
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laminas": {
|
||||
"module": "Laminas\\ZendFrameworkBridge"
|
||||
}
|
||||
},
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/autoload.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Laminas\\ZendFrameworkBridge\\": "src//"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"description": "Alias legacy ZF class names to Laminas Project equivalents.",
|
||||
"keywords": [
|
||||
"ZendFramework",
|
||||
"autoloading",
|
||||
"laminas",
|
||||
"zf"
|
||||
],
|
||||
"support": {
|
||||
"forum": "https://discourse.laminas.dev/",
|
||||
"issues": "https://github.com/laminas/laminas-zendframework-bridge/issues",
|
||||
"rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom",
|
||||
"source": "https://github.com/laminas/laminas-zendframework-bridge"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://funding.communitybridge.org/projects/laminas-project",
|
||||
"type": "community_bridge"
|
||||
}
|
||||
],
|
||||
"install-path": "../laminas/laminas-zendframework-bridge"
|
||||
},
|
||||
{
|
||||
"name": "p3k/picofeed",
|
||||
"version": "v0.1.40",
|
||||
|
||||
150
vendor/composer/installed.php
vendored
150
vendor/composer/installed.php
vendored
@@ -1,88 +1,68 @@
|
||||
<?php return array (
|
||||
'root' =>
|
||||
array (
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'aliases' =>
|
||||
array (
|
||||
<?php return array(
|
||||
'root' => array(
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'type' => 'grav-plugin',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
'reference' => '31ffe6574e13028e9bd1717bd63a6b589434de21',
|
||||
'name' => 'getgrav/grav-plugin-admin',
|
||||
'dev' => false,
|
||||
),
|
||||
'reference' => 'c2df8d10d2a1d63f42aaf71958c8b328a7a47947',
|
||||
'name' => 'getgrav/grav-plugin-admin',
|
||||
),
|
||||
'versions' =>
|
||||
array (
|
||||
'getgrav/grav-plugin-admin' =>
|
||||
array (
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => 'c2df8d10d2a1d63f42aaf71958c8b328a7a47947',
|
||||
'versions' => array(
|
||||
'getgrav/grav-plugin-admin' => array(
|
||||
'pretty_version' => 'dev-develop',
|
||||
'version' => 'dev-develop',
|
||||
'type' => 'grav-plugin',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
'reference' => '31ffe6574e13028e9bd1717bd63a6b589434de21',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'laminas/laminas-xml' => array(
|
||||
'pretty_version' => '1.4.0',
|
||||
'version' => '1.4.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../laminas/laminas-xml',
|
||||
'aliases' => array(),
|
||||
'reference' => 'dcadeefdb6d7ed6b39d772b47e3845003d6ea60f',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'miniflux/picofeed' => array(
|
||||
'dev_requirement' => false,
|
||||
'replaced' => array(
|
||||
0 => '0.1.35',
|
||||
),
|
||||
),
|
||||
'p3k/picofeed' => array(
|
||||
'pretty_version' => 'v0.1.40',
|
||||
'version' => '0.1.40.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../p3k/picofeed',
|
||||
'aliases' => array(),
|
||||
'reference' => '356fd66d48779193b10ac28532cb4a4e11bb801c',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'scssphp/scssphp' => array(
|
||||
'pretty_version' => 'v1.8.1',
|
||||
'version' => '1.8.1.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../scssphp/scssphp',
|
||||
'aliases' => array(),
|
||||
'reference' => '5e37759a63caf54392a4b709358a39ac7425a69f',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'symfony/polyfill-php72' => array(
|
||||
'dev_requirement' => false,
|
||||
'replaced' => array(
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
'symfony/polyfill-php73' => array(
|
||||
'dev_requirement' => false,
|
||||
'replaced' => array(
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
),
|
||||
'laminas/laminas-xml' =>
|
||||
array (
|
||||
'pretty_version' => '1.3.1',
|
||||
'version' => '1.3.1.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '2eada592359aec9d9e55339270b621295cff3a4f',
|
||||
),
|
||||
'laminas/laminas-zendframework-bridge' =>
|
||||
array (
|
||||
'pretty_version' => '1.4.0',
|
||||
'version' => '1.4.0.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => 'bf180a382393e7db5c1e8d0f2ec0c4af9c724baf',
|
||||
),
|
||||
'miniflux/picofeed' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '0.1.35',
|
||||
),
|
||||
),
|
||||
'p3k/picofeed' =>
|
||||
array (
|
||||
'pretty_version' => 'v0.1.40',
|
||||
'version' => '0.1.40.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '356fd66d48779193b10ac28532cb4a4e11bb801c',
|
||||
),
|
||||
'scssphp/scssphp' =>
|
||||
array (
|
||||
'pretty_version' => 'v1.8.1',
|
||||
'version' => '1.8.1.0',
|
||||
'aliases' =>
|
||||
array (
|
||||
),
|
||||
'reference' => '5e37759a63caf54392a4b709358a39ac7425a69f',
|
||||
),
|
||||
'symfony/polyfill-php72' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
'symfony/polyfill-php73' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '*',
|
||||
),
|
||||
),
|
||||
'zendframework/zendxml' =>
|
||||
array (
|
||||
'replaced' =>
|
||||
array (
|
||||
0 => '^1.2.0',
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
22
vendor/laminas/laminas-xml/.github/workflows/auto-close.yml
vendored
Normal file
22
vendor/laminas/laminas-xml/.github/workflows/auto-close.yml
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
name: Autocloser
|
||||
on: [issues, pull_request]
|
||||
jobs:
|
||||
autoclose:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Autoclose new issues and PRs
|
||||
uses: roots/issue-closer@v1.1
|
||||
with:
|
||||
repo-token: ${{ secrets.ORGANIZATION_ADMIN_TOKEN }}
|
||||
issue-pattern: "^exact-string-will-never-match$"
|
||||
pr-pattern: "^exact-string-will-never-match$"
|
||||
issue-close-message: |
|
||||
This package is considered feature-complete, and is now in **security-only** maintenance mode, following a [decision by the Technical Steering Committee](https://github.com/laminas/technical-steering-committee/blob/2b55453e172a1b8c9c4c212be7cf7e7a58b9352c/meetings/minutes/2020-08-03-TSC-Minutes.md#vote-on-components-to-mark-as-security-only).
|
||||
If you have a security issue, please [follow our security reporting guidelines](https://getlaminas.org/security/).
|
||||
If you wish to take on the role of maintainer, please [nominate yourself](https://github.com/laminas/technical-steering-committee/issues/new?assignees=&labels=Nomination&template=Maintainer_Nomination.md&title=%5BNOMINATION%5D%5BMAINTAINER%5D%3A+%7Bname+of+person+being+nominated%7D)
|
||||
|
||||
pr-close-message: |
|
||||
This package is considered feature-complete, and is now in **security-only** maintenance mode, following a [decision by the Technical Steering Committee](https://github.com/laminas/technical-steering-committee/blob/2b55453e172a1b8c9c4c212be7cf7e7a58b9352c/meetings/minutes/2020-08-03-TSC-Minutes.md#vote-on-components-to-mark-as-security-only).
|
||||
If you have a security issue, please [follow our security reporting guidelines](https://getlaminas.org/security/).
|
||||
If you wish to take on the role of maintainer, please [nominate yourself](https://github.com/laminas/technical-steering-committee/issues/new?assignees=&labels=Nomination&template=Maintainer_Nomination.md&title=%5BNOMINATION%5D%5BMAINTAINER%5D%3A+%7Bname+of+person+being+nominated%7D)
|
||||
|
||||
5
vendor/laminas/laminas-xml/README.md
vendored
5
vendor/laminas/laminas-xml/README.md
vendored
@@ -1,5 +1,10 @@
|
||||
# laminas-xml
|
||||
|
||||
> This package is considered feature-complete, and is now in **security-only** maintenance mode, following a [decision by the Technical Steering Committee](https://github.com/laminas/technical-steering-committee/blob/2b55453e172a1b8c9c4c212be7cf7e7a58b9352c/meetings/minutes/2020-08-03-TSC-Minutes.md#vote-on-components-to-mark-as-security-only).
|
||||
> If you have a security issue, please [follow our security reporting guidelines](https://getlaminas.org/security/).
|
||||
> If you wish to take on the role of maintainer, please [nominate yourself](https://github.com/laminas/technical-steering-committee/issues/new?assignees=&labels=Nomination&template=Maintainer_Nomination.md&title=%5BNOMINATION%5D%5BMAINTAINER%5D%3A+%7Bname+of+person+being+nominated%7D)
|
||||
|
||||
|
||||
[](https://github.com/laminas/laminas-xml/actions?query=workflow%3A"Continuous+Integration")
|
||||
|
||||
An utility component for XML usage and best practices in PHP
|
||||
|
||||
14
vendor/laminas/laminas-xml/composer.json
vendored
14
vendor/laminas/laminas-xml/composer.json
vendored
@@ -18,15 +18,15 @@
|
||||
"config": {
|
||||
"sort-packages": true
|
||||
},
|
||||
"extra": {
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ~8.0.0",
|
||||
"laminas/laminas-zendframework-bridge": "^1.0"
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0",
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"laminas/laminas-coding-standard": "~1.0.0",
|
||||
"phpunit/phpunit": "^9.4",
|
||||
"squizlabs/php_codesniffer": "3.6.1 as 2.9999999.9999999",
|
||||
"phpunit/phpunit": "^9.5.8",
|
||||
"ext-iconv": "*"
|
||||
},
|
||||
"autoload": {
|
||||
@@ -49,7 +49,7 @@
|
||||
"test": "phpunit --colors=always",
|
||||
"test-coverage": "phpunit --colors=always --coverage-clover clover.xml"
|
||||
},
|
||||
"replace": {
|
||||
"zendframework/zendxml": "^1.2.0"
|
||||
"conflict": {
|
||||
"zendframework/zendxml": "*"
|
||||
}
|
||||
}
|
||||
|
||||
394
vendor/laminas/laminas-xml/composer.lock
generated
vendored
394
vendor/laminas/laminas-xml/composer.lock
generated
vendored
@@ -4,69 +4,8 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "c004397cecf772ded1746968c1081412",
|
||||
"packages": [
|
||||
{
|
||||
"name": "laminas/laminas-zendframework-bridge",
|
||||
"version": "1.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
|
||||
"reference": "6ede70583e101030bcace4dcddd648f760ddf642"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6ede70583e101030bcace4dcddd648f760ddf642",
|
||||
"reference": "6ede70583e101030bcace4dcddd648f760ddf642",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.6 || ^7.0 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3",
|
||||
"squizlabs/php_codesniffer": "^3.5"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laminas": {
|
||||
"module": "Laminas\\ZendFrameworkBridge"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/autoload.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Laminas\\ZendFrameworkBridge\\": "src//"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"description": "Alias legacy ZF class names to Laminas Project equivalents.",
|
||||
"keywords": [
|
||||
"ZendFramework",
|
||||
"autoloading",
|
||||
"laminas",
|
||||
"zf"
|
||||
],
|
||||
"support": {
|
||||
"forum": "https://discourse.laminas.dev/",
|
||||
"issues": "https://github.com/laminas/laminas-zendframework-bridge/issues",
|
||||
"rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom",
|
||||
"source": "https://github.com/laminas/laminas-zendframework-bridge"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://funding.communitybridge.org/projects/laminas-project",
|
||||
"type": "community_bridge"
|
||||
}
|
||||
],
|
||||
"time": "2020-09-14T14:23:00+00:00"
|
||||
}
|
||||
],
|
||||
"content-hash": "7bd20d466bd034077f9a403d2468ed89",
|
||||
"packages": [],
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "doctrine/instantiator",
|
||||
@@ -179,6 +118,68 @@
|
||||
},
|
||||
"time": "2019-12-31T16:28:26+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laminas/laminas-zendframework-bridge",
|
||||
"version": "1.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.3",
|
||||
"psalm/plugin-phpunit": "^0.15.1",
|
||||
"squizlabs/php_codesniffer": "^3.5",
|
||||
"vimeo/psalm": "^4.6"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laminas": {
|
||||
"module": "Laminas\\ZendFrameworkBridge"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/autoload.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Laminas\\ZendFrameworkBridge\\": "src//"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"description": "Alias legacy ZF class names to Laminas Project equivalents.",
|
||||
"keywords": [
|
||||
"ZendFramework",
|
||||
"autoloading",
|
||||
"laminas",
|
||||
"zf"
|
||||
],
|
||||
"support": {
|
||||
"forum": "https://discourse.laminas.dev/",
|
||||
"issues": "https://github.com/laminas/laminas-zendframework-bridge/issues",
|
||||
"rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom",
|
||||
"source": "https://github.com/laminas/laminas-zendframework-bridge"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://funding.communitybridge.org/projects/laminas-project",
|
||||
"type": "community_bridge"
|
||||
}
|
||||
],
|
||||
"time": "2021-09-03T17:53:30+00:00"
|
||||
},
|
||||
{
|
||||
"name": "myclabs/deep-copy",
|
||||
"version": "1.10.2",
|
||||
@@ -239,16 +240,16 @@
|
||||
},
|
||||
{
|
||||
"name": "nikic/php-parser",
|
||||
"version": "v4.10.4",
|
||||
"version": "v4.13.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nikic/PHP-Parser.git",
|
||||
"reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e"
|
||||
"reference": "63a79e8daa781cac14e5195e63ed8ae231dd10fd"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e",
|
||||
"reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e",
|
||||
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/63a79e8daa781cac14e5195e63ed8ae231dd10fd",
|
||||
"reference": "63a79e8daa781cac14e5195e63ed8ae231dd10fd",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -289,22 +290,22 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/nikic/PHP-Parser/issues",
|
||||
"source": "https://github.com/nikic/PHP-Parser/tree/v4.10.4"
|
||||
"source": "https://github.com/nikic/PHP-Parser/tree/v4.13.1"
|
||||
},
|
||||
"time": "2020-12-20T10:01:03+00:00"
|
||||
"time": "2021-11-03T20:52:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/manifest",
|
||||
"version": "2.0.1",
|
||||
"version": "2.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phar-io/manifest.git",
|
||||
"reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133"
|
||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
|
||||
"reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
|
||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -349,22 +350,22 @@
|
||||
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
|
||||
"support": {
|
||||
"issues": "https://github.com/phar-io/manifest/issues",
|
||||
"source": "https://github.com/phar-io/manifest/tree/master"
|
||||
"source": "https://github.com/phar-io/manifest/tree/2.0.3"
|
||||
},
|
||||
"time": "2020-06-27T14:33:11+00:00"
|
||||
"time": "2021-07-20T11:28:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/version",
|
||||
"version": "3.0.4",
|
||||
"version": "3.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phar-io/version.git",
|
||||
"reference": "e4782611070e50613683d2b9a57730e9a3ba5451"
|
||||
"reference": "bae7c545bef187884426f042434e561ab1ddb182"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phar-io/version/zipball/e4782611070e50613683d2b9a57730e9a3ba5451",
|
||||
"reference": "e4782611070e50613683d2b9a57730e9a3ba5451",
|
||||
"url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182",
|
||||
"reference": "bae7c545bef187884426f042434e561ab1ddb182",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -400,9 +401,9 @@
|
||||
"description": "Library for handling version information and constraints",
|
||||
"support": {
|
||||
"issues": "https://github.com/phar-io/version/issues",
|
||||
"source": "https://github.com/phar-io/version/tree/3.0.4"
|
||||
"source": "https://github.com/phar-io/version/tree/3.1.0"
|
||||
},
|
||||
"time": "2020-12-13T23:18:30+00:00"
|
||||
"time": "2021-02-23T14:00:09+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/reflection-common",
|
||||
@@ -459,16 +460,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/reflection-docblock",
|
||||
"version": "5.2.2",
|
||||
"version": "5.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
|
||||
"reference": "069a785b2141f5bcf49f3e353548dc1cce6df556"
|
||||
"reference": "622548b623e81ca6d78b721c5e029f4ce664f170"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556",
|
||||
"reference": "069a785b2141f5bcf49f3e353548dc1cce6df556",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170",
|
||||
"reference": "622548b623e81ca6d78b721c5e029f4ce664f170",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -479,7 +480,8 @@
|
||||
"webmozart/assert": "^1.9.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"mockery/mockery": "~1.3.2"
|
||||
"mockery/mockery": "~1.3.2",
|
||||
"psalm/phar": "^4.8"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@@ -509,22 +511,22 @@
|
||||
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
|
||||
"support": {
|
||||
"issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues",
|
||||
"source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master"
|
||||
"source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0"
|
||||
},
|
||||
"time": "2020-09-03T19:13:55+00:00"
|
||||
"time": "2021-10-19T17:43:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/type-resolver",
|
||||
"version": "1.4.0",
|
||||
"version": "1.5.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpDocumentor/TypeResolver.git",
|
||||
"reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0"
|
||||
"reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
|
||||
"reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae",
|
||||
"reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -532,7 +534,8 @@
|
||||
"phpdocumentor/reflection-common": "^2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-tokenizer": "*"
|
||||
"ext-tokenizer": "*",
|
||||
"psalm/phar": "^4.8"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@@ -558,39 +561,39 @@
|
||||
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
|
||||
"support": {
|
||||
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
|
||||
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0"
|
||||
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1"
|
||||
},
|
||||
"time": "2020-09-17T18:55:26+00:00"
|
||||
"time": "2021-10-02T14:08:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpspec/prophecy",
|
||||
"version": "1.12.2",
|
||||
"version": "1.14.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpspec/prophecy.git",
|
||||
"reference": "245710e971a030f42e08f4912863805570f23d39"
|
||||
"reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/245710e971a030f42e08f4912863805570f23d39",
|
||||
"reference": "245710e971a030f42e08f4912863805570f23d39",
|
||||
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e",
|
||||
"reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"doctrine/instantiator": "^1.2",
|
||||
"php": "^7.2 || ~8.0, <8.1",
|
||||
"php": "^7.2 || ~8.0, <8.2",
|
||||
"phpdocumentor/reflection-docblock": "^5.2",
|
||||
"sebastian/comparator": "^3.0 || ^4.0",
|
||||
"sebastian/recursion-context": "^3.0 || ^4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpspec/phpspec": "^6.0",
|
||||
"phpspec/phpspec": "^6.0 || ^7.0",
|
||||
"phpunit/phpunit": "^8.0 || ^9.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.11.x-dev"
|
||||
"dev-master": "1.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
@@ -625,29 +628,29 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/phpspec/prophecy/issues",
|
||||
"source": "https://github.com/phpspec/prophecy/tree/1.12.2"
|
||||
"source": "https://github.com/phpspec/prophecy/tree/1.14.0"
|
||||
},
|
||||
"time": "2020-12-19T10:15:11+00:00"
|
||||
"time": "2021-09-10T09:02:12+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "9.2.5",
|
||||
"version": "9.2.9",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1"
|
||||
"reference": "f301eb1453c9e7a1bc912ee8b0ea9db22c60223b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f3e026641cc91909d421802dd3ac7827ebfd97e1",
|
||||
"reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f301eb1453c9e7a1bc912ee8b0ea9db22c60223b",
|
||||
"reference": "f301eb1453c9e7a1bc912ee8b0ea9db22c60223b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-libxml": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"nikic/php-parser": "^4.10.2",
|
||||
"nikic/php-parser": "^4.13.0",
|
||||
"php": ">=7.3",
|
||||
"phpunit/php-file-iterator": "^3.0.3",
|
||||
"phpunit/php-text-template": "^2.0.2",
|
||||
@@ -696,7 +699,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.5"
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.9"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -704,7 +707,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-11-28T06:44:49+00:00"
|
||||
"time": "2021-11-19T15:21:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
@@ -949,16 +952,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "9.5.2",
|
||||
"version": "9.5.10",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "f661659747f2f87f9e72095bb207bceb0f151cb4"
|
||||
"reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f661659747f2f87f9e72095bb207bceb0f151cb4",
|
||||
"reference": "f661659747f2f87f9e72095bb207bceb0f151cb4",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c814a05837f2edb0d1471d6e3f4ab3501ca3899a",
|
||||
"reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -970,11 +973,11 @@
|
||||
"ext-xml": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"myclabs/deep-copy": "^1.10.1",
|
||||
"phar-io/manifest": "^2.0.1",
|
||||
"phar-io/manifest": "^2.0.3",
|
||||
"phar-io/version": "^3.0.2",
|
||||
"php": ">=7.3",
|
||||
"phpspec/prophecy": "^1.12.1",
|
||||
"phpunit/php-code-coverage": "^9.2.3",
|
||||
"phpunit/php-code-coverage": "^9.2.7",
|
||||
"phpunit/php-file-iterator": "^3.0.5",
|
||||
"phpunit/php-invoker": "^3.1.1",
|
||||
"phpunit/php-text-template": "^2.0.3",
|
||||
@@ -988,7 +991,7 @@
|
||||
"sebastian/global-state": "^5.0.1",
|
||||
"sebastian/object-enumerator": "^4.0.3",
|
||||
"sebastian/resource-operations": "^3.0.3",
|
||||
"sebastian/type": "^2.3",
|
||||
"sebastian/type": "^2.3.4",
|
||||
"sebastian/version": "^3.0.2"
|
||||
},
|
||||
"require-dev": {
|
||||
@@ -1036,7 +1039,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.2"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.10"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1048,7 +1051,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2021-02-02T14:45:58+00:00"
|
||||
"time": "2021-09-25T07:38:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
@@ -1479,16 +1482,16 @@
|
||||
},
|
||||
{
|
||||
"name": "sebastian/exporter",
|
||||
"version": "4.0.3",
|
||||
"version": "4.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/exporter.git",
|
||||
"reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65"
|
||||
"reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65",
|
||||
"reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9",
|
||||
"reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1537,14 +1540,14 @@
|
||||
}
|
||||
],
|
||||
"description": "Provides the functionality to export PHP variables for visualization",
|
||||
"homepage": "http://www.github.com/sebastianbergmann/exporter",
|
||||
"homepage": "https://www.github.com/sebastianbergmann/exporter",
|
||||
"keywords": [
|
||||
"export",
|
||||
"exporter"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.3"
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1552,20 +1555,20 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-09-28T05:24:23+00:00"
|
||||
"time": "2021-11-11T14:18:36+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/global-state",
|
||||
"version": "5.0.2",
|
||||
"version": "5.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/global-state.git",
|
||||
"reference": "a90ccbddffa067b51f574dea6eb25d5680839455"
|
||||
"reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455",
|
||||
"reference": "a90ccbddffa067b51f574dea6eb25d5680839455",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/23bd5951f7ff26f12d4e3242864df3e08dec4e49",
|
||||
"reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1608,7 +1611,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/global-state/issues",
|
||||
"source": "https://github.com/sebastianbergmann/global-state/tree/5.0.2"
|
||||
"source": "https://github.com/sebastianbergmann/global-state/tree/5.0.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1616,7 +1619,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-10-26T15:55:19+00:00"
|
||||
"time": "2021-06-11T13:31:12+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/lines-of-code",
|
||||
@@ -1907,16 +1910,16 @@
|
||||
},
|
||||
{
|
||||
"name": "sebastian/type",
|
||||
"version": "2.3.1",
|
||||
"version": "2.3.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/type.git",
|
||||
"reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2"
|
||||
"reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2",
|
||||
"reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b8cd8a1c753c90bc1a0f5372170e3e489136f914",
|
||||
"reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1951,7 +1954,7 @@
|
||||
"homepage": "https://github.com/sebastianbergmann/type",
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/type/issues",
|
||||
"source": "https://github.com/sebastianbergmann/type/tree/2.3.1"
|
||||
"source": "https://github.com/sebastianbergmann/type/tree/2.3.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1959,7 +1962,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-10-26T13:18:59+00:00"
|
||||
"time": "2021-06-15T12:49:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/version",
|
||||
@@ -2016,64 +2019,37 @@
|
||||
},
|
||||
{
|
||||
"name": "squizlabs/php_codesniffer",
|
||||
"version": "2.9.2",
|
||||
"version": "3.6.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
|
||||
"reference": "2acf168de78487db620ab4bc524135a13cfe6745"
|
||||
"reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/2acf168de78487db620ab4bc524135a13cfe6745",
|
||||
"reference": "2acf168de78487db620ab4bc524135a13cfe6745",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/f268ca40d54617c6e06757f83f699775c9b3ff2e",
|
||||
"reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-simplexml": "*",
|
||||
"ext-tokenizer": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"php": ">=5.1.2"
|
||||
"php": ">=5.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.0"
|
||||
"phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
|
||||
},
|
||||
"bin": [
|
||||
"scripts/phpcs",
|
||||
"scripts/phpcbf"
|
||||
"bin/phpcs",
|
||||
"bin/phpcbf"
|
||||
],
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.x-dev"
|
||||
"dev-master": "3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"CodeSniffer.php",
|
||||
"CodeSniffer/CLI.php",
|
||||
"CodeSniffer/Exception.php",
|
||||
"CodeSniffer/File.php",
|
||||
"CodeSniffer/Fixer.php",
|
||||
"CodeSniffer/Report.php",
|
||||
"CodeSniffer/Reporting.php",
|
||||
"CodeSniffer/Sniff.php",
|
||||
"CodeSniffer/Tokens.php",
|
||||
"CodeSniffer/Reports/",
|
||||
"CodeSniffer/Tokenizers/",
|
||||
"CodeSniffer/DocGenerators/",
|
||||
"CodeSniffer/Standards/AbstractPatternSniff.php",
|
||||
"CodeSniffer/Standards/AbstractScopeSniff.php",
|
||||
"CodeSniffer/Standards/AbstractVariableSniff.php",
|
||||
"CodeSniffer/Standards/IncorrectPatternException.php",
|
||||
"CodeSniffer/Standards/Generic/Sniffs/",
|
||||
"CodeSniffer/Standards/MySource/Sniffs/",
|
||||
"CodeSniffer/Standards/PEAR/Sniffs/",
|
||||
"CodeSniffer/Standards/PSR1/Sniffs/",
|
||||
"CodeSniffer/Standards/PSR2/Sniffs/",
|
||||
"CodeSniffer/Standards/Squiz/Sniffs/",
|
||||
"CodeSniffer/Standards/Zend/Sniffs/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
@@ -2085,7 +2061,7 @@
|
||||
}
|
||||
],
|
||||
"description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
|
||||
"homepage": "http://www.squizlabs.com/php-codesniffer",
|
||||
"homepage": "https://github.com/squizlabs/PHP_CodeSniffer",
|
||||
"keywords": [
|
||||
"phpcs",
|
||||
"standards"
|
||||
@@ -2095,20 +2071,20 @@
|
||||
"source": "https://github.com/squizlabs/PHP_CodeSniffer",
|
||||
"wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
|
||||
},
|
||||
"time": "2018-11-07T22:31:41+00:00"
|
||||
"time": "2021-10-11T04:00:11+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-ctype",
|
||||
"version": "v1.22.1",
|
||||
"version": "v1.23.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-ctype.git",
|
||||
"reference": "c6c942b1ac76c82448322025e084cadc56048b4e"
|
||||
"reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e",
|
||||
"reference": "c6c942b1ac76c82448322025e084cadc56048b4e",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/46cd95797e9df938fdd2b03693b5fca5e64b01ce",
|
||||
"reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2120,7 +2096,7 @@
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "1.22-dev"
|
||||
"dev-main": "1.23-dev"
|
||||
},
|
||||
"thanks": {
|
||||
"name": "symfony/polyfill",
|
||||
@@ -2158,7 +2134,7 @@
|
||||
"portable"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.1"
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.23.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -2174,20 +2150,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T16:49:33+00:00"
|
||||
"time": "2021-02-19T12:13:01+00:00"
|
||||
},
|
||||
{
|
||||
"name": "theseer/tokenizer",
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/theseer/tokenizer.git",
|
||||
"reference": "75a63c33a8577608444246075ea0af0d052e452a"
|
||||
"reference": "34a41e998c2183e22995f158c581e7b5e755ab9e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a",
|
||||
"reference": "75a63c33a8577608444246075ea0af0d052e452a",
|
||||
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e",
|
||||
"reference": "34a41e998c2183e22995f158c581e7b5e755ab9e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2216,7 +2192,7 @@
|
||||
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
|
||||
"support": {
|
||||
"issues": "https://github.com/theseer/tokenizer/issues",
|
||||
"source": "https://github.com/theseer/tokenizer/tree/master"
|
||||
"source": "https://github.com/theseer/tokenizer/tree/1.2.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -2224,34 +2200,39 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-07-12T23:59:07+00:00"
|
||||
"time": "2021-07-28T10:34:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
"version": "1.9.1",
|
||||
"version": "1.10.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/webmozarts/assert.git",
|
||||
"reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389"
|
||||
"reference": "6964c76c7804814a842473e0c8fd15bab0f18e25"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389",
|
||||
"reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389",
|
||||
"url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25",
|
||||
"reference": "6964c76c7804814a842473e0c8fd15bab0f18e25",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.3.3 || ^7.0 || ^8.0",
|
||||
"php": "^7.2 || ^8.0",
|
||||
"symfony/polyfill-ctype": "^1.8"
|
||||
},
|
||||
"conflict": {
|
||||
"phpstan/phpstan": "<0.12.20",
|
||||
"vimeo/psalm": "<3.9.1"
|
||||
"vimeo/psalm": "<4.6.1 || 4.6.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.8.36 || ^7.5.13"
|
||||
"phpunit/phpunit": "^8.5.13"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.10-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Webmozart\\Assert\\": "src/"
|
||||
@@ -2275,21 +2256,30 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/webmozarts/assert/issues",
|
||||
"source": "https://github.com/webmozarts/assert/tree/1.9.1"
|
||||
"source": "https://github.com/webmozarts/assert/tree/1.10.0"
|
||||
},
|
||||
"time": "2020-07-08T17:02:28+00:00"
|
||||
"time": "2021-03-09T10:59:23+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [
|
||||
{
|
||||
"package": "squizlabs/php_codesniffer",
|
||||
"version": "3.6.1.0",
|
||||
"alias": "2.9999999.9999999",
|
||||
"alias_normalized": "2.9999999.9999999.0"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": [],
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
"php": "^7.3 || ~8.0.0"
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0",
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*"
|
||||
},
|
||||
"platform-dev": {
|
||||
"ext-iconv": "*"
|
||||
},
|
||||
"plugin-api-version": "2.0.0"
|
||||
"plugin-api-version": "2.1.0"
|
||||
}
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @see https://github.com/laminas/laminas-xml for the canonical source repository
|
||||
* @copyright https://github.com/laminas/laminas-xml/blob/master/COPYRIGHT.md
|
||||
* @license https://github.com/laminas/laminas-xml/blob/master/LICENSE.md New BSD License
|
||||
*/
|
||||
|
||||
namespace Laminas\Xml\Exception;
|
||||
|
||||
interface ExceptionInterface
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @see https://github.com/laminas/laminas-xml for the canonical source repository
|
||||
* @copyright https://github.com/laminas/laminas-xml/blob/master/COPYRIGHT.md
|
||||
* @license https://github.com/laminas/laminas-xml/blob/master/LICENSE.md New BSD License
|
||||
*/
|
||||
|
||||
namespace Laminas\Xml\Exception;
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @see https://github.com/laminas/laminas-xml for the canonical source repository
|
||||
* @copyright https://github.com/laminas/laminas-xml/blob/master/COPYRIGHT.md
|
||||
* @license https://github.com/laminas/laminas-xml/blob/master/LICENSE.md New BSD License
|
||||
*/
|
||||
|
||||
namespace Laminas\Xml\Exception;
|
||||
|
||||
/**
|
||||
|
||||
11
vendor/laminas/laminas-xml/src/Security.php
vendored
11
vendor/laminas/laminas-xml/src/Security.php
vendored
@@ -1,11 +1,5 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @see https://github.com/laminas/laminas-xml for the canonical source repository
|
||||
* @copyright https://github.com/laminas/laminas-xml/blob/master/COPYRIGHT.md
|
||||
* @license https://github.com/laminas/laminas-xml/blob/master/LICENSE.md New BSD License
|
||||
*/
|
||||
|
||||
namespace Laminas\Xml;
|
||||
|
||||
use DOMDocument;
|
||||
@@ -143,10 +137,7 @@ class Security
|
||||
public static function scanHtml($html, DOMDocument $dom = null, $libXmlConstants = 0)
|
||||
{
|
||||
$callback = function ($html, $dom, $constants) {
|
||||
$internalErrors = libxml_use_internal_errors(true);
|
||||
$document = $dom->loadHTML($html, $constants);
|
||||
libxml_use_internal_errors($internalErrors);
|
||||
return $document;
|
||||
return $dom->loadHtml($html, $constants);
|
||||
};
|
||||
return self::scanString($html, $dom, $libXmlConstants, $callback);
|
||||
}
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
community_bridge: laminas-project
|
||||
@@ -1,32 +0,0 @@
|
||||
name: "Continuous Integration"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- '[0-9]+.[0-9]+.x'
|
||||
- 'refs/pull/*'
|
||||
|
||||
jobs:
|
||||
matrix:
|
||||
name: Generate job matrix
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
matrix: ${{ steps.matrix.outputs.matrix }}
|
||||
steps:
|
||||
- name: Gather CI configuration
|
||||
id: matrix
|
||||
uses: laminas/laminas-ci-matrix-action@v1
|
||||
|
||||
qa:
|
||||
name: QA Checks
|
||||
needs: [matrix]
|
||||
runs-on: ${{ matrix.operatingSystem }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix: ${{ fromJSON(needs.matrix.outputs.matrix) }}
|
||||
steps:
|
||||
- name: ${{ matrix.name }}
|
||||
uses: laminas/laminas-continuous-integration-action@v1
|
||||
with:
|
||||
job: ${{ matrix.job }}
|
||||
@@ -1,61 +0,0 @@
|
||||
# Alternate workflow example.
|
||||
# This one is identical to the one in release-on-milestone.yml, with one change:
|
||||
# the Release step uses the ORGANIZATION_ADMIN_TOKEN instead, to allow it to
|
||||
# trigger a release workflow event. This is useful if you have other actions
|
||||
# that intercept that event.
|
||||
|
||||
name: "Automatic Releases"
|
||||
|
||||
on:
|
||||
milestone:
|
||||
types:
|
||||
- "closed"
|
||||
|
||||
jobs:
|
||||
release:
|
||||
name: "GIT tag, release & create merge-up PR"
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: "Checkout"
|
||||
uses: "actions/checkout@v2"
|
||||
|
||||
- name: "Release"
|
||||
uses: "laminas/automatic-releases@v1"
|
||||
with:
|
||||
command-name: "laminas:automatic-releases:release"
|
||||
env:
|
||||
"GITHUB_TOKEN": ${{ secrets.ORGANIZATION_ADMIN_TOKEN }}
|
||||
"SIGNING_SECRET_KEY": ${{ secrets.SIGNING_SECRET_KEY }}
|
||||
"GIT_AUTHOR_NAME": ${{ secrets.GIT_AUTHOR_NAME }}
|
||||
"GIT_AUTHOR_EMAIL": ${{ secrets.GIT_AUTHOR_EMAIL }}
|
||||
|
||||
- name: "Create Merge-Up Pull Request"
|
||||
uses: "laminas/automatic-releases@v1"
|
||||
with:
|
||||
command-name: "laminas:automatic-releases:create-merge-up-pull-request"
|
||||
env:
|
||||
"GITHUB_TOKEN": ${{ secrets.GITHUB_TOKEN }}
|
||||
"SIGNING_SECRET_KEY": ${{ secrets.SIGNING_SECRET_KEY }}
|
||||
"GIT_AUTHOR_NAME": ${{ secrets.GIT_AUTHOR_NAME }}
|
||||
"GIT_AUTHOR_EMAIL": ${{ secrets.GIT_AUTHOR_EMAIL }}
|
||||
|
||||
- name: "Create and/or Switch to new Release Branch"
|
||||
uses: "laminas/automatic-releases@v1"
|
||||
with:
|
||||
command-name: "laminas:automatic-releases:switch-default-branch-to-next-minor"
|
||||
env:
|
||||
"GITHUB_TOKEN": ${{ secrets.ORGANIZATION_ADMIN_TOKEN }}
|
||||
"SIGNING_SECRET_KEY": ${{ secrets.SIGNING_SECRET_KEY }}
|
||||
"GIT_AUTHOR_NAME": ${{ secrets.GIT_AUTHOR_NAME }}
|
||||
"GIT_AUTHOR_EMAIL": ${{ secrets.GIT_AUTHOR_EMAIL }}
|
||||
|
||||
- name: "Create new milestones"
|
||||
uses: "laminas/automatic-releases@v1"
|
||||
with:
|
||||
command-name: "laminas:automatic-releases:create-milestones"
|
||||
env:
|
||||
"GITHUB_TOKEN": ${{ secrets.GITHUB_TOKEN }}
|
||||
"SIGNING_SECRET_KEY": ${{ secrets.SIGNING_SECRET_KEY }}
|
||||
"GIT_AUTHOR_NAME": ${{ secrets.GIT_AUTHOR_NAME }}
|
||||
"GIT_AUTHOR_EMAIL": ${{ secrets.GIT_AUTHOR_EMAIL }}
|
||||
@@ -1,5 +0,0 @@
|
||||
{
|
||||
"ignore_php_platform_requirements": {
|
||||
"8.1": true
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
Copyright (c) 2020 Laminas Project a Series of LF Projects, LLC. (https://getlaminas.org/)
|
||||
@@ -1,26 +0,0 @@
|
||||
Copyright (c) 2020 Laminas Project a Series of LF Projects, LLC.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
- Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
- Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
- Neither the name of Laminas Foundation nor the names of its contributors may
|
||||
be used to endorse or promote products derived from this software without
|
||||
specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
@@ -1,30 +0,0 @@
|
||||
# laminas-zendframework-bridge
|
||||
|
||||
[](https://github.com/laminas/laminas-zendframework-bridge/actions?query=workflow%3A"Continuous+Integration")
|
||||
|
||||
|
||||
This library provides a custom autoloader that aliases legacy Zend Framework,
|
||||
Apigility, and Expressive classes to their replacements under the Laminas
|
||||
Project.
|
||||
|
||||
This package should be installed only if you are also using the composer plugin
|
||||
that installs Laminas packages to replace ZF/Apigility/Expressive packages.
|
||||
|
||||
This tool supports:
|
||||
|
||||
* Zend Framework MVC projects, all v2 and v3 releases
|
||||
* Apigility projects, all stable versions
|
||||
* Expressive versions, all stable versions
|
||||
|
||||
## Installation
|
||||
|
||||
Run the following to install this library:
|
||||
|
||||
```bash
|
||||
$ composer require laminas/laminas-zendframework-bridge
|
||||
```
|
||||
|
||||
## Support
|
||||
|
||||
* [Issues](https://github.com/laminas/laminas-zendframework-bridge/issues/)
|
||||
* [Forum](https://discourse.laminas.dev/)
|
||||
@@ -1,61 +0,0 @@
|
||||
{
|
||||
"name": "laminas/laminas-zendframework-bridge",
|
||||
"description": "Alias legacy ZF class names to Laminas Project equivalents.",
|
||||
"license": "BSD-3-Clause",
|
||||
"keywords": [
|
||||
"autoloading",
|
||||
"laminas",
|
||||
"zf",
|
||||
"zendframework"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/laminas/laminas-zendframework-bridge/issues",
|
||||
"source": "https://github.com/laminas/laminas-zendframework-bridge",
|
||||
"rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom",
|
||||
"forum": "https://discourse.laminas.dev/"
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ~8.0.0 || ~8.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.3",
|
||||
"psalm/plugin-phpunit": "^0.15.1",
|
||||
"squizlabs/php_codesniffer": "^3.5",
|
||||
"vimeo/psalm": "^4.6"
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/autoload.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Laminas\\ZendFrameworkBridge\\": "src//"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"files": [
|
||||
"test/classes.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"LaminasTest\\ZendFrameworkBridge\\": "test/",
|
||||
"LaminasTest\\ZendFrameworkBridge\\TestAsset\\": "test/TestAsset/classes/",
|
||||
"Laminas\\ApiTools\\": "test/TestAsset/LaminasApiTools/",
|
||||
"Mezzio\\": "test/TestAsset/Mezzio/",
|
||||
"Laminas\\": "test/TestAsset/Laminas/"
|
||||
}
|
||||
},
|
||||
"extra": {
|
||||
"laminas": {
|
||||
"module": "Laminas\\ZendFrameworkBridge"
|
||||
}
|
||||
},
|
||||
"config": {
|
||||
"sort-packages": true
|
||||
},
|
||||
"scripts": {
|
||||
"cs-check": "phpcs",
|
||||
"cs-fix": "phpcbf",
|
||||
"static-analysis": "psalm --shepherd --stats",
|
||||
"test": "phpunit --colors=always",
|
||||
"test-coverage": "phpunit --colors=always --coverage-clover clover.xml"
|
||||
}
|
||||
}
|
||||
3841
vendor/laminas/laminas-zendframework-bridge/composer.lock
generated
vendored
3841
vendor/laminas/laminas-zendframework-bridge/composer.lock
generated
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,372 +0,0 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
// NEVER REWRITE
|
||||
'zendframework/zendframework' => 'zendframework/zendframework',
|
||||
'zend-developer-tools/toolbar/bjy' => 'zend-developer-tools/toolbar/bjy',
|
||||
'zend-developer-tools/toolbar/doctrine' => 'zend-developer-tools/toolbar/doctrine',
|
||||
|
||||
// NAMESPACES
|
||||
// Zend Framework components
|
||||
'Zend\\AuraDi\\Config' => 'Laminas\\AuraDi\\Config',
|
||||
'Zend\\Authentication' => 'Laminas\\Authentication',
|
||||
'Zend\\Barcode' => 'Laminas\\Barcode',
|
||||
'Zend\\Cache' => 'Laminas\\Cache',
|
||||
'Zend\\Captcha' => 'Laminas\\Captcha',
|
||||
'Zend\\Code' => 'Laminas\\Code',
|
||||
'ZendCodingStandard\\Sniffs' => 'LaminasCodingStandard\\Sniffs',
|
||||
'ZendCodingStandard\\Utils' => 'LaminasCodingStandard\\Utils',
|
||||
'Zend\\ComponentInstaller' => 'Laminas\\ComponentInstaller',
|
||||
'Zend\\Config' => 'Laminas\\Config',
|
||||
'Zend\\ConfigAggregator' => 'Laminas\\ConfigAggregator',
|
||||
'Zend\\ConfigAggregatorModuleManager' => 'Laminas\\ConfigAggregatorModuleManager',
|
||||
'Zend\\ConfigAggregatorParameters' => 'Laminas\\ConfigAggregatorParameters',
|
||||
'Zend\\Console' => 'Laminas\\Console',
|
||||
'Zend\\ContainerConfigTest' => 'Laminas\\ContainerConfigTest',
|
||||
'Zend\\Crypt' => 'Laminas\\Crypt',
|
||||
'Zend\\Db' => 'Laminas\\Db',
|
||||
'ZendDeveloperTools' => 'Laminas\\DeveloperTools',
|
||||
'Zend\\Di' => 'Laminas\\Di',
|
||||
'Zend\\Diactoros' => 'Laminas\\Diactoros',
|
||||
'ZendDiagnostics\\Check' => 'Laminas\\Diagnostics\\Check',
|
||||
'ZendDiagnostics\\Result' => 'Laminas\\Diagnostics\\Result',
|
||||
'ZendDiagnostics\\Runner' => 'Laminas\\Diagnostics\\Runner',
|
||||
'Zend\\Dom' => 'Laminas\\Dom',
|
||||
'Zend\\Escaper' => 'Laminas\\Escaper',
|
||||
'Zend\\EventManager' => 'Laminas\\EventManager',
|
||||
'Zend\\Feed' => 'Laminas\\Feed',
|
||||
'Zend\\File' => 'Laminas\\File',
|
||||
'Zend\\Filter' => 'Laminas\\Filter',
|
||||
'Zend\\Form' => 'Laminas\\Form',
|
||||
'Zend\\Http' => 'Laminas\\Http',
|
||||
'Zend\\HttpHandlerRunner' => 'Laminas\\HttpHandlerRunner',
|
||||
'Zend\\Hydrator' => 'Laminas\\Hydrator',
|
||||
'Zend\\I18n' => 'Laminas\\I18n',
|
||||
'Zend\\InputFilter' => 'Laminas\\InputFilter',
|
||||
'Zend\\Json' => 'Laminas\\Json',
|
||||
'Zend\\Ldap' => 'Laminas\\Ldap',
|
||||
'Zend\\Loader' => 'Laminas\\Loader',
|
||||
'Zend\\Log' => 'Laminas\\Log',
|
||||
'Zend\\Mail' => 'Laminas\\Mail',
|
||||
'Zend\\Math' => 'Laminas\\Math',
|
||||
'Zend\\Memory' => 'Laminas\\Memory',
|
||||
'Zend\\Mime' => 'Laminas\\Mime',
|
||||
'Zend\\ModuleManager' => 'Laminas\\ModuleManager',
|
||||
'Zend\\Mvc' => 'Laminas\\Mvc',
|
||||
'Zend\\Navigation' => 'Laminas\\Navigation',
|
||||
'Zend\\Paginator' => 'Laminas\\Paginator',
|
||||
'Zend\\Permissions' => 'Laminas\\Permissions',
|
||||
'Zend\\Pimple\\Config' => 'Laminas\\Pimple\\Config',
|
||||
'Zend\\ProblemDetails' => 'Mezzio\\ProblemDetails',
|
||||
'Zend\\ProgressBar' => 'Laminas\\ProgressBar',
|
||||
'Zend\\Psr7Bridge' => 'Laminas\\Psr7Bridge',
|
||||
'Zend\\Router' => 'Laminas\\Router',
|
||||
'Zend\\Serializer' => 'Laminas\\Serializer',
|
||||
'Zend\\Server' => 'Laminas\\Server',
|
||||
'Zend\\ServiceManager' => 'Laminas\\ServiceManager',
|
||||
'ZendService\\ReCaptcha' => 'Laminas\\ReCaptcha',
|
||||
'ZendService\\Twitter' => 'Laminas\\Twitter',
|
||||
'Zend\\Session' => 'Laminas\\Session',
|
||||
'Zend\\SkeletonInstaller' => 'Laminas\\SkeletonInstaller',
|
||||
'Zend\\Soap' => 'Laminas\\Soap',
|
||||
'Zend\\Stdlib' => 'Laminas\\Stdlib',
|
||||
'Zend\\Stratigility' => 'Laminas\\Stratigility',
|
||||
'Zend\\Tag' => 'Laminas\\Tag',
|
||||
'Zend\\Test' => 'Laminas\\Test',
|
||||
'Zend\\Text' => 'Laminas\\Text',
|
||||
'Zend\\Uri' => 'Laminas\\Uri',
|
||||
'Zend\\Validator' => 'Laminas\\Validator',
|
||||
'Zend\\View' => 'Laminas\\View',
|
||||
'ZendXml' => 'Laminas\\Xml',
|
||||
'Zend\\Xml2Json' => 'Laminas\\Xml2Json',
|
||||
'Zend\\XmlRpc' => 'Laminas\\XmlRpc',
|
||||
'ZendOAuth' => 'Laminas\\OAuth',
|
||||
|
||||
// class ZendAcl in zend-expressive-authorization-acl
|
||||
'ZendAcl' => 'LaminasAcl',
|
||||
'Zend\\Expressive\\Authorization\\Acl\\ZendAcl' => 'Mezzio\\Authorization\\Acl\\LaminasAcl',
|
||||
// class ZendHttpClientDecorator in zend-feed
|
||||
'ZendHttp' => 'LaminasHttp',
|
||||
// class ZendModuleProvider in zend-config-aggregator-modulemanager
|
||||
'ZendModule' => 'LaminasModule',
|
||||
// class ZendRbac in zend-expressive-authorization-rbac
|
||||
'ZendRbac' => 'LaminasRbac',
|
||||
'Zend\\Expressive\\Authorization\\Rbac\\ZendRbac' => 'Mezzio\\Authorization\\Rbac\\LaminasRbac',
|
||||
// class ZendRouter in zend-expressive-router-zendrouter
|
||||
'ZendRouter' => 'LaminasRouter',
|
||||
'Zend\\Expressive\\Router\\ZendRouter' => 'Mezzio\\Router\\LaminasRouter',
|
||||
// class ZendViewRenderer in zend-expressive-zendviewrenderer
|
||||
'ZendViewRenderer' => 'LaminasViewRenderer',
|
||||
'Zend\\Expressive\\ZendView\\ZendViewRenderer' => 'Mezzio\\LaminasView\\LaminasViewRenderer',
|
||||
'a\\Zend' => 'a\\Zend',
|
||||
'b\\Zend' => 'b\\Zend',
|
||||
'c\\Zend' => 'c\\Zend',
|
||||
'd\\Zend' => 'd\\Zend',
|
||||
'e\\Zend' => 'e\\Zend',
|
||||
'f\\Zend' => 'f\\Zend',
|
||||
'g\\Zend' => 'g\\Zend',
|
||||
'h\\Zend' => 'h\\Zend',
|
||||
'i\\Zend' => 'i\\Zend',
|
||||
'j\\Zend' => 'j\\Zend',
|
||||
'k\\Zend' => 'k\\Zend',
|
||||
'l\\Zend' => 'l\\Zend',
|
||||
'm\\Zend' => 'm\\Zend',
|
||||
'n\\Zend' => 'n\\Zend',
|
||||
'o\\Zend' => 'o\\Zend',
|
||||
'p\\Zend' => 'p\\Zend',
|
||||
'q\\Zend' => 'q\\Zend',
|
||||
'r\\Zend' => 'r\\Zend',
|
||||
's\\Zend' => 's\\Zend',
|
||||
't\\Zend' => 't\\Zend',
|
||||
'u\\Zend' => 'u\\Zend',
|
||||
'v\\Zend' => 'v\\Zend',
|
||||
'w\\Zend' => 'w\\Zend',
|
||||
'x\\Zend' => 'x\\Zend',
|
||||
'y\\Zend' => 'y\\Zend',
|
||||
'z\\Zend' => 'z\\Zend',
|
||||
|
||||
// Expressive
|
||||
'Zend\\Expressive' => 'Mezzio',
|
||||
'ZendAuthentication' => 'LaminasAuthentication',
|
||||
'ZendAcl' => 'LaminasAcl',
|
||||
'ZendRbac' => 'LaminasRbac',
|
||||
'ZendRouter' => 'LaminasRouter',
|
||||
'ExpressiveUrlGenerator' => 'MezzioUrlGenerator',
|
||||
'ExpressiveInstaller' => 'MezzioInstaller',
|
||||
|
||||
// Apigility
|
||||
'ZF\\Apigility' => 'Laminas\\ApiTools',
|
||||
'ZF\\ApiProblem' => 'Laminas\\ApiTools\\ApiProblem',
|
||||
'ZF\\AssetManager' => 'Laminas\\ApiTools\\AssetManager',
|
||||
'ZF\\ComposerAutoloading' => 'Laminas\\ComposerAutoloading',
|
||||
'ZF\\Configuration' => 'Laminas\\ApiTools\\Configuration',
|
||||
'ZF\\ContentNegotiation' => 'Laminas\\ApiTools\\ContentNegotiation',
|
||||
'ZF\\ContentValidation' => 'Laminas\\ApiTools\\ContentValidation',
|
||||
'ZF\\DevelopmentMode' => 'Laminas\\DevelopmentMode',
|
||||
'ZF\\Doctrine\\QueryBuilder' => 'Laminas\\ApiTools\\Doctrine\\QueryBuilder',
|
||||
'ZF\\Hal' => 'Laminas\\ApiTools\\Hal',
|
||||
'ZF\\HttpCache' => 'Laminas\\ApiTools\\HttpCache',
|
||||
'ZF\\MvcAuth' => 'Laminas\\ApiTools\\MvcAuth',
|
||||
'ZF\\OAuth2' => 'Laminas\\ApiTools\\OAuth2',
|
||||
'ZF\\Rest' => 'Laminas\\ApiTools\\Rest',
|
||||
'ZF\\Rpc' => 'Laminas\\ApiTools\\Rpc',
|
||||
'ZF\\Versioning' => 'Laminas\\ApiTools\\Versioning',
|
||||
'a\\ZF' => 'a\\ZF',
|
||||
'b\\ZF' => 'b\\ZF',
|
||||
'c\\ZF' => 'c\\ZF',
|
||||
'd\\ZF' => 'd\\ZF',
|
||||
'e\\ZF' => 'e\\ZF',
|
||||
'f\\ZF' => 'f\\ZF',
|
||||
'g\\ZF' => 'g\\ZF',
|
||||
'h\\ZF' => 'h\\ZF',
|
||||
'i\\ZF' => 'i\\ZF',
|
||||
'j\\ZF' => 'j\\ZF',
|
||||
'k\\ZF' => 'k\\ZF',
|
||||
'l\\ZF' => 'l\\ZF',
|
||||
'm\\ZF' => 'm\\ZF',
|
||||
'n\\ZF' => 'n\\ZF',
|
||||
'o\\ZF' => 'o\\ZF',
|
||||
'p\\ZF' => 'p\\ZF',
|
||||
'q\\ZF' => 'q\\ZF',
|
||||
'r\\ZF' => 'r\\ZF',
|
||||
's\\ZF' => 's\\ZF',
|
||||
't\\ZF' => 't\\ZF',
|
||||
'u\\ZF' => 'u\\ZF',
|
||||
'v\\ZF' => 'v\\ZF',
|
||||
'w\\ZF' => 'w\\ZF',
|
||||
'x\\ZF' => 'x\\ZF',
|
||||
'y\\ZF' => 'y\\ZF',
|
||||
'z\\ZF' => 'z\\ZF',
|
||||
|
||||
'ApigilityModuleInterface' => 'ApiToolsModuleInterface',
|
||||
'ApigilityProviderInterface' => 'ApiToolsProviderInterface',
|
||||
'ApigilityVersionController' => 'ApiToolsVersionController',
|
||||
|
||||
// PACKAGES
|
||||
// ZF components, MVC
|
||||
'zendframework/skeleton-application' => 'laminas/skeleton-application',
|
||||
'zendframework/zend-auradi-config' => 'laminas/laminas-auradi-config',
|
||||
'zendframework/zend-authentication' => 'laminas/laminas-authentication',
|
||||
'zendframework/zend-barcode' => 'laminas/laminas-barcode',
|
||||
'zendframework/zend-cache' => 'laminas/laminas-cache',
|
||||
'zendframework/zend-captcha' => 'laminas/laminas-captcha',
|
||||
'zendframework/zend-code' => 'laminas/laminas-code',
|
||||
'zendframework/zend-coding-standard' => 'laminas/laminas-coding-standard',
|
||||
'zendframework/zend-component-installer' => 'laminas/laminas-component-installer',
|
||||
'zendframework/zend-composer-autoloading' => 'laminas/laminas-composer-autoloading',
|
||||
'zendframework/zend-config-aggregator' => 'laminas/laminas-config-aggregator',
|
||||
'zendframework/zend-config' => 'laminas/laminas-config',
|
||||
'zendframework/zend-console' => 'laminas/laminas-console',
|
||||
'zendframework/zend-container-config-test' => 'laminas/laminas-container-config-test',
|
||||
'zendframework/zend-crypt' => 'laminas/laminas-crypt',
|
||||
'zendframework/zend-db' => 'laminas/laminas-db',
|
||||
'zendframework/zend-developer-tools' => 'laminas/laminas-developer-tools',
|
||||
'zendframework/zend-diactoros' => 'laminas/laminas-diactoros',
|
||||
'zendframework/zenddiagnostics' => 'laminas/laminas-diagnostics',
|
||||
'zendframework/zend-di' => 'laminas/laminas-di',
|
||||
'zendframework/zend-dom' => 'laminas/laminas-dom',
|
||||
'zendframework/zend-escaper' => 'laminas/laminas-escaper',
|
||||
'zendframework/zend-eventmanager' => 'laminas/laminas-eventmanager',
|
||||
'zendframework/zend-feed' => 'laminas/laminas-feed',
|
||||
'zendframework/zend-file' => 'laminas/laminas-file',
|
||||
'zendframework/zend-filter' => 'laminas/laminas-filter',
|
||||
'zendframework/zend-form' => 'laminas/laminas-form',
|
||||
'zendframework/zend-httphandlerrunner' => 'laminas/laminas-httphandlerrunner',
|
||||
'zendframework/zend-http' => 'laminas/laminas-http',
|
||||
'zendframework/zend-hydrator' => 'laminas/laminas-hydrator',
|
||||
'zendframework/zend-i18n' => 'laminas/laminas-i18n',
|
||||
'zendframework/zend-i18n-resources' => 'laminas/laminas-i18n-resources',
|
||||
'zendframework/zend-inputfilter' => 'laminas/laminas-inputfilter',
|
||||
'zendframework/zend-json' => 'laminas/laminas-json',
|
||||
'zendframework/zend-json-server' => 'laminas/laminas-json-server',
|
||||
'zendframework/zend-ldap' => 'laminas/laminas-ldap',
|
||||
'zendframework/zend-loader' => 'laminas/laminas-loader',
|
||||
'zendframework/zend-log' => 'laminas/laminas-log',
|
||||
'zendframework/zend-mail' => 'laminas/laminas-mail',
|
||||
'zendframework/zend-math' => 'laminas/laminas-math',
|
||||
'zendframework/zend-memory' => 'laminas/laminas-memory',
|
||||
'zendframework/zend-mime' => 'laminas/laminas-mime',
|
||||
'zendframework/zend-modulemanager' => 'laminas/laminas-modulemanager',
|
||||
'zendframework/zend-mvc' => 'laminas/laminas-mvc',
|
||||
'zendframework/zend-navigation' => 'laminas/laminas-navigation',
|
||||
'zendframework/zend-oauth' => 'laminas/laminas-oauth',
|
||||
'zendframework/zend-paginator' => 'laminas/laminas-paginator',
|
||||
'zendframework/zend-permissions-acl' => 'laminas/laminas-permissions-acl',
|
||||
'zendframework/zend-permissions-rbac' => 'laminas/laminas-permissions-rbac',
|
||||
'zendframework/zend-pimple-config' => 'laminas/laminas-pimple-config',
|
||||
'zendframework/zend-progressbar' => 'laminas/laminas-progressbar',
|
||||
'zendframework/zend-psr7bridge' => 'laminas/laminas-psr7bridge',
|
||||
'zendframework/zend-recaptcha' => 'laminas/laminas-recaptcha',
|
||||
'zendframework/zend-router' => 'laminas/laminas-router',
|
||||
'zendframework/zend-serializer' => 'laminas/laminas-serializer',
|
||||
'zendframework/zend-server' => 'laminas/laminas-server',
|
||||
'zendframework/zend-servicemanager' => 'laminas/laminas-servicemanager',
|
||||
'zendframework/zendservice-recaptcha' => 'laminas/laminas-recaptcha',
|
||||
'zendframework/zendservice-twitter' => 'laminas/laminas-twitter',
|
||||
'zendframework/zend-session' => 'laminas/laminas-session',
|
||||
'zendframework/zend-skeleton-installer' => 'laminas/laminas-skeleton-installer',
|
||||
'zendframework/zend-soap' => 'laminas/laminas-soap',
|
||||
'zendframework/zend-stdlib' => 'laminas/laminas-stdlib',
|
||||
'zendframework/zend-stratigility' => 'laminas/laminas-stratigility',
|
||||
'zendframework/zend-tag' => 'laminas/laminas-tag',
|
||||
'zendframework/zend-test' => 'laminas/laminas-test',
|
||||
'zendframework/zend-text' => 'laminas/laminas-text',
|
||||
'zendframework/zend-uri' => 'laminas/laminas-uri',
|
||||
'zendframework/zend-validator' => 'laminas/laminas-validator',
|
||||
'zendframework/zend-view' => 'laminas/laminas-view',
|
||||
'zendframework/zend-xml2json' => 'laminas/laminas-xml2json',
|
||||
'zendframework/zend-xml' => 'laminas/laminas-xml',
|
||||
'zendframework/zend-xmlrpc' => 'laminas/laminas-xmlrpc',
|
||||
|
||||
// Expressive packages
|
||||
'zendframework/zend-expressive' => 'mezzio/mezzio',
|
||||
'zendframework/zend-expressive-zendrouter' => 'mezzio/mezzio-laminasrouter',
|
||||
'zendframework/zend-problem-details' => 'mezzio/mezzio-problem-details',
|
||||
'zendframework/zend-expressive-zendviewrenderer' => 'mezzio/mezzio-laminasviewrenderer',
|
||||
|
||||
// Apigility packages
|
||||
'zfcampus/apigility-documentation' => 'laminas-api-tools/documentation',
|
||||
'zfcampus/statuslib-example' => 'laminas-api-tools/statuslib-example',
|
||||
'zfcampus/zf-apigility' => 'laminas-api-tools/api-tools',
|
||||
'zfcampus/zf-api-problem' => 'laminas-api-tools/api-tools-api-problem',
|
||||
'zfcampus/zf-asset-manager' => 'laminas-api-tools/api-tools-asset-manager',
|
||||
'zfcampus/zf-configuration' => 'laminas-api-tools/api-tools-configuration',
|
||||
'zfcampus/zf-content-negotiation' => 'laminas-api-tools/api-tools-content-negotiation',
|
||||
'zfcampus/zf-content-validation' => 'laminas-api-tools/api-tools-content-validation',
|
||||
'zfcampus/zf-development-mode' => 'laminas/laminas-development-mode',
|
||||
'zfcampus/zf-doctrine-querybuilder' => 'laminas-api-tools/api-tools-doctrine-querybuilder',
|
||||
'zfcampus/zf-hal' => 'laminas-api-tools/api-tools-hal',
|
||||
'zfcampus/zf-http-cache' => 'laminas-api-tools/api-tools-http-cache',
|
||||
'zfcampus/zf-mvc-auth' => 'laminas-api-tools/api-tools-mvc-auth',
|
||||
'zfcampus/zf-oauth2' => 'laminas-api-tools/api-tools-oauth2',
|
||||
'zfcampus/zf-rest' => 'laminas-api-tools/api-tools-rest',
|
||||
'zfcampus/zf-rpc' => 'laminas-api-tools/api-tools-rpc',
|
||||
'zfcampus/zf-versioning' => 'laminas-api-tools/api-tools-versioning',
|
||||
|
||||
// CONFIG KEYS, SCRIPT NAMES, ETC
|
||||
// ZF components
|
||||
'::fromZend' => '::fromLaminas', // psr7bridge
|
||||
'::toZend' => '::toLaminas', // psr7bridge
|
||||
'use_zend_loader' => 'use_laminas_loader', // zend-modulemanager
|
||||
'zend-config' => 'laminas-config',
|
||||
'zend-developer-tools/' => 'laminas-developer-tools/',
|
||||
'zend-tag-cloud' => 'laminas-tag-cloud',
|
||||
'zenddevelopertools' => 'laminas-developer-tools',
|
||||
'zendbarcode' => 'laminasbarcode',
|
||||
'ZendBarcode' => 'LaminasBarcode',
|
||||
'zendcache' => 'laminascache',
|
||||
'ZendCache' => 'LaminasCache',
|
||||
'zendconfig' => 'laminasconfig',
|
||||
'ZendConfig' => 'LaminasConfig',
|
||||
'zendfeed' => 'laminasfeed',
|
||||
'ZendFeed' => 'LaminasFeed',
|
||||
'zendfilter' => 'laminasfilter',
|
||||
'ZendFilter' => 'LaminasFilter',
|
||||
'zendform' => 'laminasform',
|
||||
'ZendForm' => 'LaminasForm',
|
||||
'zendi18n' => 'laminasi18n',
|
||||
'ZendI18n' => 'LaminasI18n',
|
||||
'zendinputfilter' => 'laminasinputfilter',
|
||||
'ZendInputFilter' => 'LaminasInputFilter',
|
||||
'zendlog' => 'laminaslog',
|
||||
'ZendLog' => 'LaminasLog',
|
||||
'zendmail' => 'laminasmail',
|
||||
'ZendMail' => 'LaminasMail',
|
||||
'zendmvc' => 'laminasmvc',
|
||||
'ZendMvc' => 'LaminasMvc',
|
||||
'zendpaginator' => 'laminaspaginator',
|
||||
'ZendPaginator' => 'LaminasPaginator',
|
||||
'zendserializer' => 'laminasserializer',
|
||||
'ZendSerializer' => 'LaminasSerializer',
|
||||
'zendtag' => 'laminastag',
|
||||
'ZendTag' => 'LaminasTag',
|
||||
'zendtext' => 'laminastext',
|
||||
'ZendText' => 'LaminasText',
|
||||
'zendvalidator' => 'laminasvalidator',
|
||||
'ZendValidator' => 'LaminasValidator',
|
||||
'zendview' => 'laminasview',
|
||||
'ZendView' => 'LaminasView',
|
||||
'zend-framework.flf' => 'laminas-project.flf',
|
||||
|
||||
// Expressive-related
|
||||
"'zend-expressive'" => "'mezzio'",
|
||||
'"zend-expressive"' => '"mezzio"',
|
||||
'zend-expressive.' => 'mezzio.',
|
||||
'zend-expressive-authorization' => 'mezzio-authorization',
|
||||
'zend-expressive-hal' => 'mezzio-hal',
|
||||
'zend-expressive-session' => 'mezzio-session',
|
||||
'zend-expressive-swoole' => 'mezzio-swoole',
|
||||
'zend-expressive-tooling' => 'mezzio-tooling',
|
||||
|
||||
// Apigility-related
|
||||
"'zf-apigility'" => "'api-tools'",
|
||||
'"zf-apigility"' => '"api-tools"',
|
||||
'zf-apigility/' => 'api-tools/',
|
||||
'zf-apigility-admin' => 'api-tools-admin',
|
||||
'zf-content-negotiation' => 'api-tools-content-negotiation',
|
||||
'zf-hal' => 'api-tools-hal',
|
||||
'zf-rest' => 'api-tools-rest',
|
||||
'zf-rpc' => 'api-tools-rpc',
|
||||
'zf-content-validation' => 'api-tools-content-validation',
|
||||
'zf-apigility-ui' => 'api-tools-ui',
|
||||
'zf-apigility-documentation-blueprint' => 'api-tools-documentation-blueprint',
|
||||
'zf-apigility-documentation-swagger' => 'api-tools-documentation-swagger',
|
||||
'zf-apigility-welcome' => 'api-tools-welcome',
|
||||
'zf-api-problem' => 'api-tools-api-problem',
|
||||
'zf-configuration' => 'api-tools-configuration',
|
||||
'zf-http-cache' => 'api-tools-http-cache',
|
||||
'zf-mvc-auth' => 'api-tools-mvc-auth',
|
||||
'zf-oauth2' => 'api-tools-oauth2',
|
||||
'zf-versioning' => 'api-tools-versioning',
|
||||
'ZfApigilityDoctrineQueryProviderManager' => 'LaminasApiToolsDoctrineQueryProviderManager',
|
||||
'ZfApigilityDoctrineQueryCreateFilterManager' => 'LaminasApiToolsDoctrineQueryCreateFilterManager',
|
||||
'zf-apigility-doctrine' => 'api-tools-doctrine',
|
||||
'zf-development-mode' => 'laminas-development-mode',
|
||||
'zf-doctrine-querybuilder' => 'api-tools-doctrine-querybuilder',
|
||||
|
||||
// 3rd party Apigility packages
|
||||
'api-skeletons/zf-' => 'api-skeletons/zf-', // api-skeletons packages
|
||||
'zf-oauth2-' => 'zf-oauth2-', // api-skeletons OAuth2-related packages
|
||||
'ZF\\OAuth2\\Client' => 'ZF\\OAuth2\\Client', // api-skeletons/zf-oauth2-client
|
||||
'ZF\\OAuth2\\Doctrine' => 'ZF\\OAuth2\\Doctrine', // api-skeletons/zf-oauth2-doctrine
|
||||
];
|
||||
@@ -1,363 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<files psalm-version="4.9.3@4c262932602b9bbab5020863d1eb22d49de0dbf4">
|
||||
<file src="config/replacements.php">
|
||||
<DuplicateArrayKey occurrences="3">
|
||||
<code>'ZendAcl' => 'LaminasAcl'</code>
|
||||
<code>'ZendRbac' => 'LaminasRbac'</code>
|
||||
<code>'ZendRouter' => 'LaminasRouter'</code>
|
||||
</DuplicateArrayKey>
|
||||
</file>
|
||||
<file src="src/Autoloader.php">
|
||||
<MissingClosureParamType occurrences="2">
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
</MissingClosureParamType>
|
||||
<MissingFile occurrences="1">
|
||||
<code>include __DIR__ . '/../../../autoload.php'</code>
|
||||
</MissingFile>
|
||||
<MissingReturnType occurrences="1">
|
||||
<code>load</code>
|
||||
</MissingReturnType>
|
||||
<MixedArgument occurrences="7">
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
<code>$class</code>
|
||||
</MixedArgument>
|
||||
<MixedArgumentTypeCoercion occurrences="2"/>
|
||||
<MixedArrayOffset occurrences="1">
|
||||
<code>$loaded[$class]</code>
|
||||
</MixedArrayOffset>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>ClassLoader</code>
|
||||
</MixedInferredReturnType>
|
||||
<MixedOperand occurrences="2">
|
||||
<code>$namespaces[$check]</code>
|
||||
<code>$namespaces[$check]</code>
|
||||
</MixedOperand>
|
||||
<MixedReturnStatement occurrences="3">
|
||||
<code>include __DIR__ . '/../../../autoload.php'</code>
|
||||
<code>include __DIR__ . '/../vendor/autoload.php'</code>
|
||||
<code>include getenv('COMPOSER_VENDOR_DIR') . '/autoload.php'</code>
|
||||
</MixedReturnStatement>
|
||||
<PossiblyFalseOperand occurrences="2">
|
||||
<code>getenv('COMPOSER_VENDOR_DIR')</code>
|
||||
<code>getenv('COMPOSER_VENDOR_DIR')</code>
|
||||
</PossiblyFalseOperand>
|
||||
<UnresolvableInclude occurrences="1">
|
||||
<code>include getenv('COMPOSER_VENDOR_DIR') . '/autoload.php'</code>
|
||||
</UnresolvableInclude>
|
||||
</file>
|
||||
<file src="src/ConfigPostProcessor.php">
|
||||
<InvalidArgument occurrences="1">
|
||||
<code>$keys</code>
|
||||
</InvalidArgument>
|
||||
<MissingClosureParamType occurrences="4">
|
||||
<code>$value</code>
|
||||
<code>$value</code>
|
||||
<code>$value</code>
|
||||
<code>$value</code>
|
||||
</MissingClosureParamType>
|
||||
<MissingClosureReturnType occurrences="4">
|
||||
<code>function ($value) {</code>
|
||||
<code>function ($value) {</code>
|
||||
<code>function ($value, array $keys) {</code>
|
||||
<code>function ($value, array $keys) {</code>
|
||||
</MissingClosureReturnType>
|
||||
<MissingReturnType occurrences="3">
|
||||
<code>replaceDependencyConfiguration</code>
|
||||
<code>replaceDependencyFactories</code>
|
||||
<code>replaceDependencyServices</code>
|
||||
</MissingReturnType>
|
||||
<MixedArgument occurrences="5">
|
||||
<code>$config</code>
|
||||
<code>$newKey</code>
|
||||
<code>$newKey</code>
|
||||
<code>$newKey</code>
|
||||
<code>$target</code>
|
||||
</MixedArgument>
|
||||
<MixedArgumentTypeCoercion occurrences="1">
|
||||
<code>[$key]</code>
|
||||
</MixedArgumentTypeCoercion>
|
||||
<MixedArrayAssignment occurrences="4">
|
||||
<code>$config[$key]</code>
|
||||
<code>$config['aliases'][$alias]</code>
|
||||
<code>$config['aliases'][$service]</code>
|
||||
<code>$config['aliases'][$service]</code>
|
||||
</MixedArrayAssignment>
|
||||
<MixedArrayOffset occurrences="7">
|
||||
<code>$aliases[$name]</code>
|
||||
<code>$config[$key]</code>
|
||||
<code>$keys[$key]</code>
|
||||
<code>$rewritten[$newKey]</code>
|
||||
<code>$rewritten[$newKey]</code>
|
||||
<code>$rewritten[$newKey]</code>
|
||||
<code>$this->exactReplacements[$value]</code>
|
||||
</MixedArrayOffset>
|
||||
<MixedArrayTypeCoercion occurrences="1">
|
||||
<code>$aliases[$name]</code>
|
||||
</MixedArrayTypeCoercion>
|
||||
<MixedAssignment occurrences="26">
|
||||
<code>$a[$key]</code>
|
||||
<code>$a[$key]</code>
|
||||
<code>$a[]</code>
|
||||
<code>$config</code>
|
||||
<code>$config</code>
|
||||
<code>$config[$key]</code>
|
||||
<code>$config['factories'][$replacedService]</code>
|
||||
<code>$config['services'][$replacedService]</code>
|
||||
<code>$data</code>
|
||||
<code>$factory</code>
|
||||
<code>$factory</code>
|
||||
<code>$key</code>
|
||||
<code>$key</code>
|
||||
<code>$name</code>
|
||||
<code>$newKey</code>
|
||||
<code>$newValue</code>
|
||||
<code>$notIn[]</code>
|
||||
<code>$result</code>
|
||||
<code>$rewritten[$key]</code>
|
||||
<code>$rewritten[$newKey]</code>
|
||||
<code>$rewritten[$newKey][]</code>
|
||||
<code>$serviceInstance</code>
|
||||
<code>$serviceInstance</code>
|
||||
<code>$target</code>
|
||||
<code>$value</code>
|
||||
<code>$value</code>
|
||||
</MixedAssignment>
|
||||
</file>
|
||||
<file src="src/Module.php">
|
||||
<MissingReturnType occurrences="2">
|
||||
<code>init</code>
|
||||
<code>onMergeConfig</code>
|
||||
</MissingReturnType>
|
||||
<UndefinedDocblockClass occurrences="2">
|
||||
<code>ModuleEvent</code>
|
||||
<code>ModuleManager</code>
|
||||
</UndefinedDocblockClass>
|
||||
</file>
|
||||
<file src="src/Replacements.php">
|
||||
<MixedArgument occurrences="2">
|
||||
<code>$replacement</code>
|
||||
<code>$replacement</code>
|
||||
</MixedArgument>
|
||||
<MixedArgumentTypeCoercion occurrences="3">
|
||||
<code>$original</code>
|
||||
<code>$original</code>
|
||||
<code>$original</code>
|
||||
</MixedArgumentTypeCoercion>
|
||||
<MixedAssignment occurrences="1">
|
||||
<code>$replacement</code>
|
||||
</MixedAssignment>
|
||||
<MixedPropertyTypeCoercion occurrences="3">
|
||||
<code>$this->replacements</code>
|
||||
<code>$this->replacements</code>
|
||||
</MixedPropertyTypeCoercion>
|
||||
</file>
|
||||
<file src="test/AutoloaderTest.php">
|
||||
<InvalidStringClass occurrences="1">
|
||||
<code>new $legacy()</code>
|
||||
</InvalidStringClass>
|
||||
<MissingReturnType occurrences="3">
|
||||
<code>testLegacyClassIsAliasToLaminas</code>
|
||||
<code>testReverseAliasCreated</code>
|
||||
<code>testTypeHint</code>
|
||||
</MissingReturnType>
|
||||
<PossiblyInvalidArgument occurrences="1">
|
||||
<code>testLegacyClassIsAliasToLaminas</code>
|
||||
</PossiblyInvalidArgument>
|
||||
</file>
|
||||
<file src="test/ConfigPostProcessorTest.php">
|
||||
<MissingReturnType occurrences="4">
|
||||
<code>invalidServiceManagerConfiguration</code>
|
||||
<code>testRewritesNestedKeys</code>
|
||||
<code>testServiceManagerServiceInstancesCanBeHandled</code>
|
||||
<code>testWillSkipInvalidConfigurations</code>
|
||||
</MissingReturnType>
|
||||
<MixedArgument occurrences="1">
|
||||
<code>$config</code>
|
||||
</MixedArgument>
|
||||
<MixedAssignment occurrences="2">
|
||||
<code>$config</code>
|
||||
<code>$expected</code>
|
||||
</MixedAssignment>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>iterable</code>
|
||||
</MixedInferredReturnType>
|
||||
<UnresolvableInclude occurrences="2">
|
||||
<code>require $configLocation</code>
|
||||
<code>require $expectedResultLocation</code>
|
||||
</UnresolvableInclude>
|
||||
</file>
|
||||
<file src="test/ModuleTest.php">
|
||||
<InvalidArgument occurrences="2">
|
||||
<code>$event</code>
|
||||
<code>$moduleManager</code>
|
||||
</InvalidArgument>
|
||||
<MissingReturnType occurrences="2">
|
||||
<code>testInitRegistersListenerWithEventManager</code>
|
||||
<code>testOnMergeConfigProcessesAndReplacesConfigurationPulledFromListener</code>
|
||||
</MissingReturnType>
|
||||
<MixedArgument occurrences="1">
|
||||
<code>$config</code>
|
||||
</MixedArgument>
|
||||
<MixedAssignment occurrences="2">
|
||||
<code>$config</code>
|
||||
<code>$expected</code>
|
||||
</MixedAssignment>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>iterable</code>
|
||||
</MixedInferredReturnType>
|
||||
<UnresolvableInclude occurrences="2">
|
||||
<code>require $configFile</code>
|
||||
<code>require $expectationsFile</code>
|
||||
</UnresolvableInclude>
|
||||
</file>
|
||||
<file src="test/ReplacementsTest.php">
|
||||
<MissingReturnType occurrences="1">
|
||||
<code>testEdgeCases</code>
|
||||
</MissingReturnType>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>iterable</code>
|
||||
</MixedInferredReturnType>
|
||||
</file>
|
||||
<file src="test/TestAsset/ConfigPostProcessor/AbstractFactories.php">
|
||||
<UndefinedClass occurrences="4">
|
||||
<code>ConfigAbstractFactory</code>
|
||||
<code>ConfigAbstractFactory</code>
|
||||
<code>InvokableFactory</code>
|
||||
<code>InvokableFactory</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/ConfigPostProcessor/CyclicalAliasing.php">
|
||||
<DuplicateArrayKey occurrences="1">
|
||||
<code>'Zend\Db\Adapter\Adapter' => 'ZF\Apigility\DbConnectedAdapter'</code>
|
||||
</DuplicateArrayKey>
|
||||
</file>
|
||||
<file src="test/TestAsset/ConfigPostProcessor/ExpressiveSlimRouterConfig.php">
|
||||
<UndefinedClass occurrences="2">
|
||||
<code>Factory\SlimRouterFactory</code>
|
||||
<code>RouterInterface</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/ConfigPostProcessor/LazyServices.php">
|
||||
<UndefinedClass occurrences="1">
|
||||
<code>LazyServiceFactory</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/ConfigPostProcessor/MwopNetAppConfig.php">
|
||||
<UndefinedClass occurrences="42">
|
||||
<code>CacheItemPoolInterface</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>ConfigFactory</code>
|
||||
<code>Csp</code>
|
||||
<code>DisplayPostHandler</code>
|
||||
<code>Engine</code>
|
||||
<code>EventDispatcherInterface</code>
|
||||
<code>Factory\CachePoolFactory</code>
|
||||
<code>Factory\EventDispatcherFactory</code>
|
||||
<code>Factory\MailTransport</code>
|
||||
<code>Factory\PlatesFunctionsDelegator</code>
|
||||
<code>FeedReaderHttpClientInterface</code>
|
||||
<code>Feed\HttpPlugClientFactory</code>
|
||||
<code>Handler\ComicsPageHandler</code>
|
||||
<code>Handler\ComicsPageHandlerFactory</code>
|
||||
<code>Handler\HomePageHandler</code>
|
||||
<code>Handler\HomePageHandlerFactory</code>
|
||||
<code>Handler\PageHandlerFactory</code>
|
||||
<code>Handler\PageHandlerFactory</code>
|
||||
<code>Handler\ResumePageHandler</code>
|
||||
<code>Handler\ResumePageHandler</code>
|
||||
<code>Middleware\ContentSecurityPolicyMiddlewareFactory</code>
|
||||
<code>Middleware\DisplayBlogPostHandlerDelegator</code>
|
||||
<code>Middleware\RedirectAmpPagesMiddleware</code>
|
||||
<code>Middleware\RedirectAmpPagesMiddlewareFactory</code>
|
||||
<code>Middleware\RedirectsMiddleware</code>
|
||||
<code>Middleware\RedirectsMiddleware</code>
|
||||
<code>Middleware\XClacksOverheadMiddleware</code>
|
||||
<code>Middleware\XClacksOverheadMiddleware</code>
|
||||
<code>Middleware\XPoweredByMiddleware</code>
|
||||
<code>Middleware\XPoweredByMiddleware</code>
|
||||
<code>RequestFactory</code>
|
||||
<code>RequestFactoryInterface</code>
|
||||
<code>ResponseFactory</code>
|
||||
<code>ResponseFactoryInterface</code>
|
||||
<code>SessionCachePool</code>
|
||||
<code>SessionCachePool</code>
|
||||
<code>SessionCachePoolFactory</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/Replacements/TestClass.php">
|
||||
<UndefinedClass occurrences="1">
|
||||
<code>\Zend\Expressive\Router</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/Replacements/ZFOAuth2Client.php">
|
||||
<UndefinedClass occurrences="1">
|
||||
<code>OAuth2Client</code>
|
||||
</UndefinedClass>
|
||||
</file>
|
||||
<file src="test/TestAsset/classes/ConfigListener.php">
|
||||
<MissingReturnType occurrences="1">
|
||||
<code>setMergedConfig</code>
|
||||
</MissingReturnType>
|
||||
</file>
|
||||
<file src="test/TestAsset/classes/EventManager.php">
|
||||
<InvalidArgument occurrences="1">
|
||||
<code>$listener</code>
|
||||
</InvalidArgument>
|
||||
<MissingPropertyType occurrences="1">
|
||||
<code>$listeners</code>
|
||||
</MissingPropertyType>
|
||||
<MissingReturnType occurrences="1">
|
||||
<code>attach</code>
|
||||
</MissingReturnType>
|
||||
<MixedArgument occurrences="1">
|
||||
<code>$this->listeners[$eventName]</code>
|
||||
</MixedArgument>
|
||||
<MixedArrayAccess occurrences="1">
|
||||
<code>$this->listeners[$eventName]</code>
|
||||
</MixedArrayAccess>
|
||||
<MixedArrayAssignment occurrences="1">
|
||||
<code>$this->listeners[$eventName]</code>
|
||||
</MixedArrayAssignment>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>array</code>
|
||||
</MixedInferredReturnType>
|
||||
<MixedReturnStatement occurrences="1">
|
||||
<code>$this->listeners</code>
|
||||
</MixedReturnStatement>
|
||||
</file>
|
||||
<file src="test/TestAsset/classes/ModuleEvent.php">
|
||||
<MissingPropertyType occurrences="1">
|
||||
<code>$listener</code>
|
||||
</MissingPropertyType>
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>ConfigListener</code>
|
||||
</MixedInferredReturnType>
|
||||
<MixedReturnStatement occurrences="1">
|
||||
<code>$this->listener</code>
|
||||
</MixedReturnStatement>
|
||||
</file>
|
||||
<file src="test/TestAsset/classes/ModuleManager.php">
|
||||
<MixedInferredReturnType occurrences="1">
|
||||
<code>EventManager</code>
|
||||
</MixedInferredReturnType>
|
||||
<MixedReturnStatement occurrences="1">
|
||||
<code>$this->eventManager</code>
|
||||
</MixedReturnStatement>
|
||||
<UndefinedThisPropertyAssignment occurrences="1">
|
||||
<code>$this->eventManager</code>
|
||||
</UndefinedThisPropertyAssignment>
|
||||
<UndefinedThisPropertyFetch occurrences="1">
|
||||
<code>$this->eventManager</code>
|
||||
</UndefinedThisPropertyFetch>
|
||||
</file>
|
||||
</files>
|
||||
@@ -1,33 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<psalm
|
||||
totallyTyped="true"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="https://getpsalm.org/schema/config"
|
||||
xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
|
||||
errorBaseline="psalm-baseline.xml"
|
||||
>
|
||||
<projectFiles>
|
||||
<directory name="src"/>
|
||||
<directory name="test"/>
|
||||
<ignoreFiles>
|
||||
<directory name="vendor"/>
|
||||
</ignoreFiles>
|
||||
</projectFiles>
|
||||
|
||||
<issueHandlers>
|
||||
<InternalMethod>
|
||||
<errorLevel type="suppress">
|
||||
<referencedMethod name="PHPUnit\Framework\MockObject\Builder\InvocationMocker::method"/>
|
||||
</errorLevel>
|
||||
<errorLevel type="suppress">
|
||||
<referencedMethod name="PHPUnit\Framework\MockObject\Builder\InvocationMocker::willReturn"/>
|
||||
</errorLevel>
|
||||
<errorLevel type="suppress">
|
||||
<referencedMethod name="PHPUnit\Framework\MockObject\Builder\InvocationMocker::with"/>
|
||||
</errorLevel>
|
||||
</InternalMethod>
|
||||
</issueHandlers>
|
||||
<plugins>
|
||||
<pluginClass class="Psalm\PhpUnitPlugin\Plugin"/>
|
||||
</plugins>
|
||||
</psalm>
|
||||
@@ -1,166 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Laminas\ZendFrameworkBridge;
|
||||
|
||||
use ArrayObject;
|
||||
use Composer\Autoload\ClassLoader;
|
||||
use RuntimeException;
|
||||
|
||||
use function array_values;
|
||||
use function class_alias;
|
||||
use function class_exists;
|
||||
use function explode;
|
||||
use function file_exists;
|
||||
use function interface_exists;
|
||||
use function spl_autoload_register;
|
||||
use function strlen;
|
||||
use function strtr;
|
||||
use function substr;
|
||||
use function trait_exists;
|
||||
|
||||
/**
|
||||
* Alias legacy Zend Framework project classes/interfaces/traits to Laminas equivalents.
|
||||
*/
|
||||
class Autoloader
|
||||
{
|
||||
/**
|
||||
* Attach autoloaders for managing legacy ZF artifacts.
|
||||
*
|
||||
* We attach two autoloaders:
|
||||
*
|
||||
* - The first is _prepended_ to handle new classes and add aliases for
|
||||
* legacy classes. PHP expects any interfaces implemented, classes
|
||||
* extended, or traits used when declaring class_alias() to exist and/or
|
||||
* be autoloadable already at the time of declaration. If not, it will
|
||||
* raise a fatal error. This autoloader helps mitigate errors in such
|
||||
* situations.
|
||||
*
|
||||
* - The second is _appended_ in order to create aliases for legacy
|
||||
* classes.
|
||||
*/
|
||||
public static function load()
|
||||
{
|
||||
$loaded = new ArrayObject([]);
|
||||
|
||||
spl_autoload_register(self::createPrependAutoloader(
|
||||
RewriteRules::namespaceReverse(),
|
||||
self::getClassLoader(),
|
||||
$loaded
|
||||
), true, true);
|
||||
|
||||
spl_autoload_register(self::createAppendAutoloader(
|
||||
RewriteRules::namespaceRewrite(),
|
||||
$loaded
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* @return ClassLoader
|
||||
* @throws RuntimeException
|
||||
*/
|
||||
private static function getClassLoader()
|
||||
{
|
||||
if (getenv('COMPOSER_VENDOR_DIR') && file_exists(getenv('COMPOSER_VENDOR_DIR') . '/autoload.php')) {
|
||||
return include getenv('COMPOSER_VENDOR_DIR') . '/autoload.php';
|
||||
}
|
||||
|
||||
if (file_exists(__DIR__ . '/../../../autoload.php')) {
|
||||
return include __DIR__ . '/../../../autoload.php';
|
||||
}
|
||||
|
||||
if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
|
||||
return include __DIR__ . '/../vendor/autoload.php';
|
||||
}
|
||||
|
||||
throw new RuntimeException('Cannot detect composer autoload. Please run composer install');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return callable
|
||||
*/
|
||||
private static function createPrependAutoloader(array $namespaces, ClassLoader $classLoader, ArrayObject $loaded)
|
||||
{
|
||||
/**
|
||||
* @param string $class Class name to autoload
|
||||
* @return void
|
||||
*/
|
||||
return static function ($class) use ($namespaces, $classLoader, $loaded) {
|
||||
if (isset($loaded[$class])) {
|
||||
return;
|
||||
}
|
||||
|
||||
$segments = explode('\\', $class);
|
||||
|
||||
$i = 0;
|
||||
$check = '';
|
||||
|
||||
while (isset($segments[$i + 1], $namespaces[$check . $segments[$i] . '\\'])) {
|
||||
$check .= $segments[$i] . '\\';
|
||||
++$i;
|
||||
}
|
||||
|
||||
if ($check === '') {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($classLoader->loadClass($class)) {
|
||||
$legacy = $namespaces[$check]
|
||||
. strtr(substr($class, strlen($check)), [
|
||||
'ApiTools' => 'Apigility',
|
||||
'Mezzio' => 'Expressive',
|
||||
'Laminas' => 'Zend',
|
||||
]);
|
||||
class_alias($class, $legacy);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @return callable
|
||||
*/
|
||||
private static function createAppendAutoloader(array $namespaces, ArrayObject $loaded)
|
||||
{
|
||||
/**
|
||||
* @param string $class Class name to autoload
|
||||
* @return void
|
||||
*/
|
||||
return static function ($class) use ($namespaces, $loaded) {
|
||||
$segments = explode('\\', $class);
|
||||
|
||||
if ($segments[0] === 'ZendService' && isset($segments[1])) {
|
||||
$segments[0] .= '\\' . $segments[1];
|
||||
unset($segments[1]);
|
||||
$segments = array_values($segments);
|
||||
}
|
||||
|
||||
$i = 0;
|
||||
$check = '';
|
||||
|
||||
// We are checking segments of the namespace to match quicker
|
||||
while (isset($segments[$i + 1], $namespaces[$check . $segments[$i] . '\\'])) {
|
||||
$check .= $segments[$i] . '\\';
|
||||
++$i;
|
||||
}
|
||||
|
||||
if ($check === '') {
|
||||
return;
|
||||
}
|
||||
|
||||
$alias = $namespaces[$check]
|
||||
. strtr(substr($class, strlen($check)), [
|
||||
'Apigility' => 'ApiTools',
|
||||
'Expressive' => 'Mezzio',
|
||||
'Zend' => 'Laminas',
|
||||
'AbstractZendServer' => 'AbstractZendServer',
|
||||
'ZendServerDisk' => 'ZendServerDisk',
|
||||
'ZendServerShm' => 'ZendServerShm',
|
||||
'ZendMonitor' => 'ZendMonitor',
|
||||
]);
|
||||
|
||||
$loaded[$alias] = true;
|
||||
if (class_exists($alias) || interface_exists($alias) || trait_exists($alias)) {
|
||||
class_alias($alias, $class);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -1,426 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Laminas\ZendFrameworkBridge;
|
||||
|
||||
use function array_intersect_key;
|
||||
use function array_key_exists;
|
||||
use function array_pop;
|
||||
use function in_array;
|
||||
use function is_array;
|
||||
use function is_callable;
|
||||
use function is_int;
|
||||
use function is_string;
|
||||
|
||||
class ConfigPostProcessor
|
||||
{
|
||||
/** @internal */
|
||||
const SERVICE_MANAGER_KEYS_OF_INTEREST = [
|
||||
'aliases' => true,
|
||||
'factories' => true,
|
||||
'invokables' => true,
|
||||
'services' => true,
|
||||
];
|
||||
|
||||
/** @var array String keys => string values */
|
||||
private $exactReplacements = [
|
||||
'zend-expressive' => 'mezzio',
|
||||
'zf-apigility' => 'api-tools',
|
||||
];
|
||||
|
||||
/** @var Replacements */
|
||||
private $replacements;
|
||||
|
||||
/** @var callable[] */
|
||||
private $rulesets;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->replacements = new Replacements();
|
||||
|
||||
/* Define the rulesets for replacements.
|
||||
*
|
||||
* Each ruleset has the following signature:
|
||||
*
|
||||
* @param mixed $value
|
||||
* @param string[] $keys Full nested key hierarchy leading to the value
|
||||
* @return null|callable
|
||||
*
|
||||
* If no match is made, a null is returned, allowing it to fallback to
|
||||
* the next ruleset in the list. If a match is made, a callback is returned,
|
||||
* and that will be used to perform the replacement on the value.
|
||||
*
|
||||
* The callback should have the following signature:
|
||||
*
|
||||
* @param mixed $value
|
||||
* @param string[] $keys
|
||||
* @return mixed The transformed value
|
||||
*/
|
||||
$this->rulesets = [
|
||||
// Exact values
|
||||
function ($value) {
|
||||
return is_string($value) && isset($this->exactReplacements[$value])
|
||||
? [$this, 'replaceExactValue']
|
||||
: null;
|
||||
},
|
||||
|
||||
// Router (MVC applications)
|
||||
// We do not want to rewrite these.
|
||||
function ($value, array $keys) {
|
||||
$key = array_pop($keys);
|
||||
// Only worried about a top-level "router" key.
|
||||
return $key === 'router' && $keys === [] && is_array($value)
|
||||
? [$this, 'noopReplacement']
|
||||
: null;
|
||||
},
|
||||
|
||||
// service- and pluginmanager handling
|
||||
function ($value) {
|
||||
return is_array($value) && array_intersect_key(self::SERVICE_MANAGER_KEYS_OF_INTEREST, $value) !== []
|
||||
? [$this, 'replaceDependencyConfiguration']
|
||||
: null;
|
||||
},
|
||||
|
||||
// Array values
|
||||
function ($value, array $keys) {
|
||||
return $keys !== [] && is_array($value)
|
||||
? [$this, '__invoke']
|
||||
: null;
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string[] $keys Hierarchy of keys, for determining location in
|
||||
* nested configuration.
|
||||
* @return array
|
||||
*/
|
||||
public function __invoke(array $config, array $keys = [])
|
||||
{
|
||||
$rewritten = [];
|
||||
|
||||
foreach ($config as $key => $value) {
|
||||
// Determine new key from replacements
|
||||
$newKey = is_string($key) ? $this->replace($key, $keys) : $key;
|
||||
|
||||
// Keep original values with original key, if the key has changed, but only at the top-level.
|
||||
if (empty($keys) && $newKey !== $key) {
|
||||
$rewritten[$key] = $value;
|
||||
}
|
||||
|
||||
// Perform value replacements, if any
|
||||
$newValue = $this->replace($value, $keys, $newKey);
|
||||
|
||||
// Key does not already exist and/or is not an array value
|
||||
if (! array_key_exists($newKey, $rewritten) || ! is_array($rewritten[$newKey])) {
|
||||
// Do not overwrite existing values with null values
|
||||
$rewritten[$newKey] = array_key_exists($newKey, $rewritten) && null === $newValue
|
||||
? $rewritten[$newKey]
|
||||
: $newValue;
|
||||
continue;
|
||||
}
|
||||
|
||||
// New value is null; nothing to do.
|
||||
if (null === $newValue) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Key already exists as an array value, but $value is not an array
|
||||
if (! is_array($newValue)) {
|
||||
$rewritten[$newKey][] = $newValue;
|
||||
continue;
|
||||
}
|
||||
|
||||
// Key already exists as an array value, and $value is also an array
|
||||
$rewritten[$newKey] = static::merge($rewritten[$newKey], $newValue);
|
||||
}
|
||||
|
||||
return $rewritten;
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform substitutions as needed on an individual value.
|
||||
*
|
||||
* The $key is provided to allow fine-grained selection of rewrite rules.
|
||||
*
|
||||
* @param mixed $value
|
||||
* @param string[] $keys Key hierarchy
|
||||
* @param null|int|string $key
|
||||
* @return mixed
|
||||
*/
|
||||
private function replace($value, array $keys, $key = null)
|
||||
{
|
||||
// Add new key to the list of keys.
|
||||
// We do not need to remove it later, as we are working on a copy of the array.
|
||||
$keys[] = $key;
|
||||
|
||||
// Identify rewrite strategy and perform replacements
|
||||
$rewriteRule = $this->replacementRuleMatch($value, $keys);
|
||||
return $rewriteRule($value, $keys);
|
||||
}
|
||||
|
||||
/**
|
||||
* Merge two arrays together.
|
||||
*
|
||||
* If an integer key exists in both arrays, the value from the second array
|
||||
* will be appended to the first array. If both values are arrays, they are
|
||||
* merged together, else the value of the second array overwrites the one
|
||||
* of the first array.
|
||||
*
|
||||
* Based on zend-stdlib Zend\Stdlib\ArrayUtils::merge
|
||||
* @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function merge(array $a, array $b)
|
||||
{
|
||||
foreach ($b as $key => $value) {
|
||||
if (! isset($a[$key]) && ! array_key_exists($key, $a)) {
|
||||
$a[$key] = $value;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (null === $value && array_key_exists($key, $a)) {
|
||||
// Leave as-is if value from $b is null
|
||||
continue;
|
||||
}
|
||||
|
||||
if (is_int($key)) {
|
||||
$a[] = $value;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (is_array($value) && is_array($a[$key])) {
|
||||
$a[$key] = static::merge($a[$key], $value);
|
||||
continue;
|
||||
}
|
||||
|
||||
$a[$key] = $value;
|
||||
}
|
||||
|
||||
return $a;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $value
|
||||
* @param null|int|string $key
|
||||
* @return callable Callable to invoke with value
|
||||
*/
|
||||
private function replacementRuleMatch($value, $key = null)
|
||||
{
|
||||
foreach ($this->rulesets as $ruleset) {
|
||||
$result = $ruleset($value, $key);
|
||||
if (is_callable($result)) {
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
return [$this, 'fallbackReplacement'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Replace a value using the translation table, if the value is a string.
|
||||
*
|
||||
* @param mixed $value
|
||||
* @return mixed
|
||||
*/
|
||||
private function fallbackReplacement($value)
|
||||
{
|
||||
return is_string($value)
|
||||
? $this->replacements->replace($value)
|
||||
: $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Replace a value matched exactly.
|
||||
*
|
||||
* @param mixed $value
|
||||
* @return mixed
|
||||
*/
|
||||
private function replaceExactValue($value)
|
||||
{
|
||||
return $this->exactReplacements[$value];
|
||||
}
|
||||
|
||||
private function replaceDependencyConfiguration(array $config)
|
||||
{
|
||||
$aliases = isset($config['aliases']) && is_array($config['aliases'])
|
||||
? $this->replaceDependencyAliases($config['aliases'])
|
||||
: [];
|
||||
|
||||
if ($aliases) {
|
||||
$config['aliases'] = $aliases;
|
||||
}
|
||||
|
||||
$config = $this->replaceDependencyInvokables($config);
|
||||
$config = $this->replaceDependencyFactories($config);
|
||||
$config = $this->replaceDependencyServices($config);
|
||||
|
||||
$keys = self::SERVICE_MANAGER_KEYS_OF_INTEREST;
|
||||
foreach ($config as $key => $data) {
|
||||
if (isset($keys[$key])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$config[$key] = is_array($data) ? $this->__invoke($data, [$key]) : $data;
|
||||
}
|
||||
|
||||
return $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Rewrite dependency aliases array
|
||||
*
|
||||
* In this case, we want to keep the alias as-is, but rewrite the target.
|
||||
*
|
||||
* We need also provide an additional alias if the alias key is a legacy class.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function replaceDependencyAliases(array $aliases)
|
||||
{
|
||||
foreach ($aliases as $alias => $target) {
|
||||
if (! is_string($alias) || ! is_string($target)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$newTarget = $this->replacements->replace($target);
|
||||
$newAlias = $this->replacements->replace($alias);
|
||||
|
||||
$notIn = [$newTarget];
|
||||
$name = $newTarget;
|
||||
while (isset($aliases[$name])) {
|
||||
$notIn[] = $aliases[$name];
|
||||
$name = $aliases[$name];
|
||||
}
|
||||
|
||||
if ($newAlias === $alias && ! in_array($alias, $notIn, true)) {
|
||||
$aliases[$alias] = $newTarget;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (isset($aliases[$newAlias])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (! in_array($newAlias, $notIn, true)) {
|
||||
$aliases[$alias] = $newAlias;
|
||||
$aliases[$newAlias] = $newTarget;
|
||||
}
|
||||
}
|
||||
|
||||
return $aliases;
|
||||
}
|
||||
|
||||
/**
|
||||
* Rewrite dependency invokables array
|
||||
*
|
||||
* In this case, we want to keep the alias as-is, but rewrite the target.
|
||||
*
|
||||
* We need also provide an additional alias if invokable is defined with
|
||||
* an alias which is a legacy class.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function replaceDependencyInvokables(array $config)
|
||||
{
|
||||
if (empty($config['invokables']) || ! is_array($config['invokables'])) {
|
||||
return $config;
|
||||
}
|
||||
|
||||
foreach ($config['invokables'] as $alias => $target) {
|
||||
if (! is_string($alias)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$newTarget = $this->replacements->replace($target);
|
||||
$newAlias = $this->replacements->replace($alias);
|
||||
|
||||
if ($alias === $target || isset($config['aliases'][$newAlias])) {
|
||||
$config['invokables'][$alias] = $newTarget;
|
||||
continue;
|
||||
}
|
||||
|
||||
$config['invokables'][$newAlias] = $newTarget;
|
||||
|
||||
if ($newAlias === $alias) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$config['aliases'][$alias] = $newAlias;
|
||||
|
||||
unset($config['invokables'][$alias]);
|
||||
}
|
||||
|
||||
return $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $value
|
||||
* @return mixed Returns $value verbatim.
|
||||
*/
|
||||
private function noopReplacement($value)
|
||||
{
|
||||
return $value;
|
||||
}
|
||||
|
||||
private function replaceDependencyFactories(array $config)
|
||||
{
|
||||
if (empty($config['factories']) || ! is_array($config['factories'])) {
|
||||
return $config;
|
||||
}
|
||||
|
||||
foreach ($config['factories'] as $service => $factory) {
|
||||
if (! is_string($service)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$replacedService = $this->replacements->replace($service);
|
||||
$factory = is_string($factory) ? $this->replacements->replace($factory) : $factory;
|
||||
$config['factories'][$replacedService] = $factory;
|
||||
|
||||
if ($replacedService === $service) {
|
||||
continue;
|
||||
}
|
||||
|
||||
unset($config['factories'][$service]);
|
||||
if (isset($config['aliases'][$service])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$config['aliases'][$service] = $replacedService;
|
||||
}
|
||||
|
||||
return $config;
|
||||
}
|
||||
|
||||
private function replaceDependencyServices(array $config)
|
||||
{
|
||||
if (empty($config['services']) || ! is_array($config['services'])) {
|
||||
return $config;
|
||||
}
|
||||
|
||||
foreach ($config['services'] as $service => $serviceInstance) {
|
||||
if (! is_string($service)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$replacedService = $this->replacements->replace($service);
|
||||
$serviceInstance = is_array($serviceInstance) ? $this->__invoke($serviceInstance) : $serviceInstance;
|
||||
|
||||
$config['services'][$replacedService] = $serviceInstance;
|
||||
|
||||
if ($service === $replacedService) {
|
||||
continue;
|
||||
}
|
||||
|
||||
unset($config['services'][$service]);
|
||||
|
||||
if (isset($config['aliases'][$service])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$config['aliases'][$service] = $replacedService;
|
||||
}
|
||||
|
||||
return $config;
|
||||
}
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Laminas\ZendFrameworkBridge;
|
||||
|
||||
use Laminas\ModuleManager\Listener\ConfigMergerInterface;
|
||||
use Laminas\ModuleManager\ModuleEvent;
|
||||
use Laminas\ModuleManager\ModuleManager;
|
||||
|
||||
class Module
|
||||
{
|
||||
/**
|
||||
* Initialize the module.
|
||||
*
|
||||
* Type-hinting deliberately omitted to allow unit testing
|
||||
* without dependencies on packages that do not exist yet.
|
||||
*
|
||||
* @param ModuleManager $moduleManager
|
||||
*/
|
||||
public function init($moduleManager)
|
||||
{
|
||||
$moduleManager
|
||||
->getEventManager()
|
||||
->attach('mergeConfig', [$this, 'onMergeConfig']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform substitutions in the merged configuration.
|
||||
*
|
||||
* Rewrites keys and values matching known ZF classes, namespaces, and
|
||||
* configuration keys to their Laminas equivalents.
|
||||
*
|
||||
* Type-hinting deliberately omitted to allow unit testing
|
||||
* without dependencies on packages that do not exist yet.
|
||||
*
|
||||
* @param ModuleEvent $event
|
||||
*/
|
||||
public function onMergeConfig($event)
|
||||
{
|
||||
/** @var ConfigMergerInterface */
|
||||
$configMerger = $event->getConfigListener();
|
||||
$processor = new ConfigPostProcessor();
|
||||
$configMerger->setMergedConfig(
|
||||
$processor(
|
||||
$configMerger->getMergedConfig($returnAsObject = false)
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Laminas\ZendFrameworkBridge;
|
||||
|
||||
use function array_merge;
|
||||
use function str_replace;
|
||||
use function strpos;
|
||||
use function strtr;
|
||||
|
||||
class Replacements
|
||||
{
|
||||
/** @var string[] */
|
||||
private $replacements;
|
||||
|
||||
public function __construct(array $additionalReplacements = [])
|
||||
{
|
||||
$this->replacements = array_merge(
|
||||
require __DIR__ . '/../config/replacements.php',
|
||||
$additionalReplacements
|
||||
);
|
||||
|
||||
// Provide multiple variants of strings containing namespace separators
|
||||
foreach ($this->replacements as $original => $replacement) {
|
||||
if (false === strpos($original, '\\')) {
|
||||
continue;
|
||||
}
|
||||
$this->replacements[str_replace('\\', '\\\\', $original)] = str_replace('\\', '\\\\', $replacement);
|
||||
$this->replacements[str_replace('\\', '\\\\\\\\', $original)] = str_replace('\\', '\\\\\\\\', $replacement);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $value
|
||||
* @return string
|
||||
*/
|
||||
public function replace($value)
|
||||
{
|
||||
return strtr($value, $this->replacements);
|
||||
}
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace Laminas\ZendFrameworkBridge;
|
||||
|
||||
class RewriteRules
|
||||
{
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public static function namespaceRewrite()
|
||||
{
|
||||
return [
|
||||
// Expressive
|
||||
'Zend\\ProblemDetails\\' => 'Mezzio\\ProblemDetails\\',
|
||||
'Zend\\Expressive\\' => 'Mezzio\\',
|
||||
|
||||
// Laminas
|
||||
'Zend\\' => 'Laminas\\',
|
||||
'ZF\\ComposerAutoloading\\' => 'Laminas\\ComposerAutoloading\\',
|
||||
'ZF\\DevelopmentMode\\' => 'Laminas\\DevelopmentMode\\',
|
||||
|
||||
// Apigility
|
||||
'ZF\\Apigility\\' => 'Laminas\\ApiTools\\',
|
||||
'ZF\\' => 'Laminas\\ApiTools\\',
|
||||
|
||||
// ZendXml, API wrappers, zend-http OAuth support, zend-diagnostics, ZendDeveloperTools
|
||||
'ZendXml\\' => 'Laminas\\Xml\\',
|
||||
'ZendOAuth\\' => 'Laminas\\OAuth\\',
|
||||
'ZendDiagnostics\\' => 'Laminas\\Diagnostics\\',
|
||||
'ZendService\\ReCaptcha\\' => 'Laminas\\ReCaptcha\\',
|
||||
'ZendService\\Twitter\\' => 'Laminas\\Twitter\\',
|
||||
'ZendDeveloperTools\\' => 'Laminas\\DeveloperTools\\',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public static function namespaceReverse()
|
||||
{
|
||||
return [
|
||||
// ZendXml, ZendOAuth, ZendDiagnostics, ZendDeveloperTools
|
||||
'Laminas\\Xml\\' => 'ZendXml\\',
|
||||
'Laminas\\OAuth\\' => 'ZendOAuth\\',
|
||||
'Laminas\\Diagnostics\\' => 'ZendDiagnostics\\',
|
||||
'Laminas\\DeveloperTools\\' => 'ZendDeveloperTools\\',
|
||||
|
||||
// Zend Service
|
||||
'Laminas\\ReCaptcha\\' => 'ZendService\\ReCaptcha\\',
|
||||
'Laminas\\Twitter\\' => 'ZendService\\Twitter\\',
|
||||
|
||||
// Zend
|
||||
'Laminas\\' => 'Zend\\',
|
||||
|
||||
// Expressive
|
||||
'Mezzio\\ProblemDetails\\' => 'Zend\\ProblemDetails\\',
|
||||
'Mezzio\\' => 'Zend\\Expressive\\',
|
||||
|
||||
// Laminas to ZfCampus
|
||||
'Laminas\\ComposerAutoloading\\' => 'ZF\\ComposerAutoloading\\',
|
||||
'Laminas\\DevelopmentMode\\' => 'ZF\\DevelopmentMode\\',
|
||||
|
||||
// Apigility
|
||||
'Laminas\\ApiTools\\Admin\\' => 'ZF\\Apigility\\Admin\\',
|
||||
'Laminas\\ApiTools\\Doctrine\\' => 'ZF\\Apigility\\Doctrine\\',
|
||||
'Laminas\\ApiTools\\Documentation\\' => 'ZF\\Apigility\\Documentation\\',
|
||||
'Laminas\\ApiTools\\Example\\' => 'ZF\\Apigility\\Example\\',
|
||||
'Laminas\\ApiTools\\Provider\\' => 'ZF\\Apigility\\Provider\\',
|
||||
'Laminas\\ApiTools\\Welcome\\' => 'ZF\\Apiglity\\Welcome\\',
|
||||
'Laminas\\ApiTools\\' => 'ZF\\',
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
<?php
|
||||
|
||||
Laminas\ZendFrameworkBridge\Autoloader::load();
|
||||
Reference in New Issue
Block a user