Permalink
Switch branches/tags
Nothing to show
Commits on Mar 22, 2012
  1. undid some changes of Robin

    ruderphilipp committed Mar 22, 2012
    This results in more detailed reporting
  2. Merge branch 'qt-master' of git://github.com/rburchell/gitdm-qt into …

    ruderphilipp committed Mar 22, 2012
    …otherImports
    
    Conflicts:
    	csv.py
    	gitdm
    	patterns.py
Commits on Feb 12, 2012
  1. Add -y option to aggregate changes by year, not month

    aidan committed with Jonathan Corbet Sep 30, 2011
  2. Add changesets to csv output

    aidan committed with Jonathan Corbet Sep 30, 2011
Commits on Dec 13, 2011
  1. Fix up pattern use in treeplot

    Jonathan Corbet committed Dec 13, 2011
    The utility as a whole is still somewhat on the fragile side, though.
Commits on Jul 11, 2011
  1. Add a default "don't know nothing" FileType

    Jonathan Corbet committed Jul 11, 2011
    Otherwise things crash if the configuration does not provide a file type
    map, even if nobody is asking for file type reports.
    
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  2. Revert "Make ReadConfigLine an iterator"

    Jonathan Corbet committed Jul 11, 2011
    This reverts commit 19b718e which breaks
    the virtual employer mechanism.
  3. Merge branch 'refactoring' of git://gitorious.org/mining-tools/gitdm …

    Jonathan Corbet committed Jul 11, 2011
    …into german
  4. Use pypy by default

    Jonathan Corbet committed Jul 11, 2011
    ...it's 3x faster...
    
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Commits on Jun 24, 2011
  1. Updated the options explanation

    gpoo committed Jun 24, 2011
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  2. Added reports by file types

    gpoo committed Jun 24, 2011
    Added first attempt for reporting by file type:
    - A general report
    - A report aggregated by file type and contributor
    - A report aggregated by contributor and file type
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  3. Make ReadConfigLine an iterator

    gpoo committed Jun 24, 2011
    Using an iterator makes the code a bit more 'pythonic'.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  4. Move filetypes onto configuration file

    gpoo committed Jun 24, 2011
    The filetypes can be extended using a configuration files, where
    is possible to associate file type and its corresponden regular
    expression.
    
    The code includes a script to test the regex without running
    gitdm.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
Commits on Jun 23, 2011
  1. Added workaround for svn tags imported wrongly

    gpoo committed Jun 23, 2011
    When some projects have migrated from Subversion to Git, there
    were several tags that were treated as new commits, which shows
    a change in the whole project (code added/removed) when nothing
    really happened.  For instance, in GNOME a lot svn tags were
    catched during the migration, but not all of them.
    
    svn tags in git repositories brings bad stats because double count
    commits, and in project with a lot history it may may involve several thousands of source of lines of code.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  2. Added CSV dumps: per filetype and per changeset

    gpoo committed Jun 23, 2011
    Two new dumps were added: per filetype and for every changeset.
    It necessary to set a prefix where to dump the data in csv,
    because it will be generated one csv file per file type.
    
    Now it is possible to get statistics per code, documentation,
    build scripts, translations, multimedia and developers
    documentation.  This feature is useful for repositories where
    there are different types of file, rather than code.
    
    The detailed information does not use the Aggregate parameter.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  3. Fixed CSCount which should not count merges

    gpoo committed Jun 23, 2011
    Patches as well s Total* and Dates are counted only if the
    changeset is not a merge. However, CSCount (ChangeSetCount)
    was counting everything, which changes a bit the results.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  4. Move out the grabpatch from the parser

    gpoo committed Jun 23, 2011
    The class LogPatchSplitter provides an iterator per patch.  This
    makes the code cleaner, easier to read and more pythonic.
    The class only gets each commit set as lines.
    
    It is possible to test it separately by:
       $ git log | python logparser.py | more
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  5. Added initial support for file type reports

    gpoo committed Jun 23, 2011
    It may distinguish between code, documentation, translations, etc.
    Hence, it provides the basic feature to get more accurate reports.
    
    It does not replace the current stats, it is only add the
    possibility to generate reports by file type.
    
    This feature was implemented originally by Gregorio Robles in
    CVSAnalY http://tools.libresoft.es/cvsanaly/  Gregorio agreed to
    add his code here.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  6. Added a function to parse the stats per file

    gpoo committed Jun 23, 2011
    In order to make cleaner the code, I created a function
    that parses a numstat line, which is useful to determine
    the modified filename, and to calculate lines added and
    removed.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  7. Use a dict of patterns instead of several global variables

    gpoo committed Jun 23, 2011
    The dictionary used allows the use of a single meaningful
    variable with a cleaner code.  Also, it is not harder to add
    new patterns.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  8. Added option to get the stats from numstat instead of diff

    gpoo committed Jun 23, 2011
    The option --numstat of git log gives the statistics of
    lines added and removed file.  Hence, it is not necessary
    to parser a raw diff.
    
    Another benefit, it is a less verbose log to be processed,
    which helps to process long logs.  This also prepares the
    code for counting the changes per file type.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
  9. Use csv package instead of manual CSV handling

    gpoo committed Jun 23, 2011
    Python provides a module to handle csv files which is named
    csv.  Therefore, it is necessary to rename the csv.py to
    avoid name conflicts when the module csv is used.
    
    Signed-off-by: Germán Póo-Caamaño <gpoo@gnome.org>
Commits on May 10, 2011
  1. Add the VirtualEmployer mechanism

    Jonathan Corbet committed May 10, 2011
    A certain obnoxious developer wants his contributions to be split between
    two employers.  So add the "VirtualEmployer" mechanism to make that
    possible.  A virtual employer is defined with:
    
    	VirtualEmployer ve-name
    		nn% real-name
    		...
    	end
    
    (This construct must appear in the main configuration file).  Developers
    can be associated with the virtual employer in the usual way; at report
    time, any changes credited to that employer will be split among the real
    employers according to the percentages provided.
    
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  2. Fix an option parsing regression

    Jonathan Corbet committed May 10, 2011
    Cedric added a : for -a, no idea why.
    
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  3. reports.py gets a copyright notice too

    Jonathan Corbet committed May 10, 2011
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  4. Update copyright notices

    Jonathan Corbet committed May 10, 2011
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Commits on Apr 22, 2011
  1. Made the CSV file aggregating data by weeks or months

    Cédric Bosdonnat committed with Jonathan Corbet Apr 19, 2011
    When using -w option together with the -x file option, the data exported
    in the CSV file are aggregated by weeks instead of months (the default).
    This is useful to extract meaningful stats on short periods.
  2. Documented the funky email address alias feature

    Cédric Bosdonnat committed with Jonathan Corbet Apr 19, 2011
    logs containing weird email addresses like this can be handled in the
    aliases file to remap them to a correct address.
       "joe.hacker@acme.org <Joe Hacker>
    
    Added some documentation in the README file for this
Commits on Mar 27, 2011
  1. Try harder to find people.

    rburchell committed Mar 27, 2011
    A number of Qt committers share a mail address (e.g. qt-info@nokia.com), so the
    old naieve approach of just matching on email isn't enough.
    
    - Try find via mail
    - If found, compare name.
    - If the name (or an accented version of it) is different, try search by name
      instead.
  2. Change unknown to other.

    rburchell committed Mar 27, 2011
Commits on Mar 1, 2011