Fork me on GitHub

mozregression is a Python package, installable via setuptools or pip if you know how to do that, otherwise follow along with the OS-specific instructions:

  1. install MozillaBuild
  2. Run C:\mozilla-build\start-l10n.bat. This will give you a command-line prompt.
  3. Type this into the command-line and press Enter:
    easy_install mozregression
Run these commands in the Terminal:
curl -O
sudo python
sudo easy_install mozregression
Run these commands in the Terminal:
sudo apt-get install python-pip
sudo pip install mozregression
How To Use

Let's say you just found a bug in the current nightly build and you know that bug didn't exist in the nightly from a few months ago. You want to find the regression range of this bug (the window of commits the bug was introduced in).

To find the range run the mozregression command on the command-line (if you're on Windows this is Mozilla Build command-line, if you're on Mac or Linux this is the Terminal) and give it a known "good" date with the good argument:

mozregression --good=2010-03-16
You can also specify the most distant known "bad" nightly date with the bad argument.
mozregression --good=2010-03-16 --bad=2010-09-08

This will guide you through a bisection, automatically downloading and opening nightly builds from various dates (on new, clean profiles) and asking you whether the bug exists in them. After doing this a few times you'll get the regression range, something like this:

Last good nightly: 2010-09-08 First bad nightly: 2010-09-09


There's also a sister script, moznightly that will just download and run a nightly from a particular date:

moznightly --date=2010-07-23
Other Options
Run Thunderbird nightlies:
mozregression --app=thunderbird
Use nightlies from a different repo/branch
mozregression --repo=mozilla-1.9.2
Use a specific profile
mozregression --profile=/path/to/profile
Install addons
mozregression --addons="/path/to/addon,/other/addon"
Forward arguments to the browser
mozregression --args="-foreground,-P"
Get the code here and feel free to contribute and file issues.