Category: Blog

Quantum Flow Engineering Newsletter #3

Another week, another Quantum Flow engineering newsletter!  We have a lot to cover, so let me get started. Michael Layzell is getting really close on his work on bug 1346415 in order to collect native stacks from Background Hang Reports

Posted in Blog Tagged with: , ,

Quantum Flow Engineering Newsletter #2

This past week was another busy week chasing down performance issues in Firefox.  We managed to knock out a few issues, get closer to close out a couple of really high impact ones, and are making good progress on starting

Posted in Blog Tagged with: , ,

Quantum Flow Engineering Newsletter #1

A while ago a number of engineers including myself started to look into a performance project that turned into Quantum Flow.  The focus of the project is finding and prioritising the issues across the entire browser so we will need

Posted in Blog Tagged with: , ,

US travel ban

First things first, this post reflects my personal viewpoints and not that of my employer.  With that boilerplate out of the way, I want to talk about what’s happening in the US and how it’s going to affect me. What

Posted in Blog Tagged with:

Project SpiderNode

Some time around 4 weeks ago, a few of us got together to investigate what it would take to implement the Electron API on top of Gecko.  Electron consists of two parts: a Node environment with a few additional Node

Posted in Blog Tagged with: , ,

Building Firefox With clang-cl: A Status Update

Last June, I wrote about enabling building Firefox with clang-cl.  We didn’t get these builds up on the infrastructure and things regressed on both the Mozilla and LLVM side, and we got to a state where clang-cl either wouldn’t compile

Posted in Blog Tagged with: , ,

C++ Static Analysis using Clang

Introduction Large code bases typically develop rules around how various code constructs should be used.  These rules help eliminate bugs resulting from common mistakes.  C++ gives programmers a good amount of power over enforcing such rules using the facilities that

Posted in Blog Tagged with: , , ,

My experience adding a new build type using TaskCluster

TaskCluster is Mozilla’s task queuing, scheduling and execution service.  It allows the user to schedule a DAG representing a task graph that describes a some tasks and their dependencies, and how to execute them, and it schedules them to run

Posted in Blog Tagged with: ,

Tab audio indicators and muting in Firefox Nightly

Sometimes when you have several tabs open, and one of them starts to make some noise, you may wonder where the noise is coming from.  Other times, you may want to quickly mute a tab without figuring out if the

Posted in Blog Tagged with: ,

Local Autoland

It has been a while since I’ve asked myself: “Is the tree open?” These days, when I want to land something on mozilla-inound, I switch to my git-workdir[1], I cherry-pick the commit that I want to land, and I type

Posted in Blog Tagged with: ,