Blog Archives

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: ,

Intercepting beacons through service workers

Beacons are a way to send asynchronous pings to a server for the purposes such as logging and analytics.  The API itself doesn’t give you a way to get notified when the ping has been successfully sent, which is intentional

Posted in Blog Tagged with: , ,

Running Microsoft Visual C++ 2013 under Wine on Linux

The Wine project lets you run Windows programs on other operating systems, such as Linux.  I spent some time recently trying to see what it would take to run Visual C++ 2013 Update 4 under Linux using Wine. The first

Posted in Blog Tagged with: ,

Pushing to Mozilla hg servers directly from git

I’ve been using git for a few years for doing Mozilla work, which has caused me to have to go through a painful workflow every single time that I push code to inbound.  Now, glandium has written this awesome tool

Posted in Blog Tagged with: , ,

Building Firefox on Windows with clang-cl

Over the past three weeks or so, Jeff Muizelaar and I started to investigate what it would take for us to be able to use clang-cl to build Firefox on Windows, and I’m really excited to report that as of

Posted in Blog Tagged with: , ,