Microtasks for GSOC Idea #3 : Support of Source Code Related Metrics READ MORE
Note In case you face some problem opening the jupyter notebooks available in this repository. You can use Binder to view those :)
- Task: Set up Perceval to be executed from PyCharm.
- Explanation can be found here
- Task: Create a Python script to execute Perceval via its Python interface using the Git and GitHub backends. Feel free to select any target repository.
- The scripts can be found here
- I've chosen one of my personal projects i.e MeetInTheMiddle for this task.
-
Task: : Based on the JSON documents produced by Perceval and its source code, try to answer the following questions:
- What is the meaning of the JSON attribute 'timestamp'?
- What is the meaning of the JSON attribute 'updated_on'?
- What is the meaning of the JSON attribute 'origin'?
- What is the meaning of the JSON attribute 'category'?
- What is the meaning of the JSON attribute 'uuid'?
- Which are the common methods of the Perceval backends?
- List and explain at least 3 Git commands used by the Perceval backend.
-
Answers to the above questions can be found here
-
Task: : Create a Python script to fetch data from SoftwareHeritage using its API. Given a target GitHub repository, the script should return a message if the repository is not available on SoftwareHeritage or the date of the last visit.
- The script should rely on the endpoints: origin and visits.
- Please use the Python library requests to issue requests to the SofwareHeritage API.
-
The script can be found here
- Task: Set up Graal to be executed from PyCharm.
- Explanation can be found here
- Task: Create a Python script to execute Graal via its Python interface using the CoCom and CoLic backends. Feel free to select any target repository, for instance the GitHub repository hosting Toolkit.
- The scripts and installation steps can be found here
-
Task: Based on the JSON documents produced by Graal and its source code, try to answer the following questions:
- Which are the common methods of the Graal backends?
- List and explain at least 2 Git commands used by Graal (and not implemented in Perceval).
-
Answers to the above questions can be found here
-
Task: Create a Python script to execute flake8 for a given commit of any Git repository. Given a commit SHA and a Git repository, the script should clone the repository (if it doesn't exist locally), perform a checkout based on the commit SHA and execute flake8 on that checkout. The script should return a message that either lists the errors found or "OK" if flake8 successfully ended.
-
The script can be found here
-
Task: Submit at least a PR to one of the GrimoireLab repositories to fix an issue, improve the documentation, etc.
-
I've produced 5 pull requests until this point.
-
Information related to each pull request can be found here
- Clone the repository
$ git clone https://github.com/inishchith/chaoss-microtasks.git
- Install dependencies from the corresponding requirements of microtask-*
Note:
- Each folder contains one microtask.
readme.md
file under each directory contains information about the corresponding task.