Skip to content

Commit 65208a0

Browse files
Skip generating empty recipes
1 parent 2dd1cf0 commit 65208a0

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

src/GenerateFlexEndpointCommand.php

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,6 @@ protected function execute(InputInterface $input, OutputInterface $output): int
6666
$version = substr($package, 1 + strrpos($package, '/'));
6767
$package = substr($package, 0, -1 - \strlen($version));
6868

69-
$this->generatePackageJson($package, $version, $manifest, $tree, $outputDir);
70-
7169
foreach ($manifest['aliases'] ?? [] as $alias) {
7270
$aliases[$alias] = $package;
7371
$aliases[str_replace('-', '', $alias)] = $package;
@@ -79,8 +77,10 @@ protected function execute(InputInterface $input, OutputInterface $output): int
7977
$aliases[str_replace('-', '', $alias)] = $package;
8078
}
8179

82-
$recipes[$package][] = $version;
83-
usort($recipes[$package], 'strnatcmp');
80+
if ($this->generatePackageJson($package, $version, $manifest, $tree, $outputDir)) {
81+
$recipes[$package][] = $version;
82+
usort($recipes[$package], 'strnatcmp');
83+
}
8484
}
8585

8686
uksort($aliases, 'strnatcmp');
@@ -102,8 +102,10 @@ protected function execute(InputInterface $input, OutputInterface $output): int
102102
return 0;
103103
}
104104

105-
private function generatePackageJson(string $package, string $version, array $manifest, string $tree, string $outputDir)
105+
private function generatePackageJson(string $package, string $version, array $manifest, string $tree, string $outputDir): bool
106106
{
107+
unset($manifest['aliases']);
108+
107109
$files = [];
108110
$it = new \RecursiveDirectoryIterator($package.'/'.$version);
109111
$it->setFlags($it::SKIP_DOTS | $it::FOLLOW_SYMLINKS);
@@ -128,6 +130,10 @@ private function generatePackageJson(string $package, string $version, array $ma
128130
];
129131
}
130132

133+
if (!$manifest) {
134+
return false;
135+
}
136+
131137
file_put_contents(sprintf('%s/%s.%s.json', $outputDir, str_replace('/', '.', $package), $version), json_encode([
132138
'manifests' => [
133139
$package => [
@@ -137,5 +143,7 @@ private function generatePackageJson(string $package, string $version, array $ma
137143
],
138144
],
139145
], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES)."\n");
146+
147+
return true;
140148
}
141149
}

0 commit comments

Comments
 (0)