Skip to content
Python Java Shell
Latest commit e5a40c9 Jan 7, 2011 @marvil07 minor: typo on Makefile
Failed to load latest commit information.
TagCloud Add destination parameter to TagCloud script. Dec 1, 2010
.gitignore
Makefile
README.asciidoc
README.markdown
config.mk
drupal.config
drupalcodeswarmlog.py
filter-to-commit-activity.sed
filter-to-file-activity.sed
generatevideo.sh
post-process.sed
prepare_tag_output.sh

README.asciidoc

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:

  1. Generate the log file:

    # for measuring activity by the number of changed files
    make filelog-count
    # for measuring activity by the number of commits
    make commitlog-count
  2. Build the tag cloud you want(see data/stats/ directory), either using worlde or processing with wordookie:

    1. 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 ;-)
    2. Processing with wordookie

      • Install http://processing.org/

      • Install http://code.google.com/p/wordookie/

      • Open wordookie/TagCloud/TagCloud.pde sketch and export it as application.

      • Run it passing the file you want:

        # 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:

  1. Generate the xml files for codeswarm:

    make mainlogs
  2. Get codeswarm: http://codeswarm.googlecode.com/

  3. Build code_swarm with ant.

  4. 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.
  5. Copy drupal.config to the root of code_swarm.

  6. 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.

  7. Generate the frames for the video

    cd path/to/code_swarm
    ./run.sh drupal.config
  8. Copy generatevideo.sh to the frames/ directory of code_swarm

  9. Make the video

    cd frames/
    ./generatevideo.sh drupal7-git-logs.flv
Something went wrong with that request. Please try again.