Skip to content

Latest commit

 

History

History
229 lines (206 loc) · 11 KB

index.md

File metadata and controls

229 lines (206 loc) · 11 KB
layout url student organisation organisation_link project project_link tarball mentors phase bio social email blog activity
report
hemang
Hemang Kumar
coala
Improve coala Website & Supporting Tools
[Lasse Schuirmann](https://github.com/sils) & [Fabian Neuschmidt](https://github.com/fneu)
I'm a final year student of Computer Science & Engineering at University School of Information, Communication & Technology, GGS IP University. I participated in GSoC and worked with [coala](coala.io) to facilitate users to use coala online and functionality for one click Git Repository linting. I also worked on a bot to generate coafile, worked on improving UI of coala-html and configurability of coala-projects. I also worked on adding Notification and Thread support in the IGitt library.
GitHub
username
hemangsk
GitLab
username
hemangsk
Gitter
username
hemangsk
HackerRank
username
hemangsk
link
https://hackerrank/hemang
hemangsk@gmail.com
0
repo
coala-quickstart
details
Add --allow-incomplete-sections mode and bump coala version.
1
repo
coalaCSS
details
Create a CSS library to have consistency throughout coala web projects.
1
repo
coala Projects
details
Commits **f26ae52** through **6497def** were part of GSoC.
2
repo
landing-frontend
details
Commits **7e2efb3** through **a48a08a** were part of GSoC.
5
repo
IGitt
details
Add create_mr, create_file, delete and fork
7
repo
IGitt
details
Add notification and threads support
10
repo
GitMate-2
details
Add coala_online in INSTALLED_APPS
11
repo
GitMate-2
details
Use celery task to spawn Docker container
15
repo
GitMate-2
details
Set CELERY_RESULT_BACKEND to amqp
15
repo
GitMate-2
details
Set CELERY_RESULT_BACKEND to amqp
16
19
repo
GitMate-2
details
Rename tokens and add default value
20
repo
GitMate-2
details
Return pull request object on retries
21
repo
coala-html
details
Commits **bb9d9d6** through **6f67174** were part of GSoC
22
repo
landing
details
Commits **095f1561** through **a206ef6d** were part of GSoC
23
repo
coala-online-docker
details
Install shallow clone of quickstart
24
repo
coala-online-docker
details
Add script to run analysis and quickstart
24
repo
coala-online-docker
details
Add temp directory for file permissions
25
25
repo
coala-online-docker
details
Keep newline characters in coafile string
25
repo
coala-online-docker
details
Add coafile in bear mode response

Improve coala Website and Supporting Tools

Work Done

The coala Online module now has support for all the bears, bears with optional as well as non optional settings, everything can be configured. Users can perform code analysis online with any given bear. The project enhanced coala-html by introducing results and bear search and filtering on basis of parameters. A coafile_bot is created which can be used to generate coala configuration file for any given GitHub repository. One click git repository linting is possible online. A CSS framework was built upon MaterializeCSS for coala web projects coalaCSS and its being used via CDN at webservices.coala.io, projects.coala.io, coala.io, school.coala.io and other coala web projects.


coala-quickstart has got a new running mode, allow-incomplete-sections which helps users to create a coafile without omitting bears with non optional settings.


IGitt now supports Notifications and Threads for GitHub and partially for GitLab (Notifications API is not available on GitLab as of now).


projects.coala.io is now Jekyll based and configurable via a YAML file. It also has a more conflict free approach while simultaneously adding projects.


coala Online module is live and running here.


coala-html is more powerful with omni search bar and UI enhancements.

Challenges

It was a great learning experience overall, but a few challenges which proved to be a great enriching experience was working with VCRpy for IGitt tests, Working docker images which can be spawned inside a docker container itself, Visualizing the bear selection user interface on the coala Online module. These were pretty tough challenges and I was able to complete it with research, consistency but most importantly with guidance of my mentors, who were always there for me throughout the GSoC page for which I am really greatful. I learnt a lot from them, and it was an extremely great experience to work under their mentorship.

Work to be done

The first task, is to get all the supporting tools like coala Online, coala-html and projects.coala.io need to incooperate user feedback on the changes user experience.


coafile_bot will be able to do wonders on GitLab as well once GitLab introduces Notification API. Initally I want to promote it as much as I can so that developers can have general awareness about linting, the tools available and how coala comes into the picture, and from there they can use coafile bot and then ultimately improve their git workflow.


Essentially the projects.coala.io page can be used for a particular program like GSoC, GCI and also for general project management of an organization. Now some organization may want more flexibility on a particular feature. Depending on what more coala needs for project management, and depending upon consensus of other organization voting on a new feature, there is a great room for improvement in projects.coala.io