Skip to content

Commit 51c6129

Browse files
committed
ci: add special thanks script and mailmap
1 parent 3e3d3f5 commit 51c6129

File tree

2 files changed

+79
-0
lines changed

2 files changed

+79
-0
lines changed

.mailmap

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# Please keep this file in alphabetical order, per section.
2+
3+
4+
################################################################################
5+
# Angular Team
6+
################################################################################
7+
Hans Larsen <[email protected]>
8+
Igor Minar <[email protected]>
9+
10+
11+
12+
################################################################################
13+
# Angular CLI Team
14+
################################################################################
15+
Filipe Silva <[email protected]>
16+
Mike Brocchi <[email protected]>
17+
18+
19+
################################################################################
20+
# OpenSource Contributors
21+
################################################################################
22+
Ashok Tamang <[email protected]>
23+
24+
Bram Borggreve <[email protected]>
25+
Carlo Dapor <[email protected]>
26+
27+
Cédric Exbrayat <[email protected]>
28+
29+
Charles Lyding <[email protected]>
30+
31+
32+
Chris Pearce <[email protected]>
33+
34+
Dominic Watson <[email protected]>
35+
36+
Jeremy Wells <[email protected]>
37+
38+
Jim Cummins <[email protected]>
39+
40+
John Papa <[email protected]>
41+
42+
43+
Michał Gołębiowski-Owczarek <[email protected]>
44+
Preston Van Loon <[email protected]>
45+
46+
Rodric Haddad <[email protected]>
47+
Shai Reznik <[email protected]>
48+
49+
50+
Stephen Cavaliere <[email protected]>
51+
Stephen Cavaliere <[email protected]> <[email protected]>

scripts/special-thanks.ts

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/**
2+
* @license
3+
* Copyright Google Inc. All Rights Reserved.
4+
*
5+
* Use of this source code is governed by an MIT-style license that can be
6+
* found in the LICENSE file at https://angular.io/license
7+
*/
8+
// tslint:disable:no-implicit-dependencies
9+
import { logging } from '@angular-devkit/core';
10+
import { execSync } from 'child_process';
11+
12+
export default function (opts: { sha: string }, logger: logging.Logger) {
13+
const authors = execSync(`git log ${opts.sha}.. --format="%aN"`).toString();
14+
15+
const counter = new Map<string, number>();
16+
for (const name of authors.split(/\r?\n/g)) {
17+
if (name) {
18+
const maybeCounter = counter.get(name);
19+
counter.set(name, (maybeCounter || 0) + 1);
20+
}
21+
}
22+
23+
const sortedCount = [...counter.entries()].sort((a, b) => b[1] - a[1]);
24+
25+
for (const count of sortedCount) {
26+
logger.info(count[0] + ' ' + count[1]);
27+
}
28+
}

0 commit comments

Comments
 (0)