The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Nemo/GettingStartedInFixingBugs

From Mer Wiki
< Nemo(Difference between revisions)
Jump to: navigation, search
(New page: = Getting Started in Fixing Bugs = '''Prerequisites''' * Tools on your computer: ** osc ** spectacle * User accounts ** Community OBS account ** Nemo Bugzilla account * For running on devi...)
 
(Take a bug)
Line 14: Line 14:
 
# Go to https://bugs.nemomobile.org
 
# Go to https://bugs.nemomobile.org
 
# Chooce a bug, preferably one from [https://bugs.nemomobile.org/buglist.cgi?emailassigned_to1=1&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=NEEDINFO&bug_status=ASSIGNED&bug_status=TRIAGEDUPSTREAM&bug_status=REOPENED&email1=not-taken%40nemomobile.org&product=Applications&product=Hardware%20adaptation&product=Middleware&product=MTF%20UX&known_name=all_bugs&query_based_on=all_bugs&emailtype1=substring not-assigned bugs].  
 
# Chooce a bug, preferably one from [https://bugs.nemomobile.org/buglist.cgi?emailassigned_to1=1&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=NEEDINFO&bug_status=ASSIGNED&bug_status=TRIAGEDUPSTREAM&bug_status=REOPENED&email1=not-taken%40nemomobile.org&product=Applications&product=Hardware%20adaptation&product=Middleware&product=MTF%20UX&known_name=all_bugs&query_based_on=all_bugs&emailtype1=substring not-assigned bugs].  
# Change to assignee to yourself
+
# Change the assignee to yourself
# Change the bug status as assigned
+
# Change the bug status to assigned
  
 
== Create a patch ==
 
== Create a patch ==

Revision as of 13:42, 24 January 2012

Contents

Getting Started in Fixing Bugs

Prerequisites

  • Tools on your computer:
    • osc
    • spectacle
  • User accounts
    • Community OBS account
    • Nemo Bugzilla account
  • For running on device: Nemo Mobile device
  • Optionally
    • For N900/N950 devices Qt SDK 1.1.4 with Harmattan target installed may help testing the fix

Take a bug

  1. Go to https://bugs.nemomobile.org
  2. Chooce a bug, preferably one from not-assigned bugs.
  3. Change the assignee to yourself
  4. Change the bug status to assigned

Create a patch

Ideally, we would fix the upstream pacakge and would release a new version of the package. However, many times we want fix quicker than this allows and thus end up temporarily patching the package. This gives a brief instructions on how.

Once you know which package needs to be fixed

  1. Find where the upstream git repository is
  2. Clone the sources
    git clone <url>
  3. Check out the release tag that matches the version in Nemo
  4. Create local branch for you fix
  5. Fix the sources.
    • In fixing your package the QtSDK may help you if you work on N900 or N950. See hello world -tutorial for details
    • Second option is to use local builds using osc. (TODO tutorial)
    • Third option is let OBS build the package. (In practice in this point ignoring if the fix works and executing the remaining steps and steps in the next section)
  6. Once the fix works commit your fix to your local branch
  7. create patch with
    git format-patch

Building package with the patch in OBS

  1. Log into community OBS
  2. Search for the package needing the fix
  3. Branch the package
  4. Go to your computers command line
  5. Check out your branched package with
    osc -A https://api.pub.meego.com/ co <your_branched_project>/<package-name>
  6. Change into dir that was checked out above
  7. Copy the patch to working dir
  8. Add the patch to package's source files with
    osc add <patch>
  9. Add the patch in .yaml file in the patches-section
  10. Run specify to update .spec file
  11. Update .changes file. See details of changelog format here
  12. Check in your changes with
    osc ci -m "fixes NEMO#xx"
    where xx is bug number
  13. Go back to community OBS Web UI. Check that your pacakge builds.
  14. Once OBS has succesfully built a pacakge for your architecture, install it on your device to check that it works.

Submit your fixed package to Nemo

  1. Go to community OBS Web UI
  2. Enable publish for all architectures (under your branched project -> repositories)
  3. In case you have not done this before it would be good to say in irc channel #nemomobile that you are planning to submit bug fix
  4. Go to overview page of the package
  5. Submit
  6. Mark the bug in bugzilla as fixed and add link to submit request to comments of the bug
  7. Be prepared to do (typically minor) fixes to your submit request based on automated feedback by build infrastructure or by review of maintainer (sage)
  8. Once the fix has been accepted maintainer (Sage) will mark the bug as released in bugzilla


More information

  • There is an example with images of a bug's life in Vesku's blog
Personal tools