Giter Club home page Giter Club logo

gitinspector's People

Contributors

adam-waldenberg avatar chris-barry avatar ckastner avatar cringthis avatar dspinellis avatar dzhus avatar jonwarghed avatar kamchy avatar literalplus avatar lucamot avatar yannickmoy avatar zhijiewang avatar

Watchers

 avatar

gitinspector's Issues

Limit results by date range?

This is an enhancement request.  I have a git repository with 3 years worth of 
changelogs and it would be really useful to be able to limit the results to a 
certain date range.

Original issue reported on code.google.com by [email protected] on 30 Apr 2013 at 12:29

New input format support request: LaTeX


I suggest to add LaTeX to the list of _input_ formats to analyze so you can do:
./gitinspector.py -f tex

Comments in LaTeX are lines starting at % but not at \%, like this:
%comment comment
code code code % comment comment
code code %
code code 50 \% code and 40\% code %comment comment

Original issue reported on code.google.com by [email protected] on 29 Jun 2013 at 10:12

Add support for incremental statistics.

Support incremental statistics on any statistics that can be incrementally 
collected. The consequence would be that all the statistical information would 
not have to be re-fetched each time gitinspector was executed.

Storing a hash from the options given and the calculated statistics should make 
it possible to also distinguish if the git history is changed up to a certain 
point and statistics need to be re-fetched anyway.

/Adam Waldenberg

Original issue reported on code.google.com by [email protected] on 15 Nov 2013 at 12:50

Running script on headless terminal causes exception

What steps will reproduce the problem?
1. Run script on Jenkins, on a remote slave.
2. or run script on a remote machine using ssh without the -t option.
3. hmmm. I suspect this will happen on any headless terminal, but I may be 
wrong.

What is the expected output? What do you see instead?
python gitinspector/gitinspector.py -f html -HTlr 
/scratch/jenkins/workspace/_foo1
Traceback (most recent call last):
  File "gitinspector/gitinspector.py", line 196, in <module>
    main()
  File "gitinspector/gitinspector.py", line 107, in main
    argv = terminal.convert_command_line_to_utf8()
  File "/scratch/jenkins/workspace/_foo1/gitinspector/terminal.py", line 117, in convert_command_line_to_utf8
    argv.append(arg.decode(sys.stdin.encoding, "replace"))
TypeError: decode() argument 1 must be string, not None

Note that on headless terminals, "None" is expected for sys.stdin.encoding:
python -c 'import sys; print sys.stdin.encoding'
None

What version of the product are you using? What version of Python? On what
operating system?
Python 2.6
Using gitinspector_0.3.1.zip

> uname -a
Linux localhost 3.7.10-101.fc17.x86_64 #1 SMP Wed Feb 27 19:14:22 UTC 2013 
x86_64 x86_64 x86_64 GNU/Linux
(But I can reproduce this on any headless non-windows OS terminal.)

Please provide any additional information below.
Let me know if you want me to try anything out for you. Thanks!

Original issue reported on code.google.com by [email protected] on 9 Nov 2013 at 1:00

Problem with non-ascii filenames

Repositories with non-ascii filenames from Windows causes problems in Linux 
environment:
Traceback (most recent call last):
  File "/home/legogris/gitinspector/gitinspector.py", line 135, in <module>
    __run__.output()
  File "/home/legogris/gitinspector/gitinspector.py", line 59, in output
    outputable.output(blame.BlameOutput(self.hard))
  File "/home/legogris/gitinspector/outputable.py", line 37, in output
    outputable.output_text()
  File "/home/legogris/gitinspector/blame.py", line 210, in output_text
    get(self.hard)
  File "/home/legogris/gitinspector/blame.py", line 149, in get
    __blame__ = Blame(hard)
  File "/home/legogris/gitinspector/blame.py", line 97, in __init__
    if FileDiff.is_valid_extension(row) and not filtering.set_filtered(FileDiff.get_filename(row)):
  File "/home/legogris/gitinspector/changes.py", line 58, in is_valid_extension
    extension = FileDiff.get_extension(string)
  File "/home/legogris/gitinspector/changes.py", line 48, in get_extension
    string = FileDiff.get_filename(string)
  File "/home/legogris/gitinspector/changes.py", line 54, in get_filename
    return codecs.getdecoder('unicode_escape')(string.strip())[0]
UnicodeEncodeError: 'ascii' codec can't encode characters in position 16-17: 
ordinal not in range(128)



Replacing FileDiff.get_extension and get_filename in change.py with the 
following fixes the issue for me:

@staticmethod
def get_extension(string):
  string = FileDiff.get_filename(string)
  return os.path.splitext(string)[1][1:]

