forked from pgjdbc/pgjdbc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrelease_notes_filter.pl
95 lines (85 loc) · 3.21 KB
/
release_notes_filter.pl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/bin/perl
use strict;
my $version = shift;
my %author_url = (
'Alexander Kjäll' => 'https://github.com/alexanderkjall',
'AlexElin' => 'https://github.com/AlexElin',
'aryabukhin' => 'https://github.com/aryabukhin',
'bd-infor' => 'https://github.com/bd-infor',
'Christian Ullrich' => 'https://github.com/chrullrich',
'Christopher Deckers' => 'https://github.com/Chrriis',
'Daniel Gustafsson' => 'https://github.com/danielgustafsson',
'Daniel Migowski' =>'https://github.com/dmigowski',
'Dave Cramer' => '[email protected]',
'Eric McCormack' => 'https://github.com/ericmack',
'Florin Asăvoaie' => 'https://github.com/FlorinAsavoaie',
'George Kankava' => 'https://github.com/georgekankava',
'goeland86' => 'https://github.com/goeland86',
'Jacques Fuentes' => 'https://github.com/jpfuentes2',
'James' => 'https://github.com/jamesthomp',
'Jeremy Whiting' => 'https://github.com/whitingjr',
'Joe Kutner' => 'https://github.com/jkutner',
'Jordan Lewis' => 'https://github.com/jordanlewis',
'Jorge Solorzano' => 'https://github.com/jorsol',
'Laurenz Albe' => 'https://github.com/laurenz',
'Marc Petzold' => 'https://github.com/dosimeta',
'Marios Trivyzas' => 'https://github.com/matriv',
'Mathias Fußenegger' => 'https://github.com/mfussenegger',
'Michael Glaesemann' => 'https://github.com/grzm',
'Minglei Tu' => 'https://github.com/tminglei',
'Pavel Raiskup' => 'https://github.com/praiskup',
'Petro Semeniuk' => 'https://github.com/PetroSemeniuk',
'Philippe Marschall' => 'https://github.com/marschall',
'Philippe Marschall' => 'https://github.com/marschall',
'Rikard Pavelic' => 'https://github.com/zapov',
'Robert Zenz' => 'https://github.com/RobertZenz',
'Robert \'Bobby\' Zenz' => 'https://github.com/RobertZenz',
'Roman Ivanov' => 'https://github.com/romani',
'Sebastian Utz' => 'https://github.com/seut',
'slmsbrhgn' => 'https://github.com/slmsbrhgn',
'Steve Ungerer' => 'https://github.com/scubasau',
'Tanya Gordeeva' => 'https://github.com/tmgordeeva',
'Trygve Laugstøl' => 'https://github.com/trygvis',
'Vladimir Gordiychuk' => 'https://github.com/Gordiychuk',
'Vladimir Sitnikov' => 'https://github.com/vlsi',
);
my %authors;
while(<>) {
if ($_ !~ /@@@/) {
print $_;
if ($_ =~ /(.*) \(\d+\):/) {
$authors{$1} = 1;
print "\n";
}
next;
}
my @c = split('@@@', $_);
my $subject = @c[0];
my $sha = @c[1];
my $shortSha = @c[2];
my $pr = '';
if ($subject =~ /\(#(\d+)\)/) {
$subject =~ s;\(#(\d+)\);[PR#\1](https://github.com/pgjdbc/pgjdbc/pull/\1);;
} else {
my $body = `git log --format='%B' -n 1 $sha`;
if ($body =~ /(?:fix|fixes|close|closes) *#?(\d+)/) {
$pr = $1;
}
}
if ($pr != '') {
$pr = ' [PR#'.$pr.'](https://github.com/pgjdbc/pgjdbc/pull/'.$pr.')';
}
$subject =~ s/^\s+/* /;
print $subject.$pr." [".$shortSha."](https://github.com/pgjdbc/pgjdbc/commit/$sha)\n";
}
print "<a name=\"contributors_{{ page.version }}\"></a>\n";
print "### Contributors to this release\n\n";
print "We thank the following people for their contributions to this release.\n\n";
for my $c (sort keys(%authors)) {
if ($author_url{$c}) {
print "[$c](".$author_url{$c}.")";
} else {
print $c;
}
print " \n"
}