fixed
This commit is contained in:
@@ -18,7 +18,7 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.4",
|
"php": ">=7.4",
|
||||||
"topthink/framework": "5.1.*",
|
"topthink/framework": "5.1.*",
|
||||||
"topthink/think-worker": "^2.0",
|
"topthink/think-worker": "2.0.*",
|
||||||
"workerman/gateway-worker": "^3.0",
|
"workerman/gateway-worker": "^3.0",
|
||||||
"wanghua/general-utility-tools-php": "dev-master",
|
"wanghua/general-utility-tools-php": "dev-master",
|
||||||
"ext-json": "*",
|
"ext-json": "*",
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"repositories": {
|
"repositories": {
|
||||||
"packagist": {
|
"packagist": {
|
||||||
"type": "composer",
|
"type": "composer",
|
||||||
"url": "https://packagist.org"
|
"url": "https://mirrors.huaweicloud.com/repository/php/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 32 KiB |
18
digital_doctor/vendor/autoload.php
vendored
18
digital_doctor/vendor/autoload.php
vendored
@@ -2,24 +2,6 @@
|
|||||||
|
|
||||||
// autoload.php @generated by Composer
|
// autoload.php @generated by Composer
|
||||||
|
|
||||||
if (PHP_VERSION_ID < 50600) {
|
|
||||||
if (!headers_sent()) {
|
|
||||||
header('HTTP/1.1 500 Internal Server Error');
|
|
||||||
}
|
|
||||||
$err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
|
|
||||||
if (!ini_get('display_errors')) {
|
|
||||||
if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
|
|
||||||
fwrite(STDERR, $err);
|
|
||||||
} elseif (!headers_sent()) {
|
|
||||||
echo $err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
trigger_error(
|
|
||||||
$err,
|
|
||||||
E_USER_ERROR
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
require_once __DIR__ . '/composer/autoload_real.php';
|
require_once __DIR__ . '/composer/autoload_real.php';
|
||||||
|
|
||||||
return ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3::getLoader();
|
return ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3::getLoader();
|
||||||
|
|||||||
139
digital_doctor/vendor/composer/ClassLoader.php
vendored
139
digital_doctor/vendor/composer/ClassLoader.php
vendored
@@ -42,37 +42,35 @@ namespace Composer\Autoload;
|
|||||||
*/
|
*/
|
||||||
class ClassLoader
|
class ClassLoader
|
||||||
{
|
{
|
||||||
/** @var \Closure(string):void */
|
/** @var ?string */
|
||||||
private static $includeFile;
|
|
||||||
|
|
||||||
/** @var string|null */
|
|
||||||
private $vendorDir;
|
private $vendorDir;
|
||||||
|
|
||||||
// PSR-4
|
// PSR-4
|
||||||
/**
|
/**
|
||||||
* @var array<string, array<string, int>>
|
* @var array[]
|
||||||
|
* @psalm-var array<string, array<string, int>>
|
||||||
*/
|
*/
|
||||||
private $prefixLengthsPsr4 = array();
|
private $prefixLengthsPsr4 = array();
|
||||||
/**
|
/**
|
||||||
* @var array<string, list<string>>
|
* @var array[]
|
||||||
|
* @psalm-var array<string, array<int, string>>
|
||||||
*/
|
*/
|
||||||
private $prefixDirsPsr4 = array();
|
private $prefixDirsPsr4 = array();
|
||||||
/**
|
/**
|
||||||
* @var list<string>
|
* @var array[]
|
||||||
|
* @psalm-var array<string, string>
|
||||||
*/
|
*/
|
||||||
private $fallbackDirsPsr4 = array();
|
private $fallbackDirsPsr4 = array();
|
||||||
|
|
||||||
// PSR-0
|
// PSR-0
|
||||||
/**
|
/**
|
||||||
* List of PSR-0 prefixes
|
* @var array[]
|
||||||
*
|
* @psalm-var array<string, array<string, string[]>>
|
||||||
* Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2')))
|
|
||||||
*
|
|
||||||
* @var array<string, array<string, list<string>>>
|
|
||||||
*/
|
*/
|
||||||
private $prefixesPsr0 = array();
|
private $prefixesPsr0 = array();
|
||||||
/**
|
/**
|
||||||
* @var list<string>
|
* @var array[]
|
||||||
|
* @psalm-var array<string, string>
|
||||||
*/
|
*/
|
||||||
private $fallbackDirsPsr0 = array();
|
private $fallbackDirsPsr0 = array();
|
||||||
|
|
||||||
@@ -80,7 +78,8 @@ class ClassLoader
|
|||||||
private $useIncludePath = false;
|
private $useIncludePath = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array<string, string>
|
* @var string[]
|
||||||
|
* @psalm-var array<string, string>
|
||||||
*/
|
*/
|
||||||
private $classMap = array();
|
private $classMap = array();
|
||||||
|
|
||||||
@@ -88,29 +87,29 @@ class ClassLoader
|
|||||||
private $classMapAuthoritative = false;
|
private $classMapAuthoritative = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array<string, bool>
|
* @var bool[]
|
||||||
|
* @psalm-var array<string, bool>
|
||||||
*/
|
*/
|
||||||
private $missingClasses = array();
|
private $missingClasses = array();
|
||||||
|
|
||||||
/** @var string|null */
|
/** @var ?string */
|
||||||
private $apcuPrefix;
|
private $apcuPrefix;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array<string, self>
|
* @var self[]
|
||||||
*/
|
*/
|
||||||
private static $registeredLoaders = array();
|
private static $registeredLoaders = array();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string|null $vendorDir
|
* @param ?string $vendorDir
|
||||||
*/
|
*/
|
||||||
public function __construct($vendorDir = null)
|
public function __construct($vendorDir = null)
|
||||||
{
|
{
|
||||||
$this->vendorDir = $vendorDir;
|
$this->vendorDir = $vendorDir;
|
||||||
self::initializeIncludeClosure();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array<string, list<string>>
|
* @return string[]
|
||||||
*/
|
*/
|
||||||
public function getPrefixes()
|
public function getPrefixes()
|
||||||
{
|
{
|
||||||
@@ -122,7 +121,8 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array<string, list<string>>
|
* @return array[]
|
||||||
|
* @psalm-return array<string, array<int, string>>
|
||||||
*/
|
*/
|
||||||
public function getPrefixesPsr4()
|
public function getPrefixesPsr4()
|
||||||
{
|
{
|
||||||
@@ -130,7 +130,8 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return list<string>
|
* @return array[]
|
||||||
|
* @psalm-return array<string, string>
|
||||||
*/
|
*/
|
||||||
public function getFallbackDirs()
|
public function getFallbackDirs()
|
||||||
{
|
{
|
||||||
@@ -138,7 +139,8 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return list<string>
|
* @return array[]
|
||||||
|
* @psalm-return array<string, string>
|
||||||
*/
|
*/
|
||||||
public function getFallbackDirsPsr4()
|
public function getFallbackDirsPsr4()
|
||||||
{
|
{
|
||||||
@@ -146,7 +148,8 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array<string, string> Array of classname => path
|
* @return string[] Array of classname => path
|
||||||
|
* @psalm-return array<string, string>
|
||||||
*/
|
*/
|
||||||
public function getClassMap()
|
public function getClassMap()
|
||||||
{
|
{
|
||||||
@@ -154,7 +157,8 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array<string, string> $classMap Class to filename map
|
* @param string[] $classMap Class to filename map
|
||||||
|
* @psalm-param array<string, string> $classMap
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
@@ -171,25 +175,24 @@ class ClassLoader
|
|||||||
* Registers a set of PSR-0 directories for a given prefix, either
|
* Registers a set of PSR-0 directories for a given prefix, either
|
||||||
* appending or prepending to the ones previously set for this prefix.
|
* appending or prepending to the ones previously set for this prefix.
|
||||||
*
|
*
|
||||||
* @param string $prefix The prefix
|
* @param string $prefix The prefix
|
||||||
* @param list<string>|string $paths The PSR-0 root directories
|
* @param string[]|string $paths The PSR-0 root directories
|
||||||
* @param bool $prepend Whether to prepend the directories
|
* @param bool $prepend Whether to prepend the directories
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function add($prefix, $paths, $prepend = false)
|
public function add($prefix, $paths, $prepend = false)
|
||||||
{
|
{
|
||||||
$paths = (array) $paths;
|
|
||||||
if (!$prefix) {
|
if (!$prefix) {
|
||||||
if ($prepend) {
|
if ($prepend) {
|
||||||
$this->fallbackDirsPsr0 = array_merge(
|
$this->fallbackDirsPsr0 = array_merge(
|
||||||
$paths,
|
(array) $paths,
|
||||||
$this->fallbackDirsPsr0
|
$this->fallbackDirsPsr0
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$this->fallbackDirsPsr0 = array_merge(
|
$this->fallbackDirsPsr0 = array_merge(
|
||||||
$this->fallbackDirsPsr0,
|
$this->fallbackDirsPsr0,
|
||||||
$paths
|
(array) $paths
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -198,19 +201,19 @@ class ClassLoader
|
|||||||
|
|
||||||
$first = $prefix[0];
|
$first = $prefix[0];
|
||||||
if (!isset($this->prefixesPsr0[$first][$prefix])) {
|
if (!isset($this->prefixesPsr0[$first][$prefix])) {
|
||||||
$this->prefixesPsr0[$first][$prefix] = $paths;
|
$this->prefixesPsr0[$first][$prefix] = (array) $paths;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ($prepend) {
|
if ($prepend) {
|
||||||
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
||||||
$paths,
|
(array) $paths,
|
||||||
$this->prefixesPsr0[$first][$prefix]
|
$this->prefixesPsr0[$first][$prefix]
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
||||||
$this->prefixesPsr0[$first][$prefix],
|
$this->prefixesPsr0[$first][$prefix],
|
||||||
$paths
|
(array) $paths
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -219,9 +222,9 @@ class ClassLoader
|
|||||||
* Registers a set of PSR-4 directories for a given namespace, either
|
* Registers a set of PSR-4 directories for a given namespace, either
|
||||||
* appending or prepending to the ones previously set for this namespace.
|
* appending or prepending to the ones previously set for this namespace.
|
||||||
*
|
*
|
||||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||||
* @param list<string>|string $paths The PSR-4 base directories
|
* @param string[]|string $paths The PSR-4 base directories
|
||||||
* @param bool $prepend Whether to prepend the directories
|
* @param bool $prepend Whether to prepend the directories
|
||||||
*
|
*
|
||||||
* @throws \InvalidArgumentException
|
* @throws \InvalidArgumentException
|
||||||
*
|
*
|
||||||
@@ -229,18 +232,17 @@ class ClassLoader
|
|||||||
*/
|
*/
|
||||||
public function addPsr4($prefix, $paths, $prepend = false)
|
public function addPsr4($prefix, $paths, $prepend = false)
|
||||||
{
|
{
|
||||||
$paths = (array) $paths;
|
|
||||||
if (!$prefix) {
|
if (!$prefix) {
|
||||||
// Register directories for the root namespace.
|
// Register directories for the root namespace.
|
||||||
if ($prepend) {
|
if ($prepend) {
|
||||||
$this->fallbackDirsPsr4 = array_merge(
|
$this->fallbackDirsPsr4 = array_merge(
|
||||||
$paths,
|
(array) $paths,
|
||||||
$this->fallbackDirsPsr4
|
$this->fallbackDirsPsr4
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$this->fallbackDirsPsr4 = array_merge(
|
$this->fallbackDirsPsr4 = array_merge(
|
||||||
$this->fallbackDirsPsr4,
|
$this->fallbackDirsPsr4,
|
||||||
$paths
|
(array) $paths
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
|
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
|
||||||
@@ -250,18 +252,18 @@ class ClassLoader
|
|||||||
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
|
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
|
||||||
}
|
}
|
||||||
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
|
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
|
||||||
$this->prefixDirsPsr4[$prefix] = $paths;
|
$this->prefixDirsPsr4[$prefix] = (array) $paths;
|
||||||
} elseif ($prepend) {
|
} elseif ($prepend) {
|
||||||
// Prepend directories for an already registered namespace.
|
// Prepend directories for an already registered namespace.
|
||||||
$this->prefixDirsPsr4[$prefix] = array_merge(
|
$this->prefixDirsPsr4[$prefix] = array_merge(
|
||||||
$paths,
|
(array) $paths,
|
||||||
$this->prefixDirsPsr4[$prefix]
|
$this->prefixDirsPsr4[$prefix]
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
// Append directories for an already registered namespace.
|
// Append directories for an already registered namespace.
|
||||||
$this->prefixDirsPsr4[$prefix] = array_merge(
|
$this->prefixDirsPsr4[$prefix] = array_merge(
|
||||||
$this->prefixDirsPsr4[$prefix],
|
$this->prefixDirsPsr4[$prefix],
|
||||||
$paths
|
(array) $paths
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -270,8 +272,8 @@ class ClassLoader
|
|||||||
* Registers a set of PSR-0 directories for a given prefix,
|
* Registers a set of PSR-0 directories for a given prefix,
|
||||||
* replacing any others previously set for this prefix.
|
* replacing any others previously set for this prefix.
|
||||||
*
|
*
|
||||||
* @param string $prefix The prefix
|
* @param string $prefix The prefix
|
||||||
* @param list<string>|string $paths The PSR-0 base directories
|
* @param string[]|string $paths The PSR-0 base directories
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
@@ -288,8 +290,8 @@ class ClassLoader
|
|||||||
* Registers a set of PSR-4 directories for a given namespace,
|
* Registers a set of PSR-4 directories for a given namespace,
|
||||||
* replacing any others previously set for this namespace.
|
* replacing any others previously set for this namespace.
|
||||||
*
|
*
|
||||||
* @param string $prefix The prefix/namespace, with trailing '\\'
|
* @param string $prefix The prefix/namespace, with trailing '\\'
|
||||||
* @param list<string>|string $paths The PSR-4 base directories
|
* @param string[]|string $paths The PSR-4 base directories
|
||||||
*
|
*
|
||||||
* @throws \InvalidArgumentException
|
* @throws \InvalidArgumentException
|
||||||
*
|
*
|
||||||
@@ -423,8 +425,7 @@ class ClassLoader
|
|||||||
public function loadClass($class)
|
public function loadClass($class)
|
||||||
{
|
{
|
||||||
if ($file = $this->findFile($class)) {
|
if ($file = $this->findFile($class)) {
|
||||||
$includeFile = self::$includeFile;
|
includeFile($file);
|
||||||
$includeFile($file);
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -475,9 +476,9 @@ class ClassLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the currently registered loaders keyed by their corresponding vendor directories.
|
* Returns the currently registered loaders indexed by their corresponding vendor directories.
|
||||||
*
|
*
|
||||||
* @return array<string, self>
|
* @return self[]
|
||||||
*/
|
*/
|
||||||
public static function getRegisteredLoaders()
|
public static function getRegisteredLoaders()
|
||||||
{
|
{
|
||||||
@@ -554,26 +555,18 @@ class ClassLoader
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
/**
|
|
||||||
* @return void
|
/**
|
||||||
*/
|
* Scope isolated include.
|
||||||
private static function initializeIncludeClosure()
|
*
|
||||||
{
|
* Prevents access to $this/self from included files.
|
||||||
if (self::$includeFile !== null) {
|
*
|
||||||
return;
|
* @param string $file
|
||||||
}
|
* @return void
|
||||||
|
* @private
|
||||||
/**
|
*/
|
||||||
* Scope isolated include.
|
function includeFile($file)
|
||||||
*
|
{
|
||||||
* Prevents access to $this/self from included files.
|
include $file;
|
||||||
*
|
|
||||||
* @param string $file
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
self::$includeFile = \Closure::bind(static function($file) {
|
|
||||||
include $file;
|
|
||||||
}, null, null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,14 +21,12 @@ use Composer\Semver\VersionParser;
|
|||||||
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
||||||
*
|
*
|
||||||
* To require its presence, you can require `composer-runtime-api ^2.0`
|
* To require its presence, you can require `composer-runtime-api ^2.0`
|
||||||
*
|
|
||||||
* @final
|
|
||||||
*/
|
*/
|
||||||
class InstalledVersions
|
class InstalledVersions
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var mixed[]|null
|
* @var mixed[]|null
|
||||||
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|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;
|
private static $installed;
|
||||||
|
|
||||||
@@ -39,7 +37,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array[]
|
* @var array[]
|
||||||
* @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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();
|
private static $installedByVendor = array();
|
||||||
|
|
||||||
@@ -98,7 +96,7 @@ class InstalledVersions
|
|||||||
{
|
{
|
||||||
foreach (self::getInstalled() as $installed) {
|
foreach (self::getInstalled() as $installed) {
|
||||||
if (isset($installed['versions'][$packageName])) {
|
if (isset($installed['versions'][$packageName])) {
|
||||||
return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
|
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,7 +117,7 @@ class InstalledVersions
|
|||||||
*/
|
*/
|
||||||
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
||||||
{
|
{
|
||||||
$constraint = $parser->parseConstraints((string) $constraint);
|
$constraint = $parser->parseConstraints($constraint);
|
||||||
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
||||||
|
|
||||||
return $provided->matches($constraint);
|
return $provided->matches($constraint);
|
||||||
@@ -243,7 +241,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
* @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}
|
* @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()
|
public static function getRootPackage()
|
||||||
{
|
{
|
||||||
@@ -257,7 +255,7 @@ class InstalledVersions
|
|||||||
*
|
*
|
||||||
* @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.
|
* @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[]
|
* @return array[]
|
||||||
* @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}
|
* @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()
|
public static function getRawData()
|
||||||
{
|
{
|
||||||
@@ -280,7 +278,7 @@ class InstalledVersions
|
|||||||
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
||||||
*
|
*
|
||||||
* @return array[]
|
* @return array[]
|
||||||
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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()
|
public static function getAllRawData()
|
||||||
{
|
{
|
||||||
@@ -303,7 +301,7 @@ class InstalledVersions
|
|||||||
* @param array[] $data A vendor/composer/installed.php data set
|
* @param array[] $data A vendor/composer/installed.php data set
|
||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
* @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $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<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)
|
public static function reload($data)
|
||||||
{
|
{
|
||||||
@@ -313,7 +311,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array[]
|
* @return array[]
|
||||||
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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()
|
private static function getInstalled()
|
||||||
{
|
{
|
||||||
@@ -328,9 +326,7 @@ class InstalledVersions
|
|||||||
if (isset(self::$installedByVendor[$vendorDir])) {
|
if (isset(self::$installedByVendor[$vendorDir])) {
|
||||||
$installed[] = self::$installedByVendor[$vendorDir];
|
$installed[] = self::$installedByVendor[$vendorDir];
|
||||||
} elseif (is_file($vendorDir.'/composer/installed.php')) {
|
} elseif (is_file($vendorDir.'/composer/installed.php')) {
|
||||||
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
|
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
|
||||||
$required = require $vendorDir.'/composer/installed.php';
|
|
||||||
$installed[] = self::$installedByVendor[$vendorDir] = $required;
|
|
||||||
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
|
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
|
||||||
self::$installed = $installed[count($installed) - 1];
|
self::$installed = $installed[count($installed) - 1];
|
||||||
}
|
}
|
||||||
@@ -342,17 +338,12 @@ class InstalledVersions
|
|||||||
// only require the installed.php file if this file is loaded from its dumped location,
|
// 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
|
// 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') {
|
if (substr(__DIR__, -8, 1) !== 'C') {
|
||||||
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
|
self::$installed = require __DIR__ . '/installed.php';
|
||||||
$required = require __DIR__ . '/installed.php';
|
|
||||||
self::$installed = $required;
|
|
||||||
} else {
|
} else {
|
||||||
self::$installed = array();
|
self::$installed = array();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$installed[] = self::$installed;
|
||||||
if (self::$installed !== array()) {
|
|
||||||
$installed[] = self::$installed;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $installed;
|
return $installed;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_classmap.php @generated by Composer
|
// autoload_classmap.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_files.php @generated by Composer
|
// autoload_files.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_namespaces.php @generated by Composer
|
// autoload_namespaces.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_psr4.php @generated by Composer
|
// autoload_psr4.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
56
digital_doctor/vendor/composer/autoload_real.php
vendored
56
digital_doctor/vendor/composer/autoload_real.php
vendored
@@ -25,26 +25,56 @@ class ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3
|
|||||||
require __DIR__ . '/platform_check.php';
|
require __DIR__ . '/platform_check.php';
|
||||||
|
|
||||||
spl_autoload_register(array('ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3', 'loadClassLoader'), true, true);
|
spl_autoload_register(array('ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3', 'loadClassLoader'), true, true);
|
||||||
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
|
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
|
||||||
spl_autoload_unregister(array('ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3', 'loadClassLoader'));
|
spl_autoload_unregister(array('ComposerAutoloaderInit296bd8a1d28e39d56dcd80ce7be249f3', 'loadClassLoader'));
|
||||||
|
|
||||||
require __DIR__ . '/autoload_static.php';
|
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
||||||
call_user_func(\Composer\Autoload\ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3::getInitializer($loader));
|
if ($useStaticLoader) {
|
||||||
|
require __DIR__ . '/autoload_static.php';
|
||||||
|
|
||||||
|
call_user_func(\Composer\Autoload\ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3::getInitializer($loader));
|
||||||
|
} else {
|
||||||
|
$map = require __DIR__ . '/autoload_namespaces.php';
|
||||||
|
foreach ($map as $namespace => $path) {
|
||||||
|
$loader->set($namespace, $path);
|
||||||
|
}
|
||||||
|
|
||||||
|
$map = require __DIR__ . '/autoload_psr4.php';
|
||||||
|
foreach ($map as $namespace => $path) {
|
||||||
|
$loader->setPsr4($namespace, $path);
|
||||||
|
}
|
||||||
|
|
||||||
|
$classMap = require __DIR__ . '/autoload_classmap.php';
|
||||||
|
if ($classMap) {
|
||||||
|
$loader->addClassMap($classMap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$loader->register(true);
|
$loader->register(true);
|
||||||
|
|
||||||
$filesToLoad = \Composer\Autoload\ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3::$files;
|
if ($useStaticLoader) {
|
||||||
$requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
|
$includeFiles = Composer\Autoload\ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3::$files;
|
||||||
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
} else {
|
||||||
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
$includeFiles = require __DIR__ . '/autoload_files.php';
|
||||||
|
}
|
||||||
require $file;
|
foreach ($includeFiles as $fileIdentifier => $file) {
|
||||||
}
|
composerRequire296bd8a1d28e39d56dcd80ce7be249f3($fileIdentifier, $file);
|
||||||
}, null, null);
|
|
||||||
foreach ($filesToLoad as $fileIdentifier => $file) {
|
|
||||||
$requireFile($fileIdentifier, $file);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $loader;
|
return $loader;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $fileIdentifier
|
||||||
|
* @param string $file
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
function composerRequire296bd8a1d28e39d56dcd80ce7be249f3($fileIdentifier, $file)
|
||||||
|
{
|
||||||
|
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
||||||
|
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
||||||
|
|
||||||
|
require $file;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
20
digital_doctor/vendor/composer/installed.json
vendored
20
digital_doctor/vendor/composer/installed.json
vendored
@@ -183,15 +183,9 @@
|
|||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/top-think/think-worker/zipball/922d8c95e2f095e0da66d18b9e3fbbfd8de70a3f",
|
"url": "https://mirrors.huaweicloud.com/repository/php/topthink/think-worker/v2.0.12/topthink-think-worker-v2.0.12.zip",
|
||||||
"reference": "922d8c95e2f095e0da66d18b9e3fbbfd8de70a3f",
|
"reference": "922d8c95e2f095e0da66d18b9e3fbbfd8de70a3f",
|
||||||
"shasum": "",
|
"shasum": ""
|
||||||
"mirrors": [
|
|
||||||
{
|
|
||||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
|
||||||
"preferred": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"ext-fileinfo": "*",
|
"ext-fileinfo": "*",
|
||||||
@@ -218,7 +212,6 @@
|
|||||||
"think\\worker\\": "src"
|
"think\\worker\\": "src"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"Apache-2.0"
|
"Apache-2.0"
|
||||||
],
|
],
|
||||||
@@ -229,10 +222,6 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"description": "workerman extend for thinkphp5.1",
|
"description": "workerman extend for thinkphp5.1",
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/top-think/think-worker/issues",
|
|
||||||
"source": "https://github.com/top-think/think-worker/tree/v2.0.12"
|
|
||||||
},
|
|
||||||
"install-path": "../topthink/think-worker"
|
"install-path": "../topthink/think-worker"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -242,12 +231,12 @@
|
|||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitee.com/drop_drop/general_utility_tools_php.git",
|
"url": "https://gitee.com/drop_drop/general_utility_tools_php.git",
|
||||||
"reference": "b7f7ec6a9bf19b15e4940838d787e4c08e29f7a6"
|
"reference": "f31ce1f3910b7522d37a796759722f7f4c785dfe"
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"ext-json": "*"
|
"ext-json": "*"
|
||||||
},
|
},
|
||||||
"time": "2024-06-06T07:47:22+00:00",
|
"time": "2024-06-27T03:06:27+00:00",
|
||||||
"default-branch": true,
|
"default-branch": true,
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "source",
|
"installation-source": "source",
|
||||||
@@ -256,7 +245,6 @@
|
|||||||
"wanghua\\general_utility_tools_php\\": "src/"
|
"wanghua\\general_utility_tools_php\\": "src/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"Apache-2.0"
|
"Apache-2.0"
|
||||||
],
|
],
|
||||||
|
|||||||
20
digital_doctor/vendor/composer/installed.php
vendored
20
digital_doctor/vendor/composer/installed.php
vendored
@@ -1,89 +1,89 @@
|
|||||||
<?php return array(
|
<?php return array(
|
||||||
'root' => array(
|
'root' => array(
|
||||||
'name' => 'topthink/think',
|
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => '428dc84846d5f278b6df200250c7600ed346612f',
|
|
||||||
'type' => 'project',
|
'type' => 'project',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '1e7ad2096be950c04ee4245102122ad88ba011d6',
|
||||||
|
'name' => 'topthink/think',
|
||||||
'dev' => true,
|
'dev' => true,
|
||||||
),
|
),
|
||||||
'versions' => array(
|
'versions' => array(
|
||||||
'doing/phpqrcode' => array(
|
'doing/phpqrcode' => array(
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => '600baab04cd4dfe2b307a321775ec5a66e330560',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../doing/phpqrcode',
|
'install_path' => __DIR__ . '/../doing/phpqrcode',
|
||||||
'aliases' => array(
|
'aliases' => array(
|
||||||
0 => '9999999-dev',
|
0 => '9999999-dev',
|
||||||
),
|
),
|
||||||
|
'reference' => '600baab04cd4dfe2b307a321775ec5a66e330560',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/framework' => array(
|
'topthink/framework' => array(
|
||||||
'pretty_version' => 'v5.1.42',
|
'pretty_version' => 'v5.1.42',
|
||||||
'version' => '5.1.42.0',
|
'version' => '5.1.42.0',
|
||||||
'reference' => 'ecf1a90d397d821ce2df58f7d47e798c17eba3ad',
|
|
||||||
'type' => 'think-framework',
|
'type' => 'think-framework',
|
||||||
'install_path' => __DIR__ . '/../../thinkphp',
|
'install_path' => __DIR__ . '/../../thinkphp',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'ecf1a90d397d821ce2df58f7d47e798c17eba3ad',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think' => array(
|
'topthink/think' => array(
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => '428dc84846d5f278b6df200250c7600ed346612f',
|
|
||||||
'type' => 'project',
|
'type' => 'project',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '1e7ad2096be950c04ee4245102122ad88ba011d6',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-installer' => array(
|
'topthink/think-installer' => array(
|
||||||
'pretty_version' => 'v2.0.5',
|
'pretty_version' => 'v2.0.5',
|
||||||
'version' => '2.0.5.0',
|
'version' => '2.0.5.0',
|
||||||
'reference' => '38ba647706e35d6704b5d370c06f8a160b635f88',
|
|
||||||
'type' => 'composer-plugin',
|
'type' => 'composer-plugin',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-installer',
|
'install_path' => __DIR__ . '/../topthink/think-installer',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '38ba647706e35d6704b5d370c06f8a160b635f88',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-worker' => array(
|
'topthink/think-worker' => array(
|
||||||
'pretty_version' => 'v2.0.12',
|
'pretty_version' => 'v2.0.12',
|
||||||
'version' => '2.0.12.0',
|
'version' => '2.0.12.0',
|
||||||
'reference' => '922d8c95e2f095e0da66d18b9e3fbbfd8de70a3f',
|
|
||||||
'type' => 'think-extend',
|
'type' => 'think-extend',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-worker',
|
'install_path' => __DIR__ . '/../topthink/think-worker',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '922d8c95e2f095e0da66d18b9e3fbbfd8de70a3f',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'wanghua/general-utility-tools-php' => array(
|
'wanghua/general-utility-tools-php' => array(
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => 'b7f7ec6a9bf19b15e4940838d787e4c08e29f7a6',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../wanghua/general-utility-tools-php',
|
'install_path' => __DIR__ . '/../wanghua/general-utility-tools-php',
|
||||||
'aliases' => array(
|
'aliases' => array(
|
||||||
0 => '9999999-dev',
|
0 => '9999999-dev',
|
||||||
),
|
),
|
||||||
|
'reference' => 'f31ce1f3910b7522d37a796759722f7f4c785dfe',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'workerman/gateway-worker' => array(
|
'workerman/gateway-worker' => array(
|
||||||
'pretty_version' => 'v3.0.22',
|
'pretty_version' => 'v3.0.22',
|
||||||
'version' => '3.0.22.0',
|
'version' => '3.0.22.0',
|
||||||
'reference' => 'a615036c482d11f68b693998575e804752ef9068',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../workerman/gateway-worker',
|
'install_path' => __DIR__ . '/../workerman/gateway-worker',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a615036c482d11f68b693998575e804752ef9068',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'workerman/workerman' => array(
|
'workerman/workerman' => array(
|
||||||
'pretty_version' => 'v3.5.35',
|
'pretty_version' => 'v3.5.35',
|
||||||
'version' => '3.5.35.0',
|
'version' => '3.5.35.0',
|
||||||
'reference' => '3cc0adae51ba36db38b11e7996c64250d356dbe7',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../workerman/workerman',
|
'install_path' => __DIR__ . '/../workerman/workerman',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '3cc0adae51ba36db38b11e7996c64250d356dbe7',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -43,7 +43,6 @@ class Application extends App
|
|||||||
$this->request
|
$this->request
|
||||||
->setPathinfo($pathinfo)
|
->setPathinfo($pathinfo)
|
||||||
->withInput($GLOBALS['HTTP_RAW_REQUEST_DATA']);
|
->withInput($GLOBALS['HTTP_RAW_REQUEST_DATA']);
|
||||||
//->withInput(file_get_contents("php://input"));
|
|
||||||
|
|
||||||
if ($this->config->get('session.auto_start')) {
|
if ($this->config->get('session.auto_start')) {
|
||||||
WorkerHttp::sessionStart();
|
WorkerHttp::sessionStart();
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ class Events
|
|||||||
*/
|
*/
|
||||||
public static function onConnect($client_id)
|
public static function onConnect($client_id)
|
||||||
{
|
{
|
||||||
Gateway::sendToCurrentClient(json_encode(['client_id'=>$client_id]));
|
Gateway::sendToCurrentClient("Your client_id is $client_id");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -55,8 +55,7 @@ class Events
|
|||||||
*/
|
*/
|
||||||
public static function onWebSocketConnect($client_id, $data)
|
public static function onWebSocketConnect($client_id, $data)
|
||||||
{
|
{
|
||||||
//连接时绑定客户端ID
|
var_export($data);
|
||||||
// var_export($data);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Submodule digital_doctor/vendor/wanghua/general-utility-tools-php updated: b7f7ec6a9b...f31ce1f391
@@ -29,7 +29,8 @@
|
|||||||
"ext-curl": "*",
|
"ext-curl": "*",
|
||||||
"ext-pdo": "*",
|
"ext-pdo": "*",
|
||||||
"ext-bcmath": "*",
|
"ext-bcmath": "*",
|
||||||
"txthinking/mailer": "^2.0"
|
"txthinking/mailer": "^2.0",
|
||||||
|
"wanghua/general-utility-tools-php": "dev-master"
|
||||||
},
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"preferred-install": "dist",
|
"preferred-install": "dist",
|
||||||
@@ -38,14 +39,18 @@
|
|||||||
"easywechat-composer/easywechat-composer": true
|
"easywechat-composer/easywechat-composer": true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"repositories": [
|
"repositories": {
|
||||||
{
|
"packagist": {
|
||||||
|
"type": "composer",
|
||||||
|
"url": "https://mirrors.huaweicloud.com/repository/php/"
|
||||||
|
},
|
||||||
|
"0": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitee.com/fastadminnet/framework.git"
|
"url": "https://gitee.com/fastadminnet/framework.git"
|
||||||
},
|
},
|
||||||
{
|
"1": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitee.com/fastadminnet/think-captcha.git"
|
"url": "https://gitee.com/fastadminnet/think-captcha.git"
|
||||||
}
|
}
|
||||||
]
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
18
digital_doctor_admin/vendor/autoload.php
vendored
18
digital_doctor_admin/vendor/autoload.php
vendored
@@ -2,24 +2,6 @@
|
|||||||
|
|
||||||
// autoload.php @generated by Composer
|
// autoload.php @generated by Composer
|
||||||
|
|
||||||
if (PHP_VERSION_ID < 50600) {
|
|
||||||
if (!headers_sent()) {
|
|
||||||
header('HTTP/1.1 500 Internal Server Error');
|
|
||||||
}
|
|
||||||
$err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
|
|
||||||
if (!ini_get('display_errors')) {
|
|
||||||
if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
|
|
||||||
fwrite(STDERR, $err);
|
|
||||||
} elseif (!headers_sent()) {
|
|
||||||
echo $err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
trigger_error(
|
|
||||||
$err,
|
|
||||||
E_USER_ERROR
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
require_once __DIR__ . '/composer/autoload_real.php';
|
require_once __DIR__ . '/composer/autoload_real.php';
|
||||||
|
|
||||||
return ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1::getLoader();
|
return ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1::getLoader();
|
||||||
|
|||||||
@@ -42,9 +42,6 @@ namespace Composer\Autoload;
|
|||||||
*/
|
*/
|
||||||
class ClassLoader
|
class ClassLoader
|
||||||
{
|
{
|
||||||
/** @var \Closure(string):void */
|
|
||||||
private static $includeFile;
|
|
||||||
|
|
||||||
/** @var ?string */
|
/** @var ?string */
|
||||||
private $vendorDir;
|
private $vendorDir;
|
||||||
|
|
||||||
@@ -109,7 +106,6 @@ class ClassLoader
|
|||||||
public function __construct($vendorDir = null)
|
public function __construct($vendorDir = null)
|
||||||
{
|
{
|
||||||
$this->vendorDir = $vendorDir;
|
$this->vendorDir = $vendorDir;
|
||||||
self::initializeIncludeClosure();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -429,8 +425,7 @@ class ClassLoader
|
|||||||
public function loadClass($class)
|
public function loadClass($class)
|
||||||
{
|
{
|
||||||
if ($file = $this->findFile($class)) {
|
if ($file = $this->findFile($class)) {
|
||||||
$includeFile = self::$includeFile;
|
includeFile($file);
|
||||||
$includeFile($file);
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -560,26 +555,18 @@ class ClassLoader
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
/**
|
|
||||||
* @return void
|
/**
|
||||||
*/
|
* Scope isolated include.
|
||||||
private static function initializeIncludeClosure()
|
*
|
||||||
{
|
* Prevents access to $this/self from included files.
|
||||||
if (self::$includeFile !== null) {
|
*
|
||||||
return;
|
* @param string $file
|
||||||
}
|
* @return void
|
||||||
|
* @private
|
||||||
/**
|
*/
|
||||||
* Scope isolated include.
|
function includeFile($file)
|
||||||
*
|
{
|
||||||
* Prevents access to $this/self from included files.
|
include $file;
|
||||||
*
|
|
||||||
* @param string $file
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
self::$includeFile = \Closure::bind(static function($file) {
|
|
||||||
include $file;
|
|
||||||
}, null, null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,14 +21,12 @@ use Composer\Semver\VersionParser;
|
|||||||
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
||||||
*
|
*
|
||||||
* To require its presence, you can require `composer-runtime-api ^2.0`
|
* To require its presence, you can require `composer-runtime-api ^2.0`
|
||||||
*
|
|
||||||
* @final
|
|
||||||
*/
|
*/
|
||||||
class InstalledVersions
|
class InstalledVersions
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var mixed[]|null
|
* @var mixed[]|null
|
||||||
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|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;
|
private static $installed;
|
||||||
|
|
||||||
@@ -39,7 +37,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array[]
|
* @var array[]
|
||||||
* @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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();
|
private static $installedByVendor = array();
|
||||||
|
|
||||||
@@ -98,7 +96,7 @@ class InstalledVersions
|
|||||||
{
|
{
|
||||||
foreach (self::getInstalled() as $installed) {
|
foreach (self::getInstalled() as $installed) {
|
||||||
if (isset($installed['versions'][$packageName])) {
|
if (isset($installed['versions'][$packageName])) {
|
||||||
return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
|
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,7 +117,7 @@ class InstalledVersions
|
|||||||
*/
|
*/
|
||||||
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
public static function satisfies(VersionParser $parser, $packageName, $constraint)
|
||||||
{
|
{
|
||||||
$constraint = $parser->parseConstraints((string) $constraint);
|
$constraint = $parser->parseConstraints($constraint);
|
||||||
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
|
||||||
|
|
||||||
return $provided->matches($constraint);
|
return $provided->matches($constraint);
|
||||||
@@ -243,7 +241,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
* @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}
|
* @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()
|
public static function getRootPackage()
|
||||||
{
|
{
|
||||||
@@ -257,7 +255,7 @@ class InstalledVersions
|
|||||||
*
|
*
|
||||||
* @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.
|
* @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[]
|
* @return array[]
|
||||||
* @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}
|
* @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()
|
public static function getRawData()
|
||||||
{
|
{
|
||||||
@@ -280,7 +278,7 @@ class InstalledVersions
|
|||||||
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
||||||
*
|
*
|
||||||
* @return array[]
|
* @return array[]
|
||||||
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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()
|
public static function getAllRawData()
|
||||||
{
|
{
|
||||||
@@ -303,7 +301,7 @@ class InstalledVersions
|
|||||||
* @param array[] $data A vendor/composer/installed.php data set
|
* @param array[] $data A vendor/composer/installed.php data set
|
||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
* @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $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<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)
|
public static function reload($data)
|
||||||
{
|
{
|
||||||
@@ -313,7 +311,7 @@ class InstalledVersions
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array[]
|
* @return array[]
|
||||||
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
* @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()
|
private static function getInstalled()
|
||||||
{
|
{
|
||||||
@@ -328,9 +326,7 @@ class InstalledVersions
|
|||||||
if (isset(self::$installedByVendor[$vendorDir])) {
|
if (isset(self::$installedByVendor[$vendorDir])) {
|
||||||
$installed[] = self::$installedByVendor[$vendorDir];
|
$installed[] = self::$installedByVendor[$vendorDir];
|
||||||
} elseif (is_file($vendorDir.'/composer/installed.php')) {
|
} elseif (is_file($vendorDir.'/composer/installed.php')) {
|
||||||
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
|
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
|
||||||
$required = require $vendorDir.'/composer/installed.php';
|
|
||||||
$installed[] = self::$installedByVendor[$vendorDir] = $required;
|
|
||||||
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
|
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
|
||||||
self::$installed = $installed[count($installed) - 1];
|
self::$installed = $installed[count($installed) - 1];
|
||||||
}
|
}
|
||||||
@@ -342,17 +338,12 @@ class InstalledVersions
|
|||||||
// only require the installed.php file if this file is loaded from its dumped location,
|
// 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
|
// 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') {
|
if (substr(__DIR__, -8, 1) !== 'C') {
|
||||||
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
|
self::$installed = require __DIR__ . '/installed.php';
|
||||||
$required = require __DIR__ . '/installed.php';
|
|
||||||
self::$installed = $required;
|
|
||||||
} else {
|
} else {
|
||||||
self::$installed = array();
|
self::$installed = array();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$installed[] = self::$installed;
|
||||||
if (self::$installed !== array()) {
|
|
||||||
$installed[] = self::$installed;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $installed;
|
return $installed;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_classmap.php @generated by Composer
|
// autoload_classmap.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
@@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
// autoload_files.php @generated by Composer
|
// autoload_files.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
'6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
|
|
||||||
'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
|
'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
|
||||||
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
|
'6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
|
||||||
'7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
|
'7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
|
||||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
|
||||||
'0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php',
|
'0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php',
|
||||||
|
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||||
'2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
'2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
||||||
'9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php',
|
'9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php',
|
||||||
'488987c28e9b5e95a1ce6b6bcb94606c' => $vendorDir . '/karsonzhang/fastadmin-addons/src/common.php',
|
'488987c28e9b5e95a1ce6b6bcb94606c' => $vendorDir . '/karsonzhang/fastadmin-addons/src/common.php',
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
// autoload_namespaces.php @generated by Composer
|
// autoload_namespaces.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
|||||||
@@ -2,14 +2,15 @@
|
|||||||
|
|
||||||
// autoload_psr4.php @generated by Composer
|
// autoload_psr4.php @generated by Composer
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(dirname(__FILE__));
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
|
'wanghua\\general_utility_tools_php\\' => array($vendorDir . '/wanghua/general-utility-tools-php/src'),
|
||||||
'think\\helper\\' => array($vendorDir . '/topthink/think-helper/src'),
|
'think\\helper\\' => array($vendorDir . '/topthink/think-helper/src'),
|
||||||
'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'),
|
'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'),
|
||||||
'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'),
|
'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'),
|
||||||
'think\\' => array($baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src', $vendorDir . '/karsonzhang/fastadmin-addons/src'),
|
'think\\' => array($vendorDir . '/karsonzhang/fastadmin-addons/src', $baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src'),
|
||||||
'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'),
|
'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'),
|
||||||
'Tx\\' => array($vendorDir . '/txthinking/mailer/src'),
|
'Tx\\' => array($vendorDir . '/txthinking/mailer/src'),
|
||||||
'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'),
|
'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'),
|
||||||
@@ -26,7 +27,7 @@ return array(
|
|||||||
'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'),
|
'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'),
|
||||||
'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
|
'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
|
||||||
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
|
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
|
||||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
|
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'),
|
||||||
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
||||||
'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'),
|
'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'),
|
||||||
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
|
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
|
||||||
|
|||||||
@@ -25,26 +25,56 @@ class ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
require __DIR__ . '/platform_check.php';
|
require __DIR__ . '/platform_check.php';
|
||||||
|
|
||||||
spl_autoload_register(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader'), true, true);
|
spl_autoload_register(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader'), true, true);
|
||||||
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
|
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
|
||||||
spl_autoload_unregister(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader'));
|
spl_autoload_unregister(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader'));
|
||||||
|
|
||||||
require __DIR__ . '/autoload_static.php';
|
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
||||||
call_user_func(\Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::getInitializer($loader));
|
if ($useStaticLoader) {
|
||||||
|
require __DIR__ . '/autoload_static.php';
|
||||||
|
|
||||||
|
call_user_func(\Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::getInitializer($loader));
|
||||||
|
} else {
|
||||||
|
$map = require __DIR__ . '/autoload_namespaces.php';
|
||||||
|
foreach ($map as $namespace => $path) {
|
||||||
|
$loader->set($namespace, $path);
|
||||||
|
}
|
||||||
|
|
||||||
|
$map = require __DIR__ . '/autoload_psr4.php';
|
||||||
|
foreach ($map as $namespace => $path) {
|
||||||
|
$loader->setPsr4($namespace, $path);
|
||||||
|
}
|
||||||
|
|
||||||
|
$classMap = require __DIR__ . '/autoload_classmap.php';
|
||||||
|
if ($classMap) {
|
||||||
|
$loader->addClassMap($classMap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$loader->register(true);
|
$loader->register(true);
|
||||||
|
|
||||||
$filesToLoad = \Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::$files;
|
if ($useStaticLoader) {
|
||||||
$requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
|
$includeFiles = Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::$files;
|
||||||
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
} else {
|
||||||
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
$includeFiles = require __DIR__ . '/autoload_files.php';
|
||||||
|
}
|
||||||
require $file;
|
foreach ($includeFiles as $fileIdentifier => $file) {
|
||||||
}
|
composerRequiref3106b6ef3260b6914241eab0bed11c1($fileIdentifier, $file);
|
||||||
}, null, null);
|
|
||||||
foreach ($filesToLoad as $fileIdentifier => $file) {
|
|
||||||
$requireFile($fileIdentifier, $file);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $loader;
|
return $loader;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $fileIdentifier
|
||||||
|
* @param string $file
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
function composerRequiref3106b6ef3260b6914241eab0bed11c1($fileIdentifier, $file)
|
||||||
|
{
|
||||||
|
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
||||||
|
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
||||||
|
|
||||||
|
require $file;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ namespace Composer\Autoload;
|
|||||||
class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
||||||
{
|
{
|
||||||
public static $files = array (
|
public static $files = array (
|
||||||
'6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php',
|
|
||||||
'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
|
'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
|
||||||
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
'6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php',
|
||||||
'7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
|
'7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
|
||||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
|
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
||||||
'0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php',
|
'0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php',
|
||||||
|
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||||
'2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
'2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php',
|
||||||
'9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php',
|
'9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php',
|
||||||
'488987c28e9b5e95a1ce6b6bcb94606c' => __DIR__ . '/..' . '/karsonzhang/fastadmin-addons/src/common.php',
|
'488987c28e9b5e95a1ce6b6bcb94606c' => __DIR__ . '/..' . '/karsonzhang/fastadmin-addons/src/common.php',
|
||||||
@@ -23,6 +23,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
);
|
);
|
||||||
|
|
||||||
public static $prefixLengthsPsr4 = array (
|
public static $prefixLengthsPsr4 = array (
|
||||||
|
'w' =>
|
||||||
|
array (
|
||||||
|
'wanghua\\general_utility_tools_php\\' => 34,
|
||||||
|
),
|
||||||
't' =>
|
't' =>
|
||||||
array (
|
array (
|
||||||
'think\\helper\\' => 13,
|
'think\\helper\\' => 13,
|
||||||
@@ -94,6 +98,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
);
|
);
|
||||||
|
|
||||||
public static $prefixDirsPsr4 = array (
|
public static $prefixDirsPsr4 = array (
|
||||||
|
'wanghua\\general_utility_tools_php\\' =>
|
||||||
|
array (
|
||||||
|
0 => __DIR__ . '/..' . '/wanghua/general-utility-tools-php/src',
|
||||||
|
),
|
||||||
'think\\helper\\' =>
|
'think\\helper\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/..' . '/topthink/think-helper/src',
|
0 => __DIR__ . '/..' . '/topthink/think-helper/src',
|
||||||
@@ -108,9 +116,9 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
),
|
),
|
||||||
'think\\' =>
|
'think\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/../..' . '/thinkphp/library/think',
|
0 => __DIR__ . '/..' . '/karsonzhang/fastadmin-addons/src',
|
||||||
1 => __DIR__ . '/..' . '/topthink/think-queue/src',
|
1 => __DIR__ . '/../..' . '/thinkphp/library/think',
|
||||||
2 => __DIR__ . '/..' . '/karsonzhang/fastadmin-addons/src',
|
2 => __DIR__ . '/..' . '/topthink/think-queue/src',
|
||||||
),
|
),
|
||||||
'ZipStream\\' =>
|
'ZipStream\\' =>
|
||||||
array (
|
array (
|
||||||
@@ -178,8 +186,8 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1
|
|||||||
),
|
),
|
||||||
'Psr\\Http\\Message\\' =>
|
'Psr\\Http\\Message\\' =>
|
||||||
array (
|
array (
|
||||||
0 => __DIR__ . '/..' . '/psr/http-factory/src',
|
0 => __DIR__ . '/..' . '/psr/http-message/src',
|
||||||
1 => __DIR__ . '/..' . '/psr/http-message/src',
|
1 => __DIR__ . '/..' . '/psr/http-factory/src',
|
||||||
),
|
),
|
||||||
'Psr\\Http\\Client\\' =>
|
'Psr\\Http\\Client\\' =>
|
||||||
array (
|
array (
|
||||||
|
|||||||
265
digital_doctor_admin/vendor/composer/installed.json
vendored
265
digital_doctor_admin/vendor/composer/installed.json
vendored
@@ -702,17 +702,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "monolog/monolog",
|
"name": "monolog/monolog",
|
||||||
"version": "2.9.2",
|
"version": "2.9.3",
|
||||||
"version_normalized": "2.9.2.0",
|
"version_normalized": "2.9.3.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/Seldaek/monolog.git",
|
"url": "https://github.com/Seldaek/monolog.git",
|
||||||
"reference": "437cb3628f4cf6042cc10ae97fc2b8472e48ca1f"
|
"reference": "a30bfe2e142720dfa990d0a7e573997f5d884215"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/437cb3628f4cf6042cc10ae97fc2b8472e48ca1f",
|
"url": "https://mirrors.huaweicloud.com/repository/php/monolog/monolog/2.9.3/monolog-monolog-2.9.3.zip",
|
||||||
"reference": "437cb3628f4cf6042cc10ae97fc2b8472e48ca1f",
|
"reference": "a30bfe2e142720dfa990d0a7e573997f5d884215",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -733,8 +733,8 @@
|
|||||||
"mongodb/mongodb": "^1.8",
|
"mongodb/mongodb": "^1.8",
|
||||||
"php-amqplib/php-amqplib": "~2.4 || ^3",
|
"php-amqplib/php-amqplib": "~2.4 || ^3",
|
||||||
"phpspec/prophecy": "^1.15",
|
"phpspec/prophecy": "^1.15",
|
||||||
"phpstan/phpstan": "^0.12.91",
|
"phpstan/phpstan": "^1.10",
|
||||||
"phpunit/phpunit": "^8.5.14",
|
"phpunit/phpunit": "^8.5.38 || ^9.6.19",
|
||||||
"predis/predis": "^1.1 || ^2.0",
|
"predis/predis": "^1.1 || ^2.0",
|
||||||
"rollbar/rollbar": "^1.3 || ^2 || ^3",
|
"rollbar/rollbar": "^1.3 || ^2 || ^3",
|
||||||
"ruflin/elastica": "^7",
|
"ruflin/elastica": "^7",
|
||||||
@@ -758,7 +758,7 @@
|
|||||||
"rollbar/rollbar": "Allow sending log messages to Rollbar",
|
"rollbar/rollbar": "Allow sending log messages to Rollbar",
|
||||||
"ruflin/elastica": "Allow sending log messages to an Elastic Search server"
|
"ruflin/elastica": "Allow sending log messages to an Elastic Search server"
|
||||||
},
|
},
|
||||||
"time": "2023-10-27T15:25:26+00:00",
|
"time": "2024-04-12T20:52:51+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
@@ -771,7 +771,6 @@
|
|||||||
"Monolog\\": "src/Monolog"
|
"Monolog\\": "src/Monolog"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -789,10 +788,6 @@
|
|||||||
"logging",
|
"logging",
|
||||||
"psr-3"
|
"psr-3"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/Seldaek/monolog/issues",
|
|
||||||
"source": "https://github.com/Seldaek/monolog/tree/2.9.2"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://github.com/Seldaek",
|
"url": "https://github.com/Seldaek",
|
||||||
@@ -1525,24 +1520,24 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "psr/http-factory",
|
"name": "psr/http-factory",
|
||||||
"version": "1.0.2",
|
"version": "1.1.0",
|
||||||
"version_normalized": "1.0.2.0",
|
"version_normalized": "1.1.0.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/php-fig/http-factory.git",
|
"url": "https://github.com/php-fig/http-factory.git",
|
||||||
"reference": "e616d01114759c4c489f93b099585439f795fe35"
|
"reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35",
|
"url": "https://mirrors.huaweicloud.com/repository/php/psr/http-factory/1.1.0/psr-http-factory-1.1.0.zip",
|
||||||
"reference": "e616d01114759c4c489f93b099585439f795fe35",
|
"reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.0.0",
|
"php": ">=7.1",
|
||||||
"psr/http-message": "^1.0 || ^2.0"
|
"psr/http-message": "^1.0 || ^2.0"
|
||||||
},
|
},
|
||||||
"time": "2023-04-10T20:10:41+00:00",
|
"time": "2024-04-15T12:06:14+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
@@ -1555,7 +1550,6 @@
|
|||||||
"Psr\\Http\\Message\\": "src/"
|
"Psr\\Http\\Message\\": "src/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -1565,7 +1559,7 @@
|
|||||||
"homepage": "https://www.php-fig.org/"
|
"homepage": "https://www.php-fig.org/"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"description": "Common interfaces for PSR-7 HTTP message factories",
|
"description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"factory",
|
"factory",
|
||||||
"http",
|
"http",
|
||||||
@@ -1576,9 +1570,6 @@
|
|||||||
"request",
|
"request",
|
||||||
"response"
|
"response"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/php-fig/http-factory/tree/1.0.2"
|
|
||||||
},
|
|
||||||
"install-path": "../psr/http-factory"
|
"install-path": "../psr/http-factory"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -1793,17 +1784,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/cache",
|
"name": "symfony/cache",
|
||||||
"version": "v5.4.36",
|
"version": "v5.4.40",
|
||||||
"version_normalized": "5.4.36.0",
|
"version_normalized": "5.4.40.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/cache.git",
|
"url": "https://github.com/symfony/cache.git",
|
||||||
"reference": "a30f316214d908cf5874f700f3f3fb29ceee91ba"
|
"reference": "89005bc368ca02ed0433c592e4d27670d0844a66"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/cache/zipball/a30f316214d908cf5874f700f3f3fb29ceee91ba",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/cache/v5.4.40/symfony-cache-v5.4.40.zip",
|
||||||
"reference": "a30f316214d908cf5874f700f3f3fb29ceee91ba",
|
"reference": "89005bc368ca02ed0433c592e4d27670d0844a66",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1832,7 +1823,7 @@
|
|||||||
"cache/integration-tests": "dev-master",
|
"cache/integration-tests": "dev-master",
|
||||||
"doctrine/cache": "^1.6|^2.0",
|
"doctrine/cache": "^1.6|^2.0",
|
||||||
"doctrine/dbal": "^2.13.1|^3|^4",
|
"doctrine/dbal": "^2.13.1|^3|^4",
|
||||||
"predis/predis": "^1.1",
|
"predis/predis": "^1.1|^2.0",
|
||||||
"psr/simple-cache": "^1.0|^2.0",
|
"psr/simple-cache": "^1.0|^2.0",
|
||||||
"symfony/config": "^4.4|^5.0|^6.0",
|
"symfony/config": "^4.4|^5.0|^6.0",
|
||||||
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
||||||
@@ -1841,7 +1832,7 @@
|
|||||||
"symfony/messenger": "^4.4|^5.0|^6.0",
|
"symfony/messenger": "^4.4|^5.0|^6.0",
|
||||||
"symfony/var-dumper": "^4.4|^5.0|^6.0"
|
"symfony/var-dumper": "^4.4|^5.0|^6.0"
|
||||||
},
|
},
|
||||||
"time": "2024-02-19T13:08:14+00:00",
|
"time": "2024-05-31T14:33:22+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "dist",
|
"installation-source": "dist",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -1852,7 +1843,6 @@
|
|||||||
"/Tests/"
|
"/Tests/"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -1872,9 +1862,6 @@
|
|||||||
"caching",
|
"caching",
|
||||||
"psr6"
|
"psr6"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/cache/tree/v5.4.36"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -1893,17 +1880,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/cache-contracts",
|
"name": "symfony/cache-contracts",
|
||||||
"version": "v2.5.2",
|
"version": "v2.5.3",
|
||||||
"version_normalized": "2.5.2.0",
|
"version_normalized": "2.5.3.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/cache-contracts.git",
|
"url": "https://github.com/symfony/cache-contracts.git",
|
||||||
"reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc"
|
"reference": "fee6db04d913094e2fb55ff8e7db5685a8134463"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/cache-contracts/zipball/64be4a7acb83b6f2bf6de9a02cee6dad41277ebc",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/cache-contracts/v2.5.3/symfony-cache-contracts-v2.5.3.zip",
|
||||||
"reference": "64be4a7acb83b6f2bf6de9a02cee6dad41277ebc",
|
"reference": "fee6db04d913094e2fb55ff8e7db5685a8134463",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1913,7 +1900,7 @@
|
|||||||
"suggest": {
|
"suggest": {
|
||||||
"symfony/cache-implementation": ""
|
"symfony/cache-implementation": ""
|
||||||
},
|
},
|
||||||
"time": "2022-01-02T09:53:40+00:00",
|
"time": "2024-01-23T13:51:25+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
@@ -1930,7 +1917,6 @@
|
|||||||
"Symfony\\Contracts\\Cache\\": ""
|
"Symfony\\Contracts\\Cache\\": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -1954,9 +1940,6 @@
|
|||||||
"interoperability",
|
"interoperability",
|
||||||
"standards"
|
"standards"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/cache-contracts/tree/v2.5.2"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -1975,23 +1958,23 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/deprecation-contracts",
|
"name": "symfony/deprecation-contracts",
|
||||||
"version": "v2.5.2",
|
"version": "v2.5.3",
|
||||||
"version_normalized": "2.5.2.0",
|
"version_normalized": "2.5.3.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/deprecation-contracts.git",
|
"url": "https://github.com/symfony/deprecation-contracts.git",
|
||||||
"reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
|
"reference": "80d075412b557d41002320b96a096ca65aa2c98d"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/deprecation-contracts/v2.5.3/symfony-deprecation-contracts-v2.5.3.zip",
|
||||||
"reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
|
"reference": "80d075412b557d41002320b96a096ca65aa2c98d",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.1"
|
"php": ">=7.1"
|
||||||
},
|
},
|
||||||
"time": "2022-01-02T09:53:40+00:00",
|
"time": "2023-01-24T14:02:46+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
@@ -2008,7 +1991,6 @@
|
|||||||
"function.php"
|
"function.php"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2024,9 +2006,6 @@
|
|||||||
],
|
],
|
||||||
"description": "A generic function and convention to trigger deprecation notices",
|
"description": "A generic function and convention to trigger deprecation notices",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.2"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2045,17 +2024,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/event-dispatcher",
|
"name": "symfony/event-dispatcher",
|
||||||
"version": "v5.4.35",
|
"version": "v5.4.40",
|
||||||
"version_normalized": "5.4.35.0",
|
"version_normalized": "5.4.40.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/event-dispatcher.git",
|
"url": "https://github.com/symfony/event-dispatcher.git",
|
||||||
"reference": "7a69a85c7ea5bdd1e875806a99c51a87d3a74b38"
|
"reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/7a69a85c7ea5bdd1e875806a99c51a87d3a74b38",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/event-dispatcher/v5.4.40/symfony-event-dispatcher-v5.4.40.zip",
|
||||||
"reference": "7a69a85c7ea5bdd1e875806a99c51a87d3a74b38",
|
"reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2085,7 +2064,7 @@
|
|||||||
"symfony/dependency-injection": "",
|
"symfony/dependency-injection": "",
|
||||||
"symfony/http-kernel": ""
|
"symfony/http-kernel": ""
|
||||||
},
|
},
|
||||||
"time": "2024-01-23T13:51:25+00:00",
|
"time": "2024-05-31T14:33:22+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "dist",
|
"installation-source": "dist",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -2096,7 +2075,6 @@
|
|||||||
"/Tests/"
|
"/Tests/"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2112,9 +2090,6 @@
|
|||||||
],
|
],
|
||||||
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
|
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/event-dispatcher/tree/v5.4.35"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2133,17 +2108,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/event-dispatcher-contracts",
|
"name": "symfony/event-dispatcher-contracts",
|
||||||
"version": "v2.5.2",
|
"version": "v2.5.3",
|
||||||
"version_normalized": "2.5.2.0",
|
"version_normalized": "2.5.3.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
|
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
|
||||||
"reference": "f98b54df6ad059855739db6fcbc2d36995283fe1"
|
"reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f98b54df6ad059855739db6fcbc2d36995283fe1",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/event-dispatcher-contracts/v2.5.3/symfony-event-dispatcher-contracts-v2.5.3.zip",
|
||||||
"reference": "f98b54df6ad059855739db6fcbc2d36995283fe1",
|
"reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2153,7 +2128,7 @@
|
|||||||
"suggest": {
|
"suggest": {
|
||||||
"symfony/event-dispatcher-implementation": ""
|
"symfony/event-dispatcher-implementation": ""
|
||||||
},
|
},
|
||||||
"time": "2022-01-02T09:53:40+00:00",
|
"time": "2024-01-23T13:51:25+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
@@ -2170,7 +2145,6 @@
|
|||||||
"Symfony\\Contracts\\EventDispatcher\\": ""
|
"Symfony\\Contracts\\EventDispatcher\\": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2194,9 +2168,6 @@
|
|||||||
"interoperability",
|
"interoperability",
|
||||||
"standards"
|
"standards"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.2"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2215,17 +2186,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/finder",
|
"name": "symfony/finder",
|
||||||
"version": "v5.4.35",
|
"version": "v5.4.40",
|
||||||
"version_normalized": "5.4.35.0",
|
"version_normalized": "5.4.40.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/finder.git",
|
"url": "https://github.com/symfony/finder.git",
|
||||||
"reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435"
|
"reference": "f51cff4687547641c7d8180d74932ab40b2205ce"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/finder/zipball/abe6d6f77d9465fed3cd2d029b29d03b56b56435",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/finder/v5.4.40/symfony-finder-v5.4.40.zip",
|
||||||
"reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435",
|
"reference": "f51cff4687547641c7d8180d74932ab40b2205ce",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2233,7 +2204,7 @@
|
|||||||
"symfony/deprecation-contracts": "^2.1|^3",
|
"symfony/deprecation-contracts": "^2.1|^3",
|
||||||
"symfony/polyfill-php80": "^1.16"
|
"symfony/polyfill-php80": "^1.16"
|
||||||
},
|
},
|
||||||
"time": "2024-01-23T13:51:25+00:00",
|
"time": "2024-05-31T14:33:22+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "dist",
|
"installation-source": "dist",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -2244,7 +2215,6 @@
|
|||||||
"/Tests/"
|
"/Tests/"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2260,9 +2230,6 @@
|
|||||||
],
|
],
|
||||||
"description": "Finds files and directories via an intuitive fluent interface",
|
"description": "Finds files and directories via an intuitive fluent interface",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/finder/tree/v5.4.35"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2281,17 +2248,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/http-foundation",
|
"name": "symfony/http-foundation",
|
||||||
"version": "v5.4.35",
|
"version": "v5.4.40",
|
||||||
"version_normalized": "5.4.35.0",
|
"version_normalized": "5.4.40.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/http-foundation.git",
|
"url": "https://github.com/symfony/http-foundation.git",
|
||||||
"reference": "f2ab692a22aef1cd54beb893aa0068bdfb093928"
|
"reference": "cf4893ca4eca3fac4ae06da1590afdbbb4217847"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/f2ab692a22aef1cd54beb893aa0068bdfb093928",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/http-foundation/v5.4.40/symfony-http-foundation-v5.4.40.zip",
|
||||||
"reference": "f2ab692a22aef1cd54beb893aa0068bdfb093928",
|
"reference": "cf4893ca4eca3fac4ae06da1590afdbbb4217847",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2301,7 +2268,7 @@
|
|||||||
"symfony/polyfill-php80": "^1.16"
|
"symfony/polyfill-php80": "^1.16"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"predis/predis": "~1.0",
|
"predis/predis": "^1.0|^2.0",
|
||||||
"symfony/cache": "^4.4|^5.0|^6.0",
|
"symfony/cache": "^4.4|^5.0|^6.0",
|
||||||
"symfony/dependency-injection": "^5.4|^6.0",
|
"symfony/dependency-injection": "^5.4|^6.0",
|
||||||
"symfony/expression-language": "^4.4|^5.0|^6.0",
|
"symfony/expression-language": "^4.4|^5.0|^6.0",
|
||||||
@@ -2312,7 +2279,7 @@
|
|||||||
"suggest": {
|
"suggest": {
|
||||||
"symfony/mime": "To use the file extension guesser"
|
"symfony/mime": "To use the file extension guesser"
|
||||||
},
|
},
|
||||||
"time": "2024-01-23T13:51:25+00:00",
|
"time": "2024-05-31T14:33:22+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "dist",
|
"installation-source": "dist",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -2323,7 +2290,6 @@
|
|||||||
"/Tests/"
|
"/Tests/"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2339,9 +2305,6 @@
|
|||||||
],
|
],
|
||||||
"description": "Defines an object-oriented layer for the HTTP specification",
|
"description": "Defines an object-oriented layer for the HTTP specification",
|
||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/http-foundation/tree/v5.4.35"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2360,17 +2323,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/polyfill-mbstring",
|
"name": "symfony/polyfill-mbstring",
|
||||||
"version": "v1.29.0",
|
"version": "v1.30.0",
|
||||||
"version_normalized": "1.29.0.0",
|
"version_normalized": "1.30.0.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
||||||
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec"
|
"reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/polyfill-mbstring/v1.30.0/symfony-polyfill-mbstring-v1.30.0.zip",
|
||||||
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
|
"reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2382,7 +2345,7 @@
|
|||||||
"suggest": {
|
"suggest": {
|
||||||
"ext-mbstring": "For best performance"
|
"ext-mbstring": "For best performance"
|
||||||
},
|
},
|
||||||
"time": "2024-01-29T20:11:03+00:00",
|
"time": "2024-06-19T12:30:46+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"thanks": {
|
"thanks": {
|
||||||
@@ -2399,7 +2362,6 @@
|
|||||||
"Symfony\\Polyfill\\Mbstring\\": ""
|
"Symfony\\Polyfill\\Mbstring\\": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2422,9 +2384,6 @@
|
|||||||
"portable",
|
"portable",
|
||||||
"shim"
|
"shim"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2443,23 +2402,23 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/polyfill-php73",
|
"name": "symfony/polyfill-php73",
|
||||||
"version": "v1.29.0",
|
"version": "v1.30.0",
|
||||||
"version_normalized": "1.29.0.0",
|
"version_normalized": "1.30.0.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/polyfill-php73.git",
|
"url": "https://github.com/symfony/polyfill-php73.git",
|
||||||
"reference": "21bd091060673a1177ae842c0ef8fe30893114d2"
|
"reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/21bd091060673a1177ae842c0ef8fe30893114d2",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/polyfill-php73/v1.30.0/symfony-polyfill-php73-v1.30.0.zip",
|
||||||
"reference": "21bd091060673a1177ae842c0ef8fe30893114d2",
|
"reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.1"
|
"php": ">=7.1"
|
||||||
},
|
},
|
||||||
"time": "2024-01-29T20:11:03+00:00",
|
"time": "2024-05-31T15:07:36+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"thanks": {
|
"thanks": {
|
||||||
@@ -2479,7 +2438,6 @@
|
|||||||
"Resources/stubs"
|
"Resources/stubs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2501,9 +2459,6 @@
|
|||||||
"portable",
|
"portable",
|
||||||
"shim"
|
"shim"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.29.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2522,23 +2477,23 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/polyfill-php80",
|
"name": "symfony/polyfill-php80",
|
||||||
"version": "v1.29.0",
|
"version": "v1.30.0",
|
||||||
"version_normalized": "1.29.0.0",
|
"version_normalized": "1.30.0.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
"url": "https://github.com/symfony/polyfill-php80.git",
|
||||||
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b"
|
"reference": "77fa7995ac1b21ab60769b7323d600a991a90433"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/polyfill-php80/v1.30.0/symfony-polyfill-php80-v1.30.0.zip",
|
||||||
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
|
"reference": "77fa7995ac1b21ab60769b7323d600a991a90433",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.1"
|
"php": ">=7.1"
|
||||||
},
|
},
|
||||||
"time": "2024-01-29T20:11:03+00:00",
|
"time": "2024-05-31T15:07:36+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
"thanks": {
|
"thanks": {
|
||||||
@@ -2558,7 +2513,6 @@
|
|||||||
"Resources/stubs"
|
"Resources/stubs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2584,9 +2538,6 @@
|
|||||||
"portable",
|
"portable",
|
||||||
"shim"
|
"shim"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2761,17 +2712,17 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/var-exporter",
|
"name": "symfony/var-exporter",
|
||||||
"version": "v5.4.35",
|
"version": "v5.4.40",
|
||||||
"version_normalized": "5.4.35.0",
|
"version_normalized": "5.4.40.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/symfony/var-exporter.git",
|
"url": "https://github.com/symfony/var-exporter.git",
|
||||||
"reference": "abb0a151b62d6b07e816487e20040464af96cae7"
|
"reference": "6a13d37336d512927986e09f19a4bed24178baa6"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/symfony/var-exporter/zipball/abb0a151b62d6b07e816487e20040464af96cae7",
|
"url": "https://mirrors.huaweicloud.com/repository/php/symfony/var-exporter/v5.4.40/symfony-var-exporter-v5.4.40.zip",
|
||||||
"reference": "abb0a151b62d6b07e816487e20040464af96cae7",
|
"reference": "6a13d37336d512927986e09f19a4bed24178baa6",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -2781,7 +2732,7 @@
|
|||||||
"require-dev": {
|
"require-dev": {
|
||||||
"symfony/var-dumper": "^4.4.9|^5.0.9|^6.0"
|
"symfony/var-dumper": "^4.4.9|^5.0.9|^6.0"
|
||||||
},
|
},
|
||||||
"time": "2024-01-23T13:51:25+00:00",
|
"time": "2024-05-31T14:33:22+00:00",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"installation-source": "dist",
|
"installation-source": "dist",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@@ -2792,7 +2743,6 @@
|
|||||||
"/Tests/"
|
"/Tests/"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
"license": [
|
||||||
"MIT"
|
"MIT"
|
||||||
],
|
],
|
||||||
@@ -2816,9 +2766,6 @@
|
|||||||
"instantiate",
|
"instantiate",
|
||||||
"serialize"
|
"serialize"
|
||||||
],
|
],
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/var-exporter/tree/v5.4.35"
|
|
||||||
},
|
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"url": "https://symfony.com/sponsor",
|
"url": "https://symfony.com/sponsor",
|
||||||
@@ -2842,7 +2789,7 @@
|
|||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitee.com/fastadminnet/framework.git",
|
"url": "https://gitee.com/fastadminnet/framework.git",
|
||||||
"reference": "3883e15817ab39f2d342ca007bc8f5b6d8b6f508"
|
"reference": "c859e712f50362d8ee3a7cd2e495af5494847bef"
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.1.0",
|
"php": ">=7.1.0",
|
||||||
@@ -2856,7 +2803,7 @@
|
|||||||
"phpunit/phpunit": "4.8.*",
|
"phpunit/phpunit": "4.8.*",
|
||||||
"sebastian/phpcpd": "2.*"
|
"sebastian/phpcpd": "2.*"
|
||||||
},
|
},
|
||||||
"time": "2024-03-26T09:19:29+00:00",
|
"time": "2024-06-25T09:03:56+00:00",
|
||||||
"default-branch": true,
|
"default-branch": true,
|
||||||
"type": "think-framework",
|
"type": "think-framework",
|
||||||
"installation-source": "source",
|
"installation-source": "source",
|
||||||
@@ -3123,6 +3070,46 @@
|
|||||||
"source": "https://github.com/txthinking/Mailer/tree/master"
|
"source": "https://github.com/txthinking/Mailer/tree/master"
|
||||||
},
|
},
|
||||||
"install-path": "../txthinking/mailer"
|
"install-path": "../txthinking/mailer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "wanghua/general-utility-tools-php",
|
||||||
|
"version": "dev-master",
|
||||||
|
"version_normalized": "dev-master",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitee.com/drop_drop/general_utility_tools_php.git",
|
||||||
|
"reference": "f31ce1f3910b7522d37a796759722f7f4c785dfe"
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"ext-json": "*"
|
||||||
|
},
|
||||||
|
"time": "2024-06-27T03:06:27+00:00",
|
||||||
|
"default-branch": true,
|
||||||
|
"type": "library",
|
||||||
|
"installation-source": "source",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"wanghua\\general_utility_tools_php\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"license": [
|
||||||
|
"Apache-2.0"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "wanghua",
|
||||||
|
"email": "wanghua@qq.com",
|
||||||
|
"homepage": "https://blog.csdn.net/qq_15941409"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "general utility tools for thinkPHP",
|
||||||
|
"homepage": "https://gitee.com/drop_drop/general_utility_tools_php.git",
|
||||||
|
"keywords": [
|
||||||
|
"common tool",
|
||||||
|
"general-utility-tools",
|
||||||
|
"php tool"
|
||||||
|
],
|
||||||
|
"install-path": "../wanghua/general-utility-tools-php"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
|||||||
167
digital_doctor_admin/vendor/composer/installed.php
vendored
167
digital_doctor_admin/vendor/composer/installed.php
vendored
@@ -1,184 +1,184 @@
|
|||||||
<?php return array(
|
<?php return array(
|
||||||
'root' => array(
|
'root' => array(
|
||||||
'name' => 'karsonzhang/fastadmin',
|
'pretty_version' => 'dev-master',
|
||||||
'pretty_version' => '1.x-dev',
|
'version' => 'dev-master',
|
||||||
'version' => '1.9999999.9999999.9999999-dev',
|
|
||||||
'reference' => 'e8a804afada3b8f71627a1c4f2734f2656099415',
|
|
||||||
'type' => 'project',
|
'type' => 'project',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '1e7ad2096be950c04ee4245102122ad88ba011d6',
|
||||||
|
'name' => 'karsonzhang/fastadmin',
|
||||||
'dev' => true,
|
'dev' => true,
|
||||||
),
|
),
|
||||||
'versions' => array(
|
'versions' => array(
|
||||||
'easywechat-composer/easywechat-composer' => array(
|
'easywechat-composer/easywechat-composer' => array(
|
||||||
'pretty_version' => '1.4.1',
|
'pretty_version' => '1.4.1',
|
||||||
'version' => '1.4.1.0',
|
'version' => '1.4.1.0',
|
||||||
'reference' => '3fc6a7ab6d3853c0f4e2922539b56cc37ef361cd',
|
|
||||||
'type' => 'composer-plugin',
|
'type' => 'composer-plugin',
|
||||||
'install_path' => __DIR__ . '/../easywechat-composer/easywechat-composer',
|
'install_path' => __DIR__ . '/../easywechat-composer/easywechat-composer',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '3fc6a7ab6d3853c0f4e2922539b56cc37ef361cd',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'ezyang/htmlpurifier' => array(
|
'ezyang/htmlpurifier' => array(
|
||||||
'pretty_version' => 'v4.17.0',
|
'pretty_version' => 'v4.17.0',
|
||||||
'version' => '4.17.0.0',
|
'version' => '4.17.0.0',
|
||||||
'reference' => 'bbc513d79acf6691fa9cf10f192c90dd2957f18c',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../ezyang/htmlpurifier',
|
'install_path' => __DIR__ . '/../ezyang/htmlpurifier',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'bbc513d79acf6691fa9cf10f192c90dd2957f18c',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'guzzlehttp/guzzle' => array(
|
'guzzlehttp/guzzle' => array(
|
||||||
'pretty_version' => '7.8.1',
|
'pretty_version' => '7.8.1',
|
||||||
'version' => '7.8.1.0',
|
'version' => '7.8.1.0',
|
||||||
'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../guzzlehttp/guzzle',
|
'install_path' => __DIR__ . '/../guzzlehttp/guzzle',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'guzzlehttp/promises' => array(
|
'guzzlehttp/promises' => array(
|
||||||
'pretty_version' => '2.0.2',
|
'pretty_version' => '2.0.2',
|
||||||
'version' => '2.0.2.0',
|
'version' => '2.0.2.0',
|
||||||
'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../guzzlehttp/promises',
|
'install_path' => __DIR__ . '/../guzzlehttp/promises',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'guzzlehttp/psr7' => array(
|
'guzzlehttp/psr7' => array(
|
||||||
'pretty_version' => '2.6.2',
|
'pretty_version' => '2.6.2',
|
||||||
'version' => '2.6.2.0',
|
'version' => '2.6.2.0',
|
||||||
'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../guzzlehttp/psr7',
|
'install_path' => __DIR__ . '/../guzzlehttp/psr7',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'karsonzhang/fastadmin' => array(
|
'karsonzhang/fastadmin' => array(
|
||||||
'pretty_version' => '1.x-dev',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => '1.9999999.9999999.9999999-dev',
|
'version' => 'dev-master',
|
||||||
'reference' => 'e8a804afada3b8f71627a1c4f2734f2656099415',
|
|
||||||
'type' => 'project',
|
'type' => 'project',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '1e7ad2096be950c04ee4245102122ad88ba011d6',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'karsonzhang/fastadmin-addons' => array(
|
'karsonzhang/fastadmin-addons' => array(
|
||||||
'pretty_version' => '1.4.0',
|
'pretty_version' => '1.4.0',
|
||||||
'version' => '1.4.0.0',
|
'version' => '1.4.0.0',
|
||||||
'reference' => '12b0b146bbdcb12c9f50c96baa3b7cc5f4c48ad6',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../karsonzhang/fastadmin-addons',
|
'install_path' => __DIR__ . '/../karsonzhang/fastadmin-addons',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '12b0b146bbdcb12c9f50c96baa3b7cc5f4c48ad6',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'maennchen/zipstream-php' => array(
|
'maennchen/zipstream-php' => array(
|
||||||
'pretty_version' => '2.2.6',
|
'pretty_version' => '2.2.6',
|
||||||
'version' => '2.2.6.0',
|
'version' => '2.2.6.0',
|
||||||
'reference' => '30ad6f93cf3efe4192bc7a4c9cad11ff8f4f237f',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../maennchen/zipstream-php',
|
'install_path' => __DIR__ . '/../maennchen/zipstream-php',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '30ad6f93cf3efe4192bc7a4c9cad11ff8f4f237f',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'markbaker/complex' => array(
|
'markbaker/complex' => array(
|
||||||
'pretty_version' => '3.0.2',
|
'pretty_version' => '3.0.2',
|
||||||
'version' => '3.0.2.0',
|
'version' => '3.0.2.0',
|
||||||
'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../markbaker/complex',
|
'install_path' => __DIR__ . '/../markbaker/complex',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'markbaker/matrix' => array(
|
'markbaker/matrix' => array(
|
||||||
'pretty_version' => '3.0.1',
|
'pretty_version' => '3.0.1',
|
||||||
'version' => '3.0.1.0',
|
'version' => '3.0.1.0',
|
||||||
'reference' => '728434227fe21be27ff6d86621a1b13107a2562c',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../markbaker/matrix',
|
'install_path' => __DIR__ . '/../markbaker/matrix',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '728434227fe21be27ff6d86621a1b13107a2562c',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'monolog/monolog' => array(
|
'monolog/monolog' => array(
|
||||||
'pretty_version' => '2.9.2',
|
'pretty_version' => '2.9.3',
|
||||||
'version' => '2.9.2.0',
|
'version' => '2.9.3.0',
|
||||||
'reference' => '437cb3628f4cf6042cc10ae97fc2b8472e48ca1f',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../monolog/monolog',
|
'install_path' => __DIR__ . '/../monolog/monolog',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a30bfe2e142720dfa990d0a7e573997f5d884215',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'myclabs/php-enum' => array(
|
'myclabs/php-enum' => array(
|
||||||
'pretty_version' => '1.8.4',
|
'pretty_version' => '1.8.4',
|
||||||
'version' => '1.8.4.0',
|
'version' => '1.8.4.0',
|
||||||
'reference' => 'a867478eae49c9f59ece437ae7f9506bfaa27483',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../myclabs/php-enum',
|
'install_path' => __DIR__ . '/../myclabs/php-enum',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a867478eae49c9f59ece437ae7f9506bfaa27483',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'nelexa/zip' => array(
|
'nelexa/zip' => array(
|
||||||
'pretty_version' => '4.0.2',
|
'pretty_version' => '4.0.2',
|
||||||
'version' => '4.0.2.0',
|
'version' => '4.0.2.0',
|
||||||
'reference' => '88a1b6549be813278ff2dd3b6b2ac188827634a7',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../nelexa/zip',
|
'install_path' => __DIR__ . '/../nelexa/zip',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '88a1b6549be813278ff2dd3b6b2ac188827634a7',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'overtrue/pinyin' => array(
|
'overtrue/pinyin' => array(
|
||||||
'pretty_version' => '3.0.6',
|
'pretty_version' => '3.0.6',
|
||||||
'version' => '3.0.6.0',
|
'version' => '3.0.6.0',
|
||||||
'reference' => '3b781d267197b74752daa32814d3a2cf5d140779',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../overtrue/pinyin',
|
'install_path' => __DIR__ . '/../overtrue/pinyin',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '3b781d267197b74752daa32814d3a2cf5d140779',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'overtrue/socialite' => array(
|
'overtrue/socialite' => array(
|
||||||
'pretty_version' => '2.0.24',
|
'pretty_version' => '2.0.24',
|
||||||
'version' => '2.0.24.0',
|
'version' => '2.0.24.0',
|
||||||
'reference' => 'ee7e7b000ec7d64f2b8aba1f6a2eec5cdf3f8bec',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../overtrue/socialite',
|
'install_path' => __DIR__ . '/../overtrue/socialite',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'ee7e7b000ec7d64f2b8aba1f6a2eec5cdf3f8bec',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'overtrue/wechat' => array(
|
'overtrue/wechat' => array(
|
||||||
'pretty_version' => '4.9.0',
|
'pretty_version' => '4.9.0',
|
||||||
'version' => '4.9.0.0',
|
'version' => '4.9.0.0',
|
||||||
'reference' => '92791f5d957269c633b9aa175f842f6006f945b1',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../overtrue/wechat',
|
'install_path' => __DIR__ . '/../overtrue/wechat',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '92791f5d957269c633b9aa175f842f6006f945b1',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'phpoffice/phpspreadsheet' => array(
|
'phpoffice/phpspreadsheet' => array(
|
||||||
'pretty_version' => '1.19.0',
|
'pretty_version' => '1.19.0',
|
||||||
'version' => '1.19.0.0',
|
'version' => '1.19.0.0',
|
||||||
'reference' => 'a9ab55bfae02eecffb3df669a2e19ba0e2f04bbf',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../phpoffice/phpspreadsheet',
|
'install_path' => __DIR__ . '/../phpoffice/phpspreadsheet',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a9ab55bfae02eecffb3df669a2e19ba0e2f04bbf',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'pimple/pimple' => array(
|
'pimple/pimple' => array(
|
||||||
'pretty_version' => 'v3.5.0',
|
'pretty_version' => 'v3.5.0',
|
||||||
'version' => '3.5.0.0',
|
'version' => '3.5.0.0',
|
||||||
'reference' => 'a94b3a4db7fb774b3d78dad2315ddc07629e1bed',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../pimple/pimple',
|
'install_path' => __DIR__ . '/../pimple/pimple',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a94b3a4db7fb774b3d78dad2315ddc07629e1bed',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/cache' => array(
|
'psr/cache' => array(
|
||||||
'pretty_version' => '1.0.1',
|
'pretty_version' => '1.0.1',
|
||||||
'version' => '1.0.1.0',
|
'version' => '1.0.1.0',
|
||||||
'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/cache',
|
'install_path' => __DIR__ . '/../psr/cache',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/cache-implementation' => array(
|
'psr/cache-implementation' => array(
|
||||||
@@ -190,19 +190,19 @@
|
|||||||
'psr/container' => array(
|
'psr/container' => array(
|
||||||
'pretty_version' => '2.0.2',
|
'pretty_version' => '2.0.2',
|
||||||
'version' => '2.0.2.0',
|
'version' => '2.0.2.0',
|
||||||
'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/container',
|
'install_path' => __DIR__ . '/../psr/container',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/event-dispatcher' => array(
|
'psr/event-dispatcher' => array(
|
||||||
'pretty_version' => '1.0.0',
|
'pretty_version' => '1.0.0',
|
||||||
'version' => '1.0.0.0',
|
'version' => '1.0.0.0',
|
||||||
'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/event-dispatcher',
|
'install_path' => __DIR__ . '/../psr/event-dispatcher',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/event-dispatcher-implementation' => array(
|
'psr/event-dispatcher-implementation' => array(
|
||||||
@@ -214,10 +214,10 @@
|
|||||||
'psr/http-client' => array(
|
'psr/http-client' => array(
|
||||||
'pretty_version' => '1.0.3',
|
'pretty_version' => '1.0.3',
|
||||||
'version' => '1.0.3.0',
|
'version' => '1.0.3.0',
|
||||||
'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/http-client',
|
'install_path' => __DIR__ . '/../psr/http-client',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/http-client-implementation' => array(
|
'psr/http-client-implementation' => array(
|
||||||
@@ -227,12 +227,12 @@
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
'psr/http-factory' => array(
|
'psr/http-factory' => array(
|
||||||
'pretty_version' => '1.0.2',
|
'pretty_version' => '1.1.0',
|
||||||
'version' => '1.0.2.0',
|
'version' => '1.1.0.0',
|
||||||
'reference' => 'e616d01114759c4c489f93b099585439f795fe35',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/http-factory',
|
'install_path' => __DIR__ . '/../psr/http-factory',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/http-factory-implementation' => array(
|
'psr/http-factory-implementation' => array(
|
||||||
@@ -244,10 +244,10 @@
|
|||||||
'psr/http-message' => array(
|
'psr/http-message' => array(
|
||||||
'pretty_version' => '1.1',
|
'pretty_version' => '1.1',
|
||||||
'version' => '1.1.0.0',
|
'version' => '1.1.0.0',
|
||||||
'reference' => 'cb6ce4845ce34a8ad9e68117c10ee90a29919eba',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/http-message',
|
'install_path' => __DIR__ . '/../psr/http-message',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'cb6ce4845ce34a8ad9e68117c10ee90a29919eba',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/http-message-implementation' => array(
|
'psr/http-message-implementation' => array(
|
||||||
@@ -259,10 +259,10 @@
|
|||||||
'psr/log' => array(
|
'psr/log' => array(
|
||||||
'pretty_version' => '1.1.4',
|
'pretty_version' => '1.1.4',
|
||||||
'version' => '1.1.4.0',
|
'version' => '1.1.4.0',
|
||||||
'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/log',
|
'install_path' => __DIR__ . '/../psr/log',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/log-implementation' => array(
|
'psr/log-implementation' => array(
|
||||||
@@ -274,10 +274,10 @@
|
|||||||
'psr/simple-cache' => array(
|
'psr/simple-cache' => array(
|
||||||
'pretty_version' => '1.0.1',
|
'pretty_version' => '1.0.1',
|
||||||
'version' => '1.0.1.0',
|
'version' => '1.0.1.0',
|
||||||
'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../psr/simple-cache',
|
'install_path' => __DIR__ . '/../psr/simple-cache',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'psr/simple-cache-implementation' => array(
|
'psr/simple-cache-implementation' => array(
|
||||||
@@ -289,28 +289,28 @@
|
|||||||
'ralouphie/getallheaders' => array(
|
'ralouphie/getallheaders' => array(
|
||||||
'pretty_version' => '3.0.3',
|
'pretty_version' => '3.0.3',
|
||||||
'version' => '3.0.3.0',
|
'version' => '3.0.3.0',
|
||||||
'reference' => '120b605dfeb996808c31b6477290a714d356e822',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../ralouphie/getallheaders',
|
'install_path' => __DIR__ . '/../ralouphie/getallheaders',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '120b605dfeb996808c31b6477290a714d356e822',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/cache' => array(
|
'symfony/cache' => array(
|
||||||
'pretty_version' => 'v5.4.36',
|
'pretty_version' => 'v5.4.40',
|
||||||
'version' => '5.4.36.0',
|
'version' => '5.4.40.0',
|
||||||
'reference' => 'a30f316214d908cf5874f700f3f3fb29ceee91ba',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/cache',
|
'install_path' => __DIR__ . '/../symfony/cache',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '89005bc368ca02ed0433c592e4d27670d0844a66',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/cache-contracts' => array(
|
'symfony/cache-contracts' => array(
|
||||||
'pretty_version' => 'v2.5.2',
|
'pretty_version' => 'v2.5.3',
|
||||||
'version' => '2.5.2.0',
|
'version' => '2.5.3.0',
|
||||||
'reference' => '64be4a7acb83b6f2bf6de9a02cee6dad41277ebc',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/cache-contracts',
|
'install_path' => __DIR__ . '/../symfony/cache-contracts',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'fee6db04d913094e2fb55ff8e7db5685a8134463',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/cache-implementation' => array(
|
'symfony/cache-implementation' => array(
|
||||||
@@ -320,30 +320,30 @@
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
'symfony/deprecation-contracts' => array(
|
'symfony/deprecation-contracts' => array(
|
||||||
'pretty_version' => 'v2.5.2',
|
'pretty_version' => 'v2.5.3',
|
||||||
'version' => '2.5.2.0',
|
'version' => '2.5.3.0',
|
||||||
'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/deprecation-contracts',
|
'install_path' => __DIR__ . '/../symfony/deprecation-contracts',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '80d075412b557d41002320b96a096ca65aa2c98d',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/event-dispatcher' => array(
|
'symfony/event-dispatcher' => array(
|
||||||
'pretty_version' => 'v5.4.35',
|
'pretty_version' => 'v5.4.40',
|
||||||
'version' => '5.4.35.0',
|
'version' => '5.4.40.0',
|
||||||
'reference' => '7a69a85c7ea5bdd1e875806a99c51a87d3a74b38',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/event-dispatcher',
|
'install_path' => __DIR__ . '/../symfony/event-dispatcher',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'a54e2a8a114065f31020d6a89ede83e34c3b27a4',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/event-dispatcher-contracts' => array(
|
'symfony/event-dispatcher-contracts' => array(
|
||||||
'pretty_version' => 'v2.5.2',
|
'pretty_version' => 'v2.5.3',
|
||||||
'version' => '2.5.2.0',
|
'version' => '2.5.3.0',
|
||||||
'reference' => 'f98b54df6ad059855739db6fcbc2d36995283fe1',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts',
|
'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '540f4c73e87fd0c71ca44a6aa305d024ac68cb73',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/event-dispatcher-implementation' => array(
|
'symfony/event-dispatcher-implementation' => array(
|
||||||
@@ -353,131 +353,142 @@
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
'symfony/finder' => array(
|
'symfony/finder' => array(
|
||||||
'pretty_version' => 'v5.4.35',
|
'pretty_version' => 'v5.4.40',
|
||||||
'version' => '5.4.35.0',
|
'version' => '5.4.40.0',
|
||||||
'reference' => 'abe6d6f77d9465fed3cd2d029b29d03b56b56435',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/finder',
|
'install_path' => __DIR__ . '/../symfony/finder',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'f51cff4687547641c7d8180d74932ab40b2205ce',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/http-foundation' => array(
|
'symfony/http-foundation' => array(
|
||||||
'pretty_version' => 'v5.4.35',
|
'pretty_version' => 'v5.4.40',
|
||||||
'version' => '5.4.35.0',
|
'version' => '5.4.40.0',
|
||||||
'reference' => 'f2ab692a22aef1cd54beb893aa0068bdfb093928',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/http-foundation',
|
'install_path' => __DIR__ . '/../symfony/http-foundation',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'cf4893ca4eca3fac4ae06da1590afdbbb4217847',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/polyfill-mbstring' => array(
|
'symfony/polyfill-mbstring' => array(
|
||||||
'pretty_version' => 'v1.29.0',
|
'pretty_version' => 'v1.30.0',
|
||||||
'version' => '1.29.0.0',
|
'version' => '1.30.0.0',
|
||||||
'reference' => '9773676c8a1bb1f8d4340a62efe641cf76eda7ec',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
|
'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'fd22ab50000ef01661e2a31d850ebaa297f8e03c',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/polyfill-php73' => array(
|
'symfony/polyfill-php73' => array(
|
||||||
'pretty_version' => 'v1.29.0',
|
'pretty_version' => 'v1.30.0',
|
||||||
'version' => '1.29.0.0',
|
'version' => '1.30.0.0',
|
||||||
'reference' => '21bd091060673a1177ae842c0ef8fe30893114d2',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-php73',
|
'install_path' => __DIR__ . '/../symfony/polyfill-php73',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'ec444d3f3f6505bb28d11afa41e75faadebc10a1',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/polyfill-php80' => array(
|
'symfony/polyfill-php80' => array(
|
||||||
'pretty_version' => 'v1.29.0',
|
'pretty_version' => 'v1.30.0',
|
||||||
'version' => '1.29.0.0',
|
'version' => '1.30.0.0',
|
||||||
'reference' => '87b68208d5c1188808dd7839ee1e6c8ec3b02f1b',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-php80',
|
'install_path' => __DIR__ . '/../symfony/polyfill-php80',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '77fa7995ac1b21ab60769b7323d600a991a90433',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/psr-http-message-bridge' => array(
|
'symfony/psr-http-message-bridge' => array(
|
||||||
'pretty_version' => 'v2.3.1',
|
'pretty_version' => 'v2.3.1',
|
||||||
'version' => '2.3.1.0',
|
'version' => '2.3.1.0',
|
||||||
'reference' => '581ca6067eb62640de5ff08ee1ba6850a0ee472e',
|
|
||||||
'type' => 'symfony-bridge',
|
'type' => 'symfony-bridge',
|
||||||
'install_path' => __DIR__ . '/../symfony/psr-http-message-bridge',
|
'install_path' => __DIR__ . '/../symfony/psr-http-message-bridge',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '581ca6067eb62640de5ff08ee1ba6850a0ee472e',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/service-contracts' => array(
|
'symfony/service-contracts' => array(
|
||||||
'pretty_version' => 'v1.1.2',
|
'pretty_version' => 'v1.1.2',
|
||||||
'version' => '1.1.2.0',
|
'version' => '1.1.2.0',
|
||||||
'reference' => '191afdcb5804db960d26d8566b7e9a2843cab3a0',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/service-contracts',
|
'install_path' => __DIR__ . '/../symfony/service-contracts',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '191afdcb5804db960d26d8566b7e9a2843cab3a0',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/var-exporter' => array(
|
'symfony/var-exporter' => array(
|
||||||
'pretty_version' => 'v5.4.35',
|
'pretty_version' => 'v5.4.40',
|
||||||
'version' => '5.4.35.0',
|
'version' => '5.4.40.0',
|
||||||
'reference' => 'abb0a151b62d6b07e816487e20040464af96cae7',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../symfony/var-exporter',
|
'install_path' => __DIR__ . '/../symfony/var-exporter',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '6a13d37336d512927986e09f19a4bed24178baa6',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/framework' => array(
|
'topthink/framework' => array(
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => '3883e15817ab39f2d342ca007bc8f5b6d8b6f508',
|
|
||||||
'type' => 'think-framework',
|
'type' => 'think-framework',
|
||||||
'install_path' => __DIR__ . '/../../thinkphp',
|
'install_path' => __DIR__ . '/../../thinkphp',
|
||||||
'aliases' => array(
|
'aliases' => array(
|
||||||
0 => '9999999-dev',
|
0 => '9999999-dev',
|
||||||
),
|
),
|
||||||
|
'reference' => 'c859e712f50362d8ee3a7cd2e495af5494847bef',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-captcha' => array(
|
'topthink/think-captcha' => array(
|
||||||
'pretty_version' => 'v1.0.9',
|
'pretty_version' => 'v1.0.9',
|
||||||
'version' => '1.0.9.0',
|
'version' => '1.0.9.0',
|
||||||
'reference' => '9be9dd7e61c7fa3c478c4b92910d7230b94d0d23',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-captcha',
|
'install_path' => __DIR__ . '/../topthink/think-captcha',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '9be9dd7e61c7fa3c478c4b92910d7230b94d0d23',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-helper' => array(
|
'topthink/think-helper' => array(
|
||||||
'pretty_version' => 'v1.0.7',
|
'pretty_version' => 'v1.0.7',
|
||||||
'version' => '1.0.7.0',
|
'version' => '1.0.7.0',
|
||||||
'reference' => '5f92178606c8ce131d36b37a57c58eb71e55f019',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-helper',
|
'install_path' => __DIR__ . '/../topthink/think-helper',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '5f92178606c8ce131d36b37a57c58eb71e55f019',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-installer' => array(
|
'topthink/think-installer' => array(
|
||||||
'pretty_version' => 'v1.0.14',
|
'pretty_version' => 'v1.0.14',
|
||||||
'version' => '1.0.14.0',
|
'version' => '1.0.14.0',
|
||||||
'reference' => 'eae1740ac264a55c06134b6685dfb9f837d004d1',
|
|
||||||
'type' => 'composer-plugin',
|
'type' => 'composer-plugin',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-installer',
|
'install_path' => __DIR__ . '/../topthink/think-installer',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => 'eae1740ac264a55c06134b6685dfb9f837d004d1',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'topthink/think-queue' => array(
|
'topthink/think-queue' => array(
|
||||||
'pretty_version' => 'v1.1.6',
|
'pretty_version' => 'v1.1.6',
|
||||||
'version' => '1.1.6.0',
|
'version' => '1.1.6.0',
|
||||||
'reference' => '250650eb0e8ea5af4cfdc7ae46f3f4e0a24ac245',
|
|
||||||
'type' => 'think-extend',
|
'type' => 'think-extend',
|
||||||
'install_path' => __DIR__ . '/../topthink/think-queue',
|
'install_path' => __DIR__ . '/../topthink/think-queue',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '250650eb0e8ea5af4cfdc7ae46f3f4e0a24ac245',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'txthinking/mailer' => array(
|
'txthinking/mailer' => array(
|
||||||
'pretty_version' => 'v2.0.1',
|
'pretty_version' => 'v2.0.1',
|
||||||
'version' => '2.0.1.0',
|
'version' => '2.0.1.0',
|
||||||
'reference' => '09013cf9dad3aac195f66ae5309e8c3343c018e9',
|
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../txthinking/mailer',
|
'install_path' => __DIR__ . '/../txthinking/mailer',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
'reference' => '09013cf9dad3aac195f66ae5309e8c3343c018e9',
|
||||||
|
'dev_requirement' => false,
|
||||||
|
),
|
||||||
|
'wanghua/general-utility-tools-php' => array(
|
||||||
|
'pretty_version' => 'dev-master',
|
||||||
|
'version' => 'dev-master',
|
||||||
|
'type' => 'library',
|
||||||
|
'install_path' => __DIR__ . '/../wanghua/general-utility-tools-php',
|
||||||
|
'aliases' => array(
|
||||||
|
0 => '9999999-dev',
|
||||||
|
),
|
||||||
|
'reference' => 'f31ce1f3910b7522d37a796759722f7f4c785dfe',
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
|
### 2.9.3 (2024-04-12)
|
||||||
|
|
||||||
|
* Fixed PHP 8.4 deprecation warnings (#1874)
|
||||||
|
|
||||||
### 2.9.2 (2023-10-27)
|
### 2.9.2 (2023-10-27)
|
||||||
|
|
||||||
* Fixed display_errors parsing in ErrorHandler which did not support string values (#1804)
|
* Fixed display_errors parsing in ErrorHandler which did not support string values (#1804)
|
||||||
|
|||||||
@@ -27,8 +27,8 @@
|
|||||||
"mongodb/mongodb": "^1.8",
|
"mongodb/mongodb": "^1.8",
|
||||||
"php-amqplib/php-amqplib": "~2.4 || ^3",
|
"php-amqplib/php-amqplib": "~2.4 || ^3",
|
||||||
"phpspec/prophecy": "^1.15",
|
"phpspec/prophecy": "^1.15",
|
||||||
"phpstan/phpstan": "^0.12.91",
|
"phpstan/phpstan": "^1.10",
|
||||||
"phpunit/phpunit": "^8.5.14",
|
"phpunit/phpunit": "^8.5.38 || ^9.6.19",
|
||||||
"predis/predis": "^1.1 || ^2.0",
|
"predis/predis": "^1.1 || ^2.0",
|
||||||
"rollbar/rollbar": "^1.3 || ^2 || ^3",
|
"rollbar/rollbar": "^1.3 || ^2 || ^3",
|
||||||
"ruflin/elastica": "^7",
|
"ruflin/elastica": "^7",
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ class DateTimeImmutable extends \DateTimeImmutable implements \JsonSerializable
|
|||||||
{
|
{
|
||||||
$this->useMicroseconds = $useMicroseconds;
|
$this->useMicroseconds = $useMicroseconds;
|
||||||
|
|
||||||
|
// if you like to use a custom time to pass to Logger::addRecord directly,
|
||||||
|
// call modify() or setTimestamp() on this instance to change the date after creating it
|
||||||
parent::__construct('now', $timezone);
|
parent::__construct('now', $timezone);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ class FilterHandler extends Handler implements ProcessableHandlerInterface, Rese
|
|||||||
*
|
*
|
||||||
* @phpstan-param Record $record
|
* @phpstan-param Record $record
|
||||||
*/
|
*/
|
||||||
public function getHandler(array $record = null)
|
public function getHandler(?array $record = null)
|
||||||
{
|
{
|
||||||
if (!$this->handler instanceof HandlerInterface) {
|
if (!$this->handler instanceof HandlerInterface) {
|
||||||
$this->handler = ($this->handler)($record, $this);
|
$this->handler = ($this->handler)($record, $this);
|
||||||
|
|||||||
@@ -210,7 +210,7 @@ class FingersCrossedHandler extends Handler implements ProcessableHandlerInterfa
|
|||||||
*
|
*
|
||||||
* @phpstan-param Record $record
|
* @phpstan-param Record $record
|
||||||
*/
|
*/
|
||||||
public function getHandler(array $record = null)
|
public function getHandler(?array $record = null)
|
||||||
{
|
{
|
||||||
if (!$this->handler instanceof HandlerInterface) {
|
if (!$this->handler instanceof HandlerInterface) {
|
||||||
$this->handler = ($this->handler)($record, $this);
|
$this->handler = ($this->handler)($record, $this);
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ class SamplingHandler extends AbstractHandler implements ProcessableHandlerInter
|
|||||||
*
|
*
|
||||||
* @return HandlerInterface
|
* @return HandlerInterface
|
||||||
*/
|
*/
|
||||||
public function getHandler(array $record = null)
|
public function getHandler(?array $record = null)
|
||||||
{
|
{
|
||||||
if (!$this->handler instanceof HandlerInterface) {
|
if (!$this->handler instanceof HandlerInterface) {
|
||||||
$this->handler = ($this->handler)($record, $this);
|
$this->handler = ($this->handler)($record, $this);
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ class SlackRecord
|
|||||||
bool $useShortAttachment = false,
|
bool $useShortAttachment = false,
|
||||||
bool $includeContextAndExtra = false,
|
bool $includeContextAndExtra = false,
|
||||||
array $excludeFields = array(),
|
array $excludeFields = array(),
|
||||||
FormatterInterface $formatter = null
|
?FormatterInterface $formatter = null
|
||||||
) {
|
) {
|
||||||
$this
|
$this
|
||||||
->setChannel($channel)
|
->setChannel($channel)
|
||||||
|
|||||||
@@ -108,9 +108,9 @@ class TelegramBotHandler extends AbstractProcessingHandler
|
|||||||
string $channel,
|
string $channel,
|
||||||
$level = Logger::DEBUG,
|
$level = Logger::DEBUG,
|
||||||
bool $bubble = true,
|
bool $bubble = true,
|
||||||
string $parseMode = null,
|
?string $parseMode = null,
|
||||||
bool $disableWebPagePreview = null,
|
?bool $disableWebPagePreview = null,
|
||||||
bool $disableNotification = null,
|
?bool $disableNotification = null,
|
||||||
bool $splitLongMessages = false,
|
bool $splitLongMessages = false,
|
||||||
bool $delayBetweenMessages = false
|
bool $delayBetweenMessages = false
|
||||||
)
|
)
|
||||||
@@ -130,7 +130,7 @@ class TelegramBotHandler extends AbstractProcessingHandler
|
|||||||
$this->delayBetweenMessages($delayBetweenMessages);
|
$this->delayBetweenMessages($delayBetweenMessages);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setParseMode(string $parseMode = null): self
|
public function setParseMode(?string $parseMode = null): self
|
||||||
{
|
{
|
||||||
if ($parseMode !== null && !in_array($parseMode, self::AVAILABLE_PARSE_MODES)) {
|
if ($parseMode !== null && !in_array($parseMode, self::AVAILABLE_PARSE_MODES)) {
|
||||||
throw new \InvalidArgumentException('Unknown parseMode, use one of these: ' . implode(', ', self::AVAILABLE_PARSE_MODES) . '.');
|
throw new \InvalidArgumentException('Unknown parseMode, use one of these: ' . implode(', ', self::AVAILABLE_PARSE_MODES) . '.');
|
||||||
@@ -141,14 +141,14 @@ class TelegramBotHandler extends AbstractProcessingHandler
|
|||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function disableWebPagePreview(bool $disableWebPagePreview = null): self
|
public function disableWebPagePreview(?bool $disableWebPagePreview = null): self
|
||||||
{
|
{
|
||||||
$this->disableWebPagePreview = $disableWebPagePreview;
|
$this->disableWebPagePreview = $disableWebPagePreview;
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function disableNotification(bool $disableNotification = null): self
|
public function disableNotification(?bool $disableNotification = null): self
|
||||||
{
|
{
|
||||||
$this->disableNotification = $disableNotification;
|
$this->disableNotification = $disableNotification;
|
||||||
|
|
||||||
|
|||||||
@@ -337,7 +337,7 @@ class Logger implements LoggerInterface, ResettableInterface
|
|||||||
*
|
*
|
||||||
* @phpstan-param Level $level
|
* @phpstan-param Level $level
|
||||||
*/
|
*/
|
||||||
public function addRecord(int $level, string $message, array $context = [], DateTimeImmutable $datetime = null): bool
|
public function addRecord(int $level, string $message, array $context = [], ?DateTimeImmutable $datetime = null): bool
|
||||||
{
|
{
|
||||||
if (isset(self::RFC_5424_LEVELS[$level])) {
|
if (isset(self::RFC_5424_LEVELS[$level])) {
|
||||||
$level = self::RFC_5424_LEVELS[$level];
|
$level = self::RFC_5424_LEVELS[$level];
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ class WebProcessor implements ProcessorInterface
|
|||||||
* @param array<string, mixed>|\ArrayAccess<string, mixed>|null $serverData Array or object w/ ArrayAccess that provides access to the $_SERVER data
|
* @param array<string, mixed>|\ArrayAccess<string, mixed>|null $serverData Array or object w/ ArrayAccess that provides access to the $_SERVER data
|
||||||
* @param array<string, string>|array<string>|null $extraFields Field names and the related key inside $serverData to be added (or just a list of field names to use the default configured $serverData mapping). If not provided it defaults to: [url, ip, http_method, server, referrer] + unique_id if present in server data
|
* @param array<string, string>|array<string>|null $extraFields Field names and the related key inside $serverData to be added (or just a list of field names to use the default configured $serverData mapping). If not provided it defaults to: [url, ip, http_method, server, referrer] + unique_id if present in server data
|
||||||
*/
|
*/
|
||||||
public function __construct($serverData = null, array $extraFields = null)
|
public function __construct($serverData = null, ?array $extraFields = null)
|
||||||
{
|
{
|
||||||
if (null === $serverData) {
|
if (null === $serverData) {
|
||||||
$this->serverData = &$_SERVER;
|
$this->serverData = &$_SERVER;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "psr/http-factory",
|
"name": "psr/http-factory",
|
||||||
"description": "Common interfaces for PSR-7 HTTP message factories",
|
"description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"psr",
|
"psr",
|
||||||
"psr-7",
|
"psr-7",
|
||||||
@@ -18,8 +18,11 @@
|
|||||||
"homepage": "https://www.php-fig.org/"
|
"homepage": "https://www.php-fig.org/"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"support": {
|
||||||
|
"source": "https://github.com/php-fig/http-factory"
|
||||||
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7.0.0",
|
"php": ">=7.1",
|
||||||
"psr/http-message": "^1.0 || ^2.0"
|
"psr/http-message": "^1.0 || ^2.0"
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ interface UploadedFileFactoryInterface
|
|||||||
*
|
*
|
||||||
* @param StreamInterface $stream Underlying stream representing the
|
* @param StreamInterface $stream Underlying stream representing the
|
||||||
* uploaded file content.
|
* uploaded file content.
|
||||||
* @param int $size in bytes
|
* @param int|null $size in bytes
|
||||||
* @param int $error PHP file upload error
|
* @param int $error PHP file upload error
|
||||||
* @param string $clientFilename Filename as provided by the client, if any.
|
* @param string|null $clientFilename Filename as provided by the client, if any.
|
||||||
* @param string $clientMediaType Media type as provided by the client, if any.
|
* @param string|null $clientMediaType Media type as provided by the client, if any.
|
||||||
*
|
*
|
||||||
* @return UploadedFileInterface
|
* @return UploadedFileInterface
|
||||||
*
|
*
|
||||||
@@ -26,9 +26,9 @@ interface UploadedFileFactoryInterface
|
|||||||
*/
|
*/
|
||||||
public function createUploadedFile(
|
public function createUploadedFile(
|
||||||
StreamInterface $stream,
|
StreamInterface $stream,
|
||||||
int $size = null,
|
?int $size = null,
|
||||||
int $error = \UPLOAD_ERR_OK,
|
int $error = \UPLOAD_ERR_OK,
|
||||||
string $clientFilename = null,
|
?string $clientFilename = null,
|
||||||
string $clientMediaType = null
|
?string $clientMediaType = null
|
||||||
): UploadedFileInterface;
|
): UploadedFileInterface;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,16 +42,16 @@ interface CacheInterface
|
|||||||
*
|
*
|
||||||
* @throws InvalidArgumentException When $key is not valid or when $beta is negative
|
* @throws InvalidArgumentException When $key is not valid or when $beta is negative
|
||||||
*/
|
*/
|
||||||
public function get(string $key, callable $callback, float $beta = null, array &$metadata = null);
|
public function get(string $key, callable $callback, ?float $beta = null, ?array &$metadata = null);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes an item from the pool.
|
* Removes an item from the pool.
|
||||||
*
|
*
|
||||||
* @param string $key The key to delete
|
* @param string $key The key to delete
|
||||||
*
|
*
|
||||||
* @throws InvalidArgumentException When $key is not valid
|
|
||||||
*
|
|
||||||
* @return bool True if the item was successfully removed, false if there was any error
|
* @return bool True if the item was successfully removed, false if there was any error
|
||||||
|
*
|
||||||
|
* @throws InvalidArgumentException When $key is not valid
|
||||||
*/
|
*/
|
||||||
public function delete(string $key): bool;
|
public function delete(string $key): bool;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ trait CacheTrait
|
|||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
public function get(string $key, callable $callback, float $beta = null, array &$metadata = null)
|
public function get(string $key, callable $callback, ?float $beta = null, ?array &$metadata = null)
|
||||||
{
|
{
|
||||||
return $this->doGet($this, $key, $callback, $beta, $metadata);
|
return $this->doGet($this, $key, $callback, $beta, $metadata);
|
||||||
}
|
}
|
||||||
@@ -43,7 +43,7 @@ trait CacheTrait
|
|||||||
return $this->deleteItem($key);
|
return $this->deleteItem($key);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function doGet(CacheItemPoolInterface $pool, string $key, callable $callback, ?float $beta, array &$metadata = null, LoggerInterface $logger = null)
|
private function doGet(CacheItemPoolInterface $pool, string $key, callable $callback, ?float $beta, ?array &$metadata = null, ?LoggerInterface $logger = null)
|
||||||
{
|
{
|
||||||
if (0 > $beta = $beta ?? 1.0) {
|
if (0 > $beta = $beta ?? 1.0) {
|
||||||
throw new class(sprintf('Argument "$beta" provided to "%s::get()" must be a positive number, %f given.', static::class, $beta)) extends \InvalidArgumentException implements InvalidArgumentException { };
|
throw new class(sprintf('Argument "$beta" provided to "%s::get()" must be a positive number, %f given.', static::class, $beta)) extends \InvalidArgumentException implements InvalidArgumentException { };
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Copyright (c) 2018-2022 Fabien Potencier
|
Copyright (c) 2018-present Fabien Potencier
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -600,10 +600,10 @@ class PdoAdapter extends AbstractAdapter implements PruneableInterface
|
|||||||
private function isTableMissing(\PDOException $exception): bool
|
private function isTableMissing(\PDOException $exception): bool
|
||||||
{
|
{
|
||||||
$driver = $this->driver;
|
$driver = $this->driver;
|
||||||
$code = $exception->getCode();
|
[$sqlState, $code] = $exception->errorInfo ?? [null, $exception->getCode()];
|
||||||
|
|
||||||
switch (true) {
|
switch (true) {
|
||||||
case 'pgsql' === $driver && '42P01' === $code:
|
case 'pgsql' === $driver && '42P01' === $sqlState:
|
||||||
case 'sqlite' === $driver && str_contains($exception->getMessage(), 'no such table:'):
|
case 'sqlite' === $driver && str_contains($exception->getMessage(), 'no such table:'):
|
||||||
case 'oci' === $driver && 942 === $code:
|
case 'oci' === $driver && 942 === $code:
|
||||||
case 'sqlsrv' === $driver && 208 === $code:
|
case 'sqlsrv' === $driver && 208 === $code:
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ use Predis\Command\Redis\UNLINK;
|
|||||||
use Predis\Connection\Aggregate\ClusterInterface;
|
use Predis\Connection\Aggregate\ClusterInterface;
|
||||||
use Predis\Connection\Aggregate\RedisCluster;
|
use Predis\Connection\Aggregate\RedisCluster;
|
||||||
use Predis\Connection\Aggregate\ReplicationInterface;
|
use Predis\Connection\Aggregate\ReplicationInterface;
|
||||||
|
use Predis\Connection\Cluster\ClusterInterface as Predis2ClusterInterface;
|
||||||
|
use Predis\Connection\Cluster\RedisCluster as Predis2RedisCluster;
|
||||||
use Predis\Response\ErrorInterface;
|
use Predis\Response\ErrorInterface;
|
||||||
use Predis\Response\Status;
|
use Predis\Response\Status;
|
||||||
use Symfony\Component\Cache\Exception\CacheException;
|
use Symfony\Component\Cache\Exception\CacheException;
|
||||||
@@ -283,7 +285,10 @@ trait RedisTrait
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((null !== $auth && !$redis->auth($auth))
|
if ((null !== $auth && !$redis->auth($auth))
|
||||||
|| ($params['dbindex'] && !$redis->select($params['dbindex']))
|
// Due to a bug in phpredis we must always select the dbindex if persistent pooling is enabled
|
||||||
|
// @see https://github.com/phpredis/phpredis/issues/1920
|
||||||
|
// @see https://github.com/symfony/symfony/issues/51578
|
||||||
|
|| (($params['dbindex'] || ('pconnect' === $connect && '0' !== \ini_get('redis.pconnect.pooling_enabled'))) && !$redis->select($params['dbindex']))
|
||||||
) {
|
) {
|
||||||
$e = preg_replace('/^ERR /', '', $redis->getLastError());
|
$e = preg_replace('/^ERR /', '', $redis->getLastError());
|
||||||
throw new InvalidArgumentException('Redis connection failed: '.$e.'.');
|
throw new InvalidArgumentException('Redis connection failed: '.$e.'.');
|
||||||
@@ -403,9 +408,6 @@ trait RedisTrait
|
|||||||
return $redis;
|
return $redis;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function doFetch(array $ids)
|
protected function doFetch(array $ids)
|
||||||
{
|
{
|
||||||
if (!$ids) {
|
if (!$ids) {
|
||||||
@@ -414,7 +416,7 @@ trait RedisTrait
|
|||||||
|
|
||||||
$result = [];
|
$result = [];
|
||||||
|
|
||||||
if ($this->redis instanceof \Predis\ClientInterface && $this->redis->getConnection() instanceof ClusterInterface) {
|
if ($this->redis instanceof \Predis\ClientInterface && ($this->redis->getConnection() instanceof ClusterInterface || $this->redis->getConnection() instanceof Predis2ClusterInterface)) {
|
||||||
$values = $this->pipeline(function () use ($ids) {
|
$values = $this->pipeline(function () use ($ids) {
|
||||||
foreach ($ids as $id) {
|
foreach ($ids as $id) {
|
||||||
yield 'get' => [$id];
|
yield 'get' => [$id];
|
||||||
@@ -439,17 +441,11 @@ trait RedisTrait
|
|||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function doHave(string $id)
|
protected function doHave(string $id)
|
||||||
{
|
{
|
||||||
return (bool) $this->redis->exists($id);
|
return (bool) $this->redis->exists($id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function doClear(string $namespace)
|
protected function doClear(string $namespace)
|
||||||
{
|
{
|
||||||
if ($this->redis instanceof \Predis\ClientInterface) {
|
if ($this->redis instanceof \Predis\ClientInterface) {
|
||||||
@@ -505,22 +501,19 @@ trait RedisTrait
|
|||||||
}
|
}
|
||||||
$this->doDelete($keys);
|
$this->doDelete($keys);
|
||||||
}
|
}
|
||||||
} while ($cursor = (int) $cursor);
|
} while ($cursor);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $cleared;
|
return $cleared;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function doDelete(array $ids)
|
protected function doDelete(array $ids)
|
||||||
{
|
{
|
||||||
if (!$ids) {
|
if (!$ids) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->redis instanceof \Predis\ClientInterface && $this->redis->getConnection() instanceof ClusterInterface) {
|
if ($this->redis instanceof \Predis\ClientInterface && ($this->redis->getConnection() instanceof ClusterInterface || $this->redis->getConnection() instanceof Predis2ClusterInterface)) {
|
||||||
static $del;
|
static $del;
|
||||||
$del = $del ?? (class_exists(UNLINK::class) ? 'unlink' : 'del');
|
$del = $del ?? (class_exists(UNLINK::class) ? 'unlink' : 'del');
|
||||||
|
|
||||||
@@ -548,9 +541,6 @@ trait RedisTrait
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function doSave(array $values, int $lifetime)
|
protected function doSave(array $values, int $lifetime)
|
||||||
{
|
{
|
||||||
if (!$values = $this->marshaller->marshall($values, $failed)) {
|
if (!$values = $this->marshaller->marshall($values, $failed)) {
|
||||||
@@ -581,7 +571,7 @@ trait RedisTrait
|
|||||||
$ids = [];
|
$ids = [];
|
||||||
$redis = $redis ?? $this->redis;
|
$redis = $redis ?? $this->redis;
|
||||||
|
|
||||||
if ($redis instanceof RedisClusterProxy || $redis instanceof \RedisCluster || ($redis instanceof \Predis\ClientInterface && $redis->getConnection() instanceof RedisCluster)) {
|
if ($redis instanceof RedisClusterProxy || $redis instanceof \RedisCluster || ($redis instanceof \Predis\ClientInterface && ($redis->getConnection() instanceof RedisCluster || $redis->getConnection() instanceof Predis2RedisCluster))) {
|
||||||
// phpredis & predis don't support pipelining with RedisCluster
|
// phpredis & predis don't support pipelining with RedisCluster
|
||||||
// see https://github.com/phpredis/phpredis/blob/develop/cluster.markdown#pipelining
|
// see https://github.com/phpredis/phpredis/blob/develop/cluster.markdown#pipelining
|
||||||
// see https://github.com/nrk/predis/issues/267#issuecomment-123781423
|
// see https://github.com/nrk/predis/issues/267#issuecomment-123781423
|
||||||
@@ -643,7 +633,7 @@ trait RedisTrait
|
|||||||
$hosts = [$this->redis];
|
$hosts = [$this->redis];
|
||||||
if ($this->redis instanceof \Predis\ClientInterface) {
|
if ($this->redis instanceof \Predis\ClientInterface) {
|
||||||
$connection = $this->redis->getConnection();
|
$connection = $this->redis->getConnection();
|
||||||
if ($connection instanceof ClusterInterface && $connection instanceof \Traversable) {
|
if (($connection instanceof ClusterInterface || $connection instanceof Predis2ClusterInterface) && $connection instanceof \Traversable) {
|
||||||
$hosts = [];
|
$hosts = [];
|
||||||
foreach ($connection as $c) {
|
foreach ($connection as $c) {
|
||||||
$hosts[] = new \Predis\Client($c);
|
$hosts[] = new \Predis\Client($c);
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
"cache/integration-tests": "dev-master",
|
"cache/integration-tests": "dev-master",
|
||||||
"doctrine/cache": "^1.6|^2.0",
|
"doctrine/cache": "^1.6|^2.0",
|
||||||
"doctrine/dbal": "^2.13.1|^3|^4",
|
"doctrine/dbal": "^2.13.1|^3|^4",
|
||||||
"predis/predis": "^1.1",
|
"predis/predis": "^1.1|^2.0",
|
||||||
"psr/simple-cache": "^1.0|^2.0",
|
"psr/simple-cache": "^1.0|^2.0",
|
||||||
"symfony/config": "^4.4|^5.0|^6.0",
|
"symfony/config": "^4.4|^5.0|^6.0",
|
||||||
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Copyright (c) 2020-2022 Fabien Potencier
|
Copyright (c) 2020-present Fabien Potencier
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -27,5 +27,5 @@ interface EventDispatcherInterface extends PsrEventDispatcherInterface
|
|||||||
*
|
*
|
||||||
* @return object The passed $event MUST be returned
|
* @return object The passed $event MUST be returned
|
||||||
*/
|
*/
|
||||||
public function dispatch(object $event, string $eventName = null): object;
|
public function dispatch(object $event, ?string $eventName = null): object;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Copyright (c) 2018-2022 Fabien Potencier
|
Copyright (c) 2018-present Fabien Potencier
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ final class WrappedListener
|
|||||||
$this->pretty = $this->name.'::'.$listener[1];
|
$this->pretty = $this->name.'::'.$listener[1];
|
||||||
} elseif ($listener instanceof \Closure) {
|
} elseif ($listener instanceof \Closure) {
|
||||||
$r = new \ReflectionFunction($listener);
|
$r = new \ReflectionFunction($listener);
|
||||||
if (str_contains($r->name, '{closure}')) {
|
if (str_contains($r->name, '{closure')) {
|
||||||
$this->pretty = $this->name = 'closure';
|
$this->pretty = $this->name = 'closure';
|
||||||
} elseif ($class = \PHP_VERSION_ID >= 80111 ? $r->getClosureCalledClass() : $r->getClosureScopeClass()) {
|
} elseif ($class = \PHP_VERSION_ID >= 80111 ? $r->getClosureCalledClass() : $r->getClosureScopeClass()) {
|
||||||
$this->name = $class->name;
|
$this->name = $class->name;
|
||||||
|
|||||||
@@ -286,7 +286,11 @@ class HeaderUtils
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach ($partMatches as $matches) {
|
foreach ($partMatches as $matches) {
|
||||||
$parts[] = '' === $separators ? self::unquote($matches[0][0]) : self::groupParts($matches, $separators, false);
|
if ('' === $separators && '' !== $unquoted = self::unquote($matches[0][0])) {
|
||||||
|
$parts[] = $unquoted;
|
||||||
|
} elseif ($groupedParts = self::groupParts($matches, $separators, false)) {
|
||||||
|
$parts[] = $groupedParts;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $parts;
|
return $parts;
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ class ParameterBag implements \IteratorAggregate, \Countable
|
|||||||
*
|
*
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function all(/* string $key = null */)
|
public function all(/* ?string $key = null */)
|
||||||
{
|
{
|
||||||
$key = \func_num_args() > 0 ? func_get_arg(0) : null;
|
$key = \func_num_args() > 0 ? func_get_arg(0) : null;
|
||||||
|
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ class RedirectResponse extends Response
|
|||||||
</html>', htmlspecialchars($url, \ENT_QUOTES, 'UTF-8')));
|
</html>', htmlspecialchars($url, \ENT_QUOTES, 'UTF-8')));
|
||||||
|
|
||||||
$this->headers->set('Location', $url);
|
$this->headers->set('Location', $url);
|
||||||
|
$this->headers->set('Content-Type', 'text/html; charset=utf-8');
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
"symfony/polyfill-php80": "^1.16"
|
"symfony/polyfill-php80": "^1.16"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"predis/predis": "~1.0",
|
"predis/predis": "^1.0|^2.0",
|
||||||
"symfony/cache": "^4.4|^5.0|^6.0",
|
"symfony/cache": "^4.4|^5.0|^6.0",
|
||||||
"symfony/dependency-injection": "^5.4|^6.0",
|
"symfony/dependency-injection": "^5.4|^6.0",
|
||||||
"symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4",
|
"symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4",
|
||||||
|
|||||||
@@ -48,6 +48,8 @@ namespace Symfony\Polyfill\Mbstring;
|
|||||||
* - mb_strstr - Finds first occurrence of a string within another
|
* - mb_strstr - Finds first occurrence of a string within another
|
||||||
* - mb_strwidth - Return width of string
|
* - mb_strwidth - Return width of string
|
||||||
* - mb_substr_count - Count the number of substring occurrences
|
* - mb_substr_count - Count the number of substring occurrences
|
||||||
|
* - mb_ucfirst - Make a string's first character uppercase
|
||||||
|
* - mb_lcfirst - Make a string's first character lowercase
|
||||||
*
|
*
|
||||||
* Not implemented:
|
* Not implemented:
|
||||||
* - mb_convert_kana - Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
|
* - mb_convert_kana - Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
|
||||||
@@ -80,6 +82,21 @@ final class Mbstring
|
|||||||
|
|
||||||
public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null)
|
public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null)
|
||||||
{
|
{
|
||||||
|
if (\is_array($s)) {
|
||||||
|
if (PHP_VERSION_ID < 70200) {
|
||||||
|
trigger_error('mb_convert_encoding() expects parameter 1 to be string, array given', \E_USER_WARNING);
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
$r = [];
|
||||||
|
foreach ($s as $str) {
|
||||||
|
$r[] = self::mb_convert_encoding($str, $toEncoding, $fromEncoding);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $r;
|
||||||
|
}
|
||||||
|
|
||||||
if (\is_array($fromEncoding) || (null !== $fromEncoding && false !== strpos($fromEncoding, ','))) {
|
if (\is_array($fromEncoding) || (null !== $fromEncoding && false !== strpos($fromEncoding, ','))) {
|
||||||
$fromEncoding = self::mb_detect_encoding($s, $fromEncoding);
|
$fromEncoding = self::mb_detect_encoding($s, $fromEncoding);
|
||||||
} else {
|
} else {
|
||||||
@@ -410,7 +427,7 @@ final class Mbstring
|
|||||||
|
|
||||||
public static function mb_check_encoding($var = null, $encoding = null)
|
public static function mb_check_encoding($var = null, $encoding = null)
|
||||||
{
|
{
|
||||||
if (PHP_VERSION_ID < 70200 && \is_array($var)) {
|
if (\PHP_VERSION_ID < 70200 && \is_array($var)) {
|
||||||
trigger_error('mb_check_encoding() expects parameter 1 to be string, array given', \E_USER_WARNING);
|
trigger_error('mb_check_encoding() expects parameter 1 to be string, array given', \E_USER_WARNING);
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
@@ -437,7 +454,6 @@ final class Mbstring
|
|||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
|
public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
|
||||||
@@ -827,7 +843,7 @@ final class Mbstring
|
|||||||
return $code;
|
return $code;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, string $encoding = null): string
|
public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, ?string $encoding = null): string
|
||||||
{
|
{
|
||||||
if (!\in_array($pad_type, [\STR_PAD_RIGHT, \STR_PAD_LEFT, \STR_PAD_BOTH], true)) {
|
if (!\in_array($pad_type, [\STR_PAD_RIGHT, \STR_PAD_LEFT, \STR_PAD_BOTH], true)) {
|
||||||
throw new \ValueError('mb_str_pad(): Argument #4 ($pad_type) must be STR_PAD_LEFT, STR_PAD_RIGHT, or STR_PAD_BOTH');
|
throw new \ValueError('mb_str_pad(): Argument #4 ($pad_type) must be STR_PAD_LEFT, STR_PAD_RIGHT, or STR_PAD_BOTH');
|
||||||
@@ -835,17 +851,8 @@ final class Mbstring
|
|||||||
|
|
||||||
if (null === $encoding) {
|
if (null === $encoding) {
|
||||||
$encoding = self::mb_internal_encoding();
|
$encoding = self::mb_internal_encoding();
|
||||||
}
|
} else {
|
||||||
|
self::assertEncoding($encoding, 'mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given');
|
||||||
try {
|
|
||||||
$validEncoding = @self::mb_check_encoding('', $encoding);
|
|
||||||
} catch (\ValueError $e) {
|
|
||||||
throw new \ValueError(sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding));
|
|
||||||
}
|
|
||||||
|
|
||||||
// BC for PHP 7.3 and lower
|
|
||||||
if (!$validEncoding) {
|
|
||||||
throw new \ValueError(sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (self::mb_strlen($pad_string, $encoding) <= 0) {
|
if (self::mb_strlen($pad_string, $encoding) <= 0) {
|
||||||
@@ -871,6 +878,34 @@ final class Mbstring
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function mb_ucfirst(string $string, ?string $encoding = null): string
|
||||||
|
{
|
||||||
|
if (null === $encoding) {
|
||||||
|
$encoding = self::mb_internal_encoding();
|
||||||
|
} else {
|
||||||
|
self::assertEncoding($encoding, 'mb_ucfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given');
|
||||||
|
}
|
||||||
|
|
||||||
|
$firstChar = mb_substr($string, 0, 1, $encoding);
|
||||||
|
$firstChar = mb_convert_case($firstChar, \MB_CASE_TITLE, $encoding);
|
||||||
|
|
||||||
|
return $firstChar.mb_substr($string, 1, null, $encoding);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function mb_lcfirst(string $string, ?string $encoding = null): string
|
||||||
|
{
|
||||||
|
if (null === $encoding) {
|
||||||
|
$encoding = self::mb_internal_encoding();
|
||||||
|
} else {
|
||||||
|
self::assertEncoding($encoding, 'mb_lcfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given');
|
||||||
|
}
|
||||||
|
|
||||||
|
$firstChar = mb_substr($string, 0, 1, $encoding);
|
||||||
|
$firstChar = mb_convert_case($firstChar, \MB_CASE_LOWER, $encoding);
|
||||||
|
|
||||||
|
return $firstChar.mb_substr($string, 1, null, $encoding);
|
||||||
|
}
|
||||||
|
|
||||||
private static function getSubpart($pos, $part, $haystack, $encoding)
|
private static function getSubpart($pos, $part, $haystack, $encoding)
|
||||||
{
|
{
|
||||||
if (false === $pos) {
|
if (false === $pos) {
|
||||||
@@ -944,4 +979,18 @@ final class Mbstring
|
|||||||
|
|
||||||
return $encoding;
|
return $encoding;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static function assertEncoding(string $encoding, string $errorFormat): void
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$validEncoding = @self::mb_check_encoding('', $encoding);
|
||||||
|
} catch (\ValueError $e) {
|
||||||
|
throw new \ValueError(\sprintf($errorFormat, $encoding));
|
||||||
|
}
|
||||||
|
|
||||||
|
// BC for PHP 7.3 and lower
|
||||||
|
if (!$validEncoding) {
|
||||||
|
throw new \ValueError(\sprintf($errorFormat, $encoding));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -136,6 +136,14 @@ if (!function_exists('mb_str_pad')) {
|
|||||||
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
|
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!function_exists('mb_ucfirst')) {
|
||||||
|
function mb_ucfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); }
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!function_exists('mb_lcfirst')) {
|
||||||
|
function mb_lcfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); }
|
||||||
|
}
|
||||||
|
|
||||||
if (extension_loaded('mbstring')) {
|
if (extension_loaded('mbstring')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -132,6 +132,14 @@ if (!function_exists('mb_str_pad')) {
|
|||||||
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
|
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!function_exists('mb_ucfirst')) {
|
||||||
|
function mb_ucfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); }
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!function_exists('mb_lcfirst')) {
|
||||||
|
function mb_lcfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); }
|
||||||
|
}
|
||||||
|
|
||||||
if (extension_loaded('mbstring')) {
|
if (extension_loaded('mbstring')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
1
digital_doctor_admin/vendor/wanghua/general-utility-tools-php
vendored
Submodule
1
digital_doctor_admin/vendor/wanghua/general-utility-tools-php
vendored
Submodule
Submodule digital_doctor_admin/vendor/wanghua/general-utility-tools-php added at f31ce1f391
Reference in New Issue
Block a user