Difference between revisions of "Bugzilla Help"

From SME Server
Jump to navigationJump to search
 
(28 intermediate revisions by 5 users not shown)
Line 85: Line 85:
  
 
===Verifying Bugs===
 
===Verifying Bugs===
 
+
Bugs in the SME Server Release, SME Contribs & SME Server Translations products  
Bugs in the SME Server Release, SME Server Future & SME Server Translations products  
+
need to be verified when fixed, see the [[Verification_Queue]] for the current list. See [[SME_Server:Documentation:QA:Verification]] for a detailed description of the verification process. <br />
need to be verified if fixed. (otherwise they can be closed)
+
 
An example is [[bugzilla:3727]]. You can use the text below as a template.  
+
An example is [[bugzilla:3727]] or [[bugzilla:7364]].  
  
 
'''Information from here is used in the Updates Announcements and if you use this format, it will save duplication of work'''
 
'''Information from here is used in the Updates Announcements and if you use this format, it will save duplication of work'''
  
 
Other Products can be Closed after being fixed, as they are not part of the updates process.
 
Other Products can be Closed after being fixed, as they are not part of the updates process.
 +
 +
The bug report will detail the exact package and version needed. These are normally in smeupdates-testing and can be installed by :
 +
yum --enablerepo=smeupdates-testing update <package>
 +
 +
for example
 +
yum --enablerepo=smeupdates-testing update e-smith-ldap
 +
 +
As it is a manual step to move packages into smeupdates-testing the most recent packages will be in smetest and can be installed from there if necessary.
 +
for example
 +
  yum --enablerepo=smetest update e-smith-ldap
 +
or if you need several repositories :
 +
  yum --enablerepo=smetest,smeupdates-testing,smedev update e-smith-ldap
  
 
When performing verification, please use the following template:
 
When performing verification, please use the following template:
Line 98: Line 110:
 
'''VERIFICATION TEMPLATE'''
 
'''VERIFICATION TEMPLATE'''
  
  = ENVIRONMENT: [eg: sme 8.0 64 bits clean from CD + all updates]
+
  = ENVIRONMENT:  
 +
 +
= ORIGINAL PROBLEM:
 
   
 
   
  = ~]# /sbin/e-smith/audittools/newrpms [Provide this if customised]
+
  = RESOLUTION:
 +
   
 +
= CURRENT VERSION INSTALLED:
 +
 +
= TESTING:
 +
 +
= UPDATED VERSION INSTALLED:
 +
 +
= PROBLEM FIXED:
 +
 +
= VERIFIED OR REOPEN:
 +
 +
= DOCUMENTATION IMPACT:
 +
 +
= SUGGESTED RELEASE NOTES:
 +
 
 +
AS AN EXAMPLE:
 +
 
 +
VERIFICATION
 +
 +
= ENVIRONMENT:
 +
[description of test system (version, installation methods, upgrade history. etc).
 +
If you have some non-core package installed, run /sbin/e-smith/audittools/newrpms and provide output]
 
   
 
   
 
  = ORIGINAL PROBLEM:
 
  = ORIGINAL PROBLEM:
  [Description]
