Nicolas Chevobbe

2016 Challenge : Week #15

If you did not, read the initial blog post announcing the challenge

At the beginning of this week, I was waiting for two of my patches to be reviewed. The first one was a bug on the Style Editor, which couldn’t load a sourcemap original file if it was declared in an inline style (Bug 1262919). When a sourcemap original file is shown on the editor, the panel shows the file the sourcemap was declared in. In the case of an inline style element, there was no name to retrieve, and thus an error was thrown. The reviewer had some comments over this first patch, so I fixed them and the bug was resolved on Wednesday.

The other bug I was waiting a review for (Bug 1263439), was about the Rules Panel being empty when the <link> tag’s href was generated with URL.createObjectURL() and contained a sourcemap. This first patch seemed fine for Patrick Brosset, but he wanted me to write a test for this issue, so did I. After some minor comments, my patch landed on fx-team. But it was then backed-out because there were ESLint errors I did not see, as there were an update, from ESLint 1 to ESLint 2, made on the project while I was working on this bug. I fixed the lint errors, and the bug was resolved on Friday.

Bugzilla Timeline - Week 15
Week 15 - Success

This week I also worked on making console.group collapsible (Bug 1088360). The patch was ready to be reviewed, but as I asked Brian Grinstead in IRC if he was willing to do it, he informed me that he was working with Lin Clark on an experimental React-based console frontend. Because of this, he told me that he’d prefer to implement it there, in order to not add more tests to migrate to the new frontend. This rewrite didn’t start long ago and so console.group isn’t even implemented. Though, he asked me if I would want to help them to work on this. This was a perfect timing, because I wanted to ask Lin some simple bugs I could work on to learn React and Redux.

Lin was kind enough to explain me the basics of the new console during a video call and I started working on it after that. For this project, the workflow is different from what I’m now used to. The project is hosted on Github, as a fork of mozilla-central (https://github.com/bgrins/gecko-dev/issues). So when I have a patch for an issue, I have to submit a pull request on this repo, which would then be merged. For now I :

Things are going great so far, Lin really helps me a lot by precisely describing what needs to be done in the issues, so I know where to start and have enough information to succeed. By the way, you can check Lin’s blog in which she explains how React/Flux/Redux works. She made it very simple, accessible and understable, without any line of code.

This project looks great and I’m glad to work on it. Now I have to find a way to integrate it in my challenge. Maybe I should count merged PR as a “fixed bug”, but I’m not sure. I may not do it at all, and see this as a side project to my challenge.


This week I also, finally, got my hands on Artifact build for Firefox. You can check was is it here : Artifact build on MDN. In short, it downloads pre-built C++ components so you don’t have to build it on your computer. As I don’t have to modify any C++ file, and given that a full build on my laptop takes an hour and a half, it looked great for me. So I set up my repo, and now I can build in less than 10 minutes, which is great.

In other news, I also added a simple chart to my homepage, in order to visualize the number of bugs I fixed in this challenge in comparison with my goals.

Challenge chart - Week 15
Week 15 - Ahead of my goals

I’m quite ahead of what I aimed for so it’s great. Maybe I could reach some kind of undeclared goal : have 100 bugs fixed. I’m behind on this one, and not running after it especially, but this would be rad if I can make it :)