@staticmethod
def get_filename(string):
  string = string.split("|")[0].strip().strip("{}").strip("\"").strip("'").encode('latin-1')                   
  return codecs.getdecoder('unicode_escape')(string.strip())[0]

Original issue reported on code.google.com by [email protected] on 13 May 2013 at 9:58

UnicodeDecodeError: 'unicodeescape' codec can't decode byte 0x5c in position 129: \ at end of string

What steps will reproduce the problem?
1. Download on Mac OS X 10.8.3
2. Extract
3. Run "./gitinspector.py THl ~/repos/my/webapp/"

Result:
$ ./gitinspector.py THl ~/repos/nelo2/webapp/
Traceback (most recent call last):
  File "./gitinspector.py", line 136, in <module>
    __run__.output()
  File "./gitinspector.py", line 57, in output
    outputable.output(changes.ChangesOutput(self.hard))
  File "/Users/nbp/Downloads/gitinspector/outputable.py", line 37, in output
    outputable.output_text()
  File "/Users/nbp/Downloads/gitinspector/changes.py", line 225, in output_text
    authorinfo_list = get(self.hard).get_authorinfo_list()
  File "/Users/nbp/Downloads/gitinspector/changes.py", line 158, in get
    __changes__ = Changes(hard)
  File "/Users/nbp/Downloads/gitinspector/changes.py", line 102, in __init__
    i = codecs.getdecoder("unicode_escape")(i.strip())[0]
UnicodeDecodeError: 'unicodeescape' codec can't decode byte 0x5c in position 
129: \ at end of string

What is the expected output? What do you see instead?
The stats for the specified git repository.

What version of the product are you using? On what operating system?
0.2.0

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 14 Jun 2013 at 6:25

Translation to German

Hello, 

on the main page it says "Translators wanted". I'd be willing to offer a German 
translation for this project, as I quite like it and would love to have the 
output in German. 

In https://code.google.com/p/gitinspector/wiki/Contributing it says to just 
open a new issue for a translation, but sadly it does not tell about how to 
translate. I've already seen some existing translations, but can't figure out 
what the non-plaintext file is. 

I also tried finding previous translation issues, but was unable to find any.

So, if there is need for a German translation, please provide instructions on 
how to translate.

--


Original issue reported on code.google.com by [email protected] on 9 Feb 2014 at 2:17

Enhancement: option to exclude merges from stats

git log and shortlog have an option --no-merges. It would be nice if
gitinspector supported the same.

I am on a project with several git rookies, and they do merge on pull all the 
time, since they always work in master. Without --no-merges, they appear like 
top contributors! :-) 

Original issue reported on code.google.com by [email protected] on 22 Jun 2013 at 2:00

Use the same author colors in different report sections

For graphical output formats, it would be desirable to have the same color used 
for an author in charts included in historical information and row survival 
sections of the report.

http://wiki.gitinspector.googlecode.com/git/examples/pango_output.html 
demonstrates the issue: in historical information, the color for Owen Taylor in 
the chart is pooish brown, while in row survival chart it is sunny yellow.

Original issue reported on code.google.com by [email protected] on 10 Feb 2014 at 4:08

Doesn't start when using "C" locale

When LANG environment variable is set to C, the following happens:

% ./gitinspector/gitinspector.py -h
Traceback (most recent call last):
  File "./gitinspector/gitinspector.py", line 25, in <module>
    localization.init()
  File "./gitinspector/localization.py", line 54, in init
    filename = basedir.get_basedir() + "/translations/messages_%s.mo" % lang[0][0:2]
TypeError: 'NoneType' object is unsubscriptable

The attached fix avoids the problem by not using translations in this case.

Original issue reported on code.google.com by [email protected] on 7 Jun 2014 at 9:21

Attachments:

UnicodeEncodeError: 'charmap' codec can't encode character u'\u20ac' in position 280169: character maps to <undefined>

What steps will reproduce the problem?
1. gitinspector\gitinspector.py --format=html

What is the expected output? What do you see instead?
Statistics of repository, instead only an error message:

C:\Tools\gitinspector>c:\Python27\python.exe gitinspector\gitinspector.py 
--format=html
Traceback (most recent call last):
  File "gitinspector\gitinspector.py", line 145, in <module>
    main()
  File "gitinspector\gitinspector.py", line 142, in main
    __run__.output()
  File "gitinspector\gitinspector.py", line 56, in output
    format.output_header()
  File "C:\Tools\gitinspector\gitinspector\format.py", line 71, in output_header
    print(html_header.format(version.__version__, jquery_js, tablesorter_js, flot_js, pie_js, logo.decode("utf-8", "replace")))
  File "c:\Python27\lib\encodings\cp850.py", line 12, in encode
    return codecs.charmap_encode(input,errors,encoding_map)
