Latest revision as of 08:47, 21 August 2012

Contents

Bugzilla bugs are mandatory

Every change we commit MUST have a corresponding bug or enhancement in Bugzilla. Be sure to set the bug's Target Milestone correctly.

Git commit messages are mandatory

You MUST enter a message when you commit a change to Git. The message MUST include the number of the Bugzilla bug or enhancement.

Commit messages should be concise. It's best to say why you made the change, as opposed to saying what you changed.

Bad: "Bug 12345 - Fixed."

Better: "Bug 12345 - Added quartsToGallons() on calls to pumpGas()."

Best: "Bug 12345 - The input to the gas pump must be in gallons, not quarts."

If you want to write more about your changes, do it in Bugzilla.

Links between bugs and fixes are mandatory

When you resolve a bug, you MUST include the ID of your fix's Git commit. If there's more than one commit, include all of their IDs.

The easiest way to find the ID of a commit is with the Git Reflog view, which lists the commits in a particular branch. Double-click on your commit to open it in the Commit Viewer. Right-click on the ID at the top of the Commit Viewer and choose Copy SHA-1.

Now you can paste the commit ID into Bugzilla.

File encoding

We use the UTF-8 encoding for all of our files. Set your workspace's Text File Encoding preference to UTF-8. The preference is on the General > Workspace preference page.

Builds

Our Nightly builds run twice a day, at 9 AM and 9 PM Eastern U.S. time. If no changes were made since the last build, then a new build is not produced.

Builds for milestones and releases run as needed.

Which files are included in the build

Our builds compile the latest code from the master branch. There are also a few projects which are not compiled, but are used during the build. For example, we have a set of projects which contain the .egl and .js files for our widgets. The build creates the RUI widget libraries from them.