Skip to content

Instantly share code, notes, and snippets.

@Mouq
Forked from masak/monthly-activity
Last active August 29, 2015 14:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Mouq/7bc8bf4228176270cb3a to your computer and use it in GitHub Desktop.
Save Mouq/7bc8bf4228176270cb3a to your computer and use it in GitHub Desktop.
#!/usr/bin/env perl6
my %last-day-of-month = <
01 31 02 28 03 31 04 30 05 31 06 30
07 31 08 31 09 30 10 31 11 30 12 31
>;
my $average = 0;
my $months = 0;
YEAR:
for 2006 .. 2015 -> $year {
say "";
MONTH:
for "01" .. "12" -> $month {
last YEAR if $year == 2015 && $month eq "02";
my $ldom = %last-day-of-month{$month};
$ldom++ if $year %% 4 && $month eq "02";
my $commits = +qqx[git log --oneline --after $year-$month-01 --before $year-$month-$ldom | wc -l].trim;
if $commits and (state$start)++ or $start {
$months++;
# Calculate new average
$average = ($average * ($months - 1) + $commits) / $months;
say "$year-$month: new:", $commits.fmt("%3d"), " avg:", $average.fmt("%3d"), " ",
"#" x ($average.Int div 10);
}
}
}
# vim: ft=perl6
$ perl6 monthly-activity
2006-03: new: 8 avg: 8
2006-04: new: 76 avg: 42 ####
2006-05: new: 79 avg: 54 #####
2006-06: new: 3 avg: 41 ####
2006-07: new: 11 avg: 35 ###
2006-08: new: 4 avg: 30 ###
2006-09: new: 2 avg: 26 ##
2006-10: new: 1 avg: 23 ##
2006-11: new: 35 avg: 24 ##
2006-12: new: 12 avg: 23 ##
2007-01: new: 6 avg: 21 ##
2007-02: new: 2 avg: 19 #
2007-03: new: 3 avg: 18 #
2007-04: new: 3 avg: 17 #
2007-05: new: 2 avg: 16 #
2007-06: new: 50 avg: 18 #
2007-07: new: 10 avg: 18 #
2007-08: new: 4 avg: 17 #
2007-09: new: 5 avg: 16 #
2007-10: new: 6 avg: 16 #
2007-11: new: 4 avg: 15 #
2007-12: new: 94 avg: 19 #
2008-01: new:108 avg: 22 ##
2008-02: new: 55 avg: 24 ##
2008-03: new: 36 avg: 24 ##
2008-04: new: 46 avg: 25 ##
2008-05: new:147 avg: 30 ###
2008-06: new:185 avg: 35 ###
2008-07: new:142 avg: 39 ###
2008-08: new: 89 avg: 40 ####
2008-09: new:155 avg: 44 ####
2008-10: new: 77 avg: 45 ####
2008-11: new:152 avg: 48 ####
2008-12: new:243 avg: 54 #####
2009-01: new:168 avg: 57 #####
2009-02: new:219 avg: 62 ######
2009-03: new:165 avg: 65 ######
2009-04: new:267 avg: 70 #######
2009-05: new:215 avg: 74 #######
2009-06: new:114 avg: 75 #######
2009-07: new:161 avg: 77 #######
2009-08: new:181 avg: 79 #######
2009-09: new:137 avg: 80 ########
2009-10: new:175 avg: 83 ########
2009-11: new:429 avg: 90 #########
2009-12: new:128 avg: 91 #########
2010-01: new:130 avg: 92 #########
2010-02: new:470 avg:100 ##########
2010-03: new:314 avg:104 ##########
2010-04: new:223 avg:107 ##########
2010-05: new:216 avg:109 ##########
2010-06: new:378 avg:114 ###########
2010-07: new:293 avg:117 ###########
2010-08: new:121 avg:117 ###########
2010-09: new:129 avg:117 ###########
2010-10: new: 42 avg:116 ###########
2010-11: new: 64 avg:115 ###########
2010-12: new: 29 avg:114 ###########
2011-01: new: 54 avg:113 ###########
2011-02: new: 70 avg:112 ###########
2011-03: new: 39 avg:111 ###########
2011-04: new: 16 avg:109 ##########
2011-05: new:160 avg:110 ###########
2011-06: new:656 avg:119 ###########
2011-07: new:598 avg:126 ############
2011-08: new:344 avg:129 ############
2011-09: new:352 avg:133 #############
2011-10: new:181 avg:133 #############
2011-11: new:167 avg:134 #############
2011-12: new:164 avg:134 #############
2012-01: new:201 avg:135 #############
2012-02: new:188 avg:136 #############
2012-03: new:146 avg:136 #############
2012-04: new:169 avg:136 #############
2012-05: new:253 avg:138 #############
2012-06: new:191 avg:139 #############
2012-07: new:291 avg:141 ##############
2012-08: new:181 avg:141 ##############
2012-09: new: 96 avg:141 ##############
2012-10: new:132 avg:140 ##############
2012-11: new: 98 avg:140 ##############
2012-12: new:112 avg:140 ##############
2013-01: new:145 avg:140 ##############
2013-02: new: 64 avg:139 #############
2013-03: new:181 avg:139 #############
2013-04: new:149 avg:139 #############
2013-05: new:212 avg:140 ##############
2013-06: new:225 avg:141 ##############
2013-07: new:249 avg:142 ##############
2013-08: new:223 avg:143 ##############
2013-09: new:157 avg:143 ##############
2013-10: new:222 avg:144 ##############
2013-11: new:232 avg:145 ##############
2013-12: new:115 avg:145 ##############
2014-01: new:213 avg:145 ##############
2014-02: new:149 avg:146 ##############
2014-03: new:126 avg:145 ##############
2014-04: new:263 avg:147 ##############
2014-05: new:262 avg:148 ##############
2014-06: new:147 avg:148 ##############
2014-07: new:167 avg:148 ##############
2014-08: new:343 avg:150 ###############
2014-09: new:298 avg:151 ###############
2014-10: new:229 avg:152 ###############
2014-11: new:150 avg:152 ###############
2014-12: new:134 avg:152 ###############
2015-01: new:261 avg:153 ###############
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment