@@ -27,86 +27,86 @@ |
||
27 | 27 | class ComposerService |
28 | 28 | { |
29 | 29 | |
30 | - /** |
|
31 | - * Checks whether a Composer package is a MyArtJaub one. |
|
32 | - * |
|
33 | - * @param PackageInterface $package |
|
34 | - * @return bool |
|
35 | - */ |
|
36 | - public function isMyArtJaubPackage(PackageInterface $package): bool |
|
37 | - { |
|
38 | - list($vendor) = explode('/', $package->getName(), 2); |
|
39 | - return $vendor == self::MYARTJAUB_VENDOR; |
|
40 | - } |
|
30 | + /** |
|
31 | + * Checks whether a Composer package is a MyArtJaub one. |
|
32 | + * |
|
33 | + * @param PackageInterface $package |
|
34 | + * @return bool |
|
35 | + */ |
|
36 | + public function isMyArtJaubPackage(PackageInterface $package): bool |
|
37 | + { |
|
38 | + list($vendor) = explode('/', $package->getName(), 2); |
|
39 | + return $vendor == self::MYARTJAUB_VENDOR; |
|
40 | + } |
|
41 | 41 | |
42 | - /** |
|
43 | - * Name of the MyArtJaub modules' vendor |
|
44 | - * @var string MYARTJAUB_VENDOR |
|
45 | - * */ |
|
46 | - private const MYARTJAUB_VENDOR = 'jon48'; |
|
42 | + /** |
|
43 | + * Name of the MyArtJaub modules' vendor |
|
44 | + * @var string MYARTJAUB_VENDOR |
|
45 | + * */ |
|
46 | + private const MYARTJAUB_VENDOR = 'jon48'; |
|
47 | 47 | |
48 | - /** |
|
49 | - * List all the PSR-4 paths used in MyArtJaub packages autoloading. |
|
50 | - * The returned array is composed of items with the structure: |
|
51 | - * - array [ |
|
52 | - * 0 => Package Name |
|
53 | - * 1 => Array of normalised paths |
|
54 | - * ] |
|
55 | - * |
|
56 | - * @return array |
|
57 | - */ |
|
58 | - public function listMyArtJaubPackagesPaths(): array |
|
59 | - { |
|
60 | - if (getenv('HOME') === false) { |
|
61 | - putenv('HOME=' . Webtrees::DATA_DIR); |
|
62 | - } |
|
48 | + /** |
|
49 | + * List all the PSR-4 paths used in MyArtJaub packages autoloading. |
|
50 | + * The returned array is composed of items with the structure: |
|
51 | + * - array [ |
|
52 | + * 0 => Package Name |
|
53 | + * 1 => Array of normalised paths |
|
54 | + * ] |
|
55 | + * |
|
56 | + * @return array |
|
57 | + */ |
|
58 | + public function listMyArtJaubPackagesPaths(): array |
|
59 | + { |
|
60 | + if (getenv('HOME') === false) { |
|
61 | + putenv('HOME=' . Webtrees::DATA_DIR); |
|
62 | + } |
|
63 | 63 | |
64 | - $composer = Factory::create(new NullIO(), Webtrees::ROOT_DIR . 'composer.json'); |
|
64 | + $composer = Factory::create(new NullIO(), Webtrees::ROOT_DIR . 'composer.json'); |
|
65 | 65 | |
66 | - $packages = $composer->getRepositoryManager() |
|
67 | - ->getLocalRepository() |
|
68 | - ->getPackages(); |
|
66 | + $packages = $composer->getRepositoryManager() |
|
67 | + ->getLocalRepository() |
|
68 | + ->getPackages(); |
|
69 | 69 | |
70 | - /** @var array<PackageInterface> $maj_packages */ |
|
71 | - $maj_packages = array(); |
|
72 | - foreach ($packages as $package) { |
|
73 | - if ($this->isMyArtJaubPackage($package)) { |
|
74 | - $maj_packages[] = $this->extractPsr4Paths($composer, $package); |
|
75 | - } |
|
76 | - } |
|
70 | + /** @var array<PackageInterface> $maj_packages */ |
|
71 | + $maj_packages = array(); |
|
72 | + foreach ($packages as $package) { |
|
73 | + if ($this->isMyArtJaubPackage($package)) { |
|
74 | + $maj_packages[] = $this->extractPsr4Paths($composer, $package); |
|
75 | + } |
|
76 | + } |
|
77 | 77 | |
78 | - return $maj_packages; |
|
79 | - } |
|
78 | + return $maj_packages; |
|
79 | + } |
|
80 | 80 | |
81 | - /** |
|
82 | - * Extract and normalise the PSR-4 paths used in a package autoloading. |
|
83 | - * The returned array is a 2-tuple with the structure: |
|
84 | - * - array [ |
|
85 | - * 0 => Package Name |
|
86 | - * 1 => Array of normalised paths |
|
87 | - * ] |
|
88 | - * |
|
89 | - * @param Composer $composer |
|
90 | - * @param PackageInterface $package |
|
91 | - * @return array |
|
92 | - */ |
|
93 | - private function extractPsr4Paths(Composer $composer, PackageInterface $package): array |
|
94 | - { |
|
95 | - $autoload_generator = $composer->getAutoloadGenerator(); |
|
81 | + /** |
|
82 | + * Extract and normalise the PSR-4 paths used in a package autoloading. |
|
83 | + * The returned array is a 2-tuple with the structure: |
|
84 | + * - array [ |
|
85 | + * 0 => Package Name |
|
86 | + * 1 => Array of normalised paths |
|
87 | + * ] |
|
88 | + * |
|
89 | + * @param Composer $composer |
|
90 | + * @param PackageInterface $package |
|
91 | + * @return array |
|
92 | + */ |
|
93 | + private function extractPsr4Paths(Composer $composer, PackageInterface $package): array |
|
94 | + { |
|
95 | + $autoload_generator = $composer->getAutoloadGenerator(); |
|
96 | 96 | |
97 | - $package_map = $autoload_generator->buildPackageMap( |
|
98 | - $composer->getInstallationManager(), |
|
99 | - $composer->getPackage(), |
|
100 | - [$package] |
|
101 | - ); |
|
102 | - array_shift($package_map); |
|
103 | - $autoloads = $autoload_generator->parseAutoloads($package_map, $composer->getPackage()); |
|
104 | - $psr4_paths = []; |
|
105 | - foreach ($autoloads['psr-4'] as $psr4_ns_paths) { |
|
106 | - foreach ($psr4_ns_paths as $psr4_ns_path) { |
|
107 | - $psr4_paths[] = realpath($psr4_ns_path); |
|
108 | - } |
|
109 | - } |
|
110 | - return [$package, $psr4_paths]; |
|
111 | - } |
|
97 | + $package_map = $autoload_generator->buildPackageMap( |
|
98 | + $composer->getInstallationManager(), |
|
99 | + $composer->getPackage(), |
|
100 | + [$package] |
|
101 | + ); |
|
102 | + array_shift($package_map); |
|
103 | + $autoloads = $autoload_generator->parseAutoloads($package_map, $composer->getPackage()); |
|
104 | + $psr4_paths = []; |
|
105 | + foreach ($autoloads['psr-4'] as $psr4_ns_paths) { |
|
106 | + foreach ($psr4_ns_paths as $psr4_ns_path) { |
|
107 | + $psr4_paths[] = realpath($psr4_ns_path); |
|
108 | + } |
|
109 | + } |
|
110 | + return [$package, $psr4_paths]; |
|
111 | + } |
|
112 | 112 | } |
@@ -58,10 +58,10 @@ |
||
58 | 58 | public function listMyArtJaubPackagesPaths(): array |
59 | 59 | { |
60 | 60 | if (getenv('HOME') === false) { |
61 | - putenv('HOME=' . Webtrees::DATA_DIR); |
|
61 | + putenv('HOME='.Webtrees::DATA_DIR); |
|
62 | 62 | } |
63 | 63 | |
64 | - $composer = Factory::create(new NullIO(), Webtrees::ROOT_DIR . 'composer.json'); |
|
64 | + $composer = Factory::create(new NullIO(), Webtrees::ROOT_DIR.'composer.json'); |
|
65 | 65 | |
66 | 66 | $packages = $composer->getRepositoryManager() |
67 | 67 | ->getLocalRepository() |