PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.9.2
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.9.2
4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 All 149 releases
← All changes | vendor/composer/InstalledVersions.php +5 -12 3.10.153.9.2 View file →
@@ -97,9 +97,9 @@
97 97 public static function isInstalled($packageName, $includeDevRequirements = true)
98 98 {
99 99 foreach (self::getInstalled() as $installed) {
100 100 if (isset($installed['versions'][$packageName])) {
101 - return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
101 + return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
102 102 }
103 103 }
104 104
105 105 return false;
@@ -118,9 +118,9 @@
118 118 * @return bool
119 119 */
120 120 public static function satisfies(VersionParser $parser, $packageName, $constraint)
121 121 {
122 - $constraint = $parser->parseConstraints((string) $constraint);
122 + $constraint = $parser->parseConstraints($constraint);
123 123 $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
124 124
125 125 return $provided->matches($constraint);
126 126 }
@@ -327,11 +327,9 @@
327 327 foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
328 328 if (isset(self::$installedByVendor[$vendorDir])) {
329 329 $installed[] = self::$installedByVendor[$vendorDir];
330 330 } elseif (is_file($vendorDir.'/composer/installed.php')) {
331 - /** @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 */
332 - $required = require $vendorDir.'/composer/installed.php';
333 - $installed[] = self::$installedByVendor[$vendorDir] = $required;
331 + $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
334 332 if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
335 333 self::$installed = $installed[count($installed) - 1];
336 334 }
337 335 }
@@ -341,19 +339,14 @@
341 339 if (null === self::$installed) {
342 340 // only require the installed.php file if this file is loaded from its dumped location,
343 341 // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
344 342 if (substr(__DIR__, -8, 1) !== 'C') {
345 - /** @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 */
346 - $required = require __DIR__ . '/installed.php';
347 - self::$installed = $required;
343 + self::$installed = require __DIR__ . '/installed.php';
348 344 } else {
349 345 self::$installed = array();
350 346 }
351 347 }
352 -
353 - if (self::$installed !== array()) {
354 - $installed[] = self::$installed;
355 - }
348 + $installed[] = self::$installed;
356 349
357 350 return $installed;
358 351 }
359 352 }