Check the mailmap file of core as well
This commit is contained in:
parent
049e3473b2
commit
100b357c68
1 changed files with 28 additions and 1 deletions
|
@ -20,7 +20,8 @@
|
|||
*/
|
||||
class Licenses
|
||||
{
|
||||
protected $paths = array();
|
||||
protected $paths = [];
|
||||
protected $mailMap = [];
|
||||
public $authors = [];
|
||||
|
||||
public function __construct() {
|
||||
|
@ -196,12 +197,38 @@ With help from many libraries and frameworks including:
|
|||
'Not Committed Yet <not.committed.yet>',
|
||||
'Jenkins for ownCloud <owncloud-bot@tmit.eu>']);
|
||||
});
|
||||
|
||||
if ($gitRoot) {
|
||||
$authors = array_map([$this, 'checkCoreMailMap'], $authors);
|
||||
$authors = array_unique($authors);
|
||||
}
|
||||
|
||||
$authors = array_map(function($author){
|
||||
$this->authors[$author] = $author;
|
||||
return " * @author $author";
|
||||
}, $authors);
|
||||
return implode(PHP_EOL, $authors);
|
||||
}
|
||||
|
||||
private function checkCoreMailMap($author) {
|
||||
if (empty($this->mailMap)) {
|
||||
$content = file_get_contents(__DIR__ . '/../.mailmap');
|
||||
$entries = explode("\n", $content);
|
||||
foreach ($entries as $entry) {
|
||||
if (strpos($entry, '> ') === false) {
|
||||
$this->mailMap[$entry] = $entry;
|
||||
} else {
|
||||
list($use, $actual) = explode('> ', $entry);
|
||||
$this->mailMap[$actual] = $use . '>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($this->mailMap[$author])) {
|
||||
return $this->mailMap[$author];
|
||||
}
|
||||
return $author;
|
||||
}
|
||||
}
|
||||
|
||||
$licenses = new Licenses;
|
||||
|
|
Loading…
Reference in a new issue