Difference between revisions of "Thunderbird Bug Fix Lab"

From CDOT Wiki
Jump to: navigation, search
(Resources)
(Instructions)
 
(4 intermediate revisions by the same user not shown)
Line 24: Line 24:
  
 
# 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'''.
 
# 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'''.  NOTE: you can obtain a build from your professor if something goes wrong.
+
# 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.
 
# 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]].
 
# 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
 
# 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
 
# Attach your patch to the dummy bug you filed in step 1
 
# Get your patch reviewed by a classmate or your professor
 
# Get your patch reviewed by a classmate or your professor
Line 34: Line 35:
  
 
== List of Valid/Invalid Email Address ==
 
== List of Valid/Invalid Email Address ==
Valid Addresses
+
 
 +
Here is a list of some valid and invalid email addresses for testing:
 +
 
 +
===Valid Addresses===
 
* a@a.com
 
* a@a.com
 
* a.a@a.a
 
* a.a@a.a
 
* a.a@a.a.com
 
* a.a@a.a.com
Invalid Addresses
+
 
 +
===Invalid Addresses===
 
* a@.
 
* a@.
 
* a@..
 
* a@..
Line 54: Line 59:
 
== 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]
* Build your own tree, or use this lab-friendly CVS Thunderbird tree:
+
* [https://developer.mozilla.org/en/Simple_Thunderbird_build Thunderbird build documentation]
** Win32 http://cdot.senecac.on.ca/tb-cvs.tgz 394M (NOTE: this must be extracted to C:\temp such that client.mk ends-up in C:\temp\tb\mozilla\client.mk)
 
* Regular expression tester: http://zenit.senecac.on.ca/~chris.tyler/regexp/
 

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