+
  [Summarise bug]
 
   
 
   
 
  = RESOLUTION:
 
  = RESOLUTION:
  [Reprint changelogs of new package being verified
+
  [Insert changelog for new package]
 +
In example:
 +
Fixed in e-smith-base
 +
* Mon Apr 21 2013 chris burnat <devlist@burnat.com> 5.4.0-27.sme
 +
- Fix the way '.' works in bash [SME: 7532]
 
   
 
   
 
  = CURRENT VERSION INSTALLED:
 
  = CURRENT VERSION INSTALLED:
  [rpm -q]
+
  [rpm -qa <package name>]
 
   
 
   
 
  =TESTING:
 
  =TESTING:
  [Show problem being fixed by new package]
+
  [Reproduce bug if you can, showing steps taken]
 
   
 
   
 
  = UPDATED VERSION INSTALLED:
 
  = UPDATED VERSION INSTALLED:
  [Show installation of new package]
+
  [Update to new package, show steps taken]
 +
and:
 +
[rpm -qa <package name>]
 
   
 
   
  #CHECK:
+
  = PROBLEM FIXED?:
  [rpm -q again showing new package installed]
+
  [Repeat steps carried out under TESTING above.
 
   
 
   
  = PROBLEM FIXED:
+
  = VERIFIED OR REOPEN:
  [Repeat testing]
+
  [Problem fixed, then VERIFIED - not fixed, then REOPEN]
 +
Note: if you may not have rights to toggle resolution, someone will do it for you
 
   
 
   
  = VERIFIED OR REOPEN:
+
  = DOCUMENTATION IMPACT:
  [Conclusion based on testing above]
+
  [Does something need documentation, eg a db or new procedure? if affirmative, please provide details, someone will later punt to docteam for action]
 
   
 
   
 
  = SUGGESTED RELEASE NOTES:
 
  = SUGGESTED RELEASE NOTES:
  [Summary of what has been fixed in new package]
+
  [Summary of what was fixed]
 +
 
 +
===Testing===
 +
It is recommended that some basic tests be carried out before resolving VERIFIED. The scope of these tests very much depends on functionality associated with the package(s) under consideration. The following list whilst not fully inclusive can be used as a guide:
 +
 
 +
*Hosting http
 +
*Hosting https
 +
*Access external http
 +
*Access external https
 +
*SSH access to server
 +
*Send Email
 +
*Receive Email
 +
*Use Webmail
 +
*Use Samba
 +
*FTP access to SME
 +
*Check /var/log/messages or/and any other relevant log.
  
 
===General===
 
===General===
Line 134: Line 192:
 
Bugs are sorted by '''Product''', they should be mostly self explanatory. Future/7.x/8.x/9.x may need  clarifying.  
 
Bugs are sorted by '''Product''', they should be mostly self explanatory. Future/7.x/8.x/9.x may need  clarifying.  
  
With the release of SME 8.1, development is now focussed on reaching 9.0  
+
With the release of SME 8.0, development is now focussed on reaching 9.0  
  
 
*SME Server Future         
 
*SME Server Future         
Line 144: Line 202:
 
   
 
   
 
*SME Server Release 7.X     
 
*SME Server Release 7.X     
-  The error is severe enough that we need to fix it, taking time away from 8.x development
+
-  The error is severe enough that we need to fix it, taking time away from 9.x development
  
 
-  The bug is being worked on actively
 
-  The bug is being worked on actively
Line 151: Line 209:
  
 
*SME Server Release 8.X     
 
*SME Server Release 8.X     
-  The error is severe enough that we need to fix it, taking time away from 8.x development
+
-  The error is severe enough that we need to fix it, taking time away from 9.x development
  
 
-  The bug is being worked on actively
 
-  The bug is being worked on actively
Line 167: Line 225:
 
Now look at the bug reports in Bugzilla with your developer hat on.
 
Now look at the bug reports in Bugzilla with your developer hat on.
  
* Go into triage mode
+
* Go into triage mode this page can help You : [[Bugzilla_Reports]]
 
* Ask the questions asked by the essay
 
* Ask the questions asked by the essay
 
* Get the information from the reporter
 
* Get the information from the reporter
Line 185: Line 243:
 
New bugs submitted by ordinary users are created in this state.
 
New bugs submitted by ordinary users are created in this state.
 
Note. Project Developers tend not to look at unconfirmed bugs as they only have so much time, so it's important regular users check each others bugs.
 
Note. Project Developers tend not to look at unconfirmed bugs as they only have so much time, so it's important regular users check each others bugs.
 +
 +
* NEEDINFO
 +
This is a new state that should be used when more information is needed by the bug reporter.
  
 
* CONFIRMED
 
* CONFIRMED
Once bugs are confirmed, '''by anyone''' see note above, change the status to new,
+
Once bugs are confirmed to be valid and present in SME Server, '''by anyone''' see note above, change the status to CONFIRMED.
 +
Only change to CONFIRMED if the bug is well written and has enough information to proceed.
 +
 
 +
* IN_PROGRESS
 +
This indicates a developer is actively working on the bug.
  
 
* FIXED
 
* FIXED
Line 276: Line 341:
 
Set the flag to ? to say someone needs to look at it
 
Set the flag to ? to say someone needs to look at it
  
[[Category:SME Server]][[Category:Help]][[Category:SME9-Development]]
+
[[Category:SME Server]][[Category:SME9-Development]][[Category:Developer]]

Latest revision as of 11:06, 12 February 2015


Bug Tracker

Please help us to make our software as reliable as possible. Please report possible bugs only via the bug tracker and encourage others to do the same.

Bugzilla is just a standard communication format for problem solving. Replies may seem abrupt but that is just the nature of the medium. Don't be concerned by a stark Wontfix or Invalid, it's how the system works. Discussions are for forums

Find, report and fix bugs here http://bugs.contribs.org

Bugzilla is easy

A frequent complaint is Bugzilla is too hard or convoluted, but it is hard to justify the complaint.

  • You open an account
  • Then report your problem

SME is run by volunteers so we expect you to help by searching for existing bugs and by filing your bug in the format described below. To begin you need only read 'searching' and 'reporting'.

Searching Bugs

Have you searched bugzilla, and read the SME Server Manual and FAQ ?

Simple and Advanced aren't necessarily easy so we added prepared searches to the bugzilla page headers.

  • Simple

Select a Status and a Product category and enter your search term

  • Advanced

You can restrict searches by using a selection or multiple selections of a category
Use Control Click to select/deselect from selection sets, if none are selected the defailt is all.

  • Reports

A wiki page with more prepared searches.

  • Matrix

A Grid with one view of current bugs, more are available in Reports.

  • Recent

Bugs with activity in the last two days

Reporting Bugs

Please take the time to read How to report bugs effectively (available in multiple languages)

For bugs in SME Server Release, SME Server Future & SME Server Translations the following format is suggested. It's not always appropriate so use some discretion, see eg. New Feature Requests

When reporting a new bug, and after choosing the platform, the next screen asks for more details on your problem. There are 4 main fields that need to be completed. These are Component, Found-In-Version, Summary, and Description. Fields such as Flags and Requestee should be left blank initially by most reporters. The CC field is for other people you would like notices on this issue to be sent to. YOU will always be automatically included by default, so you don't need to 'cc' yourself. The Attachment button at the bottom of the page is used to attach additional file information such as log files that may be helpful.

Component: As accurately as possible, you may choose which category your issue fits into. If Unknown then choose UNKNOWN.

Found-in-version: Usually self explanatory. If it applies to more than one version, choose the most recent stable release.

Summary: How would you describe the bug. BE BRIEF. A good summary should quickly and uniquely identify a bug report. It should explain the problem, not your suggested solution.

  • Good: "Canceling a File Copy dialog crashes File Manager"
  • Bad: "Software crashes"
  • Bad: "Browser should work with my web site"

Description: Present the details of your problem in this section. You may use the following as a template:

ENVIRONMENT:    Give a brief server history

eg. SME Server 7.1, Updated to 7.3 with yum 

MODIFICATIONS:  List any contribs or modifications you have on the server

eg. If the following produce any output, attach the results (don't post inline)
    /sbin/e-smith/audittools/templates
    /sbin/e-smith/audittools/newrpms

or say, no custom-templates or contribs.

ORIGINAL PROBLEM:   State what you were trying to do.
 
STEPS TO REPRODUCE: As accurately and exactly as possible state what you did to get your problem.

ACTUAL RESULTS:     List what you got as a result.

EXPECTED RESULTS:   List what you expected to happen.

Attachment: This is used to attach (not post in line) any logs or results of command line queries such as the examples listed in "Modifications" above.

Finally, when satisfied with your entries, submit your bug report by pressing the COMMIT button.

Verifying Bugs

Bugs in the SME Server Release, SME Contribs & SME Server Translations products need to be verified when fixed, see the Verification_Queue for the current list. See SME_Server:Documentation:QA:Verification for a detailed description of the verification process.

An example is bugzilla:3727 or bugzilla:7364.

Information from here is used in the Updates Announcements and if you use this format, it will save duplication of work

Other Products can be Closed after being fixed, as they are not part of the updates process.

The bug report will detail the exact package and version needed. These are normally in smeupdates-testing and can be installed by :

yum --enablerepo=smeupdates-testing update <package>

for example

yum --enablerepo=smeupdates-testing update e-smith-ldap

As it is a manual step to move packages into smeupdates-testing the most recent packages will be in smetest and can be installed from there if necessary. for example

 yum --enablerepo=smetest update e-smith-ldap

or if you need several repositories :

 yum --enablerepo=smetest,smeupdates-testing,smedev update e-smith-ldap

When performing verification, please use the following template:

VERIFICATION TEMPLATE

= ENVIRONMENT: 

= ORIGINAL PROBLEM:

= RESOLUTION:

= CURRENT VERSION INSTALLED:

= TESTING:

= UPDATED VERSION INSTALLED:

= PROBLEM FIXED:

= VERIFIED OR REOPEN:

= DOCUMENTATION IMPACT:

= SUGGESTED RELEASE NOTES:

AS AN EXAMPLE:

VERIFICATION

= ENVIRONMENT:
[description of test system (version, installation methods, upgrade history. etc).
If you have some non-core package installed, run /sbin/e-smith/audittools/newrpms and provide output]

= ORIGINAL PROBLEM:
[Summarise bug]

= RESOLUTION:
[Insert changelog for new package]
In example:
Fixed in e-smith-base
* Mon Apr 21 2013 chris burnat <devlist@burnat.com> 5.4.0-27.sme
- Fix the way '.' works in bash [SME: 7532]

= CURRENT VERSION INSTALLED:
[rpm -qa <package name>]

=TESTING:
[Reproduce bug if you can, showing steps taken]

= UPDATED VERSION INSTALLED:
[Update to new package, show steps taken]
and:
[rpm -qa <package name>]

= PROBLEM FIXED?:
[Repeat steps carried out under TESTING above.

= VERIFIED OR REOPEN:
[Problem fixed, then VERIFIED - not fixed, then REOPEN]
Note: if you may not have rights to toggle resolution, someone will do it for you

= DOCUMENTATION IMPACT:
[Does something need documentation, eg a db or new procedure? if affirmative, please provide details, someone will later punt to docteam for action]

= SUGGESTED RELEASE NOTES:
[Summary of what was fixed]

Testing

It is recommended that some basic tests be carried out before resolving VERIFIED. The scope of these tests very much depends on functionality associated with the package(s) under consideration. The following list whilst not fully inclusive can be used as a guide:

  • Hosting http
  • Hosting https
  • Access external http
  • Access external https
  • SSH access to server
  • Send Email
  • Receive Email
  • Use Webmail
  • Use Samba
  • FTP access to SME
  • Check /var/log/messages or/and any other relevant log.

General

Bug Categories

Bugs are sorted by Product, they should be mostly self explanatory. Future/7.x/8.x/9.x may need clarifying.

With the release of SME 8.0, development is now focussed on reaching 9.0

  • SME Server Future

- Bugs can be moved to future if they can be classified as NewFeatureRequest

- or as cleanup functionality that does not have a major (user-visible) impact.

- Bugs that should be fixed, but not sure which future release they will be fixed in

  • SME Server Release 7.X

- The error is severe enough that we need to fix it, taking time away from 9.x development

- The bug is being worked on actively

- The bug has been cloned from 8.x for backporting

  • SME Server Release 8.X

- The error is severe enough that we need to fix it, taking time away from 9.x development

- The bug is being worked on actively

  • SME Server Release 9.X

- current development

Bug Triage

If you can help, the developers can concentrate on fixing the bugs.
The steps in this list take approx 90% of the time in the resolving of most bugs.

Reread How to report bugs effectively

Now look at the bug reports in Bugzilla with your developer hat on.

  • Go into triage mode this page can help You : Bugzilla_Reports
  • Ask the questions asked by the essay
  • Get the information from the reporter
  • Reproduce the issue
  • Confirm the bug or mark it invalid if you can't reproduce it
  • Summarise the issue if the report isn't clear
  • Add a note about a workaround/fix if one is obvious to you
  • That fix may not be the one we adopt, but it often helps if you tell us what you did to fix it

Bug Status

Lifecycle of a Bug

Resolution status:

  • UNCONFIRMED

New bugs submitted by ordinary users are created in this state. Note. Project Developers tend not to look at unconfirmed bugs as they only have so much time, so it's important regular users check each others bugs.

  • NEEDINFO

This is a new state that should be used when more information is needed by the bug reporter.

  • CONFIRMED

Once bugs are confirmed to be valid and present in SME Server, by anyone see note above, change the status to CONFIRMED. Only change to CONFIRMED if the bug is well written and has enough information to proceed.

  • IN_PROGRESS

This indicates a developer is actively working on the bug.

  • FIXED

Set to fixed after the problem has been solved for others, eg a new rpm is available, documentation has been added, etc.

For SmeServer category bugs changing to FIXED is reserved for devs.

Occasionally the dev will forget to set the FIXED status and as part of the verification process will be pushed to FIXED on the way to VERIFIED by the person verifying the package. It should never be set to FIXED or VERIFIED without having a released package that is in CVS.

Bugs in Documentation, Translation, Contribs, or Websites categories need community involvement, anyone can resolve these FIXED.


Alternatives to Fixed are :

  • NOTABUG

If you see that a problem is not a bug. eg User error Mark INVALID if the report is of documented (i.e. expected and correct) behaviour, or was encountered in some explicitly unsupported circumstance

  • WONTFIX

This bug is:
- Too hard to fix
- Too rare
- Not something we can fix
- Something we chose not to expend resources on fixing

This is a hard call, usually made by the dev team. It may be a serious issue for the reporter but we may simply say "Sorry, that's just not worth the effort involved"

  • LATER

Leave the bug for later, eg in case another bug will fix a related issue.

  • REMIND

Needs follow-up from the reporter or someone else to get any further. Please REOPEN bugs when the follow-up comes in.

  • WORKSFORME

You've been able to show that the problem does not happen for you. You should do this on a known good test box without any contribs installed. Many of our reports are breakage due to contribs.

  • DUPLICATE

For when the reporter didn't find the related bug.


  • VERIFIED

Check the fix provided solves the issue.

  • CLOSED

Bug Tracker Administrators Close bugs in SME Current or SME Future,
but the reporter or maintainer can close in other sections, eg Documentation, Websites, Contribs
There is no need to verify a non-fix. Invalid/wontfix bugs can move straight to closed.

Bugzilla flags

These will be obvious to the people they are intended to serve. If you feel comfortable setting them based on information contained in the bug or needs you have for the bug then set them. If not then leave them be.

  • need_help_to_verify [-+?]

"I don't understand how to verify this bug - please help" - a request to the dev team or other verifiers to have another look at the bug. Please say what you don't understand and what you've looked at.

  • package_maintained_upstream

The package is maintained in an upstream repository. We won't be patching it locally. We've deemed it to be not important enough for us to fork the package, and so we'll wait for the fix to propogate from upstream. In these case we like to add a URL to the upstream bug report.

  • patch_or_code_attached [-+?]

There is either a patch or some code attached to this bug. Attached may actually mean inline in the text, but the bug contains some code change which someone says works for them.

  • Review [-+?]

This bug/change needs review by someone else. This is used by the dev team for "Do you think this change is a good one?"

  • [-+?]

Set the flag to ? to say someone needs to look at it