diff options
author | Chris Lumens <clumens@redhat.com> | 2008-07-22 12:59:27 -0400 |
---|---|---|
committer | Chris Lumens <clumens@redhat.com> | 2008-07-22 15:58:24 -0400 |
commit | 1b632ee2e4c64148a942db567f4e4ef6de6af571 (patch) | |
tree | 2156deece62ca7bf17f44d9c0409a54813a1bbae /gui.py | |
parent | b7ce023c6c33ad8974df25e72f1c99c3b0e75dcf (diff) | |
download | anaconda-1b632ee2e4c64148a942db567f4e4ef6de6af571.tar.gz anaconda-1b632ee2e4c64148a942db567f4e4ef6de6af571.tar.xz anaconda-1b632ee2e4c64148a942db567f4e4ef6de6af571.zip |
Add support for filing tracebacks directly into bugzilla.
This patch adds support for save to bugzilla, using the python-bugzilla module.
We get the bugzilla URL from product.bugUrl and require the user to already
have a valid account with that bugzilla instance. That should cut down on
potential abuse.
To cut down on the number of possible duplicates, we hash the file name,
function name, and line of each frame in the traceback and store that hash in
the bug itself. Before filing a new bug, we query for any bugs containing that
hash value. If found, we simply add the traceback as a new attachment and put
the user on the CC list. If not found, we create a new bug. Either way, the
user is encouraged to visit their bug and make a more meaningful comment.
Diffstat (limited to 'gui.py')
-rwxr-xr-x | gui.py | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -732,6 +732,7 @@ class SaveExceptionWindow: self.usernameEntry = exnxml.get_widget("usernameEntry") self.passwordEntry = exnxml.get_widget("passwordEntry") + self.bugDesc = exnxml.get_widget("bugDesc") self.diskButton = exnxml.get_widget("diskButton") self.diskCombo = exnxml.get_widget("diskCombo") @@ -745,6 +746,8 @@ class SaveExceptionWindow: self.remoteButton.connect("toggled", self.radio_changed) self.localButton.connect("toggled", self.radio_changed) + self.remoteButton.set_label(self.remoteButton.get_label() % product.bugUrl) + cell = gtk.CellRendererText() self.diskCombo.pack_start(cell, True) self.diskCombo.set_attributes(cell, text=1) @@ -795,7 +798,8 @@ class SaveExceptionWindow: elif self.saveToLocal(): return self.localChooser.get_filename() else: - return map(lambda e: e.get_text(), [self.usernameEntry, self.passwordEntry]) + return map(lambda e: e.get_text(), [self.usernameEntry, self.passwordEntry, + self.bugDesc]) def pop(self): self.window.destroy() |