--- /dev/null
+#!/usr/bin/perl
+# Feed whats-cooking to this to find what to merge to 'master'
+
+sub merged {
+ my ($topic, $base) = @_;
+ my $fh;
+ (open $fh, "-|", qw(git rev-list), "^$base", $topic)
+ or die "$!";
+ my $count = 0;
+ while (<$fh>) {
+ $count++;
+ }
+ (close $fh)
+ or die "$! (after $count for $topic)";
+ return $count;
+}
+
+my ($topic, $topic_date);
+my (@candidate);
+
+while (<>) {
+ if (/^\* ([a-z][a-z]\/[-a-z0-9_]+) \(([-0-9]{10})\) \d+ commit/) {
+ $topic = $1;
+ $topic_date = $2;
+ next;
+ }
+ if (defined $topic) {
+ if (/^ \(merged to 'next' on ([-0-9]{10}) at/) {
+ push @candidate, [$topic, $1, $topic_date];
+ next;
+ }
+ $topic = undef;
+ $topic_date = undef;
+ }
+}
+
+for $topic (sort { ($a->[1] cmp $b->[1]) || ($a->[2] cmp $b->[2]) } @candidate) {
+ my $count = merged($topic->[0], 'master');
+ if ($count) {
+ print "$topic->[1] $topic->[2] ($count) $topic->[0]\n";
+ }
+}
+