In partial completion of COMP 4905 at Carleton University for Olga Baysal and in partnership with Lance Wang.
This python program will run through all or specified users Github Repositories and return a
list of tuples with the Github Repo ID then the relevance score of that user to that repository. It uses Repopal's implementation outlined in this paper.
NOTE: This program can give a 0 score relevance. This is because the final calculation mulitplies the three scores (time-relevance, stargazer-relevance, readme-relevance). Due to this, if any one of these algorithms return 0, the relevance score to a specific repo will be zero.
This program takes in a set of repositories from the MongoDB supplied by Lance Wang in efforts
to aid in his Masters Thesis research. TBD link
This program requires a running MongoDB on the localhost machine (or the location of the database
can be changed in the code). It can be run with 'python main.py' with the following parameters:
- To view all users from the study's recommendation in 'output.txt'
python main.py -a/--all
- To view a specific user's recommendations
python main.py -u/--user
- To specify the number of recommendations of a user
python main.py -n/--num
- To list help
python main.py -h/--help
NOTE: This will create mulitple files in the format output_.txt
-
Linux
cat sample_file.txt | while read line; do python main.py -u line; done -
Windows
foreach($line in Get-Content .\sample_file.txt) {
$cmd = python main.py -u $line
Start-Process $cmd }Repopal authors
Yun Zhang, Xin Xia, Jianling Sun - College of Computer Science and Technology, Zhejiang University, Hangzhou, China
David Lo, Pavneet Singh Kochhar - School of Information Systems, Singapore Management University, Singapore
Quanlai Li - University of California, Berkeley, USA