Giter Site home page Giter Site logo

kenja's Issues

Moving feature of recording syntax trees files to option.

When kenja converts historage, kenja makes syntax trees files into syntax_trees dir.
However, these files are temporal files.
These files are never used for mining Historage.

I think the feature storing syntax trees should be an option feature (for DEBUG).

Rename Refactor convert.py

Rename function add_main_command → add_main_argument (also add_option_command)
Not critical but it might be much easier to understand.

bin/kenja-parser.jarの見直し

現在,bin/kenja-paser.jarはシンボリックリンクで,mvnが作成するparserのパスを指定している.
WindowsのGitはシンボリックリンクをうまく扱わないようなので,このままだとWindowsユーザが使用するのに問題あり.

メソッド抽出リファクタリングの検出で不思議な出力をする

jEditの履歴において,

抽出元メソッド:FtpVFS._createInputStream(View,Buffer,String,boolean)
抽出後のメソッド:getFtpClient
類似度:0.323943662

というメソッド抽出リファクタリングの候補が検出されるが,
_createInputStream(View, Buffer, String, boolean)というメソッドは
検出したコミット間のbefore側には存在せず,
_createInputStream(View,String,boolean)というメソッドのみが存在する.
これは,kenjaが勝手にリネームを含めたメソッド抽出の検出を試みているためであり,
また,抽出元のメソッド名をafter側から取得しているのが原因である.

メソッド抽出リファクタリングの検出時にリネームも考慮するのかどうかを検討した上でBug Fixを実施する.

Problem of maximum file name length.

Maximum length of the file name depends on file system.
However, Kenja make a file which have over 255 characters name in Historage(git).
We should consider how to avoid this problem.

Sort order of blobs and trees of a tree.

According to specification of the Git, we need to sort the order of blobs and trees in a tree.
However, current implementation of the kenja doesn't follow this specification.

In order to fix this bug, we need to modify kenja/git/util.py.

jEditでExtract Methodを検出できない

少なくとも,0.3以降,jEditからExtract Methodを検出できなくなっているので対応する.
なお,sigss_kagawaまたは0.2ではExtract Methodを問題無く検出可能.

num_argsの扱い

Extract Methodの検出で引数の個数の対応が取れてないことがたまにある.

--non-parallelオプションの削除

現状,--non-parallelオプションを付加しないと正常に動作しないのに,このオプションがあるのはいかがなものか.

Failed to setup kenja behind proxy

Thanks for the awesome tool!
I tried to install kenja with PC behind proxy and faced following problem.

$ python setup.py install
kenja/lib/java/java-parser.jar does not exist. Do you want to download it?[y/n]
y
md5 hash of kenja/lib/java/java-parser.jar is incorrect! remove it and tryagain.

This is because download_parser(self) method invokes urllib.urlretrieve() that does not consider proxy configuration.

    def download_parser(self):
        urllib.urlretrieve(self.parser_location, self.parser_path)

This can be modified by changing code as follows, since urllib2.urlopen() works based on http_proxy and https_proxy environment variables.

    def download_parser(self):
        with open(self.parser_path, 'wb') as f:
            f.write(urllib2.urlopen(self.parser_location).read())
            f.close()

Also I faced the similar problem on executing copy_csharp_parser() method. In this case I commented out the line and avoid the problem, since I only targets java source code in this time.

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.