Composer update

This commit is contained in:
Matias Griese
2021-03-16 09:12:39 +02:00
parent 63db654392
commit 6dede2fa4a
16 changed files with 2959 additions and 381 deletions

154
composer.lock generated
View File

@@ -8,16 +8,16 @@
"packages": [
{
"name": "laminas/laminas-xml",
"version": "1.3.0",
"version": "1.3.1",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-xml.git",
"reference": "844dc64557b1ad8a2e0eadb741510ba992674f99"
"reference": "2eada592359aec9d9e55339270b621295cff3a4f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/844dc64557b1ad8a2e0eadb741510ba992674f99",
"reference": "844dc64557b1ad8a2e0eadb741510ba992674f99",
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/2eada592359aec9d9e55339270b621295cff3a4f",
"reference": "2eada592359aec9d9e55339270b621295cff3a4f",
"shasum": ""
},
"require": {
@@ -62,28 +62,30 @@
"type": "community_bridge"
}
],
"time": "2020-11-18T20:46:37+00:00"
"time": "2021-02-17T22:44:58+00:00"
},
{
"name": "laminas/laminas-zendframework-bridge",
"version": "1.1.1",
"version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
"reference": "6ede70583e101030bcace4dcddd648f760ddf642"
"reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6ede70583e101030bcace4dcddd648f760ddf642",
"reference": "6ede70583e101030bcace4dcddd648f760ddf642",
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6cccbddfcfc742eb02158d6137ca5687d92cee32",
"reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32",
"shasum": ""
},
"require": {
"php": "^5.6 || ^7.0 || ^8.0"
"php": "^7.3 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3",
"squizlabs/php_codesniffer": "^3.5"
"psalm/plugin-phpunit": "^0.15.1",
"squizlabs/php_codesniffer": "^3.5",
"vimeo/psalm": "^4.6"
},
"type": "library",
"extra": {
@@ -122,7 +124,7 @@
"type": "community_bridge"
}
],
"time": "2020-09-14T14:23:00+00:00"
"time": "2021-02-25T21:54:58+00:00"
},
{
"name": "p3k/picofeed",
@@ -757,16 +759,16 @@
},
{
"name": "guzzlehttp/promises",
"version": "1.4.0",
"version": "1.4.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
"reference": "60d379c243457e073cff02bc323a2a86cb355631"
"reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/promises/zipball/60d379c243457e073cff02bc323a2a86cb355631",
"reference": "60d379c243457e073cff02bc323a2a86cb355631",
"url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d",
"reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d",
"shasum": ""
},
"require": {
@@ -806,9 +808,9 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
"source": "https://github.com/guzzle/promises/tree/1.4.0"
"source": "https://github.com/guzzle/promises/tree/1.4.1"
},
"time": "2020-09-30T07:37:28+00:00"
"time": "2021-03-07T09:25:29+00:00"
},
{
"name": "guzzlehttp/psr7",
@@ -1659,27 +1661,22 @@
},
{
"name": "psr/container",
"version": "1.0.0",
"version": "1.1.1",
"source": {
"type": "git",
"url": "https://github.com/php-fig/container.git",
"reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
"reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
"reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
"url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
"reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
"shasum": ""
},
"require": {
"php": ">=5.3.0"
"php": ">=7.2.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-4": {
"Psr\\Container\\": "src/"
@@ -1692,7 +1689,7 @@
"authors": [
{
"name": "PHP-FIG",
"homepage": "http://www.php-fig.org/"
"homepage": "https://www.php-fig.org/"
}
],
"description": "Common Container Interface (PHP FIG PSR-11)",
@@ -1706,9 +1703,9 @@
],
"support": {
"issues": "https://github.com/php-fig/container/issues",
"source": "https://github.com/php-fig/container/tree/master"
"source": "https://github.com/php-fig/container/tree/1.1.1"
},
"time": "2017-02-14T16:28:37+00:00"
"time": "2021-03-05T17:36:06+00:00"
},
{
"name": "psr/http-message",
@@ -2473,16 +2470,16 @@
},
{
"name": "symfony/browser-kit",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
"reference": "f6f060bdc473c3f3b1f00e2ebdeb3d02eda77f82"
"reference": "cfa8d92f95294747e3abc04969efee51ed374424"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/browser-kit/zipball/f6f060bdc473c3f3b1f00e2ebdeb3d02eda77f82",
"reference": "f6f060bdc473c3f3b1f00e2ebdeb3d02eda77f82",
"url": "https://api.github.com/repos/symfony/browser-kit/zipball/cfa8d92f95294747e3abc04969efee51ed374424",
"reference": "cfa8d92f95294747e3abc04969efee51ed374424",
"shasum": ""
},
"require": {
@@ -2524,7 +2521,7 @@
"description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/browser-kit/tree/v4.4.19"
"source": "https://github.com/symfony/browser-kit/tree/v4.4.20"
},
"funding": [
{
@@ -2540,20 +2537,20 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:09:26+00:00"
"time": "2021-02-18T10:52:56+00:00"
},
{
"name": "symfony/console",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "24026c44fc37099fa145707fecd43672831b837a"
"reference": "c98349bda966c70d6c08b4cd8658377c94166492"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/24026c44fc37099fa145707fecd43672831b837a",
"reference": "24026c44fc37099fa145707fecd43672831b837a",
"url": "https://api.github.com/repos/symfony/console/zipball/c98349bda966c70d6c08b4cd8658377c94166492",
"reference": "c98349bda966c70d6c08b4cd8658377c94166492",
"shasum": ""
},
"require": {
@@ -2613,7 +2610,7 @@
"description": "Eases the creation of beautiful and testable command line interfaces",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/console/tree/v4.4.19"
"source": "https://github.com/symfony/console/tree/v4.4.20"
},
"funding": [
{
@@ -2629,11 +2626,11 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:09:26+00:00"
"time": "2021-02-22T18:44:15+00:00"
},
{
"name": "symfony/css-selector",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
@@ -2678,7 +2675,7 @@
"description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/css-selector/tree/v4.4.19"
"source": "https://github.com/symfony/css-selector/tree/v4.4.20"
},
"funding": [
{
@@ -2698,16 +2695,16 @@
},
{
"name": "symfony/dom-crawler",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
"reference": "21032c566558255e551d23f4a516434c9e3a9a78"
"reference": "be133557f1b0e6672367325b508e65da5513a311"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/21032c566558255e551d23f4a516434c9e3a9a78",
"reference": "21032c566558255e551d23f4a516434c9e3a9a78",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/be133557f1b0e6672367325b508e65da5513a311",
"reference": "be133557f1b0e6672367325b508e65da5513a311",
"shasum": ""
},
"require": {
@@ -2751,7 +2748,7 @@
"description": "Eases DOM navigation for HTML and XML documents",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/dom-crawler/tree/v4.4.19"
"source": "https://github.com/symfony/dom-crawler/tree/v4.4.20"
},
"funding": [
{
@@ -2767,11 +2764,11 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:09:26+00:00"
"time": "2021-02-14T12:29:41+00:00"
},
{
"name": "symfony/event-dispatcher",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
@@ -2834,7 +2831,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/event-dispatcher/tree/v4.4.19"
"source": "https://github.com/symfony/event-dispatcher/tree/v4.4.20"
},
"funding": [
{
@@ -2933,16 +2930,16 @@
},
{
"name": "symfony/finder",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "25d79cfccfc12e84e7a63a248c3f0720fdd92db6"
"reference": "2543795ab1570df588b9bbd31e1a2bd7037b94f6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/25d79cfccfc12e84e7a63a248c3f0720fdd92db6",
"reference": "25d79cfccfc12e84e7a63a248c3f0720fdd92db6",
"url": "https://api.github.com/repos/symfony/finder/zipball/2543795ab1570df588b9bbd31e1a2bd7037b94f6",
"reference": "2543795ab1570df588b9bbd31e1a2bd7037b94f6",
"shasum": ""
},
"require": {
@@ -2974,7 +2971,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/finder/tree/v4.4.19"
"source": "https://github.com/symfony/finder/tree/v4.4.20"
},
"funding": [
{
@@ -2990,7 +2987,7 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:09:26+00:00"
"time": "2021-02-12T10:48:09+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -3407,7 +3404,7 @@
},
{
"name": "symfony/process",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
@@ -3448,7 +3445,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/process/tree/v4.4.19"
"source": "https://github.com/symfony/process/tree/v4.4.20"
},
"funding": [
{
@@ -3547,16 +3544,16 @@
},
{
"name": "symfony/yaml",
"version": "v4.4.19",
"version": "v4.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "17ed9f14c1aa05b1a5cf2e2c5ef2d0be28058ef9"
"reference": "29e61305e1c79d25f71060903982ead8f533e267"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/17ed9f14c1aa05b1a5cf2e2c5ef2d0be28058ef9",
"reference": "17ed9f14c1aa05b1a5cf2e2c5ef2d0be28058ef9",
"url": "https://api.github.com/repos/symfony/yaml/zipball/29e61305e1c79d25f71060903982ead8f533e267",
"reference": "29e61305e1c79d25f71060903982ead8f533e267",
"shasum": ""
},
"require": {
@@ -3598,7 +3595,7 @@
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/yaml/tree/v4.4.19"
"source": "https://github.com/symfony/yaml/tree/v4.4.20"
},
"funding": [
{
@@ -3614,7 +3611,7 @@
"type": "tidelift"
}
],
"time": "2021-01-27T09:09:26+00:00"
"time": "2021-02-22T15:36:50+00:00"
},
{
"name": "theseer/tokenizer",
@@ -3668,30 +3665,35 @@
},
{
"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/"
@@ -3715,9 +3717,9 @@
],
"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": [],

View File

@@ -42,8 +42,6 @@ namespace Composer\Autoload;
*/
class ClassLoader
{
private $vendorDir;
// PSR-4
private $prefixLengthsPsr4 = array();
private $prefixDirsPsr4 = array();
@@ -59,13 +57,6 @@ class ClassLoader
private $missingClasses = array();
private $apcuPrefix;
private static $registeredLoaders = array();
public function __construct($vendorDir = null)
{
$this->vendorDir = $vendorDir;
}
public function getPrefixes()
{
if (!empty($this->prefixesPsr0)) {
@@ -309,15 +300,6 @@ class ClassLoader
public function register($prepend = false)
{
spl_autoload_register(array($this, 'loadClass'), true, $prepend);
if (null === $this->vendorDir) {
//no-op
} elseif ($prepend) {
self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
} else {
unset(self::$registeredLoaders[$this->vendorDir]);
self::$registeredLoaders[$this->vendorDir] = $this;
}
}
/**
@@ -326,10 +308,6 @@ class ClassLoader
public function unregister()
{
spl_autoload_unregister(array($this, 'loadClass'));
if (null !== $this->vendorDir) {
unset(self::$registeredLoaders[$this->vendorDir]);
}
}
/**
@@ -389,16 +367,6 @@ class ClassLoader
return $file;
}
/**
* Returns the currently registered loaders indexed by their corresponding vendor directories.
*
* @return self[]
*/
public static function getRegisteredLoaders()
{
return self::$registeredLoaders;
}
private function findFileWithExtension($class, $ext)
{
// PSR-4 lookup

View File

@@ -12,7 +12,6 @@
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
@@ -30,7 +29,7 @@ private static $installed = array (
'aliases' =>
array (
),
'reference' => 'a60b98932a912af1746fb62ea3d39cbeb6f44e25',
'reference' => '63db6543920650ca2da91797df10e8a3fd1aa4c7',
'name' => 'getgrav/grav-plugin-admin',
),
'versions' =>
@@ -42,25 +41,25 @@ private static $installed = array (
'aliases' =>
array (
),
'reference' => 'a60b98932a912af1746fb62ea3d39cbeb6f44e25',
'reference' => '63db6543920650ca2da91797df10e8a3fd1aa4c7',
),
'laminas/laminas-xml' =>
array (
'pretty_version' => '1.3.0',
'version' => '1.3.0.0',
'pretty_version' => '1.3.1',
'version' => '1.3.1.0',
'aliases' =>
array (
),
'reference' => '844dc64557b1ad8a2e0eadb741510ba992674f99',
'reference' => '2eada592359aec9d9e55339270b621295cff3a4f',
),
'laminas/laminas-zendframework-bridge' =>
array (
'pretty_version' => '1.1.1',
'version' => '1.1.1.0',
'pretty_version' => '1.2.0',
'version' => '1.2.0.0',
'aliases' =>
array (
),
'reference' => '6ede70583e101030bcace4dcddd648f760ddf642',
'reference' => '6cccbddfcfc742eb02158d6137ca5687d92cee32',
),
'miniflux/picofeed' =>
array (
@@ -110,8 +109,6 @@ private static $installed = array (
),
),
);
private static $canGetVendors;
private static $installedByVendor = array();
@@ -121,17 +118,7 @@ private static $installedByVendor = array();
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)));
return array_keys(self::$installed['versions']);
}
@@ -144,13 +131,7 @@ return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
public static function isInstalled($packageName)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return true;
}
}
return false;
return isset(self::$installed['versions'][$packageName]);
}
@@ -185,50 +166,42 @@ return $provided->matches($constraint);
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
if (!isset(self::$installed['versions'][$packageName])) {
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
if (isset(self::$installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = self::$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('aliases', self::$installed['versions'][$packageName])) {
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
if (array_key_exists('replaced', self::$installed['versions'][$packageName])) {
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
if (array_key_exists('provided', self::$installed['versions'][$packageName])) {
$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
if (!isset(self::$installed['versions'][$packageName])) {
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
if (!isset($installed['versions'][$packageName]['version'])) {
if (!isset(self::$installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
return self::$installed['versions'][$packageName]['version'];
}
@@ -237,19 +210,15 @@ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
if (!isset(self::$installed['versions'][$packageName])) {
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
if (!isset(self::$installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
return self::$installed['versions'][$packageName]['pretty_version'];
}
@@ -258,19 +227,15 @@ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
if (!isset(self::$installed['versions'][$packageName])) {
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
if (!isset($installed['versions'][$packageName]['reference'])) {
if (!isset(self::$installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
return self::$installed['versions'][$packageName]['reference'];
}
@@ -279,9 +244,7 @@ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
return self::$installed['root'];
}
@@ -316,33 +279,5 @@ return self::$installed;
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
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';
}
}
}
$installed[] = self::$installed;
return $installed;
}
}

View File

@@ -25,7 +25,7 @@ class ComposerAutoloaderInit14b786715d80b97050af9c30f5c07b7c
require __DIR__ . '/platform_check.php';
spl_autoload_register(array('ComposerAutoloaderInit14b786715d80b97050af9c30f5c07b7c', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
spl_autoload_unregister(array('ComposerAutoloaderInit14b786715d80b97050af9c30f5c07b7c', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());

View File

@@ -2,17 +2,17 @@
"packages": [
{
"name": "laminas/laminas-xml",
"version": "1.3.0",
"version_normalized": "1.3.0.0",
"version": "1.3.1",
"version_normalized": "1.3.1.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-xml.git",
"reference": "844dc64557b1ad8a2e0eadb741510ba992674f99"
"reference": "2eada592359aec9d9e55339270b621295cff3a4f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/844dc64557b1ad8a2e0eadb741510ba992674f99",
"reference": "844dc64557b1ad8a2e0eadb741510ba992674f99",
"url": "https://api.github.com/repos/laminas/laminas-xml/zipball/2eada592359aec9d9e55339270b621295cff3a4f",
"reference": "2eada592359aec9d9e55339270b621295cff3a4f",
"shasum": ""
},
"require": {
@@ -27,7 +27,7 @@
"laminas/laminas-coding-standard": "~1.0.0",
"phpunit/phpunit": "^9.4"
},
"time": "2020-11-18T20:46:37+00:00",
"time": "2021-02-17T22:44:58+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -63,27 +63,29 @@
},
{
"name": "laminas/laminas-zendframework-bridge",
"version": "1.1.1",
"version_normalized": "1.1.1.0",
"version": "1.2.0",
"version_normalized": "1.2.0.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-zendframework-bridge.git",
"reference": "6ede70583e101030bcace4dcddd648f760ddf642"
"reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6ede70583e101030bcace4dcddd648f760ddf642",
"reference": "6ede70583e101030bcace4dcddd648f760ddf642",
"url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6cccbddfcfc742eb02158d6137ca5687d92cee32",
"reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32",
"shasum": ""
},
"require": {
"php": "^5.6 || ^7.0 || ^8.0"
"php": "^7.3 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3",
"squizlabs/php_codesniffer": "^3.5"
"psalm/plugin-phpunit": "^0.15.1",
"squizlabs/php_codesniffer": "^3.5",
"vimeo/psalm": "^4.6"
},
"time": "2020-09-14T14:23:00+00:00",
"time": "2021-02-25T21:54:58+00:00",
"type": "library",
"extra": {
"laminas": {

View File

@@ -6,7 +6,7 @@
'aliases' =>
array (
),
'reference' => 'a60b98932a912af1746fb62ea3d39cbeb6f44e25',
'reference' => '63db6543920650ca2da91797df10e8a3fd1aa4c7',
'name' => 'getgrav/grav-plugin-admin',
),
'versions' =>
@@ -18,25 +18,25 @@
'aliases' =>
array (
),
'reference' => 'a60b98932a912af1746fb62ea3d39cbeb6f44e25',
'reference' => '63db6543920650ca2da91797df10e8a3fd1aa4c7',
),
'laminas/laminas-xml' =>
array (
'pretty_version' => '1.3.0',
'version' => '1.3.0.0',
'pretty_version' => '1.3.1',
'version' => '1.3.1.0',
'aliases' =>
array (
),
'reference' => '844dc64557b1ad8a2e0eadb741510ba992674f99',
'reference' => '2eada592359aec9d9e55339270b621295cff3a4f',
),
'laminas/laminas-zendframework-bridge' =>
array (
'pretty_version' => '1.1.1',
'version' => '1.1.1.0',
'pretty_version' => '1.2.0',
'version' => '1.2.0.0',
'aliases' =>
array (
),
'reference' => '6ede70583e101030bcace4dcddd648f760ddf642',
'reference' => '6cccbddfcfc742eb02158d6137ca5687d92cee32',
),
'miniflux/picofeed' =>
array (

View File

@@ -0,0 +1,33 @@
name: "Continuous Integration"
on:
pull_request:
push:
branches:
- '[0-9]+.[0-9]+.x'
- 'refs/pull/*'
tags:
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 }}

View File

@@ -1,131 +0,0 @@
# Changelog
All notable changes to this project will be documented in this file, in reverse chronological order by release.
## 1.3.0 - 2020-11-18
### Added
- [#3](https://github.com/laminas/laminas-xml/pull/3) adds support for PHP 8. Essentially, this library becomes a no-op under PHP 8, as the features that allowed XXE/XEE vectors are removed from the libxml version PHP 8 compiles against.
### Removed
- [#3](https://github.com/laminas/laminas-xml/pull/3) removes support for PHP versions prior to 7.3.
-----
### Release Notes for [1.3.0](https://github.com/laminas/laminas-xml/milestone/1)
### 1.3.0
- Total issues resolved: **0**
- Total pull requests resolved: **1**
- Total contributors: **1**
#### Enhancement
- [3: Add a small PHP 8.0 fix](https://github.com/laminas/laminas-xml/pull/3) thanks to @xvilo
## 1.2.0 - 2019-01-22
### Added
- [zendframework/zendxml#6](https://github.com/zendframework/zendxml/pull/6) adds the following method:
```php
Security::scanHtml(
string $html,
DOMDocument $dom = null,
int $libXmlConstants = 0
) : SimpleXMLElement|DOMDocument|bool
```
This method allows scanning markup known to be HTML, versus assuming the
markup is generic XML.
### Changed
- Nothing.
### Deprecated
- Nothing.
### Removed
- Nothing.
### Fixed
- Nothing.
## 1.1.1 - 2019-01-22
### Added
- [zendframework/zendxml#16](https://github.com/zendframework/ZendXml/pull/16) adds support for PHP 7.3.
### Changed
- Nothing.
### Deprecated
- Nothing.
### Removed
- Nothing.
### Fixed
- [zendframework/zendxml#17](https://github.com/zendframework/ZendXml/pull/17) properly enables heuristic security checks for PHP 5.6.0 - 5.6.5 when PHP
is running as PHP-FPM.
## 1.1.0 - 2018-04-30
### Added
- [zendframework/zendxml#13](https://github.com/zendframework/ZendXml/pull/13) adds support for PHP 7.1 and 7.2.
### Changed
- Nothing.
### Deprecated
- Nothing.
### Removed
- [zendframework/zendxml#13](https://github.com/zendframework/ZendXml/pull/13) removes support for PHP 5.3, 5.4, and 5.5.
- [zendframework/zendxml#13](https://github.com/zendframework/ZendXml/pull/13) removes support for HHVM.
### Fixed
- Nothing.
## 1.0.2 - 2016-02-04
### Added
- Nothing.
### Deprecated
- Nothing.
### Removed
- Nothing.
### Fixed
- [zendframework/zendxml#11](https://github.com/zendframework/ZendXml/pull/11) updates the
dependencies to PHP `^5.3.3 || ^7.0` and PHPUnit `^3.7 || ^4.0`, ensuring
better compatibility with other components, and with PHP 7. The test matrix
was also expanded to add PHP 7 as a required platform.

View File

@@ -1,7 +1,6 @@
# laminas-xml
[![Build Status](https://travis-ci.com/laminas/laminas-xml.svg?branch=master)](https://travis-ci.com/laminas/laminas-xml)
[![Coverage Status](https://coveralls.io/repos/github/laminas/laminas-xml/badge.svg?branch=master)](https://coveralls.io/github/laminas/laminas-xml?branch=master)
[![Build Status](https://github.com/laminas/laminas-xml/workflows/Continuous%20Integration/badge.svg)](https://github.com/laminas/laminas-xml/actions?query=workflow%3A"Continuous+Integration")
An utility component for XML usage and best practices in PHP
@@ -9,14 +8,13 @@ An utility component for XML usage and best practices in PHP
You can install using:
```
curl -s https://getcomposer.org/installer | php
php composer.phar install
```bash
$ curl -s https://getcomposer.org/installer | php
$ php composer.phar install
```
Notice that this library doesn't have any external dependencies, the usage of composer is for autoloading and standard purpose.
## Laminas\Xml\Security
This is a security component to prevent [XML eXternal Entity](https://www.owasp.org/index.php/XML_External_Entity_%28XXE%29_Processing) (XXE) and [XML Entity Expansion](http://projects.webappsec.org/w/page/13247002/XML%20Entity%20Expansion) (XEE) attacks on XML documents.
@@ -31,11 +29,11 @@ We have two static methods to scan and load XML document from a string (scan) an
use Laminas\Xml\Security as XmlSecurity;
$xml = <<<XML
<?xml version="1.0"?>
<results>
<result>test</result>
</results>
XML;
<?xml version="1.0"?>
<results>
<result>test</result>
</results>
XML;
// SimpleXML use case
$simplexml = XmlSecurity::scan($xml);

2295
vendor/laminas/laminas-xml/composer.lock generated vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
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 }}

View File

@@ -2,21 +2,47 @@
All notable changes to this project will be documented in this file, in reverse chronological order by release.
## 1.2.0 - 2021-02-25
-----
### Release Notes for [1.2.0](https://github.com/laminas/laminas-zendframework-bridge/milestone/7)
Feature release (minor)
## Added
- Added Psalm support
## Removed
- Dropped support for PHP prior 7.3
### 1.2.0
- Total issues resolved: **1**
- Total pull requests resolved: **2**
- Total contributors: **3**
#### Enhancement
- [78: GitHub Actions &amp; Psalm](https://github.com/laminas/laminas-zendframework-bridge/pull/78) thanks to @gsteel and @boesing
#### Bug
- [72: Merge release 1.1.1 into 1.2.x](https://github.com/laminas/laminas-zendframework-bridge/pull/72) thanks to @github-actions[bot]
## 1.1.1 - 2020-09-14
### Fixed
- [#71](https://github.com/laminas/laminas-zendframework-bridge/pull/71) fixes detection of the vendor directory when the `COMPOSER_VENDOR_DIR` env variable is missing or empty. Previously, this could lead to scenarios where a non-existent path was used for finding the bridge autoloader.
-----
### Release Notes for [1.1.1](https://github.com/laminas/laminas-zendframework-bridge/milestone/5)
### 1.1.1
- Total issues resolved: **0**
- Total pull requests resolved: **1**
- Total contributors: **1**

View File

@@ -1,7 +1,7 @@
# laminas-zendframework-bridge
[![Build Status](https://travis-ci.com/laminas/laminas-zendframework-bridge.svg?branch=master)](https://travis-ci.com/laminas/laminas-zendframework-bridge)
[![Coverage Status](https://coveralls.io/repos/github/laminas/laminas-zendframework-bridge/badge.svg?branch=master)](https://coveralls.io/github/laminas/laminas-zendframework-bridge?branch=master)
[![Build Status](https://github.com/laminas/laminas-zendframework-bridge/workflows/Continuous%20Integration/badge.svg)](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

View File

@@ -15,11 +15,13 @@
"forum": "https://discourse.laminas.dev/"
},
"require": {
"php": "^5.6 || ^7.0 || ^8.0"
"php": "^7.3 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3",
"squizlabs/php_codesniffer": "^3.5"
"psalm/plugin-phpunit": "^0.15.1",
"squizlabs/php_codesniffer": "^3.5",
"vimeo/psalm": "^4.6"
},
"autoload": {
"files": [
@@ -52,6 +54,7 @@
"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"
}

View File

@@ -0,0 +1,382 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="4.6.1@e93e532e4eaad6d68c4d7b606853800eaceccc72">
<file src="config/replacements.php">
<DuplicateArrayKey occurrences="3">
<code>'ZendAcl' =&gt; 'LaminasAcl'</code>
<code>'ZendRbac' =&gt; 'LaminasRbac'</code>
<code>'ZendRouter' =&gt; '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-&gt;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-&gt;replacements</code>
<code>$this-&gt;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>
<ReservedWord occurrences="5">
<code>self::assertSame($actual, get_class(new $legacy()))</code>
<code>self::assertTrue($isInterface ? interface_exists($legacy) : class_exists($legacy))</code>
<code>self::assertTrue(class_exists($actual))</code>
<code>self::assertTrue(class_exists($legacy))</code>
<code>self::assertTrue(class_exists('Laminas\LegacyTypeHint'))</code>
</ReservedWord>
</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>
<ReservedWord occurrences="3">
<code>$this-&gt;assertSame($expected, $processor($config))</code>
<code>self::assertSame($config, $processor($config))</code>
<code>self::assertSame($expected, $processor($config))</code>
</ReservedWord>
<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>
<ReservedWord occurrences="3">
<code>$this-&gt;assertNull($module-&gt;onMergeConfig($event))</code>
<code>$this-&gt;assertSame($expected, $listener-&gt;getMergedConfig())</code>
</ReservedWord>
<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>
<ReservedWord occurrences="1">
<code>$this-&gt;assertSame($expected, $replacements-&gt;replace($string))</code>
</ReservedWord>
</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' =&gt; '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-&gt;listeners[$eventName]</code>
</MixedArgument>
<MixedArrayAccess occurrences="1">
<code>$this-&gt;listeners[$eventName]</code>
</MixedArrayAccess>
<MixedArrayAssignment occurrences="1">
<code>$this-&gt;listeners[$eventName]</code>
</MixedArrayAssignment>
<MixedInferredReturnType occurrences="1">
<code>array</code>
</MixedInferredReturnType>
<MixedReturnStatement occurrences="1">
<code>$this-&gt;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-&gt;listener</code>
</MixedReturnStatement>
</file>
<file src="test/TestAsset/classes/ModuleManager.php">
<MixedInferredReturnType occurrences="1">
<code>EventManager</code>
</MixedInferredReturnType>
<MixedReturnStatement occurrences="1">
<code>$this-&gt;eventManager</code>
</MixedReturnStatement>
<UndefinedThisPropertyAssignment occurrences="1">
<code>$this-&gt;eventManager</code>
</UndefinedThisPropertyAssignment>
<UndefinedThisPropertyFetch occurrences="1">
<code>$this-&gt;eventManager</code>
</UndefinedThisPropertyFetch>
</file>
</files>

View File

@@ -0,0 +1,33 @@
<?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>