This repository contains information regarding my Google Summer of Code project: Build CHAOSS Risk and Growth Maturity and Decline Metrics in Augur.
Augur is fully functional prototyping web stack for CHAOSS metrics. It provides structured data mined from git repositories using a plugin architecture that incorporates other open source metrics projects like Facade and FOSSology. The main aim of this project is to extend Augur’s functionality by implementing Risk and Growth-Maturity-Decline CHAOSS metrics and use cases with a focus on the open source community manager use case. This project, with a focus on the community manager use case, will allow open source community managers to leverage Risk and Growth-Maturity-Decline metrics to better manage their communities and projects.
This phase began with understanding Augur's new architecture and the Unified Database schema, after which we came up with an approach to begin implementing evolution (growth-maturity-decline) metrics. I implemented various evolution metrics & and a few risk metrics in this phase. Apart from implementing metrics, I also helped improve the new developer experience by documenting the steps to implementing metrics in Augur.
A lot happened in this phase. This phase began with Augur's new UI being merged into the dev
branch. I continued implementing metrics, updating documentation and writing tests. I also built two new workers, one for fetching GitHub repository metadata & the other for fetching GitHub pull request data. These workers increased Augur's data collection allowing various new metrics to be implemented.
In this phase, I continued working on the workers and implemented pull request related metrics. The pull requests worker and the repository metadata worker were updated to fetch more data. I also wrote a python script that generates the config file improving the new developer experience.
- Implement 'code_changes' metric
- Evolution metrics implementation
- Refactor and add routes for evolution metrics
- Added unit test & docs
- Implement Evolution & Risk Metrics
- 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
- dev: Add utility api endpoints
- dev: refactor metric implementations to include repo_name
- dev: Add GitHub Repo Info Worker
- dev: Bug fixes in Repo Info Worker & Metric implementations
- Make gh_repo_info_worker compatible with broker
- Fix gh_repo_info_worker
- Add setup.py to gh_repo_info_worker & API Docs update
- Add Pull Request Worker
- Implement metrics
- Update PR worker
- PR metric implementations & PR worker bug fixes