PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.10.0
GiveWP – Donation Plugin and Fundraising Platform v2.10.0
4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / vendor / composer / InstalledVersions.php
give / vendor / composer Last commit date
ClassLoader.php 5 years ago InstalledVersions.php 5 years ago LICENSE 7 years ago autoload_classmap.php 5 years ago autoload_namespaces.php 7 years ago autoload_psr4.php 5 years ago autoload_real.php 5 years ago autoload_static.php 5 years ago installed.json 5 years ago installed.php 5 years ago platform_check.php 5 years ago
InstalledVersions.php
384 lines
1 <?php
2
3
4
5
6
7
8
9
10
11
12
13 namespace Composer;
14
15 use Composer\Autoload\ClassLoader;
16 use Composer\Semver\VersionParser;
17
18
19
20
21
22
23 class InstalledVersions
24 {
25 private static $installed = array (
26 'root' =>
27 array (
28 'pretty_version' => '2.10.0',
29 'version' => '2.10.0.0',
30 'aliases' =>
31 array (
32 ),
33 'reference' => 'bc15792dd7f4a27e2cf3e530d3b3ab696947481b',
34 'name' => 'impress-org/give',
35 ),
36 'versions' =>
37 array (
38 'composer/installers' =>
39 array (
40 'pretty_version' => 'v1.10.0',
41 'version' => '1.10.0.0',
42 'aliases' =>
43 array (
44 ),
45 'reference' => '1a0357fccad9d1cc1ea0c9a05b8847fbccccb78d',
46 ),
47 'ergebnis/faker' =>
48 array (
49 'replaced' =>
50 array (
51 0 => '1.9.2',
52 ),
53 ),
54 'fakerphp/faker' =>
55 array (
56 'pretty_version' => 'v1.9.2',
57 'version' => '1.9.2.0',
58 'aliases' =>
59 array (
60 ),
61 'reference' => '84220cf137a9344acffb10374e781fed785ff307',
62 ),
63 'fzaninotto/faker' =>
64 array (
65 'replaced' =>
66 array (
67 0 => '1.9.2',
68 ),
69 ),
70 'impress-org/give' =>
71 array (
72 'pretty_version' => '2.10.0',
73 'version' => '2.10.0.0',
74 'aliases' =>
75 array (
76 ),
77 'reference' => 'bc15792dd7f4a27e2cf3e530d3b3ab696947481b',
78 ),
79 'kjohnson/format-object-list' =>
80 array (
81 'pretty_version' => 'dev-master',
82 'version' => 'dev-master',
83 'aliases' =>
84 array (
85 ),
86 'reference' => 'aaf83123acbe4551379498345fea538f536f16f0',
87 ),
88 'myclabs/php-enum' =>
89 array (
90 'pretty_version' => '1.6.6',
91 'version' => '1.6.6.0',
92 'aliases' =>
93 array (
94 ),
95 'reference' => '32c4202886c51fbe5cc3a7c34ec5c9a4a790345e',
96 ),
97 'paypal/paypal-checkout-sdk' =>
98 array (
99 'pretty_version' => '1.0.1',
100 'version' => '1.0.1.0',
101 'aliases' =>
102 array (
103 ),
104 'reference' => 'ed6a55075448308b87a8b59dcb7fedf04a048cb1',
105 ),
106 'paypal/paypalhttp' =>
107 array (
108 'pretty_version' => '1.0.0',
109 'version' => '1.0.0.0',
110 'aliases' =>
111 array (
112 ),
113 'reference' => '1ad9b846a046f09d6135cbf2cbaa7701bbc630a3',
114 ),
115 'roundcube/plugin-installer' =>
116 array (
117 'replaced' =>
118 array (
119 0 => '*',
120 ),
121 ),
122 'shama/baton' =>
123 array (
124 'replaced' =>
125 array (
126 0 => '*',
127 ),
128 ),
129 'stripe/stripe-php' =>
130 array (
131 'pretty_version' => 'v6.43.1',
132 'version' => '6.43.1.0',
133 'aliases' =>
134 array (
135 ),
136 'reference' => '42fcdaf99c44bb26937223f8eae1f263491d5ab8',
137 ),
138 'tecnickcom/tcpdf' =>
139 array (
140 'pretty_version' => '6.3.5',
141 'version' => '6.3.5.0',
142 'aliases' =>
143 array (
144 ),
145 'reference' => '19a535eaa7fb1c1cac499109deeb1a7a201b4549',
146 ),
147 ),
148 );
149 private static $canGetVendors;
150 private static $installedByVendor = array();
151
152
153
154
155
156
157
158 public static function getInstalledPackages()
159 {
160 $packages = array();
161 foreach (self::getInstalled() as $installed) {
162 $packages[] = array_keys($installed['versions']);
163 }
164
165
166 if (1 === \count($packages)) {
167 return $packages[0];
168 }
169
170 return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
171 }
172
173
174
175
176
177
178
179
180
181 public static function isInstalled($packageName)
182 {
183 foreach (self::getInstalled() as $installed) {
184 if (isset($installed['versions'][$packageName])) {
185 return true;
186 }
187 }
188
189 return false;
190 }
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205 public static function satisfies(VersionParser $parser, $packageName, $constraint)
206 {
207 $constraint = $parser->parseConstraints($constraint);
208 $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
209
210 return $provided->matches($constraint);
211 }
212
213
214
215
216
217
218
219
220
221
222 public static function getVersionRanges($packageName)
223 {
224 foreach (self::getInstalled() as $installed) {
225 if (!isset($installed['versions'][$packageName])) {
226 continue;
227 }
228
229 $ranges = array();
230 if (isset($installed['versions'][$packageName]['pretty_version'])) {
231 $ranges[] = $installed['versions'][$packageName]['pretty_version'];
232 }
233 if (array_key_exists('aliases', $installed['versions'][$packageName])) {
234 $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
235 }
236 if (array_key_exists('replaced', $installed['versions'][$packageName])) {
237 $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
238 }
239 if (array_key_exists('provided', $installed['versions'][$packageName])) {
240 $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
241 }
242
243 return implode(' || ', $ranges);
244 }
245
246 throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
247 }
248
249
250
251
252
253 public static function getVersion($packageName)
254 {
255 foreach (self::getInstalled() as $installed) {
256 if (!isset($installed['versions'][$packageName])) {
257 continue;
258 }
259
260 if (!isset($installed['versions'][$packageName]['version'])) {
261 return null;
262 }
263
264 return $installed['versions'][$packageName]['version'];
265 }
266
267 throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
268 }
269
270
271
272
273
274 public static function getPrettyVersion($packageName)
275 {
276 foreach (self::getInstalled() as $installed) {
277 if (!isset($installed['versions'][$packageName])) {
278 continue;
279 }
280
281 if (!isset($installed['versions'][$packageName]['pretty_version'])) {
282 return null;
283 }
284
285 return $installed['versions'][$packageName]['pretty_version'];
286 }
287
288 throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
289 }
290
291
292
293
294
295 public static function getReference($packageName)
296 {
297 foreach (self::getInstalled() as $installed) {
298 if (!isset($installed['versions'][$packageName])) {
299 continue;
300 }
301
302 if (!isset($installed['versions'][$packageName]['reference'])) {
303 return null;
304 }
305
306 return $installed['versions'][$packageName]['reference'];
307 }
308
309 throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
310 }
311
312
313
314
315
316 public static function getRootPackage()
317 {
318 $installed = self::getInstalled();
319
320 return $installed[0]['root'];
321 }
322
323
324
325
326
327
328
329 public static function getRawData()
330 {
331 return self::$installed;
332 }
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352 public static function reload($data)
353 {
354 self::$installed = $data;
355 self::$installedByVendor = array();
356 }
357
358
359
360
361 private static function getInstalled()
362 {
363 if (null === self::$canGetVendors) {
364 self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
365 }
366
367 $installed = array();
368
369 if (self::$canGetVendors) {
370 foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
371 if (isset(self::$installedByVendor[$vendorDir])) {
372 $installed[] = self::$installedByVendor[$vendorDir];
373 } elseif (is_file($vendorDir.'/composer/installed.php')) {
374 $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
375 }
376 }
377 }
378
379 $installed[] = self::$installed;
380
381 return $installed;
382 }
383 }
384