GSoC Week 5
This week officially marked the end of Coding Phase 1 and the first evaluation period (which I succesfully passed 🎉). Also, Augur’s new UI (which is pretty cool) was merged into the dev
branch (it’s not fully functional yet, but it’s a big moment for Augur). The old stable version of Augur can be currently found in the stable-demo
branch.
Meeting Summary
Date: Tuesday, 25th June 2019 & Friday, 28th June 2019
- Start work on adding Pull Requests to Augur Unified Database.
- Update the local installation instructions for Augur.
- Get all the API & unit tests completed.
- Update API documentation:
- Move all GHTorrent API endpoints to Legacy.
- Remove the Facade API endpoints from the docs.
- Improve the Augur DB API documentation.
Work Done This Week
- Metrics Implemented:
- Issue Participants: returns the number of people participating in issue discussion.
- Issue Throughput: returns a ratio of number of issues closed to total issues.
- Metrics Refactored:
- Refactored certain time series metrics to include a ‘date’ field (previously, some time series metrics returned date fields labelled as ‘commit_date’, ‘issue_date’, etc.).
- API Documentation:
- Moved all GHTorrent endpoints to the GHTorrent Legacy section.
- Moved all GitHub API endpoints to the GitHub API endpoint section.
- Removed all Facade endpoints from the documentation.
- Updated the Augur DB endpoint documentation:
- Added a single line description of each implemented metric.
- Documented certain undocumented endpoints.
- Improved the parameter descriptions.
- Testing:
- Updated the Augur DB based metric implementation unit tests & the API endpoint tests.
- Added unit tests & API endpoint tests for new metric implementations.
- Misc:
- Helped setting up the
stable-demo
branch. - Getting all new metric implementations, documentation updates, etc. without the new UI to the
stable-demo
branch.
- Helped setting up the
Pull Requests:
- Metric implementations & API docs update
- stable-demo: added metrics & api-docs from dev
- Dev: Remove Facade Legacy endpoints from api-docs
- stable demo: Added & updated augur_db tests & refactor metric implementations
- dev: Added & updated augur_db tests & refactor metric implementations
Work in Progress:
- Adding Pull Requests to the Augur Unified Database:
- Defining tables.
- Creating a worker for fetching Pull Request data.
- Installation Instructions for Augur [Almost ready]
Challenges Encountered
- Implementing the issue throughput metric was a bit of challenge. I wanted to calculate the issue throughput of different repositories in repo groups on the database side itself. This required messing around with sub queries & grouping them together in SQL. After quite a bit of googling & searching for answers on StackOverflow I was able to implement the issue throughput metric.
Future Work
- Adding Pull Requests to the Augur Unified Database.
- Installation Instructions for Augur.
- More future plans for next week to be decided in the next meeting on Monday, 1st July 2019.