PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.3
Independent Analytics – WordPress Analytics Plugin v2.15.3
2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / vendor / illuminate / support / Composer.php
independent-analytics / vendor / illuminate / support Last commit date
Exceptions 3 weeks ago Facades 3 weeks ago Testing 3 weeks ago Traits 3 weeks ago AggregateServiceProvider.php 2 years ago Benchmark.php 3 weeks ago Carbon.php 3 weeks ago Composer.php 3 weeks ago ConfigurationUrlParser.php 3 weeks ago DateFactory.php 3 weeks ago Env.php 3 weeks ago Fluent.php 3 weeks ago HigherOrderTapProxy.php 2 years ago HtmlString.php 2 years ago InteractsWithTime.php 2 years ago Js.php 3 weeks ago Lottery.php 3 weeks ago Manager.php 2 years ago MessageBag.php 3 weeks ago MultipleInstanceManager.php 3 weeks ago NamespacedItemResolver.php 3 weeks ago Optional.php 3 weeks ago Pluralizer.php 3 weeks ago ProcessUtils.php 3 weeks ago Reflector.php 3 weeks ago ServiceProvider.php 2 years ago Str.php 3 weeks ago Stringable.php 3 weeks ago Timebox.php 3 weeks ago ValidatedInput.php 3 weeks ago ViewErrorBag.php 3 weeks ago helpers.php 3 weeks ago
Composer.php
115 lines
1 <?php
2
3 namespace IAWPSCOPED\Illuminate\Support;
4
5 use IAWPSCOPED\Illuminate\Filesystem\Filesystem;
6 use IAWPSCOPED\Symfony\Component\Process\PhpExecutableFinder;
7 use IAWPSCOPED\Symfony\Component\Process\Process;
8 /** @internal */
9 class Composer
10 {
11 /**
12 * The filesystem instance.
13 *
14 * @var \Illuminate\Filesystem\Filesystem
15 */
16 protected $files;
17 /**
18 * The working path to regenerate from.
19 *
20 * @var string|null
21 */
22 protected $workingPath;
23 /**
24 * Create a new Composer manager instance.
25 *
26 * @param \Illuminate\Filesystem\Filesystem $files
27 * @param string|null $workingPath
28 * @return void
29 */
30 public function __construct(Filesystem $files, $workingPath = null)
31 {
32 $this->files = $files;
33 $this->workingPath = $workingPath;
34 }
35 /**
36 * Regenerate the Composer autoloader files.
37 *
38 * @param string|array $extra
39 * @return int
40 */
41 public function dumpAutoloads($extra = '')
42 {
43 $extra = $extra ? (array) $extra : [];
44 $command = \array_merge($this->findComposer(), ['dump-autoload'], $extra);
45 return $this->getProcess($command)->run();
46 }
47 /**
48 * Regenerate the optimized Composer autoloader files.
49 *
50 * @return int
51 */
52 public function dumpOptimized()
53 {
54 return $this->dumpAutoloads('--optimize');
55 }
56 /**
57 * Get the composer command for the environment.
58 *
59 * @return array
60 */
61 public function findComposer()
62 {
63 if ($this->files->exists($this->workingPath . '/composer.phar')) {
64 return [$this->phpBinary(), 'composer.phar'];
65 }
66 return ['composer'];
67 }
68 /**
69 * Get the PHP binary.
70 *
71 * @return string
72 */
73 protected function phpBinary()
74 {
75 return ProcessUtils::escapeArgument((new PhpExecutableFinder())->find(\false));
76 }
77 /**
78 * Get a new Symfony process instance.
79 *
80 * @param array $command
81 * @return \Symfony\Component\Process\Process
82 */
83 protected function getProcess(array $command)
84 {
85 return (new Process($command, $this->workingPath))->setTimeout(null);
86 }
87 /**
88 * Set the working path used by the class.
89 *
90 * @param string $path
91 * @return $this
92 */
93 public function setWorkingPath($path)
94 {
95 $this->workingPath = \realpath($path);
96 return $this;
97 }
98 /**
99 * Get the version of Composer.
100 *
101 * @return string|null
102 */
103 public function getVersion()
104 {
105 $command = \array_merge($this->findComposer(), ['-V', '--no-ansi']);
106 $process = $this->getProcess($command);
107 $process->run();
108 $output = $process->getOutput();
109 if (\preg_match('/(\\d+(\\.\\d+){2})/', $output, $version)) {
110 return $version[1];
111 }
112 return \explode(' ', $output)[2] ?? null;
113 }
114 }
115