GSoC: Officially begins!

GSoC 2019 with coala

Posted by Akshat on June 13, 2019

It’s been over 2 weeks since Coding Phase 1 began and 10 days remaining for evaluations of Phase 1 to start, and I am not very happy with the progress I have made so far. To be fair I did take a 5 day holiday. I still have to write two blogs for this phase and I thought I will write one today while enjoying IND vs NZ, but stupid rains!

What was my plan?

So my idea was add a new attribute actions to Result class. This is a list of all the action instances. To allow this I had to revamp all the other existing actions. Currently, Result object is passed as an arugment to methods of action classes. But now actions instances were inside Result object and I had to pass that Result object to the action. Confusing right? I spent several minutes thinking about this and came up with a genius plan to pass necessary arguements to action objects when they are instantiated in a Result. I had started implementing this at the end of bonding period, made changes to Result and all the existing actions classes. Also wrote a new action(AddNewLineAction) for GitCommitBear, it adds a new line between shortlog and body of the commit message if it is not there. Also made all the changes ConsoleInteraction and Processing modules to incorporate the changes to result and action class. If you want to see them click here. Remember in the last blog I had written that I had this part figured I out, well guess what, I was wrong.

So what went wrong?

Till now I hadn’t noticed that when ShowPatchAction is applied, a result object is passed a parameter to a function call. But ShowPatchAction is a element of result.actions. And it’s just not worth to change the function.

What’s the plan now?

After I realised this I again spent several more minutes thinking and came up with another genius plan but I have been told to write two blog for each phase and I think this blog is long enough.