Mailing list statistics and graphs

Mike McCormack mike at
Sun Jan 16 21:12:05 CST 2005

Fellow bean counters!

On the weekend I wrote a quick script to generate a graph of the number 
of patches committed to the Wine CVS per month.  The script and the 
graph it generates are attached.

Anybody think it would be interesting to have a page of similar graphs 
on WineHQ somewhere that's regenerated once a month?  Some ideas:

patches committed to winehq per month
patches sent to wine-patches per month
unique patch authors vs. months
lines of code committed per month
lines of code sent per month

Dept of Time Wasting and (Mostly) Useless Statistics
-------------- next part --------------
# filename : 
# author   : Mike McCormack
# A script to generate a graph with the number of patches against Wine per month.

use strict;

sub make_stat($)
    my $month=$_[0];
    my $winepatches=0;
    my $appdbpatches=0;
    my $lostwagespatches=0;
    my $cmd = sprintf("wget -q -O -",$month/12 + 2001,$month%12+1);

    #print "$cmd\n";
    open(IN,"$cmd|") || die "failed to run wget\n";
    while(<IN>) {
        #print $_;
        if ( s/^Subject: *// ) {
            #print $_;
            if ( /^wine/ ) {
            } elsif ( /^lostwages/ ) {
            } elsif ( /^appdb/ ) {
            } else {
                #print "unknown module $_\n";
    printf(OUT "%d  %3d  %3d  %3d\n", $month, $winepatches, $lostwagespatches, $appdbpatches);
    close IN;

my $month;

open(OUT, ">stat");
for($month=1; $month<=(12*4+1); $month++)
close OUT;

# <mike_m> it'd be nice to figure out how to get the x axis to display the date nicely
# <papineau> set xdata time
open (GNUPLOT, "|gnuplot");
print GNUPLOT "set title \"Wine patches\"\n";
print GNUPLOT "set xlabel \"Months\"\n";
print GNUPLOT "set ylabel \"Number\"\n";
print GNUPLOT "set term png xffffff x000000 x404040 x0000c0 xffa500 x66cdaa xcdb5cd\n";
print GNUPLOT "set boxwidth 0.3\n";
print GNUPLOT "set output \"winestat.png\"\n";
print GNUPLOT "plot \"stat\" using 1:2 title \"Wine\"      w boxes fs solid 1\n";
#print GNUPLOT "plot \"stat\" using 1:2 title \"Wine\"      w boxes fs solid 1, \\\n";
#print GNUPLOT "     \"stat\" using 1:3 title \"Appdb\"     w boxes fs solid 2, \\\n";
#print GNUPLOT "     \"stat\" using 1:4 title \"LostWages\" w boxes fs solid 3    \n";
close GNUPLOT;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: winestat.png
Type: image/png
Size: 3561 bytes
Desc: not available
Url :

More information about the wine-devel mailing list