kenja
kenja copied to clipboard
Kenja repository
Current Status
Kenja currently only support the feature of historage converter in Python3.
Requirements
for General
-
python 3.7
-
git (confirmed versions)
- 2.23.0
for Java
- Java
for CSharp
Windows
- .NET Framework
Mac or Linux
- Mono
Dependencies
Kenja needs following libraries.
Installation
python setup.py install
Installation (for developers)
sh install.sh
If you cannot
How to use
Convert your git repository to historage
kenja.historage.convert <your_repository_path> <path_of_historage_directory> <path_of_syntax_tree_directory>
- Use path of empty directory for <path_of_historage_directory>
- Historage (a Git repository) will be created here.
- Kenja will make this directory automatically if you give non-existing directory.
- use
--disable-python,--disable-csharpor--disable-javaoption to avoid handling.py,.csor.javafiles.
Store syntax trees infromation [for DEBUG]
kenja.historage.convert --syntax-trees-dir=<path_of_syntax_tree_directory> <your_repository_path> <path_of_historage_directory>
- Information of syntax trees will be stored in the <path_of_syntax_tree_directory>
- We recommend you to provide path of empty dir for <path_of_syntax_tree_directory>
- Kenja will make a lot of files which contains syntax information to construct a historage.
- Kenja will make this directory automatically if you give non-existing directory.
Detect extract method from your historage
Output as CSV format
kenja.detection.extract_method all <historage_path>
Output as JSON format
kenja.detection.extract_method --format json all <historage_path>
Detect pull up method from your historage
kenja.detection.pull_up_method all <historage_path>
Development
Install latest version of kenja
use install.sh
sh install.sh
Requirements
Apache Maven 2 or 3
Notes
- The Historage which converted by kenja is case sensitive, because Git is case sensitive too.
- Your local file system should use case sensitive file system when you construct Historage by kenja.