Difference between revisions of "Thunderbird Bug Fix Lab"

From CDOT Wiki
Jump to: navigation, search
(Instructions)
(Instructions)
 
(15 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
This lab is designed to give you first-hand experience working through a real bug, from confirming to fixing to submitting a patch.  You will also get experience building and working with Thunderbird, which shares much of the same code with Firefox.
 
This lab is designed to give you first-hand experience working through a real bug, from confirming to fixing to submitting a patch.  You will also get experience building and working with Thunderbird, which shares much of the same code with Firefox.
  
== Instructions ==
+
== Introduction ==
  
 
A friend has told you about something they don't like in Mozilla Thunderbird.  "I got an email today, and it made a hyperlink out of some text that shouldn't have been underlined."
 
A friend has told you about something they don't like in Mozilla Thunderbird.  "I got an email today, and it made a hyperlink out of some text that shouldn't have been underlined."
Line 18: Line 18:
 
  I'll tentatively schedule 3:30 on Wednesday.
 
  I'll tentatively schedule 3:30 on Wednesday.
 
  We'll come to [mailto:S@Y...where S@Y...where] should we meet?
 
  We'll come to [mailto:S@Y...where S@Y...where] should we meet?
 +
 +
You rightly identify this as a bug to your friend, and offer to try and fix it.
 +
 +
== Instructions ==
 +
 +
# File a '''dummy bug''' using Mozilla's [http://landfill.mozilla.org/bugzilla-3.0-branch/ test bugzilla].  NOTE: use '''Unclassified''' and '''dump unwanted bugs here'''.
 +
# Do a '''debug''' build of '''Thunderbird'''.
 +
# Confirm the existence of this bug.  TIP: try creating a message with the text above, saving it to '''Drafts''', then open in '''Drafts''' to see how it gets rendered.
 +
# Fix the bug.  If you need a hint to figure out where to begin working, look [[Thunderbird Bug Fix Lab Hint|here]].
 +
# Create a patch
 +
# Test your patch [http://beaufour.dk/jst-review/ here] for common errors
 +
# Attach your patch to the dummy bug you filed in step 1
 +
# Get your patch reviewed by a classmate or your professor
 +
# Put your '''patch''' and '''review comments''' on your personal wiki page
 +
# Blog about the experience and include a link to wiki page
 +
 +
== List of Valid/Invalid Email Address ==
 +
 +
Here is a list of some valid and invalid email addresses for testing:
 +
 +
===Valid Addresses===
 +
* a@a.com
 +
* a.a@a.a
 +
* a.a@a.a.com
 +
 +
===Invalid Addresses===
 +
* a@.
 +
* a@..
 +
* a@..f
 +
* a@....f
 +
* @.
 +
* @.com
 +
* @a.com
 +
* @a
 +
* @a.
 +
* @a..
 +
* @a...com
 +
* a@a.a..a
  
 
== Resources ==
 
== Resources ==
 
* [http://developer.mozilla.org/en/docs/Creating_a_patch Creating a patch for Mozilla]
 
* [http://developer.mozilla.org/en/docs/Creating_a_patch Creating a patch for Mozilla]
* [http://developer.mozilla.org/devnews/index.php/2007/07/10/getting-a-patch-checked-in/ Instructions for getting a patch checked into the tree]
+
* [https://developer.mozilla.org/en/Simple_Thunderbird_build Thunderbird build documentation]
* There are many tutorials on using diff/patch, for example [http://tools.devchannel.org/devtoolschannel/04/06/02/1521207.shtml?tid=46 this one].
 

Latest revision as of 11:40, 23 February 2010

Overview

This lab is designed to give you first-hand experience working through a real bug, from confirming to fixing to submitting a patch. You will also get experience building and working with Thunderbird, which shares much of the same code with Firefox.

Introduction

A friend has told you about something they don't like in Mozilla Thunderbird. "I got an email today, and it made a hyperlink out of some text that shouldn't have been underlined."

Here is the text of the email:

Does Wednesday aft. work for you?
I'll tentatively schedule for 3:30 on Wednesday.
We'll come to S@Y...where should we meet?

which is being displayed as follows in Thunderbird:

Does Wednesday aft. work for you?
I'll tentatively schedule 3:30 on Wednesday.
We'll come to S@Y...where should we meet?

You rightly identify this as a bug to your friend, and offer to try and fix it.

Instructions

  1. File a dummy bug using Mozilla's test bugzilla. NOTE: use Unclassified and dump unwanted bugs here.
  2. Do a debug build of Thunderbird.
  3. Confirm the existence of this bug. TIP: try creating a message with the text above, saving it to Drafts, then open in Drafts to see how it gets rendered.
  4. Fix the bug. If you need a hint to figure out where to begin working, look here.
  5. Create a patch
  6. Test your patch here for common errors
  7. Attach your patch to the dummy bug you filed in step 1
  8. Get your patch reviewed by a classmate or your professor
  9. Put your patch and review comments on your personal wiki page
  10. Blog about the experience and include a link to wiki page

List of Valid/Invalid Email Address

Here is a list of some valid and invalid email addresses for testing:

Valid Addresses

  • a@a.com
  • a.a@a.a
  • a.a@a.a.com

Invalid Addresses

  • a@.
  • a@..
  • a@..f
  • a@....f
  • @.
  • @.com
  • @a.com
  • @a
  • @a.
  • @a..
  • @a...com
  • a@a.a..a

Resources