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.

Pull Requests:

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.


443 Words

2019-07-01 00:32 +0530