GSoC: The End

GSoC 2019 with coala

Posted by Akshat on August 18, 2019

So it’s the final week of GSoC, finally this dream (it’s feels like it!) of 3 months is coming to and end. Final code submission and evaluations start from tommorrow, so a update on my progress:

  • I successfully implemented a new action for DuplicateFileBear - DeleteFileAction. Two instances of DeleteFileAction are passed when Result is yielded, one for each duplicate file. On applying first action it will delete first file and on applying the second action it will delete the second file.

    Click below to see a little demo Sorry couldn't display

  • I finally put what I did in Phase 2 (Support for bears to provide multiple patches) to use. Initially I had thought of implementing a new bear which will provide multiple patches but couldn’t find a good idea for it. Then when I was playing around with some bears to look for some custom actions which will be helpful, I realised that FilenameBear might just be what I was looking for. So user can specify what type of naming convention (camelCase, snake_case, ..) should all the filenames follow, and if any file doesn’t follow this convention then coala will change it for you. But if user doesn’t specify what naming convention to follow and uses the bear then coala tries to guess the convention depending on the language, and if it cannot guess the snake_case is used. But now if coala cannot guess naming convention then multiple patches are provided - snake_case is the original patch, and camelCase, Space Case,.. are provided as alternate patches.

    Again click to see a demo of this Sorry couldn't display

    So you might have noticed one thing in the demo that alternate patches are shown as Show AlternatePatch 1, it would be better if Show camelCase or Show Space Case was displayed. But adding this feature will require initialising with action with a custom description which I plan on doing after GSoC ends. Click here to see the PR implementing this, travis and appveyor are passing but coverage is still not 100%. That needs to be done.

  • I also have to write a tutorial which describes how to write bears which can suggest multiple patches. Also I have to write my final GSoC report. I will try to finish all the work today itself (hopefully).

So this most probably my last blog on GSoC and I have grown to like writing them. These three months having been a very good experience and I would like to thank coala for giving me this opportunity. I learned many things across this three months and also I have really liked contributing to open source. I hope I pass the final evaluations as well and get all of my code merged. Also thanks to my mentor Abhinav Kaushlya who has been super active and replies almost immediately. Goodbye!!