UnicodeEncodeError: 'charmap' codec can't encode character u'\u20ac' in 
position 280169: character maps to <undefined>


What version of the product are you using? On what operating system?
2bfb3cfa6709aaf5b4b30401b20c78292535043a (as of 2013-06-18)
Windows 7
Python2.7.4 or 3.3.0 (same error message)


Please provide any additional information below.
Version tried already includes commit for issue #4 which sounds similar.

Original issue reported on code.google.com by [email protected] on 20 Jun 2013 at 9:43

Show modified lines percentage (code stability)

The number of commits, the total number of lines added/removed or the number of 
lines remaining in the code are interesting statistics. Thanks for extracting 
those informations.

Maybe it would be interesting to know, out of all the lines modified by a 
developer, what is the percentage of all those lines that have been changed 
later on. Such statistics could be useful in the following context: Say I write 
a new function with lots of bugs in it, over time, a lot of my original lines 
will be modified (as bug fixes). Note that the number of commits in that 
previous example was inversely proportional to the "quality" of the work.
Another example where the statistic I am suggesting could be interesting could 
be when designing features. How scalable is the code? each time a new sub 
feature is added, how many existing lines must be changed ? Does the code need 
to be redesigned every time or is it very minimal work to plug-in new features?

For the implementation, maybe using (sometime available) commit message 
keywords such as "fix" "crash" "bug" ... could be useful.

Original issue reported on code.google.com by [email protected] on 19 Jul 2013 at 1:19

Feature request: Exclude authors.

I'd be great to have an option to exclude some authors from statistics... 
especially when you want to grade a student project that is based on some 
existing repository, and you only want to see the commits of a specified group 
of people.

Unfortunately I can't implement that myself... but maybe someone else will also 
be interested, and will do necessary changes.

Original issue reported on code.google.com by [email protected] on 19 Jun 2013 at 11:46

Fails to load static resources in egg installation

Running gitinspector on Windows:

$ gitinspector -HTlr -Fhtml SOMEREPO
Traceback (most recent call last):
  File "c:\Python27\Scripts\gitinspector-script.py", line 9, in <module>
    load_entry_point('gitinspector==0.3.1', 'console_scripts', 'gitinspector')()
  File "build\bdist.win32\egg\gitinspector\gitinspector.py", line 188, in main
  File "build\bdist.win32\egg\gitinspector\gitinspector.py", line 77, in output
  File "build\bdist.win32\egg\gitinspector\format.py", line 65, in output_header
  File "build\bdist.win32\egg\gitinspector\format.py", line 53, in __output_html_template__
IOError: [Errno 2] No such file or directory: 
u'c:\\Python27\\lib\\site-packages\\gitinspector-0.3.1-py2.7.egg\\gitinspector/h
tml/html.header'

It would help to access static package resources via `pkg_resources`, e.g.

html_dir_path = pkg_resources.resource_filename("gitinspector", "html")
html_header_path = os.path.join(html_dir_path, 'html.header')

This is portable.

/Tobias

Original issue reported on code.google.com by [email protected] on 14 Oct 2013 at 4:35

Weeks are not zero padded in timeline view. Results in bad sorting.

What steps will reproduce the problem?
1. A repository where week numbers in timeline view look like 8, 9, 10, 11, ...
2. Run `gitinspector.py -T -w`
3. Output will have week numbers ordered as 10, 11, 8, 9

What is the expected output? What do you see instead?
See attachments good.txt and bad.txt.

What version of the product are you using? On what operating system?
gitinspector 0.2.2

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 12 Jun 2013 at 5:45

Attachments:

Migrate into github

Great project! and as a git tool, why not move to github.com:-), so that 
everybody can see it and make it easier for contributing and cooperating.

And thank you for this great project.

Thanks, 
villa gao

Original issue reported on code.google.com by jky239 on 24 Dec 2013 at 8:41

Script fails with exception when encountering UTF-8 character

What steps will reproduce the problem?
1. run ./gitinspector.py script against repo with UTF-8 character in author's 
name


What is the expected output? What do you see instead?

raceback (most recent call last):
  File "./gitinspector.py", line 136, in <module>
    __run__.output()
  File "./gitinspector.py", line 57, in output
    outputable.output(changes.ChangesOutput(self.hard))
  File "/Users/tajima/Downloads/gitinspector/outputable.py", line 37, in output
    outputable.output_text()
  File "/Users/tajima/Downloads/gitinspector/changes.py", line 240, in output_text
    print(i.ljust(20)[0:20], end=" ")
UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 8: 
ordinal not in range(128)

The person's name has a ü

What version of the product are you using? On what operating system?

Mac OS Snow Lion
 ./gitinspector.py  --version
gitinspector 0.2.2


Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 12 Jul 2013 at 10:26

Support remote repositories

I'd like to specify a repository on the network (not my disk), e.g. a http:// 
address to a repo.  The repo could be git cloned into a temp dir, processed, 
and removed.

Currently, I get a crash:

File "/db/atree/cring/miscgit/gitinspector/gitinspector/config.py", line 31, in 
__read_git_config__
    os.chdir(repo)

Original issue reported on code.google.com by [email protected] on 18 Oct 2013 at 4:03

Add support for bare repositories

It would be nice if gitinspector supported bare git repositories.  Currently it 
just quietly fails without an error message.

At least initially we might constrain how rich the report can be, but 
eventually maybe we could clone the bare repo into a $TEMP location (maybe 
given a branch/tag as well) and run the full reports.

I've attached an initial patch as an RFC to introduce this support.  Probably 
don't want to blindly merge it, but it might open up some discussion.

I'm not a Python expert, so cut me some slack on the syntax.  I am pretty good 
at cut-n-paste, though.  :P

Original issue reported on code.google.com by [email protected] on 24 Jul 2013 at 5:44

Attachments:

Translation to Polish

New translation for Polish language. .po files in attachment

Original issue reported on code.google.com by kamila.chyla on 23 Aug 2013 at 8:44

Attachments:

Speed up the changes module

It should be possible to slightly speed up analysis in the changes module by 
threading the operation and separating the git log in "chunks" of equal size 
distributed over all available cores.

/Adam Waldenberg

Original issue reported on code.google.com by [email protected] on 30 Jul 2013 at 12:57

gitinspector crashed on Windows 8

Reproduce the failure

1. Windows 8 install Git-1.8.3-preview20130601 with Advance(cheetah plugin)
2. Python 3.3
3. Run with Powershell or Cmd

What is the expected output? What do you see instead?
Expect normal outcome, but only get parts.

Please use labels and text to provide additional information.
Command Prompt Print:


PS C:\Users\ZhijieWang> cd Eclipse_WorkSpace
PS C:\Users\ZhijieWang\Eclipse_WorkSpace> py gitinspector/gitinspector.py 
PittClass
The following historical commit information, by author, was found in the 
repository:

←[1mAuthor                     Commits    Insertions      Deletions    % of 
changes←[0;0m
Zhijie Wang                      4           514            237          100.00

Traceback (most recent call last):
  File "gitinspector/gitinspector.py", line 196, in <module>
  File "gitinspector/gitinspector.py", line 188, in main
  File "gitinspector/gitinspector.py", line 81, in output
  File "C:\Users\ZhijieWang\Eclipse_WorkSpace\gitinspector\outputable.py", line 38, in output
    outputable.output_text()
  File "C:\Users\ZhijieWang\Eclipse_WorkSpace\gitinspector\blame.py", line 214, in output_text
    print(textwrap.fill(_(BLAME_INFO_TEXT) + ":", width=terminal.get_size()[0]) + "\n")
  File "C:\Users\ZhijieWang\Eclipse_WorkSpace\gitinspector\terminal.py", line 97, in get_size
    (width, height) = __get_size_windows__()
TypeError: 'NoneType' object is not iterable
PS C:\Users\ZhijieWang\Eclipse_WorkSpace> ls


    Directory: C:\Users\ZhijieWang\Eclipse_WorkSpace


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         6/17/2013   7:22 PM            .metadata
d----         6/10/2013   3:22 PM            CodeJamQualificationRound
d----         6/10/2013   3:22 PM            CodeJamRound1B
d----         7/21/2013   9:42 PM            gitinspector
d----         6/10/2013   3:22 PM            Othelo
d----         7/19/2013   8:03 PM            PittClass
d----          7/9/2013   4:51 PM            RemoteSystemsTempFiles
d----         6/10/2013   3:22 PM            round1A
d----         6/10/2013   3:22 PM            Round1B
d----         6/10/2013   3:22 PM            SchoolConnect


PS C:\Users\ZhijieWang\Eclipse_WorkSpace>

Original issue reported on code.google.com by [email protected] on 22 Jul 2013 at 1:49

Responsive HTML theme

Hello gitinspector folks. I'm using gitinspector to chew through a handful of 
repositories and output the reports to `html`. I am a front-end developer and 
interested in developing a more responsive, modern UI for my reports - but 
instead of just hacking my local copy I was wondering what the Correct Way™ 
to go about this was to be ab able to commit my changes bak upstream, or as an 
alternative output format if other want to use it.

Is there a git repository of the source somewhere I could fork and commit my 
changes, or what's my best bet for adding to what you already have without my 
codebase going stale?

Thanks for the help!

Original issue reported on code.google.com by [email protected] on 15 Apr 2014 at 9:52

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.