Difference between revisions of "Hugin Trackers"

From PanoTools.org Wiki
Jump to navigation Jump to search
Line 1: Line 1:
== General ==
+
= General =
  
The [http://sourceforge.net/tracker/?group_id=77506&atid=550441 Bug Tracker] (BT), the [http://sourceforge.net/tracker/?group_id=77506&atid=550444 Features Request Tracker] (FT), and the [http://sourceforge.net/tracker/?group_id=77506&atid=550443 Patch Tracker] (PT) are the official tools to communicate bugs, feature requests, and proposed changes to the developers. While bug reports, feature requests, and patches are always welcome over any channel, these are the only tools that make sure they will not be forgotten / hidden in the past archives. All users are encourage to make use of these tools. In the following text I explain the basic usage and set some policies with regard to Hugin.
+
Since November 22, 2010 bugs, feature requests and patches for Hugin are [https://bugs.launchpad.net/hugin tracked] in Launchpad, the official tools to communicate bugs, feature requests, and proposed changes to the developers. While bug reports, feature requests, and patches are always welcome over any channel, the Launchpad tracker is the only tools that make sure they will not be forgotten / hidden in the past archives. All users are encouraged to make use of Launchpad. In the following text I explain the basic usage and set some policies with regard to Hugin.
  
 
Moreover, discussion of tracker tickets is welcome on the [http://groups.google.com/group/hugin-ptx/ Mailing List] (ML). This includes (non-exhaustive list):
 
Moreover, discussion of tracker tickets is welcome on the [http://groups.google.com/group/hugin-ptx/ Mailing List] (ML). This includes (non-exhaustive list):
Line 9: Line 9:
 
* insuring follow up on anonymous tickets  
 
* insuring follow up on anonymous tickets  
  
 +
= Launchpad Account =
  
== Structure of a Ticket ==
+
Launchpad tickets can be viewed anonymously but to interact with the tracker you will need to register an account.  It is a straight forward process.  Once registered you can:
 +
* submit a new ticket
 +
* comment on existing tickets
 +
* vote on tickets
  
Whether it is to report a bug or to work on it, familiarizing with the structure of a ticket in the tracker is the first step. Look at existing tickets for examples.  
+
Moreover, if you are a power user and want to help triage and prioritize tickets; help users solve their problems; help developers with testing and observations; join the [https://launchpad.net/~hugin-bug-hunters Hugin Bug Hunters] team.
  
* On top is the summary, the ID, and the last update information. With "Tech & Admin" permission the summary is editable.
+
== OpenPGP key ==
* Under the details header is the initial comment, followed by some information about the status of the ticket. The status information is editable with "Tech & Admin" permission.
+
 
* Most important, at least initially, is who submitted the ticket. A ticket can be submitted anonymously but it is strongly recommended that users [http://sourceforge.net/account/registration/ register] with SourceForge (it's free and SF has a consistent track record of respectful committment to user's privacy) and [https://sourceforge.net/account/login.php log in] before creating a ticket or commenting on one. If you have [http://openid.net/ OpenID] there is no need to remember another password.
+
An OpenPGP key is not mandatory for general use, but it makes life easy.
* Next is the comments thread. It may be condensed - click on the + icon on the right to expand it. When working on a ticket it is important to be aware that the "Details" section may not be everything there is to read. The follow ups often contain relevant / critical information. All users can add to the discussion.
+
 
* The attached files section lists all files that have been uploaded. This is usually meant for logs and patches. Project files (.pto) and screenshots still fit the weight limits. For full test cases with images this is not practicable - better store them somewhere on the web and publish a link in a comment. If you need such web space, ask on the ML.
+
You will need an OpenPGP key to
* Users with "Tech & Admin" permission can associate a ticket to another one, marking it as a duplicate.
+
* use the (faster and more comfortable) email interface to the tracker
* Last but not least, all changes are listed.
+
* sign the Code of Conduct and get access to advanced Launchpad features such as a personal PPA.
 +
* sign software uploaded to the repository.
 +
 
 +
== Generate Your Key (Linux/BSD/Mac) ==
 +
 
 +
Start a command line and type:
 +
 
 +
<pre>
 +
gpg --cert-digest-algo=SHA256 --default-preference-list="h10 h8 h9 h11 s9 s8 s7 s3 z2 z3 z1 z0" --gen-key
 +
</pre>
 +
 
 +
At the promt
 +
* Confirm the type of key you want to create (RSA)
 +
* Give the key a validity.  Recommended setting two years so that if you loose your key or password it will be purged from the system
 +
* Real Name: enter your real name
 +
* Email: enter your email address
 +
 
 +
Read/copy the last 8 digits (e.g. 637572E4) from the key fingerprint and add them to ~/.bashrc
 +
 
 +
<pre>
 +
echo "export GPGKEY=637572E4" >> ~/.bashrc
 +
</pre>
 +
 
 +
Then restart the terminal session.
 +
 
 +
Upload the key to the Ubuntu key server and output the key's fingerprint
 +
 
 +
<pre>
 +
gpg --send-keys --keyserver keyserver.ubuntu.com $GPGKEY
 +
gpg --fingerprint $GPGKEY
 +
</pre>
 +
 
 +
Log on to your launchpad page https://launchpad.net/~<USER>/+editpgpkeys and paste the fingerprint.  Hit import key.  A message encrypted with your key ('''637572E4''') will be sent to you. Read your email.
 +
 
 +
== Generate Your Key (Windows) ==
 +
 
 +
Can somebody with a Windows box document the equivalent PuTTY commands?
 +
 
 +
== Sign the Ubuntu Code of Conduct ==
 +
 
 +
Read and sign the [https://launchpad.net/codeofconduct/1.1/+download Ubuntu Code of Conduct].  This will grant you privileges such as creating your own PPA and uploading source packages for build and distribution.
 +
 
 +
<pre>
 +
wget https://launchpad.net/codeofconduct/1.1/+download
 +
mv +download code.txt
 +
gpg -u $GPGKEY --clearsign code.txt
 +
cat code.txt.asc
 +
</pre>
 +
 
 +
Copy the resulting text and paste it into https://launchpad.net/codeofconduct/1.1/+sign
 +
 
 +
== Claim an Imported SourceForge Account ==
 +
 
 +
If you used the older trackers on SourceForge, chances are there is already something from you in Launchpad.  Use the following procedure to claim it as being yours:
 +
 
 +
* Make sure your SF account is in good standing and that you are receiving emails at it.
 +
* Log on to the [https://bugs.launchpad.net/hugin Hugin bug tracker].
 +
* Find a ticket or comment that you filed in the old tracker.  Unfortunately entering your old user handle in the simple search field form does not work. Maybe using the advanced search reporter field, however note that SF users are not LP users, so don't count on it to work.
 +
* On the ticket page you should see your SF user name, clickable. Click on it.
 +
* A standard page will display, saying that the user does not use LP and that the page was created when importing bugs for Hugin. There is a link on the page asking if you are the user.  Hit the link.
 +
* You will land on a pre-filled Merge LP accounts form. Hit the Continue button.
 +
* An email message will be sent to the email address associated with the old account.  Open that email and click on the link.
 +
* You will land on a confirmation form.  click Confirm.
 +
* If everything completed successfully you will land on your LP account page with a confirmation of the successful merge.
 +
 
 +
= Placing a Ticket =
  
 
== Feature Request ==
 
== Feature Request ==
  
Do you have an idea for a feature that Hugin does not have yet? You don't have the time/skill for coding? You can at least contribute the idea and some analysis. Discussions on the mailing list are OK but tend to get lost in time. If you want to make sure that your idea is remember, enter it into the [https://sourceforge.net/tracker/?group_id=77506&atid=550444 feature tracker]. The more analysis and description of the feature, the better. Make a case for it, show why it would be an advantage. The feature may be picked up by a skilled developer, or it could also become a Google Summer of Code or otherwise sponsored project.
+
Do you have an idea for a feature that Hugin does not have yet? You don't have the time/skill for coding? You can at least contribute the idea and some analysis. Discussions on the mailing list are OK but tend to get lost in time. If you want to make sure that your idea is remember, enter it into the tracker. The more analysis and description of the feature, the better. Make a case for it, show why it would be an advantage. The feature may be picked up by a skilled developer, or it could also become a Google Summer of Code or otherwise sponsored project.
  
== Initial Bug Report ==
+
== Bug Report ==
  
 
All users are encouraged to report bugs. Please help us improve the quality of the bug reports and the information available to the developers by following these guidelines:
 
All users are encouraged to report bugs. Please help us improve the quality of the bug reports and the information available to the developers by following these guidelines:
Line 35: Line 104:
  
 
If you have access to a second system, please validate the bug before reporting it.
 
If you have access to a second system, please validate the bug before reporting it.
 +
 +
Recent version of Hugin have system information in the About menu.  Copy and paste it.
  
  
Line 46: Line 117:
 
=== The Application ===
 
=== The Application ===
  
Often times the nature of your project, particularly the images, will help understand the bug. How many images? What format? Do they have EXIF data? What camera make/model? Is it HDR? Often time, providing the .pto file (can be attached in the BT) is a valuable input to the analysis process. If you have access to web-space, providing the full test case including images (in JPG format and/or resized to reduce storage/bandwidth need) can also help.
+
Often times the nature of your project, particularly the images, will help understand the bug. How many images? What format? Do they have EXIF data? What camera make/model? Is it HDR? Providing the .pto file (can be attached) is a valuable input to the analysis process. If you have access to web-space, providing the full test case including images (in JPG format and/or resized to reduce storage/bandwidth need) can also help.
  
  
Line 56: Line 127:
 
== Bug Triage ==
 
== Bug Triage ==
  
To triage bugs a user need a SourceForge login and "Tech & Admin" permission to the BT. Permission will be liberally given to users who have shown continued, relevant contributions to the debugging process.
+
Power users can triage tickets by reading them, understanding, validating and editing their settings such as priority and status.
  
* Log on to the [https://sourceforge.net/tracker/?limit=20&sort=open_date&sortdir=desc&offset=0&group_id=77506&atid=550441&status=1
+
* Log on to the tracker
BT] (the link is already filtered for opened ticket sorted from the most recent one on top).
+
* Start with the oldest bug that has not been triaged yet (status is New and it is not the result of a status reset).
* Start with the oldest bug that has not been triaged yet. Ideally the new reports are identified by Priority 5, although at the time of writing many old reports still have Priority 5. It is also possible to be alerted to new reports by [https://lists.sourceforge.net/lists/listinfo/hugin-tracker subscribing] the tracker mailing list.
 
 
* Read the ticket and make sure you fully understand it. When in doubt, leave it for more experienced users to triage or ask on the ML.
 
* Read the ticket and make sure you fully understand it. When in doubt, leave it for more experienced users to triage or ask on the ML.
* If you determine that the ticket is a duplicate, mark it as such and close it.
+
* If you determine that the ticket is a duplicate, mark it as such and close it.  You will need to enter the ticket number of the other ticket.
* There are frequently appearing error messages such as "precondition violation", "false --compression", "Mask is entirely black but white image was not identified as redundant", etc... that need entries in the [[hugin FAQ]] - Duplicates should be closed with a link to the FAQ.
+
* There are frequently appearing error messages such as "precondition violation", "false --compression", "Mask is entirely black but white image was not identified as redundant", etc... that need entries in the [[hugin FAQ]] - Duplicates should be closed with a link to the FAQ.  If applicable, update the FAQ.
* Assign Category, Group, Priority according to the policies in the next sections.
+
* Tag the bug liberally and assign status and importance-
 
* Add clarifying questions to the bug ticket if applicable. In doing so, compare the currently available information against the requested information listed above in "Reporting a Bug" and the specifics of the report.
 
* Add clarifying questions to the bug ticket if applicable. In doing so, compare the currently available information against the requested information listed above in "Reporting a Bug" and the specifics of the report.
* If the ticket was entered anonymously, determine the likelyhood that the developers may need additional feedback. Ask for that feedback on the ML. Eventually set the report to pending status so that if nobody acts on the request it will be closed in two weeks for lack of information.
 
 
* When in doubt, ask on the ML.
 
* When in doubt, ask on the ML.
  
Line 81: Line 150:
 
== Bug Fixing and Testing ==
 
== Bug Fixing and Testing ==
  
Everybody is encouraged to provide fixes and patches to correct bugs. Only developers can add them to the repository. Write access to the repository will be liverally given to users who need it.
+
Everybody is encouraged to provide fixes and patches to correct bugs. Only developers can add them to the repository. Write access to the repository will be liberally given to users who need it.
 
* when a developer fixed a bug, he can ask the ML for testing.
 
* when a developer fixed a bug, he can ask the ML for testing.
 
* a fix tested on the developers system only can be set to Pending status.
 
* a fix tested on the developers system only can be set to Pending status.
Line 90: Line 159:
  
 
* The more complete a bug report, the more attention it is likely to get.
 
* The more complete a bug report, the more attention it is likely to get.
* Anonymous bug reports are set on Pending status by default, unless the report is complete enough not to need further feedback and/or there is interest from contributors to work on the report.
 
* When triaging a bug, set it's priority to something different than 5 so that priority 5 reports are known to be untriaged.
 
 
 
=== Categories ===
 
 
We use categories to indicate if the bug is platform specific, although some tickets still carry "legacy categories" that are unrelated to the platforms.
 
 
 
=== Groups ===
 
 
We use groups to indicate which tool is affected by the bug.
 
 
 
=== Priorities ===
 
  
We use priorities to sort out the the tickets.
+
=== Importance ===
  
* 9: show stopper for the current release
+
* Members of the Hugin Bug Hunter team can set the importance of a bug.
* more than 5: bug affects a large number of use cases.
+
* You can indicate that a bug is important to you by hitting the "affect me too" button.
* 5: new bug that needs to be triaged
 
* less than 5: bug affects a small number of use cases - rare / specific situation
 
  
 +
=== Ticket Assignement ===
  
=== Bug Assignement ===
+
* The tracker enables the assignment of a ticket to a person. It is considered rude to assign a ticket to somebody else without their prior consent. Developers sometimes assign a ticket to themselves to signal they are working on it, but we do not use this feature too often.
 +
* The tracker allows the subscription of somebody else to a ticket.  You can do so once if you think a person should be aware of a ticket.  Then add a note to that ticket and the person concerned will receive it in her mail.  But if the person decides otherwise and unsubscribes from the ticket, please respect it.
  
The tracker enables the assignement of a bug to a person. It is considered rude to assign a bug to somebody else without their prior consent. Developers sometimes assign a bug to themselves to signal they are working on it, but we do not use this feature too often.
 
  
 
[[Category:Software:Hugin]]
 
[[Category:Software:Hugin]]

Revision as of 07:12, 23 November 2010

General

Since November 22, 2010 bugs, feature requests and patches for Hugin are tracked in Launchpad, the official tools to communicate bugs, feature requests, and proposed changes to the developers. While bug reports, feature requests, and patches are always welcome over any channel, the Launchpad tracker is the only tools that make sure they will not be forgotten / hidden in the past archives. All users are encouraged to make use of Launchpad. In the following text I explain the basic usage and set some policies with regard to Hugin.

Moreover, discussion of tracker tickets is welcome on the Mailing List (ML). This includes (non-exhaustive list):

  • requests to test bugs and patches
  • requests for opinions on ways to fix bugs and implement new features
  • enlarging the base of interested user / tester to encompass a variety of platforms
  • insuring follow up on anonymous tickets

Launchpad Account

Launchpad tickets can be viewed anonymously but to interact with the tracker you will need to register an account. It is a straight forward process. Once registered you can:

  • submit a new ticket
  • comment on existing tickets
  • vote on tickets

Moreover, if you are a power user and want to help triage and prioritize tickets; help users solve their problems; help developers with testing and observations; join the Hugin Bug Hunters team.

OpenPGP key

An OpenPGP key is not mandatory for general use, but it makes life easy.

You will need an OpenPGP key to

  • use the (faster and more comfortable) email interface to the tracker
  • sign the Code of Conduct and get access to advanced Launchpad features such as a personal PPA.
  • sign software uploaded to the repository.

Generate Your Key (Linux/BSD/Mac)

Start a command line and type:

gpg --cert-digest-algo=SHA256 --default-preference-list="h10 h8 h9 h11 s9 s8 s7 s3 z2 z3 z1 z0" --gen-key

At the promt

  • Confirm the type of key you want to create (RSA)
  • Give the key a validity. Recommended setting two years so that if you loose your key or password it will be purged from the system
  • Real Name: enter your real name
  • Email: enter your email address

Read/copy the last 8 digits (e.g. 637572E4) from the key fingerprint and add them to ~/.bashrc

echo "export GPGKEY=637572E4" >> ~/.bashrc

Then restart the terminal session.

Upload the key to the Ubuntu key server and output the key's fingerprint

gpg --send-keys --keyserver keyserver.ubuntu.com $GPGKEY
gpg --fingerprint $GPGKEY

Log on to your launchpad page https://launchpad.net/~<USER>/+editpgpkeys and paste the fingerprint. Hit import key. A message encrypted with your key (637572E4) will be sent to you. Read your email.

Generate Your Key (Windows)

Can somebody with a Windows box document the equivalent PuTTY commands?

Sign the Ubuntu Code of Conduct

Read and sign the Ubuntu Code of Conduct. This will grant you privileges such as creating your own PPA and uploading source packages for build and distribution.

wget https://launchpad.net/codeofconduct/1.1/+download
mv +download code.txt
gpg -u $GPGKEY --clearsign code.txt
cat code.txt.asc

Copy the resulting text and paste it into https://launchpad.net/codeofconduct/1.1/+sign

Claim an Imported SourceForge Account

If you used the older trackers on SourceForge, chances are there is already something from you in Launchpad. Use the following procedure to claim it as being yours:

  • Make sure your SF account is in good standing and that you are receiving emails at it.
  • Log on to the Hugin bug tracker.
  • Find a ticket or comment that you filed in the old tracker. Unfortunately entering your old user handle in the simple search field form does not work. Maybe using the advanced search reporter field, however note that SF users are not LP users, so don't count on it to work.
  • On the ticket page you should see your SF user name, clickable. Click on it.
  • A standard page will display, saying that the user does not use LP and that the page was created when importing bugs for Hugin. There is a link on the page asking if you are the user. Hit the link.
  • You will land on a pre-filled Merge LP accounts form. Hit the Continue button.
  • An email message will be sent to the email address associated with the old account. Open that email and click on the link.
  • You will land on a confirmation form. click Confirm.
  • If everything completed successfully you will land on your LP account page with a confirmation of the successful merge.

Placing a Ticket

Feature Request

Do you have an idea for a feature that Hugin does not have yet? You don't have the time/skill for coding? You can at least contribute the idea and some analysis. Discussions on the mailing list are OK but tend to get lost in time. If you want to make sure that your idea is remember, enter it into the tracker. The more analysis and description of the feature, the better. Make a case for it, show why it would be an advantage. The feature may be picked up by a skilled developer, or it could also become a Google Summer of Code or otherwise sponsored project.

Bug Report

All users are encouraged to report bugs. Please help us improve the quality of the bug reports and the information available to the developers by following these guidelines:

Your System

We need to know as much as possible about your system. Which version? What processor? How much memory? How much disk space is available, particularly temporary space? Are all updates recommended by the system's distributor applied? Have you customized the system? added/replaced libraries?

If you have access to a second system, please validate the bug before reporting it.

Recent version of Hugin have system information in the About menu. Copy and paste it.


The Sofware

We also need to know as much as possible about the software used. Which version of Hugin? Where did you install it from? Did you compile Hugin yourself? An easy way to identify your version of Hugin is to look up the About Hugin dialog (Menu Help -> About Hugin) and report the whole version string.

Hugin depends on third party libraries and tools such as libpano and enblend/enfuse. Unless you have downloaded a Windows installer or a Mac bundle (that are self-contained), we'd need to know the same information for the dependencies. Where and when did you install them from?


The Application

Often times the nature of your project, particularly the images, will help understand the bug. How many images? What format? Do they have EXIF data? What camera make/model? Is it HDR? Providing the .pto file (can be attached) is a valuable input to the analysis process. If you have access to web-space, providing the full test case including images (in JPG format and/or resized to reduce storage/bandwidth need) can also help.


The Bug

What are the steps that need to be undertaken to reproduce the bug? Does it happen consistently all the times, or only sporadically? what is the expected application behavior and how does it differ from the observed application behavior?


Bug Triage

Power users can triage tickets by reading them, understanding, validating and editing their settings such as priority and status.

  • Log on to the tracker
  • Start with the oldest bug that has not been triaged yet (status is New and it is not the result of a status reset).
  • Read the ticket and make sure you fully understand it. When in doubt, leave it for more experienced users to triage or ask on the ML.
  • If you determine that the ticket is a duplicate, mark it as such and close it. You will need to enter the ticket number of the other ticket.
  • There are frequently appearing error messages such as "precondition violation", "false --compression", "Mask is entirely black but white image was not identified as redundant", etc... that need entries in the hugin FAQ - Duplicates should be closed with a link to the FAQ. If applicable, update the FAQ.
  • Tag the bug liberally and assign status and importance-
  • Add clarifying questions to the bug ticket if applicable. In doing so, compare the currently available information against the requested information listed above in "Reporting a Bug" and the specifics of the report.
  • When in doubt, ask on the ML.

Bug Validation

Every user can validate a bug against their system / software and add a comment to validate the bug. We encourage all users to do so. The more validation information we have, the better. We need to narrow down whether a bug applies to a specific operating system or across the board. And it is also very useful to know if a bug applies to a specific context or if it applies also in different contexts.

  • To validate a specific bug, simply try to reproduce it by following the instructions described in the ticket.
  • Add a comment to the ticket reporting your observation.
  • Were you able to reproduce the bug?
  • It is important to add context to your validation: what operating system? what version of Hugin?


Bug Fixing and Testing

Everybody is encouraged to provide fixes and patches to correct bugs. Only developers can add them to the repository. Write access to the repository will be liberally given to users who need it.

  • when a developer fixed a bug, he can ask the ML for testing.
  • a fix tested on the developers system only can be set to Pending status.
  • when at least one user validates a fix on a different system and there are no reports that the fix does not work, the bug report can be closed.


Triaging Policy

  • The more complete a bug report, the more attention it is likely to get.

Importance

  • Members of the Hugin Bug Hunter team can set the importance of a bug.
  • You can indicate that a bug is important to you by hitting the "affect me too" button.

Ticket Assignement

  • The tracker enables the assignment of a ticket to a person. It is considered rude to assign a ticket to somebody else without their prior consent. Developers sometimes assign a ticket to themselves to signal they are working on it, but we do not use this feature too often.
  • The tracker allows the subscription of somebody else to a ticket. You can do so once if you think a person should be aware of a ticket. Then add a note to that ticket and the person concerned will receive it in her mail. But if the person decides otherwise and unsubscribes from the ticket, please respect it.