My Journey Through GSoC ‘19

Week 1

Laksh Singla
InterMine
2 min readJun 10, 2019

--

Around the start of this week (or rather before the end of the Community Bonding Period), my PR upgrading the dependencies of imjs library got merged. Following is the link of the same.

I started working up on upgrading the grunt and grunt-contrib-coffee library but was making no progress. I was stuck on the same issue and tried using linters for VSCode (my primary editor), but to no avail. Aman helped me by fixing one of the many similar such problems which were to come up, smartly by compiling the Coffeescript code in a top down manner to see which file was causing the error. Turns out that the compiler was unable to detect a similar error if it was presented in a specific manner. I wrote a bash script to automate finding such errors, and voila, the files built. However, even after building there were some errors in uglification as Coffeescript now compiled to ES6, hence a different branch of grunt-contrib-uglify was used which supported ES6.

The library built perfectly after doing as above, but around 13 tests failed. What was more perplexing was that the library, on serving had some ‘runtime’ errors. (I know JS is an interpreted language, and there are no ‘compile’ time errors etc etc., but what I mean is that it perfectly transpiled to ES6, however some errors persisted in the browser). Those 13 tests were related to Options class, and I still am unable to understand why it is not working as expected. Will try creating a basic logging framework later on to see the calls up the prototype chain.

Bugs bugs everywhere!!!

Will need more coffee (or maybe less of it)

Laksh Singla

--

--

Laksh Singla
InterMine

Open source enthusiast, Rock Lover, GSoC ’19 @ InterMine…