Skip to content

Releases: lrp2755/Model-Driven-Development

rm3

Choose a tag to compare

@lrp2755 lrp2755 released this 16 Oct 14:31
948e603

Getting Started

Overall, this README will overlook how to run the 2 python files repo_miner.py and test_repo.py and the additions from Homework 5!

Usage

repo_miner.py for merge and summarize for HW #5 be run with the command: python3 -m repo_miner summarize --commits commits.csv --issues issues.csv

test_repo.py can be run directly from the python file or the CI.

Sample Results

For Homework #5, in order to sample the code I utilized the public MrB141107/Hacktoberfest_2022 repository. I googled "public repositories in github" and found that this one worked well! I tried the octocat hello world and it took too many attempts to find the system and get the issues so I decided to look for another one!
I started by re-creating commits.csv and issues.csv to match MrB141107/Hacktoberfest_2022 and then I ran the merge and summarize command with the command " python3 -m repo_miner summarize --commits commits.csv --issues issues.csv "
The output of this command was:

Top 5 committers:
IncrediblePro: 33 commits
Yamilini2000: 3 commits
Popstar Idhant: 3 commits
Mr.B: 2 commits
Anirban Saha: 2 commits

Issue close rate: 1.0
Avg. issue open duration: 3.0 days

In order to get accurate results the "python3 -m repo_miner fetch-issues --repo MrB141107/Hacktoberfest_2022 --out issues.csv" command and "python3 -m repo_miner fetch-commits --repo MrB141107/Hacktoberfest_2022 --out commits.csv" must be run with the MrB141107/Hacktoberfest_2022 repo so summarize will work correctly!

Since the write up also says "Sample output (in your data/ directory) for a well-known repo." summarize will write to summarize.txt and summarize data so the sample output is in the directory as well.

rm2

rm2

Choose a tag to compare

@lrp2755 lrp2755 released this 02 Oct 06:21
b504717

This repository is based off of the past 2 weeks of the homeworks from last week and builds upon the same topics.
Compared to last week with just setting up the repository, I've updated repo_miner.py to have a new fetch_issues method based on the file we were given for our homework. This method will create a dataframe of issues that are not PRs from a given repository. The result of this method running is in issues.csv.
In addition with the repo_miner.py file, I also updated test_repo.py to include 3 new tests. These tests will access the validity of fetch_issues() by testing if the duration days are accurate, confirming that PRs are not included, and that the date is parsed and ISO correctly.

rm1

rm1

Choose a tag to compare

@lrp2755 lrp2755 released this 26 Sep 02:44
8556a6e

This repository is based off of the first start of the homework from last week and builds upon the same topics. Compared to last week with just setting up the repository, I've updated repo_miner.py to have a couple of new methods based on the file we were given for our homework. More specifically, I edited the fetch_commits() method that will create a dataframe of commits from a given repository. The result of this method running is in commits.csv. In addition with the repo_miner.py file, I also updated test_repo.py to include 2 new tests. These tests will test the validity of fetch_commits() including cases where max_commits is used and when there are no commits int the repo.

repo_miner.py can be run with the command "python3 -m repo_miner fetch-commits --repo path --out commits.csv" for my specific repo, the final command is: "python3 -m repo_miner fetch-commits --repo lrp2755/Model-Driven-Development --out commits.csv"

test_repo.py can be run directly from the python file!

rm0

rm0

Choose a tag to compare

@lrp2755 lrp2755 released this 19 Sep 01:26
a66029c
  • Created merge from HW #1
  • The following were accomplished:
  • For this first homework, a Github repository was created in order to properly build our the start to our Project. For this first assignment, I created the rm0-dev branch, intitialized the Python 3 Virtual Enviornment, added requirements.txt which listed PyGithub, pandas, and pytest, created src/repo_miner.py which is currently just an empty file, and finally initialized GitHub Actions CI workflow to run pytest.