diff --git a/composer.lock b/composer.lock index 088f97db7b88a..15156c2fcb6b1 100644 --- a/composer.lock +++ b/composer.lock @@ -766,16 +766,16 @@ }, { "name": "joomla/registry", - "version": "1.6.3", + "version": "1.6.4", "source": { "type": "git", "url": "https://github.com/joomla-framework/registry.git", - "reference": "51c08b18838aaf2104e38c3846e34b4706e83644" + "reference": "87450394f093efcb3ac5fc978e73d1403ebe8a38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/joomla-framework/registry/zipball/51c08b18838aaf2104e38c3846e34b4706e83644", - "reference": "51c08b18838aaf2104e38c3846e34b4706e83644", + "url": "https://api.github.com/repos/joomla-framework/registry/zipball/87450394f093efcb3ac5fc978e73d1403ebe8a38", + "reference": "87450394f093efcb3ac5fc978e73d1403ebe8a38", "shasum": "" }, "require": { @@ -787,7 +787,7 @@ "require-dev": { "joomla/coding-standards": "~2.0@alpha", "joomla/test": "~1.0", - "phpunit/phpunit": "^4.8.35|^5.4.3|~6.0", + "phpunit/phpunit": "^4.8.35|^5.4.3|~6.0|~7.0|~8.0", "symfony/yaml": "~2.0|~3.0|~4.0|~5.0" }, "suggest": { @@ -817,9 +817,19 @@ ], "support": { "issues": "https://github.com/joomla-framework/registry/issues", - "source": "https://github.com/joomla-framework/registry/tree/1.6.3" + "source": "https://github.com/joomla-framework/registry/tree/1.6.4" }, - "time": "2019-11-27T16:58:55+00:00" + "funding": [ + { + "url": "https://community.joomla.org/sponsorship-campaigns.html", + "type": "custom" + }, + { + "url": "https://github.com/joomla", + "type": "github" + } + ], + "time": "2022-01-08T18:33:07+00:00" }, { "name": "joomla/session", @@ -3816,5 +3826,5 @@ "platform-overrides": { "php": "5.3.10" }, - "plugin-api-version": "2.1.0" + "plugin-api-version": "2.2.0" } diff --git a/libraries/vendor/composer/ClassLoader.php b/libraries/vendor/composer/ClassLoader.php index 6d0c3f2d001d8..afef3fa2ad83f 100644 --- a/libraries/vendor/composer/ClassLoader.php +++ b/libraries/vendor/composer/ClassLoader.php @@ -42,30 +42,75 @@ */ class ClassLoader { + /** @var ?string */ private $vendorDir; // PSR-4 + /** + * @var array[] + * @psalm-var array> + */ private $prefixLengthsPsr4 = array(); + /** + * @var array[] + * @psalm-var array> + */ private $prefixDirsPsr4 = array(); + /** + * @var array[] + * @psalm-var array + */ private $fallbackDirsPsr4 = array(); // PSR-0 + /** + * @var array[] + * @psalm-var array> + */ private $prefixesPsr0 = array(); + /** + * @var array[] + * @psalm-var array + */ private $fallbackDirsPsr0 = array(); + /** @var bool */ private $useIncludePath = false; + + /** + * @var string[] + * @psalm-var array + */ private $classMap = array(); + + /** @var bool */ private $classMapAuthoritative = false; + + /** + * @var bool[] + * @psalm-var array + */ 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)) { @@ -75,28 +120,47 @@ public function getPrefixes() return array(); } + /** + * @return array[] + * @psalm-return array> + */ public function getPrefixesPsr4() { return $this->prefixDirsPsr4; } + /** + * @return array[] + * @psalm-return array + */ public function getFallbackDirs() { return $this->fallbackDirsPsr0; } + /** + * @return array[] + * @psalm-return array + */ public function getFallbackDirsPsr4() { return $this->fallbackDirsPsr4; } + /** + * @return string[] Array of classname => path + * @psalm-return array + */ public function getClassMap() { return $this->classMap; } /** - * @param array $classMap Class to filename map + * @param string[] $classMap Class to filename map + * @psalm-param array $classMap + * + * @return void */ public function addClassMap(array $classMap) { @@ -111,9 +175,11 @@ public function addClassMap(array $classMap) * 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) { @@ -156,11 +222,13 @@ public function add($prefix, $paths, $prepend = false) * 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) { @@ -204,8 +272,10 @@ public function addPsr4($prefix, $paths, $prepend = false) * 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) { @@ -220,10 +290,12 @@ public function set($prefix, $paths) * 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) { @@ -243,6 +315,8 @@ public function setPsr4($prefix, $paths) * Turns on searching the include path for class files. * * @param bool $useIncludePath + * + * @return void */ public function setUseIncludePath($useIncludePath) { @@ -265,6 +339,8 @@ public function getUseIncludePath() * that have not been registered with the class map. * * @param bool $classMapAuthoritative + * + * @return void */ public function setClassMapAuthoritative($classMapAuthoritative) { @@ -285,6 +361,8 @@ public function isClassMapAuthoritative() * 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) { @@ -305,6 +383,8 @@ public function getApcuPrefix() * Registers this instance as an autoloader. * * @param bool $prepend Whether to prepend the autoloader or not + * + * @return void */ public function register($prepend = false) { @@ -324,6 +404,8 @@ public function register($prepend = false) /** * Unregisters this instance as an autoloader. + * + * @return void */ public function unregister() { @@ -403,6 +485,11 @@ public static function getRegisteredLoaders() return self::$registeredLoaders; } + /** + * @param string $class + * @param string $ext + * @return string|false + */ private function findFileWithExtension($class, $ext) { // PSR-4 lookup @@ -474,6 +561,10 @@ private function findFileWithExtension($class, $ext) * Scope isolated include. * * Prevents access to $this/self from included files. + * + * @param string $file + * @return void + * @private */ function includeFile($file) { diff --git a/libraries/vendor/composer/InstalledVersions.php b/libraries/vendor/composer/InstalledVersions.php index b3a4e1611e6e5..d50e0c9fcc47d 100644 --- a/libraries/vendor/composer/InstalledVersions.php +++ b/libraries/vendor/composer/InstalledVersions.php @@ -20,12 +20,25 @@ * * See also https://getcomposer.org/doc/07-runtime.md#installed-versions * - * To require it's presence, you can require `composer-runtime-api ^2.0` + * To require its presence, you can require `composer-runtime-api ^2.0` */ class InstalledVersions { + /** + * @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}|array{}|null + */ private static $installed; + + /** + * @var bool|null + */ private static $canGetVendors; + + /** + * @var array[] + * @psalm-var array}> + */ private static $installedByVendor = array(); /** @@ -228,7 +241,7 @@ public static function getInstallPath($packageName) /** * @return array - * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string} + * @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() { @@ -242,7 +255,7 @@ public static function getRootPackage() * * @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}, versions: 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} */ public static function getRawData() { @@ -265,7 +278,7 @@ public static function getRawData() * Returns the raw data of all installed.php which are currently loaded for custom implementations * * @return array[] - * @psalm-return list}> + * @psalm-return list}> */ public static function getAllRawData() { @@ -288,7 +301,7 @@ public static function getAllRawData() * @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}, versions: array} $data + * @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} $data */ public static function reload($data) { @@ -298,7 +311,7 @@ public static function reload($data) /** * @return array[] - * @psalm-return list}> + * @psalm-return list}> */ private static function getInstalled() { diff --git a/libraries/vendor/composer/autoload_real.php b/libraries/vendor/composer/autoload_real.php index 0f5b19606b505..559a005cb7898 100644 --- a/libraries/vendor/composer/autoload_real.php +++ b/libraries/vendor/composer/autoload_real.php @@ -65,11 +65,16 @@ public static function getLoader() } } +/** + * @param string $fileIdentifier + * @param string $file + * @return void + */ function composerRequirec14bde14f8c86840049f5c1809c453dd($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { - require $file; - $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; + + require $file; } } diff --git a/libraries/vendor/composer/installed.json b/libraries/vendor/composer/installed.json index 00fa02a06f0cb..94f2536885775 100644 --- a/libraries/vendor/composer/installed.json +++ b/libraries/vendor/composer/installed.json @@ -802,17 +802,17 @@ }, { "name": "joomla/registry", - "version": "1.6.3", - "version_normalized": "1.6.3.0", + "version": "1.6.4", + "version_normalized": "1.6.4.0", "source": { "type": "git", "url": "https://github.com/joomla-framework/registry.git", - "reference": "51c08b18838aaf2104e38c3846e34b4706e83644" + "reference": "87450394f093efcb3ac5fc978e73d1403ebe8a38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/joomla-framework/registry/zipball/51c08b18838aaf2104e38c3846e34b4706e83644", - "reference": "51c08b18838aaf2104e38c3846e34b4706e83644", + "url": "https://api.github.com/repos/joomla-framework/registry/zipball/87450394f093efcb3ac5fc978e73d1403ebe8a38", + "reference": "87450394f093efcb3ac5fc978e73d1403ebe8a38", "shasum": "" }, "require": { @@ -824,13 +824,13 @@ "require-dev": { "joomla/coding-standards": "~2.0@alpha", "joomla/test": "~1.0", - "phpunit/phpunit": "^4.8.35|^5.4.3|~6.0", + "phpunit/phpunit": "^4.8.35|^5.4.3|~6.0|~7.0|~8.0", "symfony/yaml": "~2.0|~3.0|~4.0|~5.0" }, "suggest": { "symfony/yaml": "Install symfony/yaml if you require YAML support." }, - "time": "2019-11-27T16:58:55+00:00", + "time": "2022-01-08T18:33:07+00:00", "type": "joomla-package", "extra": { "branch-alias": { @@ -856,8 +856,18 @@ ], "support": { "issues": "https://github.com/joomla-framework/registry/issues", - "source": "https://github.com/joomla-framework/registry/tree/1.6.3" + "source": "https://github.com/joomla-framework/registry/tree/1.6.4" }, + "funding": [ + { + "url": "https://community.joomla.org/sponsorship-campaigns.html", + "type": "custom" + }, + { + "url": "https://github.com/joomla", + "type": "github" + } + ], "install-path": "../joomla/registry" }, { diff --git a/libraries/vendor/composer/installed.php b/libraries/vendor/composer/installed.php index ee63b6894dea0..31f70e9210a24 100644 --- a/libraries/vendor/composer/installed.php +++ b/libraries/vendor/composer/installed.php @@ -5,7 +5,7 @@ 'type' => 'project', 'install_path' => __DIR__ . '/../../../', 'aliases' => array(), - 'reference' => 'b52db136c057fa3975f312ff20029636d2cc4d0a', + 'reference' => '64c90091d632ec4cfb608fab98f1455f3d8e1a61', 'name' => 'joomla/joomla-cms', 'dev' => false, ), @@ -133,7 +133,7 @@ 'type' => 'project', 'install_path' => __DIR__ . '/../../../', 'aliases' => array(), - 'reference' => 'b52db136c057fa3975f312ff20029636d2cc4d0a', + 'reference' => '64c90091d632ec4cfb608fab98f1455f3d8e1a61', 'dev_requirement' => false, ), 'joomla/ldap' => array( @@ -146,12 +146,12 @@ 'dev_requirement' => false, ), 'joomla/registry' => array( - 'pretty_version' => '1.6.3', - 'version' => '1.6.3.0', + 'pretty_version' => '1.6.4', + 'version' => '1.6.4.0', 'type' => 'joomla-package', 'install_path' => __DIR__ . '/../joomla/registry', 'aliases' => array(), - 'reference' => '51c08b18838aaf2104e38c3846e34b4706e83644', + 'reference' => '87450394f093efcb3ac5fc978e73d1403ebe8a38', 'dev_requirement' => false, ), 'joomla/session' => array( diff --git a/libraries/vendor/joomla/registry/src/AbstractRegistryFormat.php b/libraries/vendor/joomla/registry/src/AbstractRegistryFormat.php index 38fa5e9029231..4a555c3a1c250 100644 --- a/libraries/vendor/joomla/registry/src/AbstractRegistryFormat.php +++ b/libraries/vendor/joomla/registry/src/AbstractRegistryFormat.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Factory.php b/libraries/vendor/joomla/registry/src/Factory.php index ad8e16ff76dc7..9020212fedf04 100644 --- a/libraries/vendor/joomla/registry/src/Factory.php +++ b/libraries/vendor/joomla/registry/src/Factory.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Format/Ini.php b/libraries/vendor/joomla/registry/src/Format/Ini.php index ca18b76a42b6a..5f472be7437d0 100644 --- a/libraries/vendor/joomla/registry/src/Format/Ini.php +++ b/libraries/vendor/joomla/registry/src/Format/Ini.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Format/Json.php b/libraries/vendor/joomla/registry/src/Format/Json.php index c1d47fd24e4a6..09e25ddf815b6 100644 --- a/libraries/vendor/joomla/registry/src/Format/Json.php +++ b/libraries/vendor/joomla/registry/src/Format/Json.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Format/Php.php b/libraries/vendor/joomla/registry/src/Format/Php.php index 9bbf40ca77086..358d39731b325 100644 --- a/libraries/vendor/joomla/registry/src/Format/Php.php +++ b/libraries/vendor/joomla/registry/src/Format/Php.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Format/Xml.php b/libraries/vendor/joomla/registry/src/Format/Xml.php index 14c5e745f5015..8a417984588fa 100644 --- a/libraries/vendor/joomla/registry/src/Format/Xml.php +++ b/libraries/vendor/joomla/registry/src/Format/Xml.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Format/Yaml.php b/libraries/vendor/joomla/registry/src/Format/Yaml.php index 03f4cd09d546e..114579dbacdbc 100644 --- a/libraries/vendor/joomla/registry/src/Format/Yaml.php +++ b/libraries/vendor/joomla/registry/src/Format/Yaml.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/FormatInterface.php b/libraries/vendor/joomla/registry/src/FormatInterface.php index 4ee534378b815..bd522302ed392 100644 --- a/libraries/vendor/joomla/registry/src/FormatInterface.php +++ b/libraries/vendor/joomla/registry/src/FormatInterface.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ diff --git a/libraries/vendor/joomla/registry/src/Registry.php b/libraries/vendor/joomla/registry/src/Registry.php index 2b24a4cb28122..32fb15be0fae6 100644 --- a/libraries/vendor/joomla/registry/src/Registry.php +++ b/libraries/vendor/joomla/registry/src/Registry.php @@ -2,7 +2,7 @@ /** * Part of the Joomla Framework Registry Package * - * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved. + * @copyright Copyright (C) 2005 - 2022 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ @@ -109,6 +109,7 @@ public function __toString() * @link https://www.php.net/manual/en/countable.count.php * @since 1.3.0 */ + #[\ReturnTypeWillChange] public function count() { return \count(get_object_vars($this->data)); @@ -123,6 +124,7 @@ public function count() * @since 1.0 * @note The interface is only present in PHP 5.4 and up. */ + #[\ReturnTypeWillChange] public function jsonSerialize() { return $this->data; @@ -213,7 +215,7 @@ public function get($path, $default = null) if (!strpos($path, $this->separator)) { - return (isset($this->data->$path) && $this->data->$path !== null && $this->data->$path !== '') ? $this->data->$path : $default; + return (isset($this->data->$path) && $this->data->$path !== '') ? $this->data->$path : $default; } // Explode the registry path into an array @@ -285,6 +287,7 @@ public static function getInstance($id) * @see IteratorAggregate::getIterator() * @since 1.3.0 */ + #[\ReturnTypeWillChange] public function getIterator() { return new \ArrayIterator($this->data); @@ -436,6 +439,7 @@ public function extract($path) * * @since 1.0 */ + #[\ReturnTypeWillChange] public function offsetExists($offset) { return (boolean) ($this->get($offset) !== null); @@ -450,6 +454,7 @@ public function offsetExists($offset) * * @since 1.0 */ + #[\ReturnTypeWillChange] public function offsetGet($offset) { return $this->get($offset); @@ -465,6 +470,7 @@ public function offsetGet($offset) * * @since 1.0 */ + #[\ReturnTypeWillChange] public function offsetSet($offset, $value) { $this->set($offset, $value); @@ -479,6 +485,7 @@ public function offsetSet($offset, $value) * * @since 1.0 */ + #[\ReturnTypeWillChange] public function offsetUnset($offset) { $this->remove($offset); @@ -646,7 +653,7 @@ public function remove($path) // Cheap optimisation to direct remove the node if there is no separator if (!strpos($path, $this->separator)) { - $result = (isset($this->data->$path) && $this->data->$path !== null && $this->data->$path !== '') ? $this->data->$path : null; + $result = (isset($this->data->$path) && $this->data->$path !== '') ? $this->data->$path : null; unset($this->data->$path);