/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
4584.3.5 by Martin Pool
Developer docs on using apport
1
*************************
2
Bazaar Apport Integration
3
*************************
4
5
Bazaar can use Apport <http://launchpad.net/apport/> to capture data about
6
unexpected errors (probably, bugs in Bazaar) and report them to the
7
developers.
8
9
This is only active for errors that are believed to be internal errors (ie
10
bugs) not user or environmental errors.  (See the Developer Guide.)
11
12
Consequences for users
13
----------------------
14
15
* They shouldn't normally need to see or copy&paste a traceback.
16
17
* They will be able to inspect the files before sending them to be sure
18
  there's no sensitive data included.
19
20
* As at present, they'll need a Launchpad account to report bugs in the
21
  normal way.
22
23
24
25
Implementation notes
26
--------------------
27
28
The use of apport by Bazaar is independent of the configuration in the OS.
29
For example in Ubuntu, apport is normally inactive in release builds, and
30
normally excludes software not installed from a package.  We'll bypass
31
both of them.
32
33
The user should have the option to: forget about the crash (and ignore the
34
bug report), see the contents of the report, 
35
36
The process is 
37
38
#. An exception reaches the top-level handler.
39
40
#. We log it in apport-format to a file in ~/.bazaar/crash.
41
4584.3.7 by Martin Pool
Updated documentation about apport
42
#. We tell the user where that file is, and invite them to file a bug
43
   report.
4584.3.5 by Martin Pool
Developer docs on using apport
44
45
* Developers probably want to turn this off?  Or is it enough to just have
46
  them say No, don't file it?
47
48
This won't be active for bugs that cause the whole Python interpreter to
49
crash.  This can be handled at the OS level.
50
51
52
Future ideas
53
------------
54
55
* Capture apport data even for things not believed to be internal errors,
56
  because sometimes they are in fact bugs.  Then the user can attach the
57
  apport report later if they decide to file a bug.  There may be quite a
4584.3.7 by Martin Pool
Updated documentation about apport
58
  lot of them so we might need to limit the number that are stored, or do
59
  this when a debug flag is set.  At the moment they go into .bzr.log and
60
  that's probably ok to start with.
4584.3.5 by Martin Pool
Developer docs on using apport
61
62
* Raising an error from the breakin debugger should cause this to fire.
63
64
* Developers looking at a crash on their own machine will probably in the
65
  first instance just want to see the traceback. Apport files may be more
66
  longwinded than our current output and might make the traceback scroll
67
  off the screen.
68
4584.3.7 by Martin Pool
Updated documentation about apport
69
* Automatically include .bzr.log in the problem report.
70
71
* Ask the user what they want to do with the report: automatically file
72
  it, look at it, see just the traceback, just be told where it is.  This
73
  could be done through the UIFactory so that it can be done through a
74
  graphical dialog.
75
76
  However, if we've already had an unhandled error in this process there
77
  may be problems in Bazaar that prevent us presenting a clean message...
78
79
  Possibly these bugs are better reported in the next time bzr runs.
80
4584.3.5 by Martin Pool
Developer docs on using apport
81
.. 
82
    vim: ft=rst