private static function getVersions(string $composerLockFile) : \Generator
{
$lockData = json_decode(file_get_contents($composerLockFile), true);
$lockData['packages-dev'] = $lockData['packages-dev'] ?? [];
foreach (array_merge($lockData['packages'], $lockData['packages-dev']) as $package) {
(yield $package['name'] => $package['version'] . '@' . ($package['source']['reference'] ?? $package['dist']['reference'] ?? ''));
}
(yield 'unknown/root-package@UNKNOWN');
}