File:Kernel patches stats.png

From OpenVZ Virtuozzo Containers Wiki
Revision as of 22:37, 1 March 2008 by Kir (talk | contribs) (uploaded a new version of "Image:Kernel patches stats.png")
Jump to: navigation, search
Original file(1,600 × 1,200 pixels, file size: 52 KB, MIME type: image/png)

Description

This graph shows how many patches from OpenVZ developers are merged in mainstream, for each kernel version.

It is done in gnuplot. Data set produced by a simple shell script working on git repository.

Source code

Collect data

Here is the script to produce the data for the graph:

#!/bin/sh

latest=$(git tag | grep -v -- -rc | tail -n1 | sed -e 's/^.*\.\(.*\)$/\1/')
((latest++))

get_tag_date() {
        echo $(git show $1 | egrep ^Date: | head -n1) |
                sed 's/^Date: ... \(.*\) [-+]....$/\1/' |
                sed 's/ ..:..:..//' | sed 's/ /-/g'
}

for f in $(seq 13 $latest); do
        v1=v2.6.$((f-1))
        d1=$(get_tag_date $v1)
        if [ $f = $latest ]; then
                v2="HEAD   "
        else
                v2=v2.6.$f
        fi
        d2=$(get_tag_date $v2)
        echo -n $d2 $v2 " "
        git log --pretty=short --no-merges $v1..$v2 | grep 'Author:' | egrep \
                '@openvz.org|@parallels.com|@sw.ru|@swsoft.com|@sw.com.sg|adobriyan@|kuznet@' | wc -l
done | sed 's/ /\t/g'

Draw the graph

Here is the script to produce the graph. Note it calls the previous script under the name 'count'.

#!/bin/sh

if test "$1" != "-f"; then
        git pull
        sh count > time.dat
fi

DATE=$(date '+%d %b %Y')
MAXY=$(awk 'BEGIN {max=0}; ($3 > max) {max=$3}; END {print max+50}' < time.dat)

export GDFONTPATH=/usr/share/fonts/msttcorefonts/
cat << EOF | gnuplot > plot.png
set terminal png transparent nocrop enhanced font verdanab 8 size 600,400

set title "OpenVZ team kernel patches progress as of ${DATE}"

unset xlabel
set xdata time
set timefmt "%b-%d-%Y"
set format x "%b\n%Y"

set yrange [ 0 : ${MAXY} ]
set ylabel "Number of patches accepted into mainstream"

set border 3            # no lines at right and top
set xtics nomirror      # no tics at top
set ytics nomirror      # no tics at right

plot 'time.dat' using 1:3 with linespoints pt 7 ps 1.5 lw 2 lt 2 notitle, \
        ''      using 1:3:2 with labels left offset 0,1 rotate notitle, \
        ''      using 1:3:3 with labels left offset 0.7,0 notitle

EOF

File history

Click on a date/time to view the file as it appeared at that time.

(newest | oldest) View ( | older 10) (10 | 20 | 50 | 100 | 250 | 500)
Date/TimeThumbnailDimensionsUserComment
23:01, 28 March 2008Thumbnail for version as of 23:01, 28 March 20081,600 × 1,200 (36 KB)Kir (talk | contribs)updated version
08:49, 11 March 2008Thumbnail for version as of 08:49, 11 March 20081,600 × 1,200 (34 KB)Kir (talk | contribs)
22:37, 1 March 2008Thumbnail for version as of 22:37, 1 March 2008800 × 600 (11 KB)Kir (talk | contribs)
09:21, 27 February 2008Thumbnail for version as of 09:21, 27 February 2008600 × 400 (7 KB)Kir (talk | contribs)no border, no tics at right and top, no xlabel
16:34, 26 February 2008Thumbnail for version as of 16:34, 26 February 2008600 × 400 (7 KB)Kir (talk | contribs)
(newest | oldest) View ( | older 10) (10 | 20 | 50 | 100 | 250 | 500)
  • You cannot overwrite this file.

The following 2 pages link to this file:

Metadata