|
11 | 11 |
|
12 | 12 | class Packages implements \IteratorAggregate |
13 | 13 | { |
| 14 | + private static $composerLock; |
14 | 15 | private $composerPath; |
15 | 16 | private $classmapName = 'autoload_classmap.php'; |
16 | 17 | private $psrZeroName = 'autoload_namespaces.php'; |
17 | 18 | private $psrFourName = 'autoload_psr4.php'; |
18 | | - private $logs = array(); |
| 19 | + private $log = array(); |
19 | 20 | private $libs; |
20 | 21 |
|
21 | 22 | /** |
@@ -63,7 +64,6 @@ public function auto() |
63 | 64 | public function inAutoload() |
64 | 65 | { |
65 | 66 | $path = INPHINIT_PATH . 'boot/namespaces.php'; |
66 | | - $i = 0; |
67 | 67 |
|
68 | 68 | if (is_file($path)) { |
69 | 69 | $data = include $path; |
@@ -171,7 +171,7 @@ public function save($path) |
171 | 171 | foreach ($this->libs as $key => $value) { |
172 | 172 | $value = self::relativePath($value); |
173 | 173 |
|
174 | | - fwrite($handle, ($first ? '' : ',') . $eol . " '" . $key . "' => '" . $value . "'"); |
| 174 | + fwrite($handle, ($first ? '' : ',') . "$eol '$key' => '$value'"); |
175 | 175 |
|
176 | 176 | $first = false; |
177 | 177 | } |
@@ -224,11 +224,18 @@ private static function relativePath($path) |
224 | 224 | */ |
225 | 225 | public static function version($name) |
226 | 226 | { |
227 | | - $file = INPHINIT_ROOT . 'composer.lock'; |
228 | | - $data = is_file($file) ? json_decode(file_get_contents($file)) : false; |
| 227 | + if (self::$composerLock === null) { |
| 228 | + $file = INPHINIT_ROOT . 'composer.lock'; |
| 229 | + |
| 230 | + if (is_file($file)) { |
| 231 | + self::$composerLock = json_decode(file_get_contents($file)); |
| 232 | + } |
| 233 | + } |
| 234 | + |
| 235 | + $data = self::$composerLock; |
229 | 236 |
|
230 | 237 | if (empty($data->packages)) { |
231 | | - return null; |
| 238 | + return $name === 'inphinit/framework' ? App::VERSION : null; |
232 | 239 | } |
233 | 240 |
|
234 | 241 | $version = null; |
|
0 commit comments