Home > drupal-contribution-analyzer

drupal-contribution-analyzer

Drupal-contribution-analyzer is a project mainly written in PYTHON and JAVA, it's free.

**Outdated**, please see new upstream repository: http://drupal.org/sandbox/marvil07/1086028

= Drupal drupal contribution analyzer =

This set of scripts tries to get statistics from the drupal project commit history. It also tries to get as much as possible attribution in commit messages as possible.

== Requirements ==

=== Mandatory ===

  • git
  • make
  • python
  • python-git

=== Optional ===

  • codeswarm and mencoder (to generate the videos)
  • processing and wordookie (to generate tag clouds)
  • asciidoc (to generate the compiled documentation)

== How to use this ==

First, you need to get a drupal git repo from drupalfr git://git.drupalfr.org/git/core/main.git and configure accordingly the config.mk file.

=== Tag cloud ===

To generate a tag cloud of file activity, using http://www.wordle.net you need to:

. Generate the log file: + [source,sh]

for measuring activity by the number of changed files

make filelog-count

for measuring activity by the number of commits

make commitlog-count

. Build the tag cloud you want(see data/stats/ directory), either using worlde or processing with wordookie: .. Wordle

  • Go to http://www.wordle.net/advanced
  • Paste the contents of the file in the first box.
  • Make it pretty with the applet options. + NOTE: You can get a PDF of the tag cloud and then import it from inkscape to generate the image size you need ;-) + .. Processing with wordookie
  • Install http://processing.org/
  • Install http://code.google.com/p/wordookie/
  • Open wordookie/TagCloud/TagCloud.pde sketch and http://processing.org/reference/environment/[export it as application].
  • Run it passing the file you want: + [source,sh]

    this is a really time consuming operation

    make data/tagclouds/name-of-stat.txt.tif

    + NOTE: Please notice that on *nix you need to modify the output script to be able to pass parameters. Just add $@ at the end of the executed command in the script.

=== Codeswarm ===

To get a codeswarm video of drupal history your need to:

. Generate the xml files for codeswarm: + [source,sh]

make mainlogs

. Get codeswarm: http://codeswarm.googlecode.com/

. Build code_swarm with ant.

. Copy the xml file you just generated to the data/ directory in the root of code_swarm. + NOTE: make mainlogs actually generate two xml files, so please repeat this process if you want a video for Drupal 7 development and another one for the full history of Drupal development.

. Copy drupal.config to the root of code_swarm.

. Make sure the InputFile variable in drupal.config have the right value set(the xml file you just generated) and create the directory frames in the root of codeswarm.

. Generate the frames for the video + [source,sh]

cd path/to/code_swarm ./run.sh drupal.config

. Copy generatevideo.sh to the frames/ directory of code_swarm

. Make the video + [source,sh]

cd frames/ ./generatevideo.sh drupal7-git-logs.flv

Previous:agendo