Bug Fixing

From Cloudrexx Development Wiki
Jump to: navigation, search


This article is out of date and contains false information!

Reporting Bugs

  • Bugs and feature requests can be submitted at bugs.contrexx.com
    Please read the following guidelines before using the bugtracker:
    • Check that the same issue has not been submitted by someone else before.
    • Always check that the bug is reproducible with the latest stable Contrexx release.

Resolving Bugs

  1. Setup
    Before you can start fixing bugs, you will first need to set up an environment within which you can perform your work.
    Beside the bug fixing process on the current stable version of Contrexx, there is also the on going development of the next major version happening. The next major version, which is usually the trunk in the repository, consist not only of the same bug fixes that are applied to all former minor releases, but also new features and feature enhancements.
    1. Setup current stable version (=> next minor version, a.k.a next Service Pack)
      svn co --username USERNAME --password PASSWORD http://svn.contrexxlabs.com/contrexx/branches/contrexx_2_1 PATH_WHERE_YOU_WANNA_SETUP_THE_STABLE_BRANCH
    2. Setup the trunk (=> next major version)
      svn co --username USERNAME --password PASSWORD http://svn.contrexxlabs.com/contrexx/trunk PATH_WHERE_YOU_WANNA_SETUP_THE_TRUNK
    3. now refer to the manual installation guide on how to install/setup these working copies
  2. Pick an unassigned issue from the tracker
  3. Assign issue to you before you proceed. This will prevent someone else to try fixing the same issue at the same time
  4. Try to reproduce the issue in the subversion branch of the current major version (contrexx_2_1 as of 07/14/2010)
    If unreproducible, close issue by tagging it either as worksforme or invalid > Start over
  5. Resolve issue in local working copy (Subversion), but DO NOT YET COMMIT YOUR FIX
  6. Depending on the reported issue, your fix might now affect several types of database changes besides regular PHP source code modifications.
    Therefore you'll need to create an Update Script that will be included in the next Contrexx Update Package.
    Your bugfix may include
  7. Write a note in the changelog file (changelog/version_contrexx_v2.1.4/changelog.txt) about what exactly you did fix.
  8. Prepare your commit
    • Your commit should include
      • the changes made to the source code,
      • an entry in the changelog file describing your bugfix
      • and additionally an update script that upgrade/migrates the database.
    • Set up an appropriate commit message. Have a look at the commit message schema.
    • Execute commit
  9. Close bug report in the bug tracker.
    Mention the subversion revision number in the comment field when closing the bug (for example "fixed in r12345").

Managing Bugs

  1. Pick an unplanned issue from the tracker http://bugs.contrexx.com/contrexx/query?status=assigned&status=new&status=reopened&group=status&milestone=unknown
  2. Check if the same issue has been reported already. If so, mark issue as duplicate and close it by putting the duplicate's issue ID in the comment field.
  3. Triage bug

Change Tracking

  • Close ticket on http://bugs.contrexx.com/ with a comment referencing to the revision that contains the changeset of the bugfix:
Fixed in r<changeset-revision>

Example:

Fixed in r24994