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)
(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 | + | # Change the assignee to yourself |
− | # Change the bug status | + | # 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
- Go to https://bugs.nemomobile.org
- Chooce a bug, preferably one from not-assigned bugs.
- Change the assignee to yourself
- 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
- Find where the upstream git repository is
- Clone the sources
git clone <url>
- Check out the release tag that matches the version in Nemo
- Create local branch for you fix
- 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)
- Once the fix works commit your fix to your local branch
- create patch with
git format-patch
Building package with the patch in OBS
- Log into community OBS
- Search for the package needing the fix
- Branch the package
- Go to your computers command line
- Check out your branched package with
osc -A https://api.pub.meego.com/ co <your_branched_project>/<package-name>
- Change into dir that was checked out above
- Copy the patch to working dir
- Add the patch to package's source files with
osc add <patch>
- Add the patch in .yaml file in the patches-section
- Run specify to update .spec file
- Update .changes file. See details of changelog format here
- Check in your changes with
osc ci -m "fixes NEMO#xx"
where xx is bug number - Go back to community OBS Web UI. Check that your pacakge builds.
- 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
- Go to community OBS Web UI
- Enable publish for all architectures (under your branched project -> repositories)
- 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
- Go to overview page of the package
- Submit
- Mark the bug in bugzilla as fixed and add link to submit request to comments of the bug
- Be prepared to do (typically minor) fixes to your submit request based on automated feedback by build infrastructure or by review of maintainer (sage)
